From d88f788312fad8be7d4720dcfa6a642d5a8ee93b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=9C=84?= Date: Thu, 11 Jan 2024 11:59:53 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E9=A1=B9=E7=9B=AE=E5=90=88=E8=A7=84?= =?UTF-8?q?=E8=AF=84=E4=BC=B0=E3=80=81=E6=9C=AA=E7=AC=A6=E5=90=88=E9=A1=B9?= =?UTF-8?q?=E8=B7=9F=E8=B8=AA=E5=8F=91=E8=B5=B7=E5=A4=84=E7=90=86=E5=BC=BA?= =?UTF-8?q?=E5=88=B6=E6=92=A4=E5=9B=9E=E7=94=A8=E7=9A=84=E8=8D=89=E7=A8=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../NoMatchTrackingProcess.vue | 32 ++++++++++++++----- .../ProjectComplianceEvaluationProcess.vue | 21 ++++++++++-- 2 files changed, 42 insertions(+), 11 deletions(-) diff --git a/src/views/workCenter/noMatchTrackingProcess/NoMatchTrackingProcess.vue b/src/views/workCenter/noMatchTrackingProcess/NoMatchTrackingProcess.vue index 3cc6243a..22834090 100644 --- a/src/views/workCenter/noMatchTrackingProcess/NoMatchTrackingProcess.vue +++ b/src/views/workCenter/noMatchTrackingProcess/NoMatchTrackingProcess.vue @@ -516,10 +516,7 @@ export default { this.loading = false }) }, - /** - * 保存 - */ - handleSave () { + dealSaveJsonData () { const processInfo = Object.assign(this.processInfo, this.processInfoForm.getFieldsValue()) const businessInfo = Object.assign(this.businessInfo, this.businessInfoForm.getFieldsValue()) const approvalInfo = Object.assign(this.approvalInfo, this.approvalInfoForm.getFieldsValue()) @@ -529,14 +526,23 @@ export default { if (!checkValueArr.some(tt => !tt) && this.dataSource.length === 0) { // 提示至少填写一项 this.$message.warning(this.$t('pleaseFillInAtLeastOneItem')) + return false + } + return { processInfo, businessInfo, approvalInfo, userInfo, dataSource: this.dataSource } + }, + /** + * 保存 + */ + handleSave () { + const formData = this.dealSaveJsonData() + if (!formData) { return } - const formData = { processInfo, businessInfo, approvalInfo, userInfo, dataSource: this.dataSource } const params = { draftId: this.$route.query.draftId, infoJsonStr: JSON.stringify(formData), - basicTaskInfoDTO: approvalInfo, - basicProcessInfoDTO: processInfo + basicTaskInfoDTO: formData.approvalInfo, + basicProcessInfoDTO: formData.processInfo } this.loading = true saveNoMatchTrackingProcess(params).then(res => { @@ -612,7 +618,17 @@ export default { return } this.loading = true - const submitFunc = this.currentNode === NoMatchTrackingNodes.initial.value ? initialNoMatchTrackingProcess : submitNoMatchTrackingProcess + let submitFunc + if (this.currentNode === NoMatchTrackingNodes.initial.value) { + // 发起的时候要传infoJsonStr,用于强制撤回的时候的草稿回显 + const saveJsonForm = this.dealSaveJsonData() + if (saveJsonForm) { + formData.infoJsonStr = JSON.stringify(saveJsonForm) + } + submitFunc = initialNoMatchTrackingProcess + } else { + submitFunc = submitNoMatchTrackingProcess + } submitFunc(formData).then(res => { if (res.success) { this.$message.success(res.message) diff --git a/src/views/workCenter/projectComplianceEvaluationProcess/ProjectComplianceEvaluationProcess.vue b/src/views/workCenter/projectComplianceEvaluationProcess/ProjectComplianceEvaluationProcess.vue index a39df5ee..006bca0a 100644 --- a/src/views/workCenter/projectComplianceEvaluationProcess/ProjectComplianceEvaluationProcess.vue +++ b/src/views/workCenter/projectComplianceEvaluationProcess/ProjectComplianceEvaluationProcess.vue @@ -1282,9 +1282,9 @@ export default { return formData }, /** - * 保存 + * 处理保存的Json数据部门 */ - handleSave () { + dealSaveJsonData() { const formData = {} // 流程信息 const processInfo = Object.assign(this.processInfo, this.processInfoForm.getFieldsValue()) @@ -1320,11 +1320,21 @@ export default { if (!checkParams.some(tt => !!tt)) { // 提示至少填写一项 this.$message.warning(this.$t('pleaseFillInAtLeastOneItem')) + return false + } + return formData + }, + /** + * 保存 + */ + handleSave () { + const formData = this.dealSaveJsonData() + if (!formData) { return } const params = { infoJsonStr: JSON.stringify(formData), - basicProcessInfoDTO: processInfo, + basicProcessInfoDTO: formData.basicProcessInfoDTO, draftId: this.$route.query.draftId, basicTaskInfoDTO: Object.assign(formData.approvalInfo, { taskId: this.$route.query.taskId }) } @@ -1351,6 +1361,11 @@ export default { let submitFunc // 发起和提交的接口判断 if (this.currentNode === ProjectComplianceEvaluationProcessNode.initiate.value) { + // 发起的时候要传infoJsonStr,用于强制撤回的时候的草稿回显 + const saveJsonObj = this.dealSaveJsonData() + if (saveJsonObj) { + formData.infoJsonStr = JSON.stringify(saveJsonObj) + } submitFunc = initiateProjectComplianceEvaluation } else { submitFunc = submitProjectComplianceEvaluation