From 279f5cdb17b34359aef6cb10d722bb28237ba0a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8C=83=E5=BC=BA=E5=BC=BA?= <787203167@qq.com> Date: Thu, 15 Sep 2022 17:16:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=85=E5=8A=9E=E6=B5=81=E7=A8=8B=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=89=B9=E9=87=8F=E5=8A=9E=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 6 + jero-web/src/common/lang/zh-cn.js | 6 + .../components/examineInformation.vue | 2 +- .../components/batchProcessing.vue | 239 ++++++++++++++++++ .../tabComponents/processCenter/index.vue | 195 +++++++++++++- 5 files changed, 442 insertions(+), 6 deletions(-) create mode 100644 jero-web/src/views/processCenter/processList/tabComponents/processCenter/components/batchProcessing.vue diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 66dd59a4c..7eafd047e 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -1292,4 +1292,10 @@ module.exports = { Deletetitle:'Delete the title', toConfirmed: 'to confirm', confirmtitle:'The title is incorrect. Please re-enter it', + batchProcessing:'Batch Processing', + onlyDataTaskConfirmationProcessSelected:'Only data of task confirmation process can be selected', + processNode:'Process Node', + personChargeReceivesTheTask:'Person in charge receives the task', + theResponsiblePersonTaskForTheSecondTime:'The responsible person receives the task for the second time', + processNodesAreInconsistentPleaseSelectConsistentData:'Process nodes are inconsistent; Please select consistent data', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 960943483..251fe8bd5 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -1394,4 +1394,10 @@ module.exports = { Deletetitle:'删除标题', toConfirmed: '来确认', confirmtitle:'标题不正确,请重新输入', + batchProcessing:'批量办理', + onlyDataTaskConfirmationProcessSelected:'只能选择流程类型为任务确认流程的数据', + processNode:'流程节点', + personChargeReceivesTheTask:'责任人接收任务', + theResponsiblePersonTaskForTheSecondTime:'责任人二次接收任务', + processNodesAreInconsistentPleaseSelectConsistentData:'流程节点不一致;请选择一致的数据', } \ No newline at end of file diff --git a/jero-web/src/views/processCenter/components/examineInformation.vue b/jero-web/src/views/processCenter/components/examineInformation.vue index cfbefa921..2f97ec816 100644 --- a/jero-web/src/views/processCenter/components/examineInformation.vue +++ b/jero-web/src/views/processCenter/components/examineInformation.vue @@ -135,7 +135,7 @@ dreUserIdName: [ { required: true, - message: this.$t('selectIssuer') + this.$t('cannotEmpty'), + message: this.$t('selectInquiry') + this.$t('cannotEmpty'), trigger: 'change' } ], diff --git a/jero-web/src/views/processCenter/processList/tabComponents/processCenter/components/batchProcessing.vue b/jero-web/src/views/processCenter/processList/tabComponents/processCenter/components/batchProcessing.vue new file mode 100644 index 000000000..67ec48557 --- /dev/null +++ b/jero-web/src/views/processCenter/processList/tabComponents/processCenter/components/batchProcessing.vue @@ -0,0 +1,239 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/processCenter/processList/tabComponents/processCenter/index.vue b/jero-web/src/views/processCenter/processList/tabComponents/processCenter/index.vue index e6f9393d3..5660d50b9 100644 --- a/jero-web/src/views/processCenter/processList/tabComponents/processCenter/index.vue +++ b/jero-web/src/views/processCenter/processList/tabComponents/processCenter/index.vue @@ -1,9 +1,65 @@ @@ -37,13 +94,18 @@ import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage' import { mapGetters } from 'vuex' import store from '@/store/' + import batchProcessing from './components/batchProcessing' import moment from 'moment' export default { name: 'ProcessCenter', + components: { + batchProcessing + }, data() { return { searchForm: {}, + queryParam: {}, total: 0, pageNo: 1, pageSize: 10, @@ -53,6 +115,20 @@ 5: this.$t('collectionOfRegulatoryOpinionsProcess'), 6: this.$t('regulatoryTechnologyAssessmentProcess') }, + processNodeList: [ + { + name: this.$t('personChargeReceivesTheTask'), + value: 'zrrjsrw' + }, + { + name: this.$t('engineerReply'), + value: 'dreqr' + }, + { + name: this.$t('theResponsiblePersonTaskForTheSecondTime'), + value: 'zrrqr' + } + ], columns: [ { title: this.$t('RelatedItems'), @@ -83,6 +159,13 @@ ellipsis: true, scopedSlots: { customRender: 'prcType' } }, + { + title: this.$t('processNode'), + dataIndex: 'taskInfo', + align: 'center', + width: 180, + ellipsis: true, + }, { title: this.$t('Sponsor'), dataIndex: 'creatUserName', @@ -136,12 +219,54 @@ }, methods: { ...mapGetters(['userInfo']), - onSelectChange() { - + onSelectChange(value) { + this.selectedRowKeys = [] + if (value && value.length > 0) { + value.forEach(res => { + res = JSON.parse(res) + if (res.prcType == '1') { + this.selectedRowKeys.push(JSON.stringify(res)) + } else { + this.$message.warning(this.$t('onlyDataTaskConfirmationProcessSelected')) + } + }) + } + }, + batchProcessingClick() { + if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { + let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys)) + let content = [] + selectedRowKeys.forEach(res => { + content.push(JSON.parse(res)) + }) + console.log(content) + for (let i = 0; i < content.length; i++) { + if (content[i].taskDefinitionKey != content[0].taskDefinitionKey) { + this.$message.warning(this.$t('processNodesAreInconsistentPleaseSelectConsistentData')) + return + } + } + this.$refs.batchProcessingRef.getData(JSON.parse(JSON.stringify(content))) + } else { + this.$message.warning(this.$t('selectLeastOne')) + } + }, + batchProcessingForm() { + this.pageNo = 1 + this.queryProcess() + }, + searchQuery() { + this.pageNo = 1 + this.queryProcess() + }, + searchReset() { + this.queryParam = {} + this.pageNo = 1 + this.queryProcess() }, queryProcess() { this.loading = true - let parmes = JSON.parse(JSON.stringify(this.searchForm)) + let parmes = JSON.parse(JSON.stringify(this.queryParam)) parmes.current = this.pageNo parmes.size = this.pageSize parmes.userId = this.userInfo().userId @@ -192,8 +317,68 @@