From 535d3f680b56bda7f14c1084f56aab05a4fe0984 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Mon, 10 Jun 2024 16:19:09 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix=20:=20=E4=BC=98=E5=8C=96=E7=9B=B4?= =?UTF-8?q?=E6=8E=A5=E4=B8=8A=E6=8A=A5=E6=97=B6=E9=A1=B9=E7=9B=AE=E5=BD=92?= =?UTF-8?q?=E6=A1=A3=E9=99=84=E4=BB=B6tab=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/project-management/filing/attachment.vue | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/views/project-management/filing/attachment.vue b/src/views/project-management/filing/attachment.vue index db7d1c5..b4e4a3f 100644 --- a/src/views/project-management/filing/attachment.vue +++ b/src/views/project-management/filing/attachment.vue @@ -90,7 +90,11 @@ const upload = () => { }) } } - +watchEffect(() => { + if (requirementId.value === '-1') { + paneList.value = paneList.value.slice(1) + } +}) onMounted(() => { if (activeName.value === '50') { search({}) From 9c812af394da08451dd855fbe589f7588cef5630 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Mon, 10 Jun 2024 22:34:51 +0800 Subject: [PATCH 2/5] =?UTF-8?q?fix=20:=20=E4=BF=AE=E5=A4=8D=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E6=8F=90=E4=BA=A4/=E9=87=8D=E6=96=B0=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DetailComponent/ApprovalDetail.vue | 6 +- .../DetailComponent/CollectionDetail.vue | 2 +- .../DetailComponent/ProjectApply.vue | 210 +++++++++--------- .../DetailComponent/SummaryDetail.vue | 2 +- src/views/project-demand/summary/detail.vue | 4 + .../project-management/filing/upload.vue | 5 +- .../implementation/detail.vue | 153 +++++++------ 7 files changed, 192 insertions(+), 190 deletions(-) diff --git a/src/components/DetailComponent/ApprovalDetail.vue b/src/components/DetailComponent/ApprovalDetail.vue index 8d1bb39..27f6324 100644 --- a/src/components/DetailComponent/ApprovalDetail.vue +++ b/src/components/DetailComponent/ApprovalDetail.vue @@ -20,7 +20,7 @@
-
@@ -40,8 +40,8 @@ const props = defineProps({ default: {} }, data: { - type: Array, - default: [] + type: Object, + default: {} }, processViewer: { type: Boolean, diff --git a/src/components/DetailComponent/CollectionDetail.vue b/src/components/DetailComponent/CollectionDetail.vue index c455f3d..721f7bd 100644 --- a/src/components/DetailComponent/CollectionDetail.vue +++ b/src/components/DetailComponent/CollectionDetail.vue @@ -59,7 +59,7 @@
-
diff --git a/src/components/DetailComponent/ProjectApply.vue b/src/components/DetailComponent/ProjectApply.vue index 378b6be..045b9d7 100644 --- a/src/components/DetailComponent/ProjectApply.vue +++ b/src/components/DetailComponent/ProjectApply.vue @@ -1,32 +1,32 @@ @@ -40,101 +57,83 @@ import {ElLoading, ElNotification} from "element-plus"; import Opinion from "@/components/DetailComponent/Opinion.vue"; const route = useRoute() -const showApply = ref(false) -const showCheck = ref(false) -const showFiling = ref(false) +const editShow = ref(false) +const applyTitle = ref('apply') const loading = ref(false) const processStore = useProcessStore() const fileListShow = ref('READ') +const mode = ref('') const currentStep = ref() const auditOpinion = ref('') +// const step = ref(route.query.step) route.query.step == '10' && (currentStep.value = 1) route.query.step == '20' && (currentStep.value = 2) route.query.step == '40' && (currentStep.value = 3) route.query.step == '50' && (currentStep.value = 4) const showActive = ref() -const commonForm = ref({}) +const detailData = ref({}) const commonProvessViewer = ref(true) const getAllInfo = async (state) => { const loading = ElLoading.service({fullscreen: true}) try { + fileListShow.value = 'READ' commonProvessViewer.value = false const {data, code, msg} = await getMapProjectStateInfo(route.query.projectId, state) - if (code !== 1000) { + if (code === 1000) { + detailData.value = data + mode.value = data.formData.mode + processStore.setDesign(data) + processStore.runningList.value = data.runningList; + processStore.endList.value = data.endList; + processStore.noTakeList.value = data.noTakeList; + processStore.refuseList.value = data.refuseList; + processStore.passList.value = data.passList; + nextTick(() => { + commonProvessViewer.value = true + if (data.formPermMap && data.formPermMap["fileList"]) { + fileListShow.value = data.formPermMap["fileList"].perm + } + }) + changeModel(state, mode.value) + loading.close() + } else { ElNotification({ title: '提示', message: msg, type: 'error' }) if (msg === '查询结果为空') { - commonForm.value = [] + detailData.value = [] + detailData.value.formData = {} } loading.close() } - if (data === undefined) return; - commonForm.value = data - processStore.setDesign(data) - processStore.runningList.value = data.runningList; - processStore.endList.value = data.endList; - processStore.noTakeList.value = data.noTakeList; - processStore.refuseList.value = data.refuseList; - processStore.passList.value = data.passList; - nextTick(() => { - commonProvessViewer.value = true - if (data.formPermMap && data.formPermMap["fileList"]) { - fileListShow.value = data.formPermMap["fileList"].perm - } - }) - loading.close() } catch { loading.close() } } -const changeModel = (active) => { - if (route.query.step === '20' && active === '20') { - if (route.query.state === '0') { - showApply.value = true - } else if (route.query.state === '3') { - showApply.value = true - getAllInfo(active) - } else { - showApply.value = false - getAllInfo(active) +const changeModel = (active, mode) => { + editShow.value = false + nextTick(() => { + editShow.value = mode === 'submit' || mode === 'resubmit'; + if (route.query.step === '20' && active === '20') { + applyTitle.value = 'apply' + } else if (route.query.step === '40' && active === '40') { + applyTitle.value = 'check' + } else if (route.query.step === '50' && active === '50') { + applyTitle.value = 'filing' } - } else if (route.query.step === '40' && active === '40') { - if (route.query.state === '0') { - showCheck.value = true - } else if (route.query.state === '3') { - showCheck.value = true - getAllInfo(active) - } else { - showCheck.value = false - getAllInfo(active) - } - } else if (route.query.step === '50' && active === '50') { - if (route.query.state === '0') { - showFiling.value = true - } else if (route.query.state === '3') { - showFiling.value = true - getAllInfo(active) - } else { - showFiling.value = false - getAllInfo(active) - } - } else { - getAllInfo(active) - } + }) } - const setDetail = (active) => { showActive.value = active - changeModel(active) + getAllInfo(active) } const stepChange = (data) => { showActive.value = data.active - changeModel(data.active) + getAllInfo(data.active) } From 15a2dda0fafe75c2edb3c0dfc77796a423531125 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Mon, 10 Jun 2024 22:36:03 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix=20:=20=E4=BF=AE=E5=A4=8D=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E5=BE=81=E9=9B=86/=E6=B1=87=E6=80=BB=E6=9D=83?= =?UTF-8?q?=E9=99=90=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/project-demand/requirement/index.vue | 17 ++++++++++++----- src/views/project-demand/summary/index.vue | 14 ++++++++------ 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/src/views/project-demand/requirement/index.vue b/src/views/project-demand/requirement/index.vue index 7195227..926be1d 100644 --- a/src/views/project-demand/requirement/index.vue +++ b/src/views/project-demand/requirement/index.vue @@ -52,6 +52,13 @@ const searchConfig = reactive([ ]) const tableIns = ref() const userInfo = ref(authStore.userinfo) +const auths = { + edit: ['mosr:requirement:resubmit'], + detail: ['mosr:requirement:info'], + add: ['mosr:requirement:add'], + del: ['mosr:requirement:del'], + report: ['mosr:collect:reported'], +} const tableConfig = reactive({ columns: [ { @@ -107,13 +114,13 @@ const tableConfig = reactive({ let btn = [] let buttons = new Set(Array.from(row.buttons)) if (buttons.has("details")) { - btn.push({label: '详情', prem: ['mosr:requirement:info'], func: () => handleDetail(row), type: 'primary'}) + btn.push({label: '详情', prem: auths.detail, func: () => handleDetail(row), type: 'primary'}) } if (buttons.has("edit")) { - btn.push({label: '编辑', prem: ['mosr:requirement:resubmit'], func: () => handleEdit(row), type: 'primary'}) + btn.push({label: '编辑', prem: auths.edit, func: () => handleEdit(row), type: 'primary'}) } if (buttons.has("report")) { - btn.push({label: '需求上报', prem: ['mosr:requirement:info'], func: () => handleReport(row), type: 'primary'}) + btn.push({label: '需求上报', prem: auths.report, func: () => handleReport(row), type: 'primary'}) } return (
@@ -132,7 +139,7 @@ const tableConfig = reactive({ { buttons.has("delete") ? handleDelete(row)}/> : '' }
@@ -142,7 +149,7 @@ const tableConfig = reactive({ ], api: '/workflow/mosr/requirement', btns: [ - {name: '新增', key: 'add', color: '#DED0B2'}, + {name: '新增', key: 'add', color: '#DED0B2',auth: auths.add}, {name: '导出', key: 'export', type: ''}, ], params: {} diff --git a/src/views/project-demand/summary/index.vue b/src/views/project-demand/summary/index.vue index b3b055c..e43bb69 100644 --- a/src/views/project-demand/summary/index.vue +++ b/src/views/project-demand/summary/index.vue @@ -71,6 +71,11 @@ const searchConfig = reactive([ // colProps: {} // }, ]) +const auths = { + edit: ['mosr:collect:resubmit'], + detail: ['mosr:collect:info'], + report: ['mosr:collect:reported'], +} const tableConfig = reactive({ columns: [ { @@ -161,14 +166,11 @@ const tableConfig = reactive({ let btn = [] let buttons = new Set(Array.from(row.buttons)) if (buttons.has("details")) { - btn.push({label: '详情', prem: ['mosr:collect:info'], func: () => handleDetail(row), type: 'primary'}) + btn.push({label: '详情', prem: auths.detail, func: () => handleDetail(row), type: 'primary'}) } if (buttons.has("edit")) { - btn.push({label: '编辑', prem: ['mosr:collect:resubmit'], func: () => handleEdit(row), type: 'primary'}) + btn.push({label: '编辑', prem: auths.edit, func: () => handleEdit(row), type: 'primary'}) } - // if (buttons.has("report")) { - // btn.push({label: '上报', prem: ['mosr:collect:reported'], func: () => handleAdd(row), type: 'primary'}) - // } return (
{ @@ -197,7 +199,7 @@ const tableConfig = reactive({ api: '/workflow/mosr/requirement/collect', params: {}, btns: [ - {name: '新增上报', key: 'add', color: '#DED0B2', auth: ''}, + {name: '新增上报', key: 'add', color: '#DED0B2', auth:auths.report}, {name: '年度计划导出', key: '_export', auth: ''}, {name: '经费预算生成', key: 'preMonty', auth: ''}, ] From 3e6c82dd19286db45487816e237c3c53745f5754 Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Mon, 10 Jun 2024 22:38:26 +0800 Subject: [PATCH 4/5] =?UTF-8?q?fix=20:=20=E4=BF=AE=E5=A4=8D=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E9=A1=B5=E6=8C=89=E9=92=AE=E5=9B=BA=E5=AE=9A=E5=8F=B3?= =?UTF-8?q?=E4=BE=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/project-demand/requirement/index.vue | 1 + src/views/project-demand/summary/index.vue | 1 + src/views/project-management/filing/index.vue | 1 + src/views/project-management/initiation/index.vue | 1 + 4 files changed, 4 insertions(+) diff --git a/src/views/project-demand/requirement/index.vue b/src/views/project-demand/requirement/index.vue index 926be1d..68830c4 100644 --- a/src/views/project-demand/requirement/index.vue +++ b/src/views/project-demand/requirement/index.vue @@ -109,6 +109,7 @@ const tableConfig = reactive({ prop: 'oper', label: '操作', align: 'center', + fixed:'right', showOverflowTooltip: false, currentRender: ({row, index}) => { let btn = [] diff --git a/src/views/project-demand/summary/index.vue b/src/views/project-demand/summary/index.vue index e43bb69..74016b4 100644 --- a/src/views/project-demand/summary/index.vue +++ b/src/views/project-demand/summary/index.vue @@ -161,6 +161,7 @@ const tableConfig = reactive({ prop: 'oper', label: '操作', align: 'center', + fixed:'right', showOverflowTooltip: false, currentRender: ({row, index}) => { let btn = [] diff --git a/src/views/project-management/filing/index.vue b/src/views/project-management/filing/index.vue index 957c4fe..6e8bcab 100644 --- a/src/views/project-management/filing/index.vue +++ b/src/views/project-management/filing/index.vue @@ -227,6 +227,7 @@ const tableConfig = reactive({ prop: 'oper', label: '操作', align: 'center', + fixed:'right', showOverflowTooltip: false, currentRender: ({row, index}) => { let btn = [] diff --git a/src/views/project-management/initiation/index.vue b/src/views/project-management/initiation/index.vue index 9c1dd36..b56acd7 100644 --- a/src/views/project-management/initiation/index.vue +++ b/src/views/project-management/initiation/index.vue @@ -226,6 +226,7 @@ const tableConfig = reactive({ prop: 'oper', label: '操作', align: 'center', + fixed:'right', showOverflowTooltip: false, currentRender: ({row, index}) => { let btn = [] From 050c5cf57ad6c7a61e66ade385a0e35f0fe56c6c Mon Sep 17 00:00:00 2001 From: odjbin <1042039504@qq.com> Date: Mon, 10 Jun 2024 23:01:28 +0800 Subject: [PATCH 5/5] =?UTF-8?q?fix=20:=20=E5=88=97=E8=A1=A8=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E5=8A=A0=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/AttachmentUpload.vue | 50 +++++++++---------- src/views/project-management/filing/index.vue | 8 +-- .../implementation/index.vue | 12 ++--- .../project-management/initiation/index.vue | 6 +-- 4 files changed, 38 insertions(+), 38 deletions(-) diff --git a/src/components/AttachmentUpload.vue b/src/components/AttachmentUpload.vue index 4a36418..0dc29f1 100644 --- a/src/components/AttachmentUpload.vue +++ b/src/components/AttachmentUpload.vue @@ -5,7 +5,7 @@ @@ -35,7 +35,7 @@ diff --git a/src/views/project-management/filing/index.vue b/src/views/project-management/filing/index.vue index 6e8bcab..4dc848a 100644 --- a/src/views/project-management/filing/index.vue +++ b/src/views/project-management/filing/index.vue @@ -233,16 +233,16 @@ const tableConfig = reactive({ let btn = [] let buttons = new Set(Array.from(row.buttons)) if (buttons.has("details")) { - btn.push({label: '详情', prem: ['mosr:requirement:info'], func: () => handleDetail(row), type: 'primary'}) + btn.push({label: '详情', prem: ['project:management:filing:detail'], func: () => handleDetail(row), type: 'primary'}) } if (buttons.has("attachments")) { - btn.push({label: '附件', prem: ['mosr:requirement:resubmit'], func: () => handleAttachment(row), type: 'primary'}) + btn.push({label: '附件', prem: ['project:management:filing:attachment'], func: () => handleAttachment(row), type: 'primary'}) } if (buttons.has("entry")) { - btn.push({label: '结项', prem: ['mosr:requirement:del'], func: () => handleConclusion(row), type: 'primary'}) + btn.push({label: '结项', prem: ['project:management:filing:conclusion'], func: () => handleConclusion(row), type: 'primary'}) } if (buttons.has("edit")) { - btn.push({label: '编辑', prem: ['mosr:requirement:info'], func: () => handleEdit(row), type: 'primary'}) + btn.push({label: '编辑', prem: ['project:management:filing:conclusion'], func: () => handleEdit(row), type: 'primary'}) } return (
diff --git a/src/views/project-management/implementation/index.vue b/src/views/project-management/implementation/index.vue index 7541b91..4065da3 100644 --- a/src/views/project-management/implementation/index.vue +++ b/src/views/project-management/implementation/index.vue @@ -251,22 +251,22 @@ const tableConfig = reactive({ let btn = [] let buttons = new Set(Array.from(row.buttons)) if (buttons.has("details")) { - btn.push({label: '详情', prem: ['mosr:requirement:info'], func: () => handleDetail(row), type: 'primary'}) + btn.push({label: '详情', prem: ['mosr:implementation:info'], func: () => handleDetail(row), type: 'primary'}) } if (buttons.has("check")) { - btn.push({label: '验收', prem: ['mosr:requirement:resubmit'], func: () => handleCheck(row), type: 'primary'}) + btn.push({label: '验收', prem: ['mosr:implementation:check'], func: () => handleCheck(row), type: 'primary'}) } if (buttons.has("edit")) { - btn.push({label: '编辑', prem: ['mosr:requirement:info'], func: () => handleEdit(row), type: 'primary'}) + btn.push({label: '编辑', prem: ['mosr:implementation:resubmit'], func: () => handleEdit(row), type: 'primary'}) } if (buttons.has("standing")) { - btn.push({label: '台账', prem: ['mosr:requirement:info'], func: () => handleStandingBook(row), type: 'primary'}) + btn.push({label: '台账', prem: ['project:management:implementation:account'], func: () => handleStandingBook(row), type: 'primary'}) } if (buttons.has("attachments")) { - btn.push({label: '附件', prem: ['mosr:requirement:info'], func: () => handleAttachment(row), type: 'primary'}) + btn.push({label: '附件', prem: ['project:management:implementation:attachment'], func: () => handleAttachment(row), type: 'primary'}) } if (buttons.has("viewAllocation")) { - btn.push({label: '查看分摊', prem: ['mosr:requirement:info'], func: () => handleShare(row), type: 'primary'}) + btn.push({label: '查看分摊', prem: ['project:management:implementation:share'], func: () => handleShare(row), type: 'primary'}) } if (buttons.has("phaseChange")) { btn.push({label: '阶段变更', prem: ['mosr:phase:change'], func: () => handlePhaseChange(row), type: 'primary'}) diff --git a/src/views/project-management/initiation/index.vue b/src/views/project-management/initiation/index.vue index b56acd7..d80ec63 100644 --- a/src/views/project-management/initiation/index.vue +++ b/src/views/project-management/initiation/index.vue @@ -232,16 +232,16 @@ const tableConfig = reactive({ let btn = [] let buttons = new Set(Array.from(row.buttons)) if (buttons.has("details")) { - btn.push({label: '详情', prem: ['mosr:requirement:info'], func: () => handleDetail(row), type: 'primary'}) + btn.push({label: '详情', prem: ['mosr:approval:info'], func: () => handleDetail(row), type: 'primary'}) } if (buttons.has("edit")) { - btn.push({label: '编辑', prem: ['mosr:requirement:resubmit'], func: () => handleEdit(row), type: 'primary'}) + btn.push({label: '编辑', prem: ['mosr:approval:resubmit'], func: () => handleEdit(row), type: 'primary'}) } // if (buttons.has("delete")) { // btn.push({label: '删除',prem: ['mosr:requirement:del'], func: () => handleDelete(row), type: 'primary'}) // } if (buttons.has("apply")) { - btn.push({label: '立项',prem: ['mosr:requirement:info'], func: () => handleApply(row), type: 'primary'}) + btn.push({label: '立项',prem: ['mosr:approval:apply'], func: () => handleApply(row), type: 'primary'}) } return (