diff --git a/src/main/resources/templates/admin/business/process-edit.ftl b/src/main/resources/templates/admin/business/process-edit.ftl index 0a5e003..8643dc9 100644 --- a/src/main/resources/templates/admin/business/process-edit.ftl +++ b/src/main/resources/templates/admin/business/process-edit.ftl @@ -91,8 +91,8 @@
- + @@ -364,6 +364,7 @@ fileList: [], // 销售合同收入明细 incomeDetails: [], + selectedDepts: [] } } @@ -600,7 +601,49 @@ }, applyDeptSelected(value) { - console.log(value) + if (value.length === 0) { + this.processForm['applyDept'] = null + this.processForm['applyDeptId'] = null + this.processForm['applyDeptLeaderId'] = null + this.processForm['applyDeptLeaderName'] = null + return; + } + + const level1Value = value[0] + const level2Value = value.length >= 2 && value[1] + const level3Value = value.length === 3 && value[2] + let opt; + + const find = (options, value) => { + return options.find(option => option.id === value) + } + + const leveled = [] + let selected = find(this.applyDeptSectorOptions, level1Value) + leveled.push(selected) + if (selected && level2Value) { + selected = find(selected.children, level2Value) + if (selected && level3Value) { + leveled.push(selected) + selected = find(selected.children, level3Value) + if (selected) { + leveled.push(selected) + opt = selected + } + } + else { + opt = selected + } + } + else { + opt = selected + } + + this.selectedDepts = leveled.map(level => level.id) + this.processForm['applyDept'] = leveled.map(level => level.name).join(',') + this.processForm['applyDeptId'] = leveled.map(level => level.id).join(',') + this.processForm['applyDeptLeaderId'] = opt.leaderId + this.processForm['applyDeptLeaderName'] = opt.leaderName }, } diff --git a/src/main/resources/templates/admin/business/process-new.ftl b/src/main/resources/templates/admin/business/process-new.ftl index 45de785..9c43fbd 100644 --- a/src/main/resources/templates/admin/business/process-new.ftl +++ b/src/main/resources/templates/admin/business/process-new.ftl @@ -143,8 +143,8 @@
- + @@ -153,7 +153,7 @@ - {{processForm.applyDeptLeaderName}} + {{processForm.applyDeptLeaderName}} 未选择部门 @@ -478,7 +478,8 @@ fileList: [], // 销售合同收入明细 incomeDetails: [], - processType: "" + processType: "", + selectedDepts: [] } } @@ -574,6 +575,10 @@ this.incomeDetails = incomeDetails.map(detail => ({ ...detail, type: computeType(detail.type) })) + + if (!form.projectNo || !form.projectName) { + this.$message.warning("当前选择的项目没有编号或者名称"); + } }) .catch(err => { this.$message.error("项目'" + name + "'加载失败"); @@ -730,8 +735,6 @@ }, applyDeptSelected(value) { - console.log(value) - const sectorOptions = this.applyDeptSectorOptions if (value.length === 0) { this.processForm['applyDept'] = null this.processForm['applyDeptId'] = null @@ -750,7 +753,7 @@ } const leveled = [] - let selected = find(sectorOptions, level1Value) + let selected = find(this.applyDeptSectorOptions, level1Value) leveled.push(selected) if (selected && level2Value) { selected = find(selected.children, level2Value) @@ -770,8 +773,9 @@ opt = selected } + this.selectedDepts = leveled.map(level => level.id) this.processForm['applyDept'] = leveled.map(level => level.name).join(',') - this.processForm['applyDeptId'] = opt.id + this.processForm['applyDeptId'] = leveled.map(level => level.id).join(',') this.processForm['applyDeptLeaderId'] = opt.leaderId this.processForm['applyDeptLeaderName'] = opt.leaderName },