[update] 收入、支出合同签订合同总金额、未税金额计算修改
This commit is contained in:
+41
-7
@@ -88,11 +88,10 @@
|
||||
<a-col :xxl="6" :xl="8" :sm="12">
|
||||
<a-form-item label="未税金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入未税金额"
|
||||
v-decorator="['noTaxAmount']"
|
||||
v-decorator="['noTaxAmount',validatorRules.noTaxAmount]"
|
||||
:maxLength='50'
|
||||
@blur="addZero"
|
||||
:disabled="true"
|
||||
@change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
|
||||
@change="noTaxChange"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -265,8 +264,9 @@ export default {
|
||||
model: {},
|
||||
selectedCompany: null,
|
||||
selectedContact: null,
|
||||
rateNum: null,
|
||||
contractAmountNum: null,
|
||||
rateNum: null, // 税率
|
||||
contractAmountNum: null, // 合同总金额
|
||||
inputNoTaxAmount: null, // 未税金额
|
||||
amountReceivedNum: null, // 已收金额
|
||||
accountsReceivableNum: null, // 应收金额
|
||||
isPackage: false,
|
||||
@@ -307,6 +307,10 @@ export default {
|
||||
rules: [{ required: true, message: '请输入税率' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
noTaxAmount: {
|
||||
rules: [{ required: false, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
accountsReceivableAmount: {
|
||||
rules: [{ required: true, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
@@ -339,6 +343,11 @@ export default {
|
||||
add() {
|
||||
this.title = '新建支出合同'
|
||||
this.$refs.installmentForm.initInstallmentList([])
|
||||
// 税率默认为6
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({rate: 6})
|
||||
})
|
||||
this.rateNum = 6 / 100
|
||||
},
|
||||
edit(id) {
|
||||
this.title = '编辑支出合同'
|
||||
@@ -510,7 +519,7 @@ export default {
|
||||
*/
|
||||
contractAmountChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
|
||||
this.contractAmountNum = e.target.value
|
||||
this.contractAmountNum = Number(e.target.value)
|
||||
this.calculateNoTaxAmount()
|
||||
},
|
||||
/**
|
||||
@@ -520,7 +529,21 @@ export default {
|
||||
rateChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
|
||||
this.rateNum = Number(e.target.value) / 100
|
||||
this.calculateNoTaxAmount()
|
||||
// 签订合同总金额为空--计算签订合同总金额,否则计算未税金额
|
||||
if (!this.contractAmountNum) {
|
||||
this.calculateContractAmount()
|
||||
} else {
|
||||
this.calculateNoTaxAmount()
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 未税金额修改
|
||||
* @param e
|
||||
*/
|
||||
noTaxChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()
|
||||
this.inputNoTaxAmount = Number(e.target.value)
|
||||
this.calculateContractAmount()
|
||||
},
|
||||
/**
|
||||
* 计算未税金额
|
||||
@@ -536,6 +559,17 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 计算合同总金额
|
||||
*/
|
||||
calculateContractAmount() {
|
||||
if (!this.rateNum && !this.inputNoTaxAmount) {
|
||||
return
|
||||
}
|
||||
let contractNum = this.inputNoTaxAmount * (1 + this.rateNum)
|
||||
contractNum = contractNum.toFixed(2)
|
||||
this.form.setFieldsValue({contractAmount: contractNum})
|
||||
},
|
||||
/**
|
||||
* 应收金额输入
|
||||
* @param value
|
||||
|
||||
@@ -92,11 +92,10 @@
|
||||
<a-col :xxl="6" :xl="8" :sm="12">
|
||||
<a-form-item label="未税金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入未税金额"
|
||||
v-decorator="['noTaxAmount']"
|
||||
v-decorator="['noTaxAmount',validatorRules.noTaxAmount]"
|
||||
:maxLength='50'
|
||||
@blur="addZero"
|
||||
:disabled="true"
|
||||
@change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
|
||||
@change="noTaxChange"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -369,6 +368,10 @@ export default {
|
||||
rules: [{ required: true, message: '请输入税率' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
noTaxAmount: {
|
||||
rules: [{ required: false, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
accountsReceivableAmount: {
|
||||
rules: [{ required: true, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
@@ -400,6 +403,7 @@ export default {
|
||||
amountReceivedNum: null, // 输入的未收金额
|
||||
contractAmountNum: null, // 输入的签订合同总金额
|
||||
rateNum: null, // 输入的税率
|
||||
inputNoTaxAmount: null, // 未税金额
|
||||
selectedContact: null, // 联系人回显
|
||||
associatedProjectLoading: false,
|
||||
contractId: '', // 收入合同id
|
||||
@@ -424,6 +428,11 @@ export default {
|
||||
add() {
|
||||
this.title = '新建收入合同'
|
||||
this.$refs.installmentForm.initInstallmentList([])
|
||||
// 税率默认为6
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({rate: 6})
|
||||
})
|
||||
this.rateNum = 6 / 100
|
||||
},
|
||||
edit(id) {
|
||||
this.title = '编辑收入合同'
|
||||
@@ -568,7 +577,7 @@ export default {
|
||||
*/
|
||||
contractAmountChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
|
||||
this.contractAmountNum = e.target.value
|
||||
this.contractAmountNum = Number(e.target.value)
|
||||
this.calculateNoTaxAmount()
|
||||
},
|
||||
/**
|
||||
@@ -578,7 +587,21 @@ export default {
|
||||
rateChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
|
||||
this.rateNum = Number(e.target.value) / 100
|
||||
this.calculateNoTaxAmount()
|
||||
// 签订合同总金额为空--计算签订合同总金额,否则计算未税金额
|
||||
if (!this.contractAmountNum) {
|
||||
this.calculateContractAmount()
|
||||
} else {
|
||||
this.calculateNoTaxAmount()
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 未税金额修改
|
||||
* @param e
|
||||
*/
|
||||
noTaxChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()
|
||||
this.inputNoTaxAmount = Number(e.target.value)
|
||||
this.calculateContractAmount()
|
||||
},
|
||||
/**
|
||||
* 计算未税金额
|
||||
@@ -593,6 +616,17 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 计算合同总金额
|
||||
*/
|
||||
calculateContractAmount() {
|
||||
if (!this.rateNum && !this.inputNoTaxAmount) {
|
||||
return
|
||||
}
|
||||
let contractNum = this.inputNoTaxAmount * (1 + this.rateNum)
|
||||
contractNum = contractNum.toFixed(2)
|
||||
this.form.setFieldsValue({contractAmount: contractNum})
|
||||
},
|
||||
/**
|
||||
* 应收金额输入
|
||||
* @param value
|
||||
|
||||
Reference in New Issue
Block a user