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