Browse Source

修复编辑公司占比计算

dev-xx
马远东 1 year ago
parent
commit
250c9eea7a
  1. 78
      src/views/aftersales/aftersalesWorkOrdermodify.vue

78
src/views/aftersales/aftersalesWorkOrdermodify.vue

@ -312,13 +312,21 @@
</div> </div>
<div class="maxBox el_zb"> <div class="maxBox el_zb">
<span class="title">占比:</span> <span class="title">占比:</span>
<el-input <el-input-number
v-model="item.responsibilityRatio" v-model="item.responsibilityRatio"
:controls="false"
placeholder="占比" placeholder="占比"
:disabled="RouterState == 'Kfend'" :disabled="RouterState == 'Kfend'"
:rows="2" :rows="2"
@input="ProportionInput" :max="item.ProportionMax"
@input="CompanyProportionInput(item)"
/> />
<span>%</span>
</div>
<div class="maxBox">
<el-form-item label="三方责任人">
<el-input v-model="item.tripartite" placeholder="请输入三方责任人" />
</el-form-item>
</div> </div>
<div class="maxBox"> <div class="maxBox">
@ -343,7 +351,7 @@
</div> </div>
</div> </div>
<div class="Proportion"> <div class="Proportion">
<span class="title">公司占比:{{ companyProportion }}</span> <span class="title">公司占比:{{ companyProportion }}%</span>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
@ -696,7 +704,7 @@ const valueStrictly = ref();
const routerID = ref(null); //ID const routerID = ref(null); //ID
const routerState = ref(''); // const routerState = ref(''); //
const personResponsibleList = ref([]); // const personResponsibleList = ref([]); //
const companyProportion = ref(0); // const companyProportion = ref(100); //
const identifying = ref(1); // const identifying = ref(1); //
const dialogHistoricalPackage = ref(false); // const dialogHistoricalPackage = ref(false); //
const HistoricalPackageList = ref([]); // const HistoricalPackageList = ref([]); //
@ -746,7 +754,7 @@ const PackageInfo = ref([
]); ]);
// //
const FangAddList = ref([ const FangAddList = ref([
{ businessName: '', personResponsibleName: '', responsibilityRatio: '', description: '' }, { businessName: '', personResponsibleName: '', responsibilityRatio: '', description: '',tripartite:'' },
]); ]);
// //
const responsible = ref([ const responsible = ref([
@ -920,12 +928,16 @@ const onLoad = () => {
FangAddList.value = res.data.data.personResponsibleVOS.map(res => { FangAddList.value = res.data.data.personResponsibleVOS.map(res => {
ResponsiblepartyData.value.push(res); ResponsiblepartyData.value.push(res);
return { return {
businessName: res.businessId, //ID businessName: res.businessId, //ID
personResponsibleName: res.personResponsibleName, // personResponsibleName: res.personResponsibleName, //
responsibilityRatio: res.responsibilityRatio, // responsibilityRatio: res.responsibilityRatio, //
tripartite:res.tripartite,//
description: res.description, // description: res.description, //
ProportionMax:100
}; };
}); });
InitialresponsibleParty.value = JSON.parse(JSON.stringify(FangAddList.value)); // InitialresponsibleParty.value = JSON.parse(JSON.stringify(FangAddList.value)); //
@ -973,7 +985,6 @@ const onLoad = () => {
return { return {
input: item.money, input: item.money,
min: 0, min: 0,
max: 9999999999999999999999999999,
state: item.resultType, state: item.resultType,
payment: item.compensationMethod, payment: item.compensationMethod,
name: item.resultTypeName, name: item.resultTypeName,
@ -1093,16 +1104,41 @@ const abnormalChange = val => {
} }
}; };
// //
const ProportionInput = () => { const CompanyProportion = val => {
console.log(FangAddList.value, '公司占比'); console.log(val,'接受的值');
setTimeout(() => {
console.log(FangAddList.value, ' FangAddList.value');
let proportion = 0; //
FangAddList.value.forEach(item => {
proportion += Number(item.responsibilityRatio);
});
// companyProportion
companyProportion.value = 100 - proportion;
let sum = 0; let sum = 0;
FangAddList.value.forEach(item => { FangAddList.value.forEach(item => {
sum = Number(item.responsibilityRatio) + sum; console.log(item.responsibilityRatio, '当前比例');
sum += Number(item.responsibilityRatio);
}); });
sum = 100 - sum; console.log(sum, '当前比例之和');
companyProportion.value = sum; let max = (100 - sum )+ Number(val.responsibilityRatio);
console.log(sum, '公司占比'); console.log('MAX当前最大值', max);
if (val.ProportionMax) {
val.ProportionMax = max;
}
}, 0);
}; };
//
const CompanyProportionInput = item => {
console.log(item, '接收的值');
CompanyProportion(item);
};
// //
const DiscoveringNodesChange = val => { const DiscoveringNodesChange = val => {
groundlineSet.value = false; //线 groundlineSet.value = false; //线
@ -1142,18 +1178,30 @@ const PackagRemoval = (val, item) => {
}; };
// //
const responsibleParty = () => { const responsibleParty = () => {
let sum = 0;
FangAddList.value.forEach(item => {
console.log(item.responsibilityRatio, '当前比例');
sum += Number(item.responsibilityRatio);
});
console.log(sum, '当前总和');
let max = 100 - sum;
console.log('添加了责任方');
FangAddList.value.push({ FangAddList.value.push({
businessName: '', businessName: '',
personResponsibleName: '', personResponsibleName: '',
tripartite: '',
responsibilityRatio: '', responsibilityRatio: '',
description: '', description: '',
ProportionMax: max,
}); });
console.log(max, '当前最大值');
console.log(FangAddList.value,'最新参数');
}; };
// //
const ResponsibilityRemoval = (val, item) => { const ResponsibilityRemoval = (val, item) => {
unProcessorEntityList.value.push(item); unProcessorEntityList.value.push(item);
console.log(unProcessorEntityList.value, '移除责任方');
FangAddList.value.splice(val, 1); // FangAddList.value.splice(val, 1); //
CompanyProportion(val);
}; };
// //
const TopChange = val => { const TopChange = val => {
@ -2088,6 +2136,7 @@ const ViewPackageDetails = val => {
align-items: center; align-items: center;
width: 30%; width: 30%;
margin-right: 16px; margin-right: 16px;
font-size: 14px;
.title { .title {
width: 80px; width: 80px;
font-size: 14px; font-size: 14px;
@ -2096,6 +2145,9 @@ const ViewPackageDetails = val => {
.el-select { .el-select {
width: 100%; width: 100%;
} }
:deep(.el-form-item){
margin-bottom: 0;
}
} }
.el-btn { .el-btn {
margin-left: 5%; margin-left: 5%;

Loading…
Cancel
Save