销售合同流程 优化申请部门
parent
be0cbceee2
commit
59a88635cc
|
@ -91,8 +91,8 @@
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<el-form-item label="申请部门" :rules="[{ required: true, message: '申请部门不能为空'}]" prop="applyDept">
|
<el-form-item label="申请部门" :rules="[{ required: true, message: '申请部门不能为空'}]" prop="applyDept">
|
||||||
<el-cascader :options="applyDeptSectorOptions" clearable v-model="processForm.applyDept"
|
<el-cascader :options="applyDeptSectorOptions" clearable v-model="selectedDepts"
|
||||||
:props="{ expandTrigger: 'hover', label:'name', value: 'id'}"></el-cascader>
|
:props="{ expandTrigger: 'hover', label:'name', value: 'id'}" @change="applyDeptSelected"></el-cascader>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="申请人">
|
<el-form-item label="申请人">
|
||||||
|
@ -364,6 +364,7 @@
|
||||||
fileList: [],
|
fileList: [],
|
||||||
// 销售合同收入明细
|
// 销售合同收入明细
|
||||||
incomeDetails: [],
|
incomeDetails: [],
|
||||||
|
selectedDepts: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -600,7 +601,49 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
applyDeptSelected(value) {
|
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
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -143,8 +143,8 @@
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<el-form-item label="申请部门" :rules="[{ required: true, message: '申请部门不能为空'}]" prop="applyDept">
|
<el-form-item label="申请部门" :rules="[{ required: true, message: '申请部门不能为空'}]" prop="applyDept">
|
||||||
<el-cascader :options="applyDeptSectorOptions" clearable v-model="processForm.applyDept"
|
<el-cascader :options="applyDeptSectorOptions" clearable v-model="selectedDepts"
|
||||||
:props="{ expandTrigger: 'click', label:'name', value: 'id'}" @change="applyDeptSelected"></el-cascader>
|
:props="{ expandTrigger: 'hover', label:'name', value: 'id'}" @change="applyDeptSelected"></el-cascader>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="申请人">
|
<el-form-item label="申请人">
|
||||||
|
@ -153,7 +153,7 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="申请部门领导">
|
<el-form-item label="申请部门领导">
|
||||||
<span v-if="projectSelected">{{processForm.applyDeptLeaderName}}</span>
|
<span v-if="processForm.applyDeptLeaderName">{{processForm.applyDeptLeaderName}}</span>
|
||||||
<span v-else>未选择部门</span>
|
<span v-else>未选择部门</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
|
@ -478,7 +478,8 @@
|
||||||
fileList: [],
|
fileList: [],
|
||||||
// 销售合同收入明细
|
// 销售合同收入明细
|
||||||
incomeDetails: [],
|
incomeDetails: [],
|
||||||
processType: ""
|
processType: "",
|
||||||
|
selectedDepts: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -574,6 +575,10 @@
|
||||||
this.incomeDetails = incomeDetails.map(detail => ({
|
this.incomeDetails = incomeDetails.map(detail => ({
|
||||||
...detail, type: computeType(detail.type)
|
...detail, type: computeType(detail.type)
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
if (!form.projectNo || !form.projectName) {
|
||||||
|
this.$message.warning("当前选择的项目没有编号或者名称");
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
this.$message.error("项目'" + name + "'加载失败");
|
this.$message.error("项目'" + name + "'加载失败");
|
||||||
|
@ -730,8 +735,6 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
applyDeptSelected(value) {
|
applyDeptSelected(value) {
|
||||||
console.log(value)
|
|
||||||
const sectorOptions = this.applyDeptSectorOptions
|
|
||||||
if (value.length === 0) {
|
if (value.length === 0) {
|
||||||
this.processForm['applyDept'] = null
|
this.processForm['applyDept'] = null
|
||||||
this.processForm['applyDeptId'] = null
|
this.processForm['applyDeptId'] = null
|
||||||
|
@ -750,7 +753,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
const leveled = []
|
const leveled = []
|
||||||
let selected = find(sectorOptions, level1Value)
|
let selected = find(this.applyDeptSectorOptions, level1Value)
|
||||||
leveled.push(selected)
|
leveled.push(selected)
|
||||||
if (selected && level2Value) {
|
if (selected && level2Value) {
|
||||||
selected = find(selected.children, level2Value)
|
selected = find(selected.children, level2Value)
|
||||||
|
@ -770,8 +773,9 @@
|
||||||
opt = selected
|
opt = selected
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.selectedDepts = leveled.map(level => level.id)
|
||||||
this.processForm['applyDept'] = leveled.map(level => level.name).join(',')
|
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['applyDeptLeaderId'] = opt.leaderId
|
||||||
this.processForm['applyDeptLeaderName'] = opt.leaderName
|
this.processForm['applyDeptLeaderName'] = opt.leaderName
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue