[update] 企业联系人新增姓名验重

This commit is contained in:
zhaoxiao
2021-09-08 10:47:33 +08:00
parent 98b932e6a1
commit 53e205e5f1
2 changed files with 57 additions and 18 deletions
+4 -1
View File
@@ -24,6 +24,8 @@ const getWorkingGroupListByNotCompany = (param) => getAction('/project/payWorkin
const archiveRevenueContract = (param) => postAction('contract/payIncomeContract/archive', param) const archiveRevenueContract = (param) => postAction('contract/payIncomeContract/archive', param)
// 根据部门id获取用户信息 // 根据部门id获取用户信息
const queryUserByDepartId = (param) => getAction('/sys/user/listRoleAndDepart', param) const queryUserByDepartId = (param) => getAction('/sys/user/listRoleAndDepart', param)
// 企业联系人新建重名校验
const queryContactByName = (param) => getAction('/company/payContactsManagement/queryByName', param)
export { export {
getWorkingGroupById, getWorkingGroupById,
@@ -37,5 +39,6 @@ export {
submitAudit, submitAudit,
getWorkingGroupListByNotCompany, getWorkingGroupListByNotCompany,
archiveRevenueContract, archiveRevenueContract,
queryUserByDepartId queryUserByDepartId,
queryContactByName
} }
@@ -16,7 +16,8 @@
v-decorator="['company',validatorRules.company]" v-decorator="['company',validatorRules.company]"
:maxLength='50' :maxLength='50'
:is-company-disabled="isCompanyDisabled" :is-company-disabled="isCompanyDisabled"
:disabled="isCompanyDisabled"></company-select> :disabled="isCompanyDisabled"
@change="companyChange"></company-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :xl="12" :sm="24"> <a-col :xl="12" :sm="24">
@@ -103,10 +104,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"
export default { export default {
name: 'ContactManagementModule', name: 'ContactManagementModule',
components: { CompanySelect }, components: {CompanySelect},
props: { props: {
// 是否可以选择企业 true--不可选;false--可选 // 是否可以选择企业 true--不可选;false--可选
isCompanyDisabled: { isCompanyDisabled: {
@@ -144,20 +146,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',
@@ -165,30 +167,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, message: '请输入姓名' }], 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
} }
}, },
methods: { methods: {
@@ -258,6 +261,13 @@ export default {
handleCancel() { handleCancel() {
this.close() this.close()
}, },
/**
* 企业修改,获取当前企业的信息,用于联系人姓名验重
* @param value
*/
companyChange(value) {
this.selectedCompanyId = value.id
},
/** /**
* 企业必填校验 * 企业必填校验
* @param rules * @param rules
@@ -272,6 +282,32 @@ export default {
} }
callback('请选择企业') callback('请选择企业')
}, },
/**
* 联系人姓名重复校验
* @param rules
* @param value
* @param callback
*/
checkName(rules, value, callback) {
if (value) {
if (this.isCompanyDisabled) {
this.selectedCompanyId = this.selectedCompany.id
}
let param = {
companyId: this.selectedCompanyId,
name: value
}
queryContactByName(param).then(res => {
if (res.success) {
callback()
} else {
callback(res.message)
}
})
return
}
callback('请输入姓名')
},
/** /**
* 手机号校验 * 手机号校验
* @param rules * @param rules