From a880bf77174b80d9647144df624ae6058c057381 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=81=92=E6=88=90?= <962704835@qq.com> Date: Fri, 21 Nov 2025 17:27:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=94=E5=BE=81=E5=85=A5=E4=BC=8D=E4=BF=9D?= =?UTF-8?q?=E7=95=99=E5=AD=A6=E7=B1=8D=E7=94=B3=E8=AF=B7=E8=A1=A8=E9=99=84?= =?UTF-8?q?=E4=BB=B6=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enlistmentReserveAttach.js | 9 +++ src/components/affix/index.vue | 4 ++ src/views/flowable/task/todo/detail/index.vue | 70 +++++++++++++------ .../enlistmentReserve/applicationForm.vue | 33 ++++++--- src/views/routine/enlistmentReserve/index.vue | 13 +++- 5 files changed, 96 insertions(+), 33 deletions(-) diff --git a/src/api/routine/enlistmentReserve/enlistmentReserveAttach.js b/src/api/routine/enlistmentReserve/enlistmentReserveAttach.js index c85cfbb..38db181 100644 --- a/src/api/routine/enlistmentReserve/enlistmentReserveAttach.js +++ b/src/api/routine/enlistmentReserve/enlistmentReserveAttach.js @@ -51,3 +51,12 @@ export function delEnlistmentReserveAttach(id) { method: 'post' }) } + +// 删除保留学籍申请附件(入伍通知书等) +export function deleteRtEnlistmentReserveAttachByFileNameAndStuName(query) { + return request({ + url: '/routine/enlistmentReserveAttach/deleteRtEnlistmentReserve', + method: 'post', + params: query + }) +} diff --git a/src/components/affix/index.vue b/src/components/affix/index.vue index 266316b..3d95f0d 100644 --- a/src/components/affix/index.vue +++ b/src/components/affix/index.vue @@ -251,6 +251,10 @@ export default { if(this.fileList.length == 0){ this.affixId = '' } + + // 关键:触发自定义事件,传递被删除的文件名 + // 事件名建议:delete-file,参数:file.name(文件名) + this.$emit('delete-file', file.name); } else { this.$message.error(res.message) } diff --git a/src/views/flowable/task/todo/detail/index.vue b/src/views/flowable/task/todo/detail/index.vue index cfdc057..0b078e9 100644 --- a/src/views/flowable/task/todo/detail/index.vue +++ b/src/views/flowable/task/todo/detail/index.vue @@ -728,7 +728,8 @@ export default { variables: { variables: {}, approvalOpinion: '', // 必须初始化,避免 null 报错 - approvalResult: '' + approvalResult: '', + targetNodeName: '' }, penaltyNumber: '', letterServiceContent: '', @@ -1014,26 +1015,9 @@ export default { this.taskForm.variables = res.data.formData - // 初始化或完善 variables 对象,确保 approvalOpinion(入伍保留学籍申请审核意见) 存在 - if (this.taskForm.variables == null) { - // 情况1:variables 为 null → 初始化完整结构(包含原有 variables 嵌套和 approvalOpinion) - this.taskForm.variables = { - variables: {}, // 保留原有的嵌套 variables 结构(后端可能依赖) - approvalOpinion: '', // 初始化审批意见为空白 - approvalResult: '' - } - } else { - // 情况2:variables 已存在 → 保留原有字段,补充 approvalOpinion(无则添加,有则保留原值) - this.taskForm.variables = { - ...this.taskForm.variables, // 展开原有所有字段(如 variables、其他自定义字段) - approvalOpinion: this.taskForm.variables.approvalOpinion || '', // 兜底:若原有未定义则设为空白 - approvalResult: this.taskForm.variables.approvalOpinion || '' - } - } - - - - + // 初始化或完善 variables 对象,确保 approvalOpinion(入伍保留学籍申请审核意见) 存在 + this.initApproval() + this.formKeyExist = res.data.formKeyExist }) } @@ -1172,10 +1156,33 @@ export default { returnList(this.taskForm).then((res) => { this.returnTaskList = res.data this.taskForm.variables = null + + + if (this.category == 'enlistmentReserve') { + // 过滤returnTaskList,保留documentation在flowRecordList的taskName中存在的项 + this.returnTaskList = this.returnTaskList.filter(returnTask => { + // 检查flowRecordList中是否有项的taskName等于当前returnTask的documentation + return this.flowRecordList.some(record => record.taskName === returnTask.documentation) + }) + console.log(this.flowRecordList); + + } + this.initApproval() }) }, /** 提交退回任务 */ taskReturn() { + // 入伍保留学籍审核状态和意见 + if (this.category == 'enlistmentReserve') { + this.taskForm.variables.approvalResult = 3 + this.taskForm.variables.approvalOpinion = this.taskForm.comment + this.returnTaskList.forEach(element => { + if (element.id == this.taskForm.targetKey) { + this.taskForm.variables.targetNodeName = element.documentation + } + }); + } + this.$refs['taskForm'].validate((valid) => { if (valid) { returnTask(this.taskForm).then((res) => { @@ -1240,6 +1247,27 @@ export default { fileUpload() { download.resource(this.pdfURL) }, + // 初始化入伍保留学籍申请审核意见参数 + initApproval() { + // 初始化或完善 variables 对象,确保 approvalOpinion(入伍保留学籍申请审核意见) 存在 + if (this.taskForm.variables == null) { + // 情况1:variables 为 null → 初始化完整结构(包含原有 variables 嵌套和 approvalOpinion) + this.taskForm.variables = { + variables: {}, // 保留原有的嵌套 variables 结构(后端可能依赖) + approvalOpinion: '', // 初始化审批意见为空白 + approvalResult: '', // 审批状态 + targetNodeName: '' // 审批节点 + } + } else { + // 情况2:variables 已存在 → 保留原有字段,补充 approvalOpinion(无则添加,有则保留原值) + this.taskForm.variables = { + ...this.taskForm.variables, // 展开原有所有字段(如 variables、其他自定义字段) + approvalOpinion: this.taskForm.variables.approvalOpinion || '', // 兜底:若原有未定义则设为空白 + approvalResult: this.taskForm.variables.approvalResult || '', + targetNodeName: this.taskForm.variables.targetNodeName || '' + } + } + } }, } diff --git a/src/views/routine/enlistmentReserve/applicationForm.vue b/src/views/routine/enlistmentReserve/applicationForm.vue index eed3344..3819a4d 100644 --- a/src/views/routine/enlistmentReserve/applicationForm.vue +++ b/src/views/routine/enlistmentReserve/applicationForm.vue @@ -248,7 +248,7 @@

请上传:入伍通知书等佐证材料. - +

@@ -425,9 +425,9 @@
保存 - 提交申请 - 重置表单 - 打印表单 + 提交申请 + +
@@ -435,7 +435,7 @@ diff --git a/src/views/routine/enlistmentReserve/index.vue b/src/views/routine/enlistmentReserve/index.vue index ece50dc..40b154f 100644 --- a/src/views/routine/enlistmentReserve/index.vue +++ b/src/views/routine/enlistmentReserve/index.vue @@ -123,7 +123,7 @@