yangys
2025-08-17 597a7fa0913704552bd66e43cedad2dfc6572a98
src/views/flow/todolist.vue
@@ -98,6 +98,7 @@
                            label: 'name',
                            value: 'id',
                        },
                        display: true,
                        filterable: true,
                        span: 24,
                        disabled: false,
@@ -197,8 +198,16 @@
                    },
                    {
                        label: '流程名称',
                        prop: 'processDefinitionName',
                        prop: '',
                        width: 100,
                  render: ({ row }) => {
                            return h('p',
                                {
                                    attrs: {},
                                    class: {},
                                    style: {},
                                }, row?.variables?.myProcessName)
                        }
                    },/*
                    {
                        label: '流程类型',
@@ -285,6 +294,7 @@
                    {
                        label: '发送给',
                        prop: 'newAssigneeId',
                        filterable:true,
                        type: 'select',
                        // dicUrl: `/blade-mdm/flow/flow-user-list?deptId=0`,
                        // dicFlag: true,
@@ -294,6 +304,7 @@
                        },
                        span: 24,
                        disabled: false,
                        display: true,
                        dicData: [
                        ],
@@ -332,6 +343,20 @@
            // }
            
        },
        'reassignForm.approve'(val) {
            if(this.reassignType ===3) {
                if(val === 'Y') {
                    this.reassignOption.column[1].disabled = true;
                    this.reassignOption.column[1].display = false;
                    this.reassignForm.newAssigneeId = '';
                } else {
                    this.reassignOption.column[1].display = false;
                    this.reassignOption.column[1].disabled = false;
                    this.reassignForm.newAssigneeId = '';
                }
            }
        }
    },
    computed: {
        ...mapGetters(['userInfo', 'permission']),
@@ -386,31 +411,51 @@
            }
        },
        setAssignee (row, approve) {
            if (approve === 'Y') {
                if (["check", 'cureCheckTask '].includes(row.taskDefinitionKey)) {// 校对
            if (approve === 'Y') {//审批通过的情况
                this.optionApprove.column[1].disabled = false;
                if (["check", 'cureCheckTask','repalceCheckTask'].includes(row.taskDefinitionKey)) {// 校对节点
                    this.formApprove.assignee = row.variables.senior;
                } else if (["programmingTask",'cureProgramTask'].includes(row.taskDefinitionKey)) {// 编制,校对
                } else if (["programmingTask",'cureProgramTask','repalceProgrammingTask'].includes(row.taskDefinitionKey)) {// 编制节点
                    this.formApprove.assignee = row.variables.checker;
                } else if (row.taskDefinitionKey == "teamLeaderTask") {// 任务派工
                } else if (row.taskDefinitionKey == "teamLeaderTask") {// 任务派工(组长)
                    this.optionApprove.column[1].disabled = false;
                    this.formApprove.assignee = row.variables.programmer
                } else if (row.taskDefinitionKey == "confirmIsUseableTask") {
                } else if (row.taskDefinitionKey == "confirmIsUseableTask") {//判断程序是否可用节点,都是发送给校对
                    this.formApprove.assignee = row.variables.checker
                } else if (["approveTask", 'seniorApproveTask','replaceApprove'].includes(row.taskDefinitionKey)) {// 高师审核
                    this.optionApprove.column[1].disabled = true;
                    this.formApprove.assignee = ''; // 如果是通过,则默认指派给自己
                    this.optionApprove.column[1].disabled = true;//最后一个节点"发送给" 禁用
                    this.formApprove.assignee = ''; // 如果是通过流程直接结束
                }
            } else if(approve === 'N'){
                this.formApprove.assignee = ''
                if (["approveTask", 'seniorApproveTask','replaceApprove'].includes(row.taskDefinitionKey)) {// 高师审核
                    this.optionApprove.column[1].disabled = true;
                    getPrevius({processInstanceId: row.processInstanceId}).then(res => {
                        console.log(res)
                        if(res.data.code === 200) {
                            this.formApprove.assignee = res.data.data // 如果是通过,则默认指派给自己
                        }
                    })
                //不通过的情况
                //根据在线文档34行,'发送给'是禁用,但有默认选项
                this.optionApprove.column[1].disabled = true;
                if (["approveTask", 'seniorApproveTask','replaceApprove'].includes(row.taskDefinitionKey)) {
                    //审批节点,上一步是校对
                    this.formApprove.assignee = row.variables.checker;
                }else if(["check", 'cureCheckTask','repalceCheckTask'].includes(row.taskDefinitionKey)){
                    //校对节点,上一步是编程
                    this.formApprove.assignee = row.variables.programmer;
                }else if (["programmingTask"].includes(row.taskDefinitionKey)) {
                    // 编制节点,上一步是组长
                    this.formApprove.assignee = row.variables.teamLeader;
                }else if(["cureProgramTask"].includes(row.taskDefinitionKey)) {
                    //固化编制节点,不通过就结束了,assignee设置=''
                    this.formApprove.assignee = '';
                }else if(["confirmIsUseableTask"].includes(row.taskDefinitionKey)) {
                    //判断是否可用节点,不可用,给编制
                    this.formApprove.assignee = row.variables.programmer;
                }if(['teamLeaderTask'].includes(row.taskDefinitionKey)){
                    this.formApprove.assignee = '';
                }
            }else if(approve === 'R'){
                //驳回,目前只有检查程序是否可用节点
                if(["confirmIsUseableTask"].includes(row.taskDefinitionKey)) {
                    //判断程序是否可用节点,驳回,给组长
                    this.formApprove.assignee = row.variables.teamLeader;
                }
            }
            
@@ -448,14 +493,26 @@
                    }).catch(err => {
                        this.$message.success('操作失败');
                    })
                }).catch(() => {
                    // this.$message.info('已取消操作');
                });
            } else {
                this.reassignBox = true;
                if(val === 3) {//批量审批时 显示通过驳回
                    this.reassignOption.column[0].display = true;
                    this.reassignOption.column[0].dicData[1].label = '不通过';
                    this.reassignForm.approve = 'Y';
                    this.reassignForm.newAssigneeId = '';
                    this.reassignOption.column[1].disabled = true;
                    this.reassignOption.column[1].display = true;
                } else {
                    this.reassignOption.column[0].display = false;
                    this.reassignForm.approve = '';
                }
                if(val ===1) {
                    this.reassignForm.newAssigneeId = this.transferTaskSelection[0].variables.programmer;
                }
            }
            
@@ -469,7 +526,8 @@
                    confirmButtonText: this.$t('submitText'),
                    cancelButtonText: this.$t('cancelText'),
                    type: 'warning',
                }).then(() => {
                }).then((res) => {
                    console.log(res,'>>>>>>')
                    reassgin({
                        ...form,
                        taskId: this.transferTaskSelection[0].taskId,
@@ -489,6 +547,10 @@
                        this.$message.error('操作失败');
                        done()
                    })
                }).catch(() => {
                    console.log('>>>>>>')
                    // this.$message.info('已取消操作');
                    done();
                });
                
            } else if (this.reassignType === 1) {
@@ -517,6 +579,10 @@
                        console.error(err);
                        done()
                    })
                }).catch(() => {
                    console.log('>>>>>>')
                    // this.$message.info('已取消操作');
                    done();
                });
            } else if (this.reassignType === 3) {
                this.$confirm('确认要进行批量审批吗?', '', {
@@ -545,6 +611,10 @@
                        console.error(err);
                        done()
                    })
                }).catch(() => {
                    console.log('>>>>>>')
                    // this.$message.info('已取消操作');
                    done();
                });
            }
        },