[update] -增加标协会议 是否需要问题征集等字段
This commit is contained in:
@@ -137,7 +137,7 @@ export default {
|
||||
this.model = Object.assign({}, record)
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue(pick(this.model, 'name', 'abbreviation', 'remarks'))
|
||||
this.form.setFieldsValue(pick(this.model, 'name', 'abbreviation', 'remarks', 'principalIdA', 'principalIdB'))
|
||||
})
|
||||
},
|
||||
close() {
|
||||
|
||||
@@ -139,7 +139,64 @@
|
||||
</a-row>
|
||||
|
||||
<!--会议信息end-->
|
||||
|
||||
<!-- 会议问题征集--只有标协会议存在 -->
|
||||
<section v-if="meetingType === '2'" >
|
||||
<!-- 选择是否需要问题征集-->
|
||||
<a-row :gutter="24">
|
||||
<a-col :xxl="8" :xl="12" :sm="24">
|
||||
<a-form-item label="问题征集" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-radio-group v-decorator="['isAddQuestion',validatorRules.isAddQuestion]"
|
||||
@change="changeIsAddQuestion">
|
||||
<a-radio :value="1">需要</a-radio>
|
||||
<a-radio :value="0">不需要</a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xxl="8" :xl="12" :sm="24" v-if="isAddQuestion">
|
||||
<a-form-item label="征集截止时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-date
|
||||
placeholder="请选择征集截止时间"
|
||||
style="width: 100%;"
|
||||
v-decorator="['endTimeAddQuestion',validatorRules.endTimeAddQuestion]"
|
||||
:trigger-change="true"
|
||||
date-format="YYYY-MM-DD HH:mm:00"
|
||||
:show-time="true"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div class="item-title" v-if="isAddQuestion" >问题征集列表</div>
|
||||
<!-- 问题征集的详细信息-->
|
||||
<section v-if="isAddQuestion">
|
||||
<a-row :gutter="24" v-for="(question, index) in model.questionList" :key="index">
|
||||
<a-col> </a-col>
|
||||
<a-col :xxl="8" :xl="10" :sm="24">
|
||||
<a-form-item :label="'标准号 ' + (index + 1) " :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input
|
||||
@change="event => event.target.value = event.target.value.trim()"
|
||||
:maxLength="50"
|
||||
v-decorator="['questionList['+index+'].standardNumber', validatorRules.standardNumber]"
|
||||
placeholder="请输入标准号"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xxl="8" :xl="10" :sm="24">
|
||||
<a-form-item label="标准名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input
|
||||
@change="event => event.target.value = event.target.value.trim()"
|
||||
:maxLength="11"
|
||||
v-decorator="['questionList['+index+'].standardName',validateInviteCode.standardName]"
|
||||
placeholder="请输入标准名称"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xxl="8" :xl="4" :sm="24">
|
||||
<a-form-item>
|
||||
<a-button icon="plus" @click="addQuestionNew"></a-button>
|
||||
<a-button icon="minus" @click="removeQuestion(index)" style="margin-left: 8px;"></a-button>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<!--邀请码begin-->
|
||||
<!-- 国际研讨会出现-->
|
||||
@@ -508,7 +565,9 @@ export default {
|
||||
// 召开地点border颜色控制
|
||||
hasError: false,
|
||||
// 会议类型
|
||||
meetingType: ''
|
||||
meetingType: '',
|
||||
// 是否需要 问题征集
|
||||
isAddQuestion: 0,
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@@ -593,6 +652,14 @@ export default {
|
||||
meetingContactsPhone: undefined
|
||||
}]
|
||||
}
|
||||
if((this.model.questionList || []).length === 0) {
|
||||
// 问题征集列表
|
||||
this.model.questionList = [{
|
||||
standardNumber: undefined,
|
||||
standardName: ''
|
||||
}]
|
||||
}
|
||||
this.model.isAddQuestion = this.model.isAddQuestion || 0 // 处理历史数据的问题
|
||||
} else {
|
||||
this.title = '新增会议'
|
||||
// 所有的会议都显示酒店联系人
|
||||
@@ -605,10 +672,16 @@ export default {
|
||||
meetingContactsId: undefined,
|
||||
meetingContactsPhone: ''
|
||||
}]
|
||||
// 问题征集列表
|
||||
this.model.questionList = [{
|
||||
standardNumber: undefined,
|
||||
standardName: ''
|
||||
}]
|
||||
// 新增取路由参数
|
||||
this.meetingType = this.$route.query.meetingType
|
||||
// 新增根据路由参数 会议类型更换不同的接口
|
||||
this.url = this.createUrlByMeetingType(this.meetingType)
|
||||
this.model.isAddQuestion = 0 // 默认不需要问题征集
|
||||
}
|
||||
console.log(this.model)
|
||||
// 召开时间回显
|
||||
@@ -632,7 +705,11 @@ export default {
|
||||
// 如果是标协会议则回显 标协会议的字段
|
||||
if (this.meetingType === '2') {
|
||||
console.log('this.model', this.model)
|
||||
this.form.setFieldsValue(pick(this.model, 'signInTime', 'tbMeetingType', 'meetingCostsVip'))
|
||||
let otherKeys = []
|
||||
if(this.model.isAddQuestion) {
|
||||
otherKeys = ['endTimeAddQuestion', 'questionList']
|
||||
}
|
||||
this.form.setFieldsValue(pick(this.model, 'signInTime', 'tbMeetingType', 'meetingCostsVip', 'isAddQuestion', ...otherKeys))
|
||||
// 编辑情况下 判断类型改变“标协会议类型”选择框的下拉框数
|
||||
if (this.model.id) {
|
||||
let arr = this.$refs.standardMeetingType.getCurrentDictOptions()
|
||||
@@ -915,6 +992,51 @@ export default {
|
||||
}
|
||||
},
|
||||
/*
|
||||
* 添加问题征集信息
|
||||
* */
|
||||
addQuestionNew(index) {
|
||||
if (this.model.questionList.length >= 20) {
|
||||
this.$message.warning('最多添加20个问题')
|
||||
return
|
||||
}
|
||||
const {form} = this
|
||||
const obj = {
|
||||
standardNumber: '',
|
||||
standardName: ''
|
||||
}
|
||||
const keys = form.getFieldValue('questionList')
|
||||
// 增加数据后重新赋值
|
||||
this.model.questionList.splice(index + 1, 0, obj)
|
||||
// keys.splice(index , 0, obj)
|
||||
this.$nextTick(() => {
|
||||
form.setFieldsValue({
|
||||
questionList: keys
|
||||
})
|
||||
})
|
||||
},
|
||||
/*
|
||||
* 删减问题征集信息
|
||||
* */
|
||||
removeQuestion(k) {
|
||||
// 如果长度是1的话则不进行删除操作
|
||||
if (this.model.questionList.length === 1) {
|
||||
return
|
||||
}
|
||||
const {form} = this
|
||||
// // can use data-binding to get
|
||||
const questionList = form.getFieldValue('questionList')
|
||||
// 把循环的dom元素删除
|
||||
this.model.questionList.splice(k, 1)
|
||||
// 把绑定在dom里面的值删除
|
||||
questionList.splice(k, 1)
|
||||
this.$nextTick(() => {
|
||||
// 重新赋值
|
||||
form.setFieldsValue({
|
||||
questionList
|
||||
})
|
||||
})
|
||||
},
|
||||
/*
|
||||
* 召开地点吗转换
|
||||
* */
|
||||
getPcaText(code) {
|
||||
@@ -932,6 +1054,10 @@ export default {
|
||||
changeSignTime(date, dateString) {
|
||||
this.newSignInTime = dateString
|
||||
},
|
||||
// 是否需要问题征集 单选框改变事件
|
||||
changeIsAddQuestion(e) {
|
||||
this.isAddQuestion = e.target.value
|
||||
},
|
||||
/*
|
||||
* 根据会议类型返回不同的会议新增与编辑接口
|
||||
* */
|
||||
|
||||
@@ -1,98 +1,122 @@
|
||||
export default {
|
||||
meetingType: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择会议类型' },
|
||||
{required: true, message: '请选择会议类型'},
|
||||
],
|
||||
validateTrigger:['blur','change']
|
||||
validateTrigger: ['blur', 'change']
|
||||
},
|
||||
convokeTime: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择召开时间' },
|
||||
{required: true, message: '请选择召开时间'},
|
||||
],
|
||||
validateTrigger:['change']
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
meetingFiles:{
|
||||
meetingFiles: {
|
||||
rules: [
|
||||
{ required: false, message: '请上传会议通知' },
|
||||
{required: false, message: '请上传会议通知'},
|
||||
],
|
||||
validateTrigger:['change']
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
meetingContent:{
|
||||
meetingContent: {
|
||||
rules: [
|
||||
{ required: true, message: '请输入会议内容' },
|
||||
{required: true, message: '请输入会议内容'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
meetingContactsList:{
|
||||
meetingContactsList: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择会议联系人' },
|
||||
{required: true, message: '请选择会议联系人'},
|
||||
],
|
||||
validateTrigger:['change']
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
registerDeadline:{
|
||||
registerDeadline: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择报名截止时间' },
|
||||
{required: true, message: '请选择报名截止时间'},
|
||||
],
|
||||
validateTrigger:['blur','change']
|
||||
validateTrigger: ['blur', 'change']
|
||||
},
|
||||
convokeLocale: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择省市' },
|
||||
{required: true, message: '请选择省市'},
|
||||
],
|
||||
validateTrigger:['change']
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
address:{
|
||||
address: {
|
||||
rules: [
|
||||
{ required: true, message: '请输入详细地址' },
|
||||
{required: true, message: '请输入详细地址'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
meetingCosts:{
|
||||
meetingCosts: {
|
||||
rules: [
|
||||
{ required: true, message: '请输入会议费用' },
|
||||
{required: true, message: '请输入会议费用'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
directorId:{
|
||||
directorId: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择会议负责人' },
|
||||
{required: true, message: '请选择会议负责人'},
|
||||
],
|
||||
validateTrigger:['blur','change']
|
||||
validateTrigger: ['blur', 'change']
|
||||
},
|
||||
tbMeetingType:{
|
||||
tbMeetingType: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择标协会议类型' },
|
||||
{required: true, message: '请选择标协会议类型'},
|
||||
],
|
||||
validateTrigger:['blur','change']
|
||||
validateTrigger: ['blur', 'change']
|
||||
},
|
||||
signInTime:{
|
||||
signInTime: {
|
||||
rules: [
|
||||
{ required: true, message: '请选择注册签到时间' },
|
||||
{required: true, message: '请选择注册签到时间'},
|
||||
],
|
||||
validateTrigger:['change']
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
meetingCostsVip:{
|
||||
meetingCostsVip: {
|
||||
rules: [
|
||||
{ required: true, message: '请输入会议费用' },
|
||||
{required: true, message: '请输入会议费用'},
|
||||
],
|
||||
validateTrigger:['blur','change']
|
||||
validateTrigger: ['blur', 'change']
|
||||
},
|
||||
hotelName:{
|
||||
hotelName: {
|
||||
rules: [
|
||||
{ required: false, message: '请输入酒店名称' },
|
||||
{required: false, message: '请输入酒店名称'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
hotelAddress:{
|
||||
hotelAddress: {
|
||||
rules: [
|
||||
{ required: false, message: '请输入酒店地址' },
|
||||
{required: false, message: '请输入酒店地址'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
contactPerson:{
|
||||
contactPerson: {
|
||||
rules: [
|
||||
{ required: false, message: '请输入酒店联系人' },
|
||||
{required: false, message: '请输入酒店联系人'},
|
||||
],
|
||||
validateTrigger:['blur']
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
isAddQuestion: {
|
||||
rules: [
|
||||
{required: true, message: '请选择'},
|
||||
],
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
endTimeAddQuestion: {
|
||||
rules: [
|
||||
{required: true, message: '请选择征集截止时间'},
|
||||
],
|
||||
validateTrigger: ['change']
|
||||
},
|
||||
standardNumber: {
|
||||
rules: [
|
||||
{required: true, message: '请输入标准号'},
|
||||
],
|
||||
validateTrigger: ['blur']
|
||||
},
|
||||
standardName: {
|
||||
rules: [
|
||||
{required: true, message: '请输入标准名称'},
|
||||
],
|
||||
validateTrigger: ['blur']
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user