结算金额处略微调整

This commit is contained in:
BianLzhaoMin 2024-08-15 09:34:06 +08:00
parent 2ed34bec99
commit f3312f4970
1 changed files with 77 additions and 30 deletions

View File

@ -36,7 +36,6 @@
repairCost repairCost
}}报废费用¥{{ scrapCost }}丢失费用{{ loseCost }} }}报废费用¥{{ scrapCost }}丢失费用{{ loseCost }}
</div> </div>
<div> <div>
<el-table <el-table
:data="leaseList" :data="leaseList"
@ -420,14 +419,20 @@
:max="100000000" :max="100000000"
@input="countNum(scope.row)" @input="countNum(scope.row)"
></el-input-number> --> ></el-input-number> -->
<el-input-number <!-- <el-input-number
controls-position="right" controls-position="right"
style="width: 150px" style="width: 150px"
v-model="scope.row.addCost" v-model="scope.row.addCost"
:min="0" :min="0"
:max="99999999" :max="99999999"
@change="onAddChange(scope.row)" @change="onAddChange(scope.row)"
></el-input-number> ></el-input-number> -->
<el-input
v-model="scope.row.addCost"
clearable
@change="onAddChange(scope.row)"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@ -445,14 +450,20 @@
:max="scope.row.cost" :max="scope.row.cost"
@input="countNum(scope.row)" @input="countNum(scope.row)"
></el-input-number> --> ></el-input-number> -->
<el-input-number <!-- <el-input-number
controls-position="right" controls-position="right"
style="width: 150px" style="width: 150px"
v-model="scope.row.subCost" v-model="scope.row.subCost"
:min="0" :min="0"
:max="subCostFlag" :max="subCostFlag"
@change="onSubChange(scope.row)" @change="onSubChange(scope.row)"
></el-input-number> ></el-input-number> -->
<el-input
v-model="scope.row.subCost"
clearable
@change="onSubChange(scope.row)"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
@ -732,46 +743,82 @@ export default {
/** 费用增项时触发的事件 */ /** 费用增项时触发的事件 */
onAddChange(row) { onAddChange(row) {
if (row.addCost === undefined) { this.$message.closeAll()
const isRegex = this.isNumRegex(row.addCost)
if (!isRegex && row.addCost != '') {
this.$message.error('请输入大于等于0或包含两位小数点的数字')
row.addCost = 0 row.addCost = 0
} }
if (row.addCost >= 100000000) {
if (row.addCost * 1 >= 100000000) {
this.$message.error('增项费用不能超过1亿') this.$message.error('增项费用不能超过1亿')
row.addCost = 99999999 row.addCost = 99999999
} }
row.cost = (
// 0
if (
row.leaseCost + row.leaseCost +
row.repairCost + row.repairCost +
row.scrapCost + row.scrapCost +
row.loseCost + row.loseCost +
row.addCost - row.addCost * 1 <
row.subCost row.subCost * 1
).toFixed(2) ) {
row.subCost = 0
}
row.addCost = row.addCost * 1
this.$nextTick(() => {
row.cost = (
row.leaseCost +
row.repairCost +
row.scrapCost +
row.loseCost +
row.addCost * 1 -
row.subCost * 1
).toFixed(2)
})
}, },
/** 费用减项时触发事件 */ /** 费用减项时触发事件 */
onSubChange(row) { onSubChange(row) {
if (row.subCost === undefined) { this.$message.closeAll()
const isRegex = this.isNumRegex(row.subCost)
if (!isRegex && row.subCost != '') {
this.$message.error('请输入大于等于0或包含两位小数点的数字')
row.subCost = 0 row.subCost = 0
} }
if (row.subCost > this.costAll && this.costAll === row.cost) { row.subCost = row.subCost * 1
if (row.subCost > row.cost && this.costAll <= row.cost) {
this.$message.error('减免费用不能超过小计费用') this.$message.error('减免费用不能超过小计费用')
this.subCostFlag = row.costAll
row.subCost = this.costAll
}
if (row.cost > this.costAll) {
this.$message.error('减免费用不能超过小计费用')
this.subCostFlag = row.cost
row.subCost = row.cost row.subCost = row.cost
} }
row.cost = ( if (row.subCost > row.cost && this.costAll > row.cost) {
row.leaseCost + this.$message.error('减免费用不能超过小计费用')
row.repairCost + row.subCost = this.costAll
row.scrapCost + }
row.loseCost +
row.addCost - if (row.cost == 0 && row.subCost != '') {
row.subCost this.$message.error('小计费用已为0无法再减免')
).toFixed(2) row.subCost = 0
}
this.$nextTick(() => {
row.cost = (
row.leaseCost +
row.repairCost +
row.scrapCost +
row.loseCost +
row.addCost * 1 -
row.subCost * 1
).toFixed(2)
})
},
isNumRegex(val) {
const regex = /^(0|[1-9]\d*)(\.\d{2})?$/
const isNum = regex.test(val)
return isNum
}, },
// //