|
|
@ -102,11 +102,11 @@ |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<div class="span-sty">成本合计</div> |
|
|
|
<el-form-item><span class="addinputInfo">{{ formobj.costAmount }}</span></el-form-item> |
|
|
|
<el-form-item><span class="addinputInfo">{{ totalCost }}</span></el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<div class="span-sty">利润额</div> |
|
|
|
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item> |
|
|
|
<el-form-item><span class="addinputInfo">{{ amountOfProfit }}</span></el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
<div class="title">维修项目</div> |
|
|
@ -247,8 +247,6 @@ export default { |
|
|
|
viewTitle: '', |
|
|
|
viewState: 1, |
|
|
|
submitdisabled: false, |
|
|
|
totalCost: '', // 成本合计(用于页面临时计算) |
|
|
|
amountOfProfit: '', // 利润额(用于页面临时计算) |
|
|
|
tableKey: 0, |
|
|
|
index: 0, |
|
|
|
// service服务 |
|
|
@ -314,6 +312,56 @@ export default { |
|
|
|
rules: {} |
|
|
|
} |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
// 单据信息模块 -- 成本合计 = 维修项目列表成本合计 + 维修用料列表成本合计 + 其他附加项目成本合计(附加项目列表成本合计 + 外出费成本 + 厂家补助成本 + 施救费成本) |
|
|
|
totalCost() { |
|
|
|
let cost = '0' |
|
|
|
// 维修项目列表成本合计 |
|
|
|
if (this.formobj.sitemVos.length > 0) { |
|
|
|
this.formobj.sitemVos.forEach((e) => { |
|
|
|
cost = Math.round((parseFloat(cost) + parseFloat(e.sitemCost !== '' ? e.sitemCost : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
// 维修用料列表成本合计 |
|
|
|
if (this.formobj.goodsDetailsVos.length > 0) { |
|
|
|
this.formobj.goodsDetailsVos.forEach((e) => { |
|
|
|
cost = Math.round((parseFloat(cost) + parseFloat(e.goodsCost !== '' ? e.goodsCost : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
// 其他附加项目列表成本合计 |
|
|
|
if (this.formobj.aitemVos.length > 0) { |
|
|
|
this.formobj.aitemVos.forEach((e) => { |
|
|
|
cost = Math.round((parseFloat(cost) + parseFloat(e.aitemCost !== '' ? e.aitemCost : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
cost = Math.round((parseFloat(cost) + parseFloat(this.formobj.outCost !== '' ? this.formobj.outCost : 0) + parseFloat(this.formobj.subsidyCost !== '' ? this.formobj.subsidyCost : 0) + parseFloat(this.formobj.rescueCost !== '' ? this.formobj.rescueCost : 0)) * 100) / 100 |
|
|
|
return cost |
|
|
|
}, |
|
|
|
// 单据信息模块 -- 利润额 = 维修项目列表利润额合计 + 维修用料列表利润额合计 + 其他附加项目利润额合计(附加项目列表利润额合计 + 外出费利润额 + 厂家补助利润额 + 施救费利润额) |
|
|
|
amountOfProfit() { |
|
|
|
let print = '0' |
|
|
|
// 维修项目列表成本合计 |
|
|
|
if (this.formobj.sitemVos.length > 0) { |
|
|
|
this.formobj.sitemVos.forEach((e) => { |
|
|
|
print = Math.round((parseFloat(print) + parseFloat(e.sitemPrint !== '' ? e.sitemPrint : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
// 维修用料列表成本合计 |
|
|
|
if (this.formobj.goodsDetailsVos.length > 0) { |
|
|
|
this.formobj.goodsDetailsVos.forEach((e) => { |
|
|
|
print = Math.round((parseFloat(print) + parseFloat(e.goodsPrint !== '' ? e.goodsPrint : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
// 其他附加项目列表成本合计 |
|
|
|
if (this.formobj.aitemVos.length > 0) { |
|
|
|
this.formobj.aitemVos.forEach((e) => { |
|
|
|
print = Math.round((parseFloat(print) + parseFloat(e.aitemPrint !== '' ? e.aitemPrint : 0)) * 100) / 100 |
|
|
|
}) |
|
|
|
} |
|
|
|
print = Math.round((parseFloat(print) + parseFloat(this.formobj.outPrint !== '' ? this.formobj.outPrint : 0) + parseFloat(this.formobj.subsidyPrint !== '' ? this.formobj.subsidyPrint : 0) + parseFloat(this.formobj.rescuePrint !== '' ? this.formobj.rescuePrint : 0)) * 100) / 100 |
|
|
|
return print |
|
|
|
} |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
getNumber(val, limit) { |
|
|
|
val = val.replace(/[^0-9.]/g, '') // 保留数字 |
|
|
@ -341,8 +389,6 @@ export default { |
|
|
|
req.busrepairbillInit({ sid: row.sid, userSid: window.sessionStorage.getItem('userSid'), orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => { |
|
|
|
if (res.success) { |
|
|
|
this.formobj = res.data |
|
|
|
this.totalCost = this.formobj.costAmount |
|
|
|
this.amountOfProfit = this.formobj.profit |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
@ -360,31 +406,23 @@ export default { |
|
|
|
// 计算附加项目 -- 外出费 -- 利润额 = 不开票金额 - 成本 |
|
|
|
outPrintInput() { |
|
|
|
this.formobj.outPrint = Math.round((parseFloat(this.formobj.outAmount !== '' ? this.formobj.outAmount : 0) - parseFloat(this.formobj.outCost !== '' ? this.formobj.outCost : 0)) * 100) / 100 |
|
|
|
this.costAmountAndPrint() |
|
|
|
}, |
|
|
|
// 计算附加项目 -- 厂家补助 -- 利润额 = 不开票金额 - 成本 |
|
|
|
subsidyPrintInput() { |
|
|
|
this.formobj.subsidyPrint = Math.round((parseFloat(this.formobj.subsidyAmount !== '' ? this.formobj.subsidyAmount : 0) - parseFloat(this.formobj.subsidyCost !== '' ? this.formobj.subsidyCost : 0)) * 100) / 100 |
|
|
|
this.costAmountAndPrint() |
|
|
|
}, |
|
|
|
// 计算附加项目 -- 施救费 -- 利润额 = 不开票金额 - 成本 |
|
|
|
rescuePrintInput() { |
|
|
|
this.formobj.rescuePrint = Math.round((parseFloat(this.formobj.rescueAmount !== '' ? this.formobj.rescueAmount : 0) - parseFloat(this.formobj.rescueCost !== '' ? this.formobj.rescueCost : 0)) * 100) / 100 |
|
|
|
this.costAmountAndPrint() |
|
|
|
}, |
|
|
|
handleOpen(value) { |
|
|
|
window.open(value, '_blank') |
|
|
|
}, |
|
|
|
// 计算单据信息模块 -- 成本合计、利润额 |
|
|
|
costAmountAndPrint() { |
|
|
|
// 成本合计 = 原成本合计 + 其他附加项目成本之和 |
|
|
|
this.formobj.costAmount = Math.round((parseFloat(this.totalCost !== '' ? this.totalCost : 0) + parseFloat(this.formobj.outCost !== '' ? this.formobj.outCost : 0) + parseFloat(this.formobj.subsidyCost !== '' ? this.formobj.subsidyCost : 0) + parseFloat(this.formobj.rescueCost !== '' ? this.formobj.rescueCost : 0)) * 100) / 100 |
|
|
|
// 利润额 = 原利润额 + 其他附加项目利润额之和 |
|
|
|
this.formobj.profit = Math.round((parseFloat(this.amountOfProfit !== '' ? this.amountOfProfit : 0) + parseFloat(this.formobj.outPrint !== '' ? this.formobj.outPrint : 0) + parseFloat(this.formobj.subsidyPrint !== '' ? this.formobj.subsidyPrint : 0) + parseFloat(this.formobj.rescuePrint !== '' ? this.formobj.rescuePrint : 0)) * 100) / 100 |
|
|
|
}, |
|
|
|
submit() { |
|
|
|
this.$refs['form_obj'].validate((valid) => { |
|
|
|
if (valid) { |
|
|
|
this.formobj.costAmount = this.totalCost |
|
|
|
this.formobj.profit = this.amountOfProfit |
|
|
|
this.submitdisabled = true |
|
|
|
req.submit(this.formobj).then((res) => { |
|
|
|
if (res.success) { |
|
|
@ -457,8 +495,6 @@ export default { |
|
|
|
taskId: '', |
|
|
|
instanceId: '' |
|
|
|
} |
|
|
|
this.totalCost = '' |
|
|
|
this.amountOfProfit = '' |
|
|
|
this.submitdisabled = false |
|
|
|
this.$refs['form_obj'].resetFields() |
|
|
|
this.$emit('doback') |
|
|
|