fix 工作组成员单位维护编辑联系人清空及邮寄联系人下拉数据错误的问题
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
<template>
|
||||
<j-modal
|
||||
:title="title"
|
||||
:width="width"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
switchFullscreen
|
||||
@ok="handleOk"
|
||||
@cancel="handleCancel"
|
||||
cancelText="关闭">
|
||||
:title="title"
|
||||
:width="width"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
switchFullscreen
|
||||
@ok="handleOk"
|
||||
@cancel="handleCancel"
|
||||
cancelText="关闭">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-row v-if="defaultChargeWay">
|
||||
@@ -36,12 +36,12 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<template
|
||||
v-if="model.payWorkingGroupSubItemContactsList && model.payWorkingGroupSubItemContactsList.length > 0">
|
||||
v-if="model.payWorkingGroupSubItemContactsList && model.payWorkingGroupSubItemContactsList.length > 0">
|
||||
<a-row v-for="(item, index) in model.payWorkingGroupSubItemContactsList" :key="index + ''">
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item :label="`企业联系人${index + 1}`" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<select-contacts :selected-company="selectedCompany"
|
||||
:init-contacts="selectedContact1"
|
||||
:init-contacts="model.payWorkingGroupSubItemContactsList[index]"
|
||||
:placeholder="`请选择企业联系人${index + 1}`"
|
||||
v-decorator="[`payWorkingGroupSubItemContactsList[${index}].contactsId`, {rules: [{ required: index === 0, validator: index === 0 ? validateContactRequired : validateContact }],validateTrigger: 'change'}]"
|
||||
:maxLength='50'
|
||||
@@ -54,10 +54,10 @@
|
||||
<!-- v-show="hasContactOne"-->
|
||||
<a-form-item :label="`备注${index + 1}`" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input
|
||||
:placeholder="`请输入备注${index + 1}`"
|
||||
v-decorator="[`payWorkingGroupSubItemContactsList[${index}].remarks`]"
|
||||
:maxLength='50'
|
||||
@change="e => {e.target.value = (e.target.value + '').trim()}">
|
||||
:placeholder="`请输入备注${index + 1}`"
|
||||
v-decorator="[`payWorkingGroupSubItemContactsList[${index}].remarks`]"
|
||||
:maxLength='50'
|
||||
@change="e => {e.target.value = (e.target.value + '').trim()}">
|
||||
</a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
@@ -165,9 +165,9 @@
|
||||
<a-col :xl="12" :sm="24" v-if="chargeWayType === 3">
|
||||
<a-form-item label="收费通知号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-radio-group
|
||||
class="charge-notice-no"
|
||||
v-decorator="['charge',validatorRules.charge]"
|
||||
@change="handleChargeNoticeChange">
|
||||
class="charge-notice-no"
|
||||
v-decorator="['charge',validatorRules.charge]"
|
||||
@change="handleChargeNoticeChange">
|
||||
<a-radio v-for="item in chargeNoticeList" :key="item.key" :value="item.key">
|
||||
<a-tooltip :title="item.label">
|
||||
{{ item.label }}
|
||||
@@ -247,10 +247,10 @@
|
||||
<!-- :disabled="isContractNumDisabled || isAssociatedContract"-->
|
||||
<!-- @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>-->
|
||||
<select-revenue-contract
|
||||
placeholder="请选择合同号"
|
||||
:company="selectedCompany"
|
||||
:disabled="isContractNumDisabled || isAssociatedContract"
|
||||
v-decorator="['contractNum',validatorRules.contractNum]">
|
||||
placeholder="请选择合同号"
|
||||
:company="selectedCompany"
|
||||
:disabled="isContractNumDisabled || isAssociatedContract"
|
||||
v-decorator="['contractNum',validatorRules.contractNum]">
|
||||
</select-revenue-contract>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
@@ -264,7 +264,7 @@
|
||||
:maxLength='50'
|
||||
@blur="addZero"
|
||||
@change="changeReceivableAmount"
|
||||
></a-input>
|
||||
></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="12" :sm="24">
|
||||
@@ -286,7 +286,7 @@
|
||||
:maxLength='50'
|
||||
@change="changeReceivableAmount"
|
||||
@blur="addZero"
|
||||
></a-input>
|
||||
></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="12" :sm="24">
|
||||
@@ -364,11 +364,11 @@
|
||||
<a-col>
|
||||
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
|
||||
<a-textarea
|
||||
placeholder="请输入备注"
|
||||
:auto-size="{ minRows: 3, maxRows: 6 }"
|
||||
v-decorator="['remarks']"
|
||||
:maxLength='200'
|
||||
@change="e => {e.target.value = (e.target.value + '').trim()}"/>
|
||||
placeholder="请输入备注"
|
||||
:auto-size="{ minRows: 3, maxRows: 6 }"
|
||||
v-decorator="['remarks']"
|
||||
:maxLength='200'
|
||||
@change="e => {e.target.value = (e.target.value + '').trim()}"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -379,23 +379,23 @@
|
||||
|
||||
<script>
|
||||
import pick from 'lodash.pick'
|
||||
import {httpAction} from '@api/manage'
|
||||
import { httpAction } from '@api/manage'
|
||||
import JUpload from '@comp/jero/JUpload'
|
||||
import CompanySelect from '@comp/company/CompanySelect'
|
||||
import SelectContacts from '@comp/company/SelectContacts'
|
||||
import {getWorkingGroupListByNotCompany} from '../../../api/incomePaymentsApi'
|
||||
import { getWorkingGroupListByNotCompany } from '../../../api/incomePaymentsApi'
|
||||
// import { isRepeat } from '../../../utils/util'
|
||||
import {addZero} from '../../../utils/util'
|
||||
import {money} from '../../../utils/validate'
|
||||
import {checkAssociatedProject} from '../../../utils/projectCheck'
|
||||
import { addZero } from '../../../utils/util'
|
||||
import { money } from '../../../utils/validate'
|
||||
import { checkAssociatedProject } from '../../../utils/projectCheck'
|
||||
import SelectRevenueContract from '../../../components/tools/SelectRevenueContract'
|
||||
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||
import {CalcAmountMixin} from '@/mixins/CalcAmountMixin'
|
||||
import { CalcAmountMixin } from '@/mixins/CalcAmountMixin'
|
||||
|
||||
export default {
|
||||
name: 'WorkingGroupMemberUnitModule',
|
||||
components: {JUpload, CompanySelect, SelectContacts, SelectRevenueContract, JDictSelectTag},
|
||||
mixins:[CalcAmountMixin],
|
||||
components: { JUpload, CompanySelect, SelectContacts, SelectRevenueContract, JDictSelectTag },
|
||||
mixins: [CalcAmountMixin],
|
||||
props: {
|
||||
// 默认来款方式(收入合同新增工作组项目,来款方式默认为2--合同)
|
||||
defaultChargeWay: {
|
||||
@@ -451,64 +451,64 @@ export default {
|
||||
form: this.$form.createForm(this),
|
||||
model: {},
|
||||
labelCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 8}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 8 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 16}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 16 }
|
||||
},
|
||||
remarksLabelCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 4}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 4 }
|
||||
},
|
||||
remarksWrapperCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 20}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 20 }
|
||||
},
|
||||
validatorRules: {
|
||||
workingGroupId: {
|
||||
rules: [{required: true, message: '请选择工作组项目'}],
|
||||
rules: [{ required: true, message: '请选择工作组项目' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
chargeCompany: {
|
||||
rules: [{required: true, validator: this.checkCompany}],
|
||||
rules: [{ required: true, validator: this.checkCompany }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
taxRate: {
|
||||
rules: [{ required: true,message: '请选择税率' }],
|
||||
validateTrigger: 'change',initialValue:'0.06'
|
||||
rules: [{ required: true, message: '请选择税率' }],
|
||||
validateTrigger: 'change', initialValue: '0.06'
|
||||
},
|
||||
contactsIdOne: {
|
||||
rules: [{required: true, message: '请选择企业联系人1'}],
|
||||
rules: [{ required: true, message: '请选择企业联系人1' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
contactsRepeat: {
|
||||
rules: [{required: false, validator: this.validateContact}],
|
||||
rules: [{ required: false, validator: this.validateContact }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
mailContactsId: {
|
||||
rules: [{required: true, message: '请选择邮寄联系人'}],
|
||||
rules: [{ required: true, message: '请选择邮寄联系人' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
chargeWay: {
|
||||
rules: [{required: true, message: '请选择来款方式'}],
|
||||
rules: [{ required: true, message: '请选择来款方式' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
receivableAmount: {
|
||||
rules: [{required: true, validator: this.checkMoney}],
|
||||
rules: [{ required: true, validator: this.checkMoney }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
contractNum: {
|
||||
rules: [{required: true, message: '请选择合同号'}],
|
||||
rules: [{ required: true, message: '请选择合同号' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
charge: {
|
||||
rules: [{required: true, message: '请输入收费通知号'}],
|
||||
rules: [{ required: true, message: '请输入收费通知号' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
needInvoice: {
|
||||
rules: [{required: true, message: '请选择发票类型'}],
|
||||
rules: [{ required: true, message: '请选择发票类型' }],
|
||||
validateTrigger: 'change'
|
||||
}
|
||||
},
|
||||
@@ -534,7 +534,8 @@ export default {
|
||||
// 默认的联系人数据
|
||||
defaultPayWorkingGroupSubItemContact: {
|
||||
contactsId: undefined,
|
||||
remarks: null
|
||||
remarks: null,
|
||||
name: null
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -605,18 +606,22 @@ export default {
|
||||
// 是否存在从收入合同传入的签订联系人id
|
||||
this.model.mailContactsId = this.signedContactId || this.model.mailContactsTemporaryId || undefined
|
||||
if (this.model.id) {
|
||||
this.selectedContact1 = {
|
||||
id: this.model.contactsTemporaryIdOne,
|
||||
name: this.model.contactsTemporaryNameOne
|
||||
}
|
||||
this.selectedContact2 = {
|
||||
id: this.model.contactsTemporaryIdTwo,
|
||||
name: this.model.contactsTemporaryNameTwo
|
||||
}
|
||||
this.selectedContact3 = {
|
||||
id: this.model.contactsTemporaryIdThree,
|
||||
name: this.model.contactsTemporaryNameThree
|
||||
}
|
||||
// 传给组件的init-contact值,需要id和name两个属性
|
||||
this.model.payWorkingGroupSubItemContactsList && this.model.payWorkingGroupSubItemContactsList.forEach(item => {
|
||||
item.name = item.contactsTemporaryName
|
||||
})
|
||||
// this.selectedContact1 = {
|
||||
// id: this.model.contactsTemporaryIdOne,
|
||||
// name: this.model.contactsTemporaryNameOne
|
||||
// }
|
||||
// this.selectedContact2 = {
|
||||
// id: this.model.contactsTemporaryIdTwo,
|
||||
// name: this.model.contactsTemporaryNameTwo
|
||||
// }
|
||||
// this.selectedContact3 = {
|
||||
// id: this.model.contactsTemporaryIdThree,
|
||||
// name: this.model.contactsTemporaryNameThree
|
||||
// }
|
||||
this.selectedMailContact = {
|
||||
id: this.model.mailContactsTemporaryId,
|
||||
name: this.model.mailContactsTemporaryName
|
||||
@@ -642,7 +647,7 @@ export default {
|
||||
this.pickChargeNoticeType(record.charge, true)
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
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'))
|
||||
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() {
|
||||
@@ -737,11 +742,11 @@ export default {
|
||||
})
|
||||
return
|
||||
}
|
||||
}else{
|
||||
} else {
|
||||
// 清空之前选中的收费通知号
|
||||
this.selectedChargeNotice = null
|
||||
// 清空未税金额 应收金额 税额
|
||||
this.form.resetFields(['tax','noTaxAmount','receivableAmount'])
|
||||
this.form.resetFields(['tax', 'noTaxAmount', 'receivableAmount'])
|
||||
}
|
||||
this.chargeWayType = e.target.value
|
||||
},
|
||||
@@ -784,14 +789,24 @@ export default {
|
||||
* @param value
|
||||
*/
|
||||
companyChange(value) {
|
||||
// 当前选中的企业和之前选中的企业一致,就不修改了
|
||||
if (this.selectedCompany && value && this.selectedCompany.id === value.id) {
|
||||
return
|
||||
}
|
||||
this.selectedCompany = value
|
||||
this.model.contactsIdOne = undefined
|
||||
this.model.contactsIdTwo = undefined
|
||||
this.model.contactsIdThree = undefined
|
||||
// this.model.contactsIdOne = undefined
|
||||
// this.model.contactsIdTwo = undefined
|
||||
// this.model.contactsIdThree = undefined
|
||||
// 处理默认显示的三个企业联系人
|
||||
this.model.payWorkingGroupSubItemContactsList = []
|
||||
this.model.payWorkingGroupSubItemContactsList.push(this.defaultPayWorkingGroupSubItemContact)
|
||||
this.model.payWorkingGroupSubItemContactsList.push(this.defaultPayWorkingGroupSubItemContact)
|
||||
this.model.payWorkingGroupSubItemContactsList.push(this.defaultPayWorkingGroupSubItemContact)
|
||||
this.model.mailContactsId = undefined
|
||||
this.selectedMailContact = null
|
||||
this.model.contractNum = undefined
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue(pick(this.model, 'contactsIdOne', 'contactsIdTwo', 'contactsIdThree', 'mailContactsId', 'contractNum'))
|
||||
this.form.setFieldsValue(pick(this.model, 'mailContactsId', 'contractNum', 'payWorkingGroupSubItemContactsList'))
|
||||
})
|
||||
},
|
||||
/**
|
||||
@@ -884,7 +899,7 @@ export default {
|
||||
}
|
||||
}
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({payWorkingGroupSubItemContactsList: formData})
|
||||
this.form.setFieldsValue({ payWorkingGroupSubItemContactsList: formData })
|
||||
this.form.validateFields(['payWorkingGroupSubItemContactsList'])
|
||||
})
|
||||
},
|
||||
@@ -938,7 +953,7 @@ export default {
|
||||
let formData = this.form.getFieldValue('payWorkingGroupSubItemContactsList')
|
||||
formData.splice(index + 1, 0, obj)
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({payWorkingGroupSubItemContactsList: formData})
|
||||
this.form.setFieldsValue({ payWorkingGroupSubItemContactsList: formData })
|
||||
})
|
||||
},
|
||||
/**
|
||||
@@ -954,7 +969,7 @@ export default {
|
||||
let formData = this.form.getFieldValue('payWorkingGroupSubItemContactsList')
|
||||
formData.splice(index, 1)
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({payWorkingGroupSubItemContactsList: formData})
|
||||
this.form.setFieldsValue({ payWorkingGroupSubItemContactsList: formData })
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user