[update] 金额小数点;选择企业新增;批量打包开票金额限制

This commit is contained in:
zhaoxiao
2021-09-15 17:15:50 +08:00
parent 7d8e25036a
commit 15d7f4ca78
17 changed files with 298 additions and 91 deletions
@@ -70,6 +70,7 @@
<script>
import JDate from '../../../components/tools/JDate'
import { money } from '../../../utils/validate'
import { addZero } from '../../../utils/util'
export default {
name: 'BatchIncomePaymentModule',
@@ -167,14 +168,27 @@ export default {
],
dataSource: [],
inputIncomingAmount: null, // 输入的来款金额
disableMixinCreated: true
disableMixinCreated: true,
sumAmountOwed: 0, // 总欠款金额
}
},
methods: {
addZero,
getAddZero(value) {
let e = {
target: {
value: value.toString()
}
}
this.addZero(e)
return e.target.value
},
loadData() {
// 计算项目欠款信息
this.dataSource.forEach(item => {
item.amountOwed = Number(item.receivableAmount) - Number(item.paidAmount)
let amountOwed = Number(item.receivableAmount) - Number(item.paidAmount)
item.amountOwed = this.getAddZero(amountOwed)
this.sumAmountOwed += Number(item.amountOwed)
})
this.$forceUpdate()
},
@@ -190,6 +204,7 @@ export default {
this.loadData()
},
close() {
this.clearThisTimeAmount()
this.$emit('update:visible', false)
},
/**
@@ -197,8 +212,13 @@ export default {
* @param e
*/
incomingAmountBlur(e) {
this.addZero(e)
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
this.inputIncomingAmount = Number(e.target.value)
if (this.inputIncomingAmount > this.sumAmountOwed) {
this.$message.warn('来款金额大于总欠款金额,请修改')
return
}
this.clearThisTimeAmount().then(() => {
this.calculateThisTimeAmount()
this.$forceUpdate()
@@ -211,7 +231,7 @@ export default {
clearThisTimeAmount() {
return new Promise(resolve => {
this.dataSource.forEach(item => {
item.thisIncomingAmount = null
item.thisIncomingAmount = 0.00
})
resolve()
})
@@ -229,19 +249,20 @@ export default {
if (Number(item.amountOwed) > 0) {
// 输入的来款金额是否 >= 当前项目欠款
if (this.inputIncomingAmount >= Number(item.amountOwed)) {
item.thisIncomingAmount = Number(item.amountOwed)
item.thisIncomingAmount = this.getAddZero(Number(item.amountOwed))
this.inputIncomingAmount -= Number(item.amountOwed)
// item.amountOwed = 0
} else {
// 输入的来款金额小于当前项目欠款且剩余的输入来款金额大于0,则将剩余全部来款算入当前项目的此次来款
if (this.inputIncomingAmount > 0) {
item.thisIncomingAmount = this.inputIncomingAmount
item.thisIncomingAmount = this.getAddZero(this.inputIncomingAmount)
// item.amountOwed = Number(item.amountOwed) - item.thisIncomingAmount
this.inputIncomingAmount = 0
}
}
}
})
console.log(this.dataSource)
}
,
/**