[update] 工作组成员--企业联系人验重

This commit is contained in:
zhaoxiao
2021-09-08 13:33:42 +08:00
parent 49d112da96
commit 70fc45cee2
6 changed files with 688 additions and 646 deletions
@@ -207,6 +207,7 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
that.confirmLoading = true
values.dataSource = this.dataForm values.dataSource = this.dataForm
values.signingUp = this.applyAdd values.signingUp = this.applyAdd
let httpurl = '' let httpurl = ''
@@ -8,92 +8,94 @@
@ok="handleOk" @ok="handleOk"
@cancel="handleCancel" @cancel="handleCancel"
cancelText="关闭"> cancelText="关闭">
<a-form :form="form"> <a-spin :spinning="confirmLoading">
<a-row> <a-form :form="form">
<a-col :xl="12" :sm="24"> <a-row>
<a-form-item label="企业名称" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<company-select placeholder="请选择企业" <a-form-item label="企业名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['company',validatorRules.company]" <company-select placeholder="请选择企业"
:maxLength='50' v-decorator="['company',validatorRules.company]"
:is-company-disabled="isCompanyDisabled" :maxLength='50'
:disabled="isCompanyDisabled" :is-company-disabled="isCompanyDisabled"
@change="companyChange"></company-select> :disabled="isCompanyDisabled"
</a-form-item> @change="companyChange"></company-select>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="姓名" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入姓名" <a-form-item label="姓名" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['name',validatorRules.name]" <a-input placeholder="请输入姓名"
:maxLength='50'></a-input> v-decorator="['name',validatorRules.name]"
</a-form-item> :maxLength='50'></a-input>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row> </a-row>
<a-col :xl="12" :sm="24"> <a-row>
<a-form-item label="性别" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<j-dict-select-tag v-decorator="['gender', {}]" :triggerChange="true" placeholder="请选择性别" <a-form-item label="性别" :labelCol="labelCol" :wrapperCol="wrapperCol">
dictCode="sex"/> <j-dict-select-tag v-decorator="['gender', {}]" :triggerChange="true" placeholder="请选择性别"
</a-form-item> dictCode="sex"/>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入职务" <a-form-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['post']" <a-input placeholder="请输入职务"
:maxLength='50' v-decorator="['post']"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='50'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row> </a-row>
<a-col :xl="12" :sm="24"> <a-row>
<a-form-item label="手机号" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入手机号" <a-form-item label="手机号" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['phone',validatorRules.phone]" <a-input placeholder="请输入手机号"
:maxLength='11' v-decorator="['phone',validatorRules.phone]"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='11'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="邮箱" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入邮箱" <a-form-item label="邮箱" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['email',validatorRules.email]" <a-input placeholder="请输入邮箱"
:maxLength='50' v-decorator="['email',validatorRules.email]"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='50'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row> </a-row>
<a-col :xl="12" :sm="24"> <a-row>
<a-form-item label="通讯地址" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入通讯地址" <a-form-item label="通讯地址" :labelCol="labelCol" :wrapperCol="wrapperCol">
:maxLength='50' <a-input placeholder="请输入通讯地址"
v-decorator="['contactAddress',validatorRules.contactAddress]" :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> v-decorator="['contactAddress',validatorRules.contactAddress]"
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="邮政编码" :labelCol="labelCol" :wrapperCol="wrapperCol" class="form-item-postcode"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入邮政编码" <a-form-item label="邮政编码" :labelCol="labelCol" :wrapperCol="wrapperCol" class="form-item-postcode">
:maxLength='6' <a-input placeholder="请输入邮政编码"
v-decorator="['postalCode',validatorRules.postalCode]" :maxLength='6'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> v-decorator="['postalCode',validatorRules.postalCode]"
<a class="search-postcode" href="https://www.youbianku.com" target="_blank">查询邮编</a> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> <a class="search-postcode" href="https://www.youbianku.com" target="_blank">查询邮编</a>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row> </a-row>
<a-col> <a-row>
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-col>
<a-textarea <a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
placeholder="请输入备注" <a-textarea
:auto-size="{ minRows: 3, maxRows: 6 }" placeholder="请输入备注"
v-decorator="['remarks']" :auto-size="{ minRows: 3, maxRows: 6 }"
:maxLength='200' v-decorator="['remarks']"
@change="e => {e.target.value = (e.target.value + '').trim()}"/> :maxLength='200'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"/>
</a-col> </a-form-item>
</a-row> </a-col>
</a-form> </a-row>
</a-form>
</a-spin>
</j-modal> </j-modal>
</template> </template>
@@ -103,11 +105,11 @@ import { httpAction } from '@api/manage'
import CompanySelect from '@comp/company/CompanySelect' import CompanySelect from '@comp/company/CompanySelect'
import { postcode, phoneReg, isEmail } from '@/utils/validate' import { postcode, phoneReg, isEmail } from '@/utils/validate'
import { duplicateCheck } from '@api/api' import { duplicateCheck } from '@api/api'
import { queryContactByName } from "../../../api/incomePaymentsApi" import { queryContactByName } from '../../../api/incomePaymentsApi'
export default { export default {
name: 'ContactManagementModule', name: 'ContactManagementModule',
components: {CompanySelect}, components: { CompanySelect },
props: { props: {
// 是否可以选择企业 true--不可选;false--可选 // 是否可以选择企业 true--不可选;false--可选
isCompanyDisabled: { isCompanyDisabled: {
@@ -145,20 +147,20 @@ export default {
form: this.$form.createForm(this), form: this.$form.createForm(this),
model: {}, model: {},
labelCol: { labelCol: {
xs: {span: 24}, xs: { span: 24 },
sm: {span: 6} sm: { span: 6 }
}, },
wrapperCol: { wrapperCol: {
xs: {span: 24}, xs: { span: 24 },
sm: {span: 18} sm: { span: 18 }
}, },
remarksLabelCol: { remarksLabelCol: {
xs: {span: 24}, xs: { span: 24 },
sm: {span: 3} sm: { span: 3 }
}, },
remarksWrapperCol: { remarksWrapperCol: {
xs: {span: 24}, xs: { span: 24 },
sm: {span: 21} sm: { span: 21 }
}, },
url: { url: {
add: '/company/payContactsManagement/add', add: '/company/payContactsManagement/add',
@@ -166,31 +168,31 @@ export default {
}, },
validatorRules: { validatorRules: {
company: { company: {
rules: [{required: true, validator: this.checkCompany}], rules: [{ required: true, validator: this.checkCompany }],
validateTrigger: 'change' validateTrigger: 'change'
}, },
name: { name: {
rules: [{required: true, validator: this.checkName}], rules: [{ required: true, validator: this.checkName }],
validateTrigger: 'blur' validateTrigger: 'blur'
}, },
phone: { phone: {
rules: [{required: true, validator: this.checkPhone}], rules: [{ required: true, validator: this.checkPhone }],
validateTrigger: 'blur' validateTrigger: 'blur'
}, },
email: { email: {
rules: [{required: true, validator: this.checkMail}], rules: [{ required: true, validator: this.checkMail }],
validateTrigger: 'blur' validateTrigger: 'blur'
}, },
postalCode: { postalCode: {
rules: [{required: true, validator: this.checkPostcode}], rules: [{ required: true, validator: this.checkPostcode }],
validateTrigger: 'blur' validateTrigger: 'blur'
}, },
contactAddress: { contactAddress: {
rules: [{required: true, message: '请输入通讯地址'}], rules: [{ required: true, message: '请输入通讯地址' }],
validateTrigger: 'blur' validateTrigger: 'blur'
} }
}, },
selectedCompanyId: null, // 当前选择企业的id selectedCompanyId: null // 当前选择企业的id
} }
}, },
methods: { methods: {
@@ -228,6 +230,7 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
that.confirmLoading = true
// 处理企业名称和id等信息 // 处理企业名称和id等信息
values.companyName = values.company.companyName values.companyName = values.company.companyName
values.companyId = values.company.id values.companyId = values.company.id
@@ -1,162 +1,165 @@
<template> <template>
<j-modal <j-modal
:title="title" :title="title"
:width="width" :width="width"
:visible="visible" :visible="visible"
:confirmLoading="confirmLoading" :confirmLoading="confirmLoading"
switchFullscreen switchFullscreen
@ok="handleOk" @ok="handleOk"
@cancel="handleCancel" @cancel="handleCancel"
cancelText="关闭"> cancelText="关闭">
<a-form :form="form"> <a-spin :spinning="confirmLoading">
<a-row> <a-form :form="form">
<a-col> <a-row>
<a-form-item label="来款项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-col>
<a-input placeholder="请输入来款项目" <a-form-item label="来款项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
v-decorator="['chargeProject',validatorRules.chargeProject]" <a-input placeholder="请输入来款项目"
:maxLength='100' v-decorator="['chargeProject',validatorRules.chargeProject]"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='100'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row> </a-row>
<a-col :xl="12" :sm="24"> <a-row>
<a-form-item label="运行年份" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<j-year-date style="width:100%" placeholder="请选择运行年份" <a-form-item label="运行年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['year',validatorRules.year]"></j-year-date> <j-year-date style="width:100%" placeholder="请选择运行年份"
</a-form-item> v-decorator="['year',validatorRules.year]"></j-year-date>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="负责人" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<select-principal placeholder="请选择负责人" <a-form-item label="负责人" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['principalId',validatorRules.principalId]" <select-principal placeholder="请选择负责人"
v-decorator="['principalId',validatorRules.principalId]"
:maxLength='50'>
</select-principal>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="来款企业" :labelCol="labelCol" :wrapperCol="wrapperCol">
<company-select placeholder="请选择来款企业"
v-decorator="['chargeCompany',validatorRules.chargeCompany]"
@change="companyChange"
:disabled="disabledChargeCompany"
:maxLength='50'> :maxLength='50'>
</select-principal> </company-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> <a-col :xl="12" :sm="24">
<a-row> <a-form-item label="来款用途" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-col :xl="12" :sm="24"> <j-dict-select-tag v-decorator="['chargeUse', validatorRules.chargeUse]"
<a-form-item label="来款企业" :labelCol="labelCol" :wrapperCol="wrapperCol"> :triggerChange="true"
<company-select placeholder="请选择来款企业" placeholder="请选择来款用途"
v-decorator="['chargeCompany',validatorRules.chargeCompany]" dictCode="payment_charge_use"/>
@change="companyChange" </a-form-item>
:disabled="disabledChargeCompany" </a-col>
:maxLength='50'> </a-row>
</company-select> <a-row>
</a-form-item> <a-col :xl="12" :sm="24">
</a-col> <a-form-item label="联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-col :xl="12" :sm="24"> <select-contacts :selected-company="selectedCompany"
<a-form-item label="来款用途" :labelCol="labelCol" :wrapperCol="wrapperCol"> :init-contacts="selectedContact"
<j-dict-select-tag v-decorator="['chargeUse', validatorRules.chargeUse]" placeholder="请选择联系人"
:triggerChange="true" v-decorator="['contactsId',validatorRules.contactsId]"
placeholder="请选择来款用途"
dictCode="payment_charge_use"/>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedContact"
placeholder="请选择联系人"
v-decorator="['contactsId',validatorRules.contactsId]"
:maxLength='50'
ref="selectContacts"
@ok="addContactsOk"></select-contacts>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedMailContact"
placeholder="请选择邮寄联系人"
v-decorator="['mailContactsId',validatorRules.mailContactsId]"
:maxLength='50'
ref="selectMailContacts"
@ok="addMailContactsOk"></select-contacts>
</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>
<a-col :span="20">
<a-input placeholder="请输入应收金额"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@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-col :xl="12" :sm="24">
<a-form-item label="需要发票" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag v-decorator="['needInvoice',validatorRules.needInvoice]"
:maxLength='50' :maxLength='50'
:triggerChange="true" ref="selectContacts"
placeholder="请选择发票类型" @ok="addContactsOk"></select-contacts>
dictCode="invoice_type"/> </a-form-item>
</a-form-item> </a-col>
</a-col> <a-col :xl="12" :sm="24">
</a-row> <a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row> <select-contacts :selected-company="selectedCompany"
<a-col :xl="12" :sm="24"> :init-contacts="selectedMailContact"
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol" > placeholder="请选择邮寄联系人"
<span v-if="defaultChargeWay === 2 && chargeWayType === 2">合同</span> v-decorator="['mailContactsId',validatorRules.mailContactsId]"
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange" v-else> :maxLength='50'
<a-radio :value="1"></a-radio> ref="selectMailContacts"
<a-radio :value="2">合同</a-radio> @ok="addMailContactsOk"></select-contacts>
<a-radio :value="3">收费通知</a-radio> </a-form-item>
</a-radio-group> </a-col>
</a-form-item> </a-row>
</a-col> <a-row>
<a-col :xl="12" :sm="24"> <a-col :xl="12" :sm="24">
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="chargeWayType === 2"> <a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入合同号" <a-row>
v-decorator="['contractNum',validatorRules.contractNum]" <a-col :span="20">
:maxLength='50' <a-input placeholder="请输入应收金额"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> v-decorator="['receivableAmount',validatorRules.receivableAmount]"
</a-form-item> :maxLength='50'
</a-col> @change="(e) => {e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()}"></a-input>
</a-row> </a-col>
<a-row v-if="chargeWayType === 3"> <a-col :span="1"></a-col>
<a-col :xl="12" :sm="24"> </a-row>
<a-form-item label="收费通知号" :labelCol="labelCol" :wrapperCol="wrapperCol"> </a-form-item>
<a-input placeholder="请输入收费通知号" </a-col>
v-decorator="['chargeNoticeNo',validatorRules.chargeNoticeNo]" <a-col :xl="12" :sm="24">
:maxLength='50' <a-form-item label="需要发票" :labelCol="labelCol" :wrapperCol="wrapperCol">
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> <j-dict-select-tag v-decorator="['needInvoice',validatorRules.needInvoice]"
</a-form-item> :maxLength='50'
</a-col> :triggerChange="true"
<a-col :xl="12" :sm="24"> placeholder="请选择发票类型"
<a-form-item label="收费通知" :labelCol="labelCol" :wrapperCol="wrapperCol"> dictCode="invoice_type"/>
<j-upload file-type="pdf" </a-form-item>
file-type-error-message="请pdf文件" </a-col>
:multiple="false" </a-row>
:return-id="true" <a-row>
bizPath="payment" <a-col :xl="12" :sm="24">
v-decorator="['chargeNoticeId', validatorRules.chargeNoticeId]" <a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol">
:trigger-change="true"></j-upload> <span v-if="defaultChargeWay === 2 && chargeWayType === 2">合同</span>
</a-form-item> <a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange"
</a-col> v-else>
</a-row> <a-radio :value="1"></a-radio>
<a-row> <a-radio :value="2">合同</a-radio>
<a-col> <a-radio :value="3">收费通知</a-radio>
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> </a-radio-group>
<a-textarea </a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol" v-if="chargeWayType === 2">
<a-input placeholder="请输入合同号"
v-decorator="['contractNum',validatorRules.contractNum]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 3">
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入收费通知号"
v-decorator="['chargeNoticeNo',validatorRules.chargeNoticeNo]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf"
file-type-error-message="请pdf文件"
:multiple="false"
:return-id="true"
bizPath="payment"
v-decorator="['chargeNoticeId', validatorRules.chargeNoticeId]"
:trigger-change="true"></j-upload>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col>
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
<a-textarea
placeholder="请输入备注" placeholder="请输入备注"
:auto-size="{ minRows: 3, maxRows: 6 }" :auto-size="{ minRows: 3, maxRows: 6 }"
v-decorator="['remarks']" v-decorator="['remarks']"
:maxLength='200' :maxLength='200'
@change="e => {e.target.value = (e.target.value + '').trim()}"/> @change="e => {e.target.value = (e.target.value + '').trim()}"/>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form> </a-form>
</a-spin>
</j-modal> </j-modal>
</template> </template>
@@ -192,7 +195,7 @@ export default {
type: Number, type: Number,
required: false, required: false,
default: null default: null
}, }
}, },
data() { data() {
return { return {
@@ -327,6 +330,7 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
that.confirmLoading = true
values.chargeCompanyName = values.chargeCompany.companyName values.chargeCompanyName = values.chargeCompany.companyName
values.chargeCompanyId = values.chargeCompany.id values.chargeCompanyId = values.chargeCompany.id
// 收入合同新建项目手动赋值 // 收入合同新建项目手动赋值
@@ -1,61 +1,63 @@
<template> <template>
<j-modal <j-modal
:title="title" :title="title"
:width="width" :width="width"
:visible="visible" :visible="visible"
:confirmLoading="confirmLoading" :confirmLoading="confirmLoading"
switchFullscreen switchFullscreen
@ok="handleOk" @ok="handleOk"
@cancel="handleCancel" @cancel="handleCancel"
cancelText="关闭"> cancelText="关闭">
<a-form :form="form"> <a-spin :spinning="confirmLoading">
<a-form-item label="收费通知号" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-form :form="form">
<a-radio-group v-decorator="['chargeNoticeNo']" @change="handleChargeNoticeChange" <a-form-item label="收费通知号" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
:options="chargeNoticeList"></a-radio-group> <a-radio-group v-decorator="['chargeNoticeNo']" @change="handleChargeNoticeChange"
</a-form-item> :options="chargeNoticeList"></a-radio-group>
<a-row v-if="selectedChargeNotice === 'A'"> </a-form-item>
<a-col :xl="12" :sm="24"> <a-row v-if="selectedChargeNotice === 'A'">
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入本年应收款A" <a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['receivableAmount']" <a-input placeholder="请输入本年应收款A"
:maxLength='50' v-decorator="['receivableAmount']"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='50'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<j-upload file-type="pdf" <a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol">
file-type-error-message="请上传收费通知A" <j-upload file-type="pdf"
:multiple="false" file-type-error-message="请上传收费通知A"
:return-id="true" :multiple="false"
bizPath="payment" :return-id="true"
v-decorator="['chargeNoticeId']" bizPath="payment"
:trigger-change="true"></j-upload> v-decorator="['chargeNoticeId']"
</a-form-item> :trigger-change="true"></j-upload>
</a-col> </a-form-item>
</a-row> </a-col>
<a-row v-if="selectedChargeNotice === 'B'"> </a-row>
<a-col :xl="12" :sm="24"> <a-row v-if="selectedChargeNotice === 'B'">
<a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<a-input placeholder="请输入本年应收款B" <a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['receivableAmount']" <a-input placeholder="请输入本年应收款B"
:maxLength='50' v-decorator="['receivableAmount']"
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> :maxLength='50'
</a-form-item> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-col> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-col :xl="12" :sm="24">
<j-upload file-type="pdf" <a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol">
file-type-error-message="请上传收费通知B" <j-upload file-type="pdf"
:multiple="false" file-type-error-message="请上传收费通知B"
:return-id="true" :multiple="false"
bizPath="payment" :return-id="true"
v-decorator="['chargeNoticeId']" bizPath="payment"
:trigger-change="true"></j-upload> v-decorator="['chargeNoticeId']"
</a-form-item> :trigger-change="true"></j-upload>
</a-col> </a-form-item>
</a-row> </a-col>
</a-form> </a-row>
</a-form>
</a-spin>
</j-modal> </j-modal>
</template> </template>
@@ -107,10 +109,10 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
this.confirmLoading = true
const formData = Object.assign(this.model, values) const formData = Object.assign(this.model, values)
console.log('表单提交数据', formData) console.log('表单提交数据', formData)
formData.ids = this.selectedRowKeys.join(',') formData.ids = this.selectedRowKeys.join(',')
postAction(this.url.setCharge, formData).then(res => { postAction(this.url.setCharge, formData).then(res => {
if (res.success) { if (res.success) {
this.$message.success(res.message) this.$message.success(res.message)
@@ -8,186 +8,191 @@
@ok="handleOk" @ok="handleOk"
@cancel="handleCancel" @cancel="handleCancel"
cancelText="关闭"> cancelText="关闭">
<a-form :form="form"> <a-spin :spinning="confirmLoading">
<a-row v-if="defaultChargeWay"> <a-form :form="form">
<a-col> <a-row v-if="defaultChargeWay">
<a-form-item label="工作组项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-col>
<a-select placeholder="请选择工作组项目" <a-form-item label="工作组项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
v-decorator="['workingGroupId',validatorRules.workingGroupId]" <a-select placeholder="请选择工作组项目"
:maxLength='50'> v-decorator="['workingGroupId',validatorRules.workingGroupId]"
<a-select-option v-for="item in workingGroupList" :key="item.id" :value="item.id">{{ item.workingGroupProject }}</a-select-option> :maxLength='50'>
</a-select> <a-select-option v-for="item in workingGroupList" :key="item.id" :value="item.id">
</a-form-item> {{ item.workingGroupProject }}
</a-col> </a-select-option>
</a-row> </a-select>
<a-row> </a-form-item>
<a-col> </a-col>
<a-form-item label="成员单位" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> </a-row>
<company-select placeholder="请选择成员单位" <a-row>
v-decorator="['chargeCompany',validatorRules.chargeCompany]" <a-col>
:disabled="disabledChargeCompany" <a-form-item label="成员单位" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
@change="companyChange" <company-select placeholder="请选择成员单位"
:maxLength='50'> v-decorator="['chargeCompany',validatorRules.chargeCompany]"
</company-select> :disabled="disabledChargeCompany"
</a-form-item> @change="companyChange"
</a-col> :maxLength='50'>
</a-row> </company-select>
<a-row> </a-form-item>
<a-col :xl="12" :sm="24"> </a-col>
<a-form-item label="企业联系人1" :labelCol="labelCol" :wrapperCol="wrapperCol"> </a-row>
<select-contacts :selected-company="selectedCompany" <a-row>
:init-contacts="selectedContact1" <a-col :xl="12" :sm="24">
placeholder="请选择企业联系人1" <a-form-item label="企业联系人1" :labelCol="labelCol" :wrapperCol="wrapperCol">
v-decorator="['contactsIdOne',validatorRules.contactsIdOne]" <select-contacts :selected-company="selectedCompany"
:maxLength='50' :init-contacts="selectedContact1"
ref="selectContacts1" placeholder="请选择企业联系人1"
@ok="addContactsOneOk"></select-contacts> v-decorator="['contactsIdOne',validatorRules.contactsIdOne]"
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="企业联系人2" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedContact2"
placeholder="请选择企业联系人2"
v-decorator="['contactsIdTwo']"
:maxLength='50'
ref="selectContacts2"
@ok="addContactsTwoOk"></select-contacts>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="企业联系人3" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedContact3"
placeholder="请选择企业联系人3"
v-decorator="['contactsIdThree']"
:maxLength='50'
ref="selectContacts3"
@ok="addContactsThreeOk"></select-contacts>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedMailContact"
placeholder="请选择邮寄联系人"
v-decorator="['mailContactsId',validatorRules.mailContactsId]"
:maxLength='50'
ref="selectMailContacts"
@ok="addMailContactsOk"></select-contacts>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol">
<span v-if="defaultChargeWay === 2">合同</span>
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange" v-else>
<a-radio :value="1"></a-radio>
<a-radio :value="2">合同</a-radio>
<a-radio :value="3">收费通知</a-radio>
</a-radio-group>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24" v-if="chargeWayType === 3">
<a-form-item label="收费通知号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-radio-group v-decorator="['chargeNoticeNo',validatorRules.chargeNoticeNo]"
@change="handleChargeNoticeChange" :options="chargeNoticeList">
</a-radio-group>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 2">
<a-col :xl="12" :sm="24">
<a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row>
<a-col :span="20">
<a-input placeholder="请输入应收金额"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@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-col :xl="12" :sm="24">
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入合同号"
v-decorator="['contractNum',validatorRules.contractNum]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'A'">
<a-col :xl="12" :sm="24">
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入本年应收款A"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf"
file-type-error-message="请上传收费通知A"
:multiple="false"
:return-id="true"
bizPath="payment"
v-decorator="['chargeNoticeId']"
:trigger-change="true"></j-upload>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'B'">
<a-col :xl="12" :sm="24">
<a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入本年应收款B"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf"
file-type-error-message="请上传收费通知B"
:multiple="false"
:return-id="true"
bizPath="payment"
v-decorator="['chargeNoticeId']"
:trigger-change="true"></j-upload>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="需要发票" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag v-decorator="['needInvoice',validatorRules.needInvoice]"
:maxLength='50' :maxLength='50'
:triggerChange="true" ref="selectContacts1"
placeholder="请选择发票类型" @ok="addContactsOneOk"></select-contacts>
dictCode="invoice_type"/> </a-form-item>
</a-form-item> </a-col>
</a-col> <a-col :xl="12" :sm="24">
</a-row> <a-form-item label="企业联系人2" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row> <select-contacts :selected-company="selectedCompany"
<a-col> :init-contacts="selectedContact2"
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> placeholder="请选择企业联系人2"
<a-textarea v-decorator="['contactsIdTwo',validatorRules.contactsRepeat]"
placeholder="请输入备注" :maxLength='50'
:auto-size="{ minRows: 3, maxRows: 6 }" ref="selectContacts2"
v-decorator="['remarks']" @ok="addContactsTwoOk"></select-contacts>
:maxLength='200' </a-form-item>
@change="e => {e.target.value = (e.target.value + '').trim()}"/> </a-col>
</a-form-item> </a-row>
</a-col> <a-row>
</a-row> <a-col :xl="12" :sm="24">
</a-form> <a-form-item label="企业联系人3" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedContact3"
placeholder="请选择企业联系人3"
v-decorator="['contactsIdThree',validatorRules.contactsRepeat]"
:maxLength='50'
ref="selectContacts3"
@ok="addContactsThreeOk"></select-contacts>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="邮寄联系人" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-contacts :selected-company="selectedCompany"
:init-contacts="selectedMailContact"
placeholder="请选择邮寄联系人"
v-decorator="['mailContactsId',validatorRules.mailContactsId]"
:maxLength='50'
ref="selectMailContacts"
@ok="addMailContactsOk"></select-contacts>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol">
<span v-if="defaultChargeWay === 2">合同</span>
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange"
v-else>
<a-radio :value="1"></a-radio>
<a-radio :value="2">合同</a-radio>
<a-radio :value="3">收费通知</a-radio>
</a-radio-group>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24" v-if="chargeWayType === 3">
<a-form-item label="收费通知号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-radio-group v-decorator="['chargeNoticeNo',validatorRules.chargeNoticeNo]"
@change="handleChargeNoticeChange" :options="chargeNoticeList">
</a-radio-group>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 2">
<a-col :xl="12" :sm="24">
<a-form-item label="应收金额" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row>
<a-col :span="20">
<a-input placeholder="请输入应收金额"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@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-col :xl="12" :sm="24">
<a-form-item label="合同号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入合同号"
v-decorator="['contractNum',validatorRules.contractNum]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'A'">
<a-col :xl="12" :sm="24">
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入本年应收款A"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf"
file-type-error-message="请上传收费通知A"
:multiple="false"
:return-id="true"
bizPath="payment"
v-decorator="['chargeNoticeId']"
:trigger-change="true"></j-upload>
</a-form-item>
</a-col>
</a-row>
<a-row v-if="chargeWayType === 3 && selectedChargeNotice === 'B'">
<a-col :xl="12" :sm="24">
<a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入本年应收款B"
v-decorator="['receivableAmount',validatorRules.receivableAmount]"
:maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item>
</a-col>
<a-col :xl="12" :sm="24">
<a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf"
file-type-error-message="请上传收费通知B"
:multiple="false"
:return-id="true"
bizPath="payment"
v-decorator="['chargeNoticeId']"
:trigger-change="true"></j-upload>
</a-form-item>
</a-col>
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="需要发票" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag v-decorator="['needInvoice',validatorRules.needInvoice]"
:maxLength='50'
:triggerChange="true"
placeholder="请选择发票类型"
dictCode="invoice_type"/>
</a-form-item>
</a-col>
</a-row>
<a-row>
<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()}"/>
</a-form-item>
</a-col>
</a-row>
</a-form>
</a-spin>
</j-modal> </j-modal>
</template> </template>
@@ -198,6 +203,7 @@ 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'
export default { export default {
name: 'WorkingGroupMemberUnitModule', name: 'WorkingGroupMemberUnitModule',
@@ -254,13 +260,17 @@ export default {
validateTrigger: 'change' validateTrigger: 'change'
}, },
chargeCompany: { chargeCompany: {
rules: [{ required: true, message: '请选择成员单位' }], rules: [{ required: true, validator: this.checkCompany }],
validateTrigger: 'change' validateTrigger: 'change'
}, },
contactsIdOne: { contactsIdOne: {
rules: [{ required: true, message: '请选择企业联系人1' }], rules: [{ required: true, message: '请选择企业联系人1' }],
validateTrigger: 'blur' validateTrigger: 'blur'
}, },
contactsRepeat: {
rules: [{ required: false, validator: this.validateContact }],
validateTrigger: 'blur'
},
mailContactsId: { mailContactsId: {
rules: [{ required: true, message: '请选择邮寄联系人' }], rules: [{ required: true, message: '请选择邮寄联系人' }],
validateTrigger: 'blur' validateTrigger: 'blur'
@@ -379,6 +389,7 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
that.confirmLoading = true
// 收入合同新建项目手动赋值 // 收入合同新建项目手动赋值
if (this.defaultChargeWay === 2) { if (this.defaultChargeWay === 2) {
values.chargeWay = 2 values.chargeWay = 2
@@ -486,30 +497,48 @@ export default {
callback() callback()
return return
} }
callback('请选择企业') callback('请选择成员单位')
}, },
/** /**
* 在新增成功后重新获取联系人列表 * 在新增成功后重新获取联系人列表
*/ */
addContactsOneOk(){ addContactsOneOk() {
this.$refs.selectContacts2.getContactsList() this.$refs.selectContacts2.getContactsList()
this.$refs.selectContacts3.getContactsList() this.$refs.selectContacts3.getContactsList()
this.$refs.selectMailContacts.getContactsList() this.$refs.selectMailContacts.getContactsList()
}, },
addContactsTwoOk(){ addContactsTwoOk() {
this.$refs.selectContacts1.getContactsList() this.$refs.selectContacts1.getContactsList()
this.$refs.selectContacts3.getContactsList() this.$refs.selectContacts3.getContactsList()
this.$refs.selectMailContacts.getContactsList() this.$refs.selectMailContacts.getContactsList()
}, },
addContactsThreeOk(){ addContactsThreeOk() {
this.$refs.selectContacts1.getContactsList() this.$refs.selectContacts1.getContactsList()
this.$refs.selectContacts2.getContactsList() this.$refs.selectContacts2.getContactsList()
this.$refs.selectMailContacts.getContactsList() this.$refs.selectMailContacts.getContactsList()
}, },
addMailContactsOk(){ addMailContactsOk() {
this.$refs.selectContacts1.getContactsList() this.$refs.selectContacts1.getContactsList()
this.$refs.selectContacts2.getContactsList() this.$refs.selectContacts2.getContactsList()
this.$refs.selectContacts3.getContactsList() this.$refs.selectContacts3.getContactsList()
},
/**
* 校验企业联系人是否重复
* @param rule
* @param value
* @param callback
*/
validateContact(rule, value, callback) {
const contactObj = this.form.getFieldsValue(['contactsIdOne', 'contactsIdTwo', 'contactsIdThree'])
const contactArr = Object.values(contactObj)
contactArr.filter(tt => tt !== undefined)
console.log(contactArr)
if (isRepeat(contactArr)) {
callback('请选择不同的企业联系人')
} else {
callback()
}
callback()
} }
} }
} }
@@ -1,169 +1,171 @@
<template> <template>
<j-modal <j-modal
:title="title" :title="title"
:width="width" :width="width"
:visible="visible" :visible="visible"
:confirmLoading="confirmLoading" :confirmLoading="confirmLoading"
switchFullscreen switchFullscreen
@ok="handleOk" @ok="handleOk"
@cancel="handleCancel" @cancel="handleCancel"
cancelText="关闭"> cancelText="关闭">
<a-spin :spinning="confirmLoading">
<span class="prompt-message"> <span class="prompt-message">
说明1.负责人A为该工作组的主负责人负责人B为该工作组的辅助负责人<br> 说明1.负责人A为该工作组的主负责人负责人B为该工作组的辅助负责人<br>
<span class="prompt-message-line2">2.设置本年应收款A和本年应收款B是为了区分工作组成员的价格</span> <span class="prompt-message-line2">2.设置本年应收款A和本年应收款B是为了区分工作组成员的价格</span>
</span> </span>
<a-form :form="form"> <a-form :form="form">
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-item label="工作组项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-form-item label="工作组项目" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
<a-input placeholder="请输入工作组项目" <a-input placeholder="请输入工作组项目"
v-decorator="['workingGroupProject',validatorRules.workingGroupProject]" v-decorator="['workingGroupProject',validatorRules.workingGroupProject]"
:maxLength='50' :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="运行年份" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="运行年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-year-date style="width:100%" placeholder="请选择运行年份" <j-year-date style="width:100%" placeholder="请选择运行年份"
v-decorator="['year',validatorRules.year]"></j-year-date> v-decorator="['year',validatorRules.year]"></j-year-date>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="负责人A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="负责人A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-principal placeholder="请选择负责人A" <select-principal placeholder="请选择负责人A"
v-decorator="['principalIdA',validatorRules.principalIdA]" v-decorator="['principalIdA',validatorRules.principalIdA]"
:maxLength='50'></select-principal> :maxLength='50'></select-principal>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="负责人B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="负责人B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<select-principal placeholder="请选择负责人B" <select-principal placeholder="请选择负责人B"
v-decorator="['principalIdB',validatorRules.principalIdB]" v-decorator="['principalIdB',validatorRules.principalIdB]"
:maxLength='50'></select-principal> :maxLength='50'></select-principal>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="每年召开次数" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="每年召开次数" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入每年召开次数" <a-input placeholder="请输入每年召开次数"
v-decorator="['convokeNum']" v-decorator="['convokeNum']"
:maxLength='50' :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="运行周期" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="运行周期" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入运行周期" <a-input placeholder="请输入运行周期"
v-decorator="['operationCycle']" v-decorator="['operationCycle']"
:maxLength='50' :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="本年应收款A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row> <a-row>
<a-col :span="20"> <a-col :span="20">
<a-input placeholder="请输入本年应收款A" <a-input placeholder="请输入本年应收款A"
v-decorator="['yearChargeA']" v-decorator="['yearChargeA']"
:maxLength='50' :maxLength='50'
@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="4">/</a-col> <a-col :span="4">/</a-col>
</a-row> </a-row>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="收费通知号A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="收费通知号A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入收费通知号A" <a-input placeholder="请输入收费通知号A"
v-decorator="['chargeNoticeNoA']" v-decorator="['chargeNoticeNoA']"
:maxLength='50' :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="收费通知A" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf" <j-upload file-type="pdf"
file-type-error-message="请上传pdf文件" file-type-error-message="请上传pdf文件"
:multiple="false" :multiple="false"
:return-id="true" :return-id="true"
bizPath="payment" bizPath="payment"
:number="1" :number="1"
v-decorator="['chargeNoticeAId']" v-decorator="['chargeNoticeAId']"
:trigger-change="true"></j-upload> :trigger-change="true"></j-upload>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="本年应收款B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row> <a-row>
<a-col :span="20"> <a-col :span="20">
<a-input placeholder="请输入本年应收款B" <a-input placeholder="请输入本年应收款B"
v-decorator="['yearChargeB']" v-decorator="['yearChargeB']"
:maxLength='50' :maxLength='50'
@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="4">/</a-col> <a-col :span="4">/</a-col>
</a-row> </a-row>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="收费通知号B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="收费通知号B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入收费通知号B" <a-input placeholder="请输入收费通知号B"
v-decorator="['chargeNoticeNoB']" v-decorator="['chargeNoticeNoB']"
:maxLength='50' :maxLength='50'
@change="e => {e.target.value = (e.target.value + '').trim()}"></a-input> @change="e => {e.target.value = (e.target.value + '').trim()}"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="收费通知B" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-upload file-type="pdf" <j-upload file-type="pdf"
file-type-error-message="请上传pdf文件" file-type-error-message="请上传pdf文件"
:multiple="false" :multiple="false"
:return-id="true" :return-id="true"
bizPath="payment" bizPath="payment"
:number="1" :number="1"
v-decorator="['chargeNoticeBId']" v-decorator="['chargeNoticeBId']"
:trigger-change="true"></j-upload> :trigger-change="true"></j-upload>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col> <a-col>
<a-form-item label="任务及目标" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-form-item label="任务及目标" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
<a-textarea <a-textarea
placeholder="请输入任务及目标" placeholder="请输入任务及目标"
:auto-size="{ minRows: 3, maxRows: 6 }" :auto-size="{ minRows: 3, maxRows: 6 }"
v-decorator="['missionAndObjectives']" v-decorator="['missionAndObjectives']"
:maxLength='300' :maxLength='300'
@change="e => {e.target.value = (e.target.value + '').trim()}"/> @change="e => {e.target.value = (e.target.value + '').trim()}"/>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col> <a-col>
<a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol"> <a-form-item label="备注" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
<a-textarea <a-textarea
placeholder="请输入备注" placeholder="请输入备注"
:auto-size="{ minRows: 3, maxRows: 6 }" :auto-size="{ minRows: 3, maxRows: 6 }"
v-decorator="['remarks']" v-decorator="['remarks']"
:maxLength='200' :maxLength='200'
@change="e => {e.target.value = (e.target.value + '').trim()}"/> @change="e => {e.target.value = (e.target.value + '').trim()}"/>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form> </a-form>
</a-spin>
</j-modal> </j-modal>
</template> </template>
@@ -242,6 +244,7 @@ export default {
// 触发表单验证 // 触发表单验证
this.form.validateFields((err, values) => { this.form.validateFields((err, values) => {
if (!err) { if (!err) {
that.confirmLoading = true
let httpurl = '' let httpurl = ''
let method = 'post' let method = 'post'
if (!this.model.id) { if (!this.model.id) {