【修改】工作组新增成员增加税额 未税金额
This commit is contained in:
@@ -0,0 +1,47 @@
|
|||||||
|
/**
|
||||||
|
* @description 通过税率 计算未税金额 税额的混入
|
||||||
|
* @author fac
|
||||||
|
* */
|
||||||
|
|
||||||
|
export const CalcAmountMixin = {
|
||||||
|
methods:{
|
||||||
|
/**
|
||||||
|
* 改变应收金额 计算税额 未税金额
|
||||||
|
* */
|
||||||
|
changeReceivableAmount(e){
|
||||||
|
e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.calcAmount()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 改变税率计算税额 应收金额
|
||||||
|
* */
|
||||||
|
changeRate(){
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.calcAmount()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 根据应收金额、税率计算税额 、未税金额
|
||||||
|
* */
|
||||||
|
calcAmount(){
|
||||||
|
// 获取应收金额
|
||||||
|
let ysje = Number(this.form.getFieldValue('receivableAmount'))
|
||||||
|
// 没有输入应收金额 不进行计算
|
||||||
|
if(!ysje) return
|
||||||
|
// 获取税率
|
||||||
|
let rate = this.form.getFieldValue('taxRate') * 1
|
||||||
|
// 计算未税金额 未税金额 = 应收金额 * (税率 + 1)
|
||||||
|
let wsje = (ysje / (rate + 1)).toFixed(2)
|
||||||
|
// 计算税额 税额 = 应收金额 - 未税金额 保留两位小数
|
||||||
|
let se = (ysje - Number(wsje)).toFixed(2)
|
||||||
|
// 表单赋值
|
||||||
|
this.form.setFieldsValue({
|
||||||
|
'tax':se,
|
||||||
|
'noTaxAmount':wsje
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -35,7 +35,8 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<template v-if="model.payWorkingGroupSubItemContactsList && model.payWorkingGroupSubItemContactsList.length > 0">
|
<template
|
||||||
|
v-if="model.payWorkingGroupSubItemContactsList && model.payWorkingGroupSubItemContactsList.length > 0">
|
||||||
<a-row v-for="(item, index) in model.payWorkingGroupSubItemContactsList" :key="index + ''">
|
<a-row v-for="(item, index) in model.payWorkingGroupSubItemContactsList" :key="index + ''">
|
||||||
<a-col :xl="12" :sm="24">
|
<a-col :xl="12" :sm="24">
|
||||||
<a-form-item :label="`企业联系人${index + 1}`" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item :label="`企业联系人${index + 1}`" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
@@ -176,8 +177,9 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
<template v-if="chargeWayType === 1 || chargeWayType === 2">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :xl="12" :sm="24" v-if="chargeWayType === 1 || chargeWayType === 2">
|
<a-col :xl="12" :sm="24">
|
||||||
<a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-row :gutter="10">
|
<a-row :gutter="10">
|
||||||
<a-col :span="20">
|
<a-col :span="20">
|
||||||
@@ -185,12 +187,58 @@
|
|||||||
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
|
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@blur="addZero"
|
@blur="addZero"
|
||||||
|
@change="changeReceivableAmount"></a-input>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="1">元</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
<a-col :xl="12" :sm="24">
|
||||||
|
<a-form-item label="税率" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<j-dict-select-tag @change="changeRate" placeholder="请选择税率" dict-code="rate" :trigger-change="true"
|
||||||
|
v-decorator="['taxRate',validatorRules.taxRate]"></j-dict-select-tag>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
|
||||||
|
<a-row>
|
||||||
|
<a-col :xl="12" :sm="24">
|
||||||
|
<a-form-item label="税额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-row :gutter="10">
|
||||||
|
<a-col :span="20">
|
||||||
|
<a-input placeholder="请输入税额"
|
||||||
|
v-decorator="['tax',validatorRules.tax]"
|
||||||
|
:maxLength='50'
|
||||||
|
@blur="addZero"
|
||||||
|
read-only
|
||||||
|
disabled
|
||||||
@change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
|
@change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="1">元</a-col>
|
<a-col :span="1">元</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
|
<a-col :xl="12" :sm="24">
|
||||||
|
<a-form-item label="未税金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-row :gutter="10">
|
||||||
|
<a-col :span="20">
|
||||||
|
<a-input placeholder="请输入未税金额"
|
||||||
|
v-decorator="['noTaxAmount',validatorRules.noTaxAmount]"
|
||||||
|
:maxLength='50'
|
||||||
|
disabled
|
||||||
|
@blur="addZero"
|
||||||
|
read-only
|
||||||
|
@change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="1">元</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
<a-row>
|
||||||
<a-col :xl="12" :sm="24" v-if="chargeWayType === 2">
|
<a-col :xl="12" :sm="24" v-if="chargeWayType === 2">
|
||||||
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<!-- <a-input placeholder="请输入合同号"-->
|
<!-- <a-input placeholder="请输入合同号"-->
|
||||||
@@ -207,6 +255,7 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'A'">
|
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'A'">
|
||||||
<a-col :xl="12" :sm="24">
|
<a-col :xl="12" :sm="24">
|
||||||
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
@@ -284,15 +333,18 @@ import JUpload from '@comp/jero/JUpload'
|
|||||||
import CompanySelect from '@comp/company/CompanySelect'
|
import CompanySelect from '@comp/company/CompanySelect'
|
||||||
import SelectContacts from '@comp/company/SelectContacts'
|
import SelectContacts from '@comp/company/SelectContacts'
|
||||||
import {getWorkingGroupListByNotCompany} from '../../../api/incomePaymentsApi'
|
import {getWorkingGroupListByNotCompany} from '../../../api/incomePaymentsApi'
|
||||||
import { isRepeat } from '../../../utils/util'
|
// import { isRepeat } from '../../../utils/util'
|
||||||
import {addZero} from '../../../utils/util'
|
import {addZero} from '../../../utils/util'
|
||||||
import {money} from '../../../utils/validate'
|
import {money} from '../../../utils/validate'
|
||||||
import {checkAssociatedProject} from '../../../utils/projectCheck'
|
import {checkAssociatedProject} from '../../../utils/projectCheck'
|
||||||
import SelectRevenueContract from '../../../components/tools/SelectRevenueContract'
|
import SelectRevenueContract from '../../../components/tools/SelectRevenueContract'
|
||||||
|
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||||
|
import {CalcAmountMixin} from '@/mixins/CalcAmountMixin'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'WorkingGroupMemberUnitModule',
|
name: 'WorkingGroupMemberUnitModule',
|
||||||
components: { JUpload, CompanySelect, SelectContacts, SelectRevenueContract },
|
components: {JUpload, CompanySelect, SelectContacts, SelectRevenueContract, JDictSelectTag},
|
||||||
|
mixins:[CalcAmountMixin],
|
||||||
props: {
|
props: {
|
||||||
// 默认来款方式(收入合同新增工作组项目,来款方式默认为2--合同)
|
// 默认来款方式(收入合同新增工作组项目,来款方式默认为2--合同)
|
||||||
defaultChargeWay: {
|
defaultChargeWay: {
|
||||||
@@ -372,6 +424,10 @@ export default {
|
|||||||
rules: [{required: true, validator: this.checkCompany}],
|
rules: [{required: true, validator: this.checkCompany}],
|
||||||
validateTrigger: 'change'
|
validateTrigger: 'change'
|
||||||
},
|
},
|
||||||
|
taxRate: {
|
||||||
|
rules: [{ required: true,message: '请选择税率' }],
|
||||||
|
validateTrigger: 'change',initialValue:'0.06'
|
||||||
|
},
|
||||||
contactsIdOne: {
|
contactsIdOne: {
|
||||||
rules: [{required: true, message: '请选择企业联系人1'}],
|
rules: [{required: true, message: '请选择企业联系人1'}],
|
||||||
validateTrigger: 'change'
|
validateTrigger: 'change'
|
||||||
@@ -535,7 +591,7 @@ export default {
|
|||||||
this.pickChargeNoticeType(record.charge, true)
|
this.pickChargeNoticeType(record.charge, true)
|
||||||
this.visible = true
|
this.visible = true
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.form.setFieldsValue(pick(this.model, 'chargeCompany', 'contactsIdOne', 'contactsIdTwo', 'contactsIdThree', 'mailContactsId', 'chargeWay', 'charge', 'receivableAmount', 'contractNum', 'receivableAmount', 'chargeNoticeId', 'needInvoice', 'remarks', 'remarksOne', 'remarksTwo', 'remarksThree', 'payWorkingGroupSubItemContactsList'))
|
this.form.setFieldsValue(pick(this.model, 'chargeCompany', 'contactsIdOne', 'contactsIdTwo', 'contactsIdThree', 'mailContactsId', 'chargeWay', 'charge', 'receivableAmount','taxRate','tax','noTaxAmount', 'contractNum', 'receivableAmount', 'chargeNoticeId', 'needInvoice', 'remarks', 'remarksOne', 'remarksTwo', 'remarksThree', 'payWorkingGroupSubItemContactsList'))
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
|
|||||||
Reference in New Issue
Block a user