[update] -分标委增加负责人A 和负责人B 字段
This commit is contained in:
@@ -9,6 +9,9 @@
|
||||
@cancel="handleCancel"
|
||||
cancelText="关闭">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<span class="prompt-message">
|
||||
说明:1.负责人A为该分标委的主负责人,负责人B为该分标委的辅助负责人。
|
||||
</span>
|
||||
<a-form :form="form">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xl="12" :sm="24">
|
||||
@@ -31,6 +34,22 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="负责人A" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<select-principal placeholder="请选择负责人A"
|
||||
v-decorator="['principalIdA',validatorRules.principalIdA]"
|
||||
:maxLength='50'></select-principal>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="负责人B" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<select-principal placeholder="请选择负责人B"
|
||||
v-decorator="['principalIdB',validatorRules.principalIdB]"
|
||||
:maxLength='50'></select-principal>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col>
|
||||
<a-form-item label="目标简述" :labelCol="remarksLabelCol" :wrapperCol="remarksWrapperCol">
|
||||
@@ -50,10 +69,13 @@
|
||||
|
||||
<script>
|
||||
import pick from 'lodash.pick'
|
||||
import SelectPrincipal from '@comp/company/SelectPrincipal'
|
||||
import { httpAction } from '@api/manage'
|
||||
import {isRepeat} from '../../../../utils/util'
|
||||
|
||||
export default {
|
||||
name: 'CommitteeModule',
|
||||
components: { SelectPrincipal },
|
||||
data() {
|
||||
return {
|
||||
title: '操作',
|
||||
@@ -87,6 +109,14 @@ export default {
|
||||
rules: [{ required: true, message: '请输入分标委简称' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
principalIdA: {
|
||||
rules: [{ required: true, validator: this.validatePrincipal }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
principalIdB: {
|
||||
rules: [{ required: false, validator: this.validatePrincipal }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
remarks: {
|
||||
rules: [{ required: true, message: '请输入目标简述' }],
|
||||
validateTrigger: 'blur'
|
||||
@@ -114,6 +144,31 @@ export default {
|
||||
this.$emit('close')
|
||||
this.visible = false
|
||||
},
|
||||
/**
|
||||
* 校验负责人是否重复
|
||||
* @param rule
|
||||
* @param value
|
||||
* @param callback
|
||||
*/
|
||||
validatePrincipal(rule, value, callback) {
|
||||
if (rule.field === 'principalIdA') {
|
||||
if (!value) {
|
||||
callback('请选择负责人A')
|
||||
}
|
||||
}
|
||||
if (value) {
|
||||
const principalObj = this.form.getFieldsValue(['principalIdA', 'principalIdB'])
|
||||
const principalArr = Object.values(principalObj)
|
||||
principalArr.filter(tt => tt !== undefined)
|
||||
if (isRepeat(principalArr)) {
|
||||
callback('请选择不同的负责人')
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
return
|
||||
}
|
||||
callback()
|
||||
},
|
||||
handleOk() {
|
||||
if (this.confirmLoading) {
|
||||
return
|
||||
@@ -175,4 +230,12 @@ export default {
|
||||
padding: 0 10px 0 5px;
|
||||
}
|
||||
}
|
||||
.prompt-message {
|
||||
float: left;
|
||||
color: red;
|
||||
margin-bottom: 10px;
|
||||
&-line2 {
|
||||
padding-left: 2.7rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user