【update】- 国际研讨会-WASIC嘉宾类型说明的增加
This commit is contained in:
@@ -31,6 +31,7 @@ export const InvoiceTypeEnums = {
|
|||||||
// 免费专题
|
// 免费专题
|
||||||
export const LinkTopicsEnums = {
|
export const LinkTopicsEnums = {
|
||||||
free: { name: '免费专题', index: 6 },
|
free: { name: '免费专题', index: 6 },
|
||||||
|
freeTwo: { name: '免费专题', index: 8 },
|
||||||
default: {name: '114/22焦点论坛(默认专题)', index: 99}
|
default: {name: '114/22焦点论坛(默认专题)', index: 99}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -256,7 +256,7 @@
|
|||||||
<div class="item-title">邀请码</div>
|
<div class="item-title">邀请码</div>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="VIP" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="VIP(吃饭+住宿+接站)" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入邀请码"
|
<a-input placeholder="请输入邀请码"
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
@change="event => event.target.value = event.target.value.trim()"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@@ -265,7 +265,7 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="演讲嘉宾" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="演讲嘉宾(吃饭+接站)" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入邀请码"
|
<a-input placeholder="请输入邀请码"
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
@change="event => event.target.value = event.target.value.trim()"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@@ -274,7 +274,7 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="特邀嘉宾" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="特邀嘉宾(接站)" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入邀请码"
|
<a-input placeholder="请输入邀请码"
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
@change="event => event.target.value = event.target.value.trim()"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@@ -283,7 +283,7 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="合作伙伴" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="合作伙伴(只登记行程)" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入邀请码"
|
<a-input placeholder="请输入邀请码"
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
@change="event => event.target.value = event.target.value.trim()"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@@ -292,7 +292,7 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="参展商类别" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="参展商类别(只登记行程)" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入邀请码"
|
<a-input placeholder="请输入邀请码"
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
@change="event => event.target.value = event.target.value.trim()"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@@ -339,7 +339,7 @@
|
|||||||
<!--2023-10-23 wasic会议的时候存在-->
|
<!--2023-10-23 wasic会议的时候存在-->
|
||||||
<template v-if="isWasic">
|
<template v-if="isWasic">
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="1个及以下专题研讨费用" :labelCol="{ xs: {span: 24},sm: {span: 8}}" :wrapperCol="{ xs: {span: 24},sm: {span: 14}}">
|
<a-form-item label="1个及以下专题研讨费用" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入1个及以下专题研讨费用"
|
<a-input placeholder="请输入1个及以下专题研讨费用"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
|
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
|
||||||
@@ -349,7 +349,7 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="2个及以上专题研讨费用" :labelCol="{ xs: {span: 24},sm: {span: 8}}" :wrapperCol="{ xs: {span: 24},sm: {span: 14}}">
|
<a-form-item label="2个及以上专题研讨费用" :labelCol="labelColTwo" :wrapperCol="wrapperColTwo">
|
||||||
<a-input placeholder="请输入2个及以上专题研讨费用"
|
<a-input placeholder="请输入2个及以上专题研讨费用"
|
||||||
:maxLength='50'
|
:maxLength='50'
|
||||||
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
|
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
|
||||||
@@ -571,6 +571,8 @@ export default {
|
|||||||
xs: {span: 24},
|
xs: {span: 24},
|
||||||
sm: {span: 18}
|
sm: {span: 18}
|
||||||
},
|
},
|
||||||
|
labelColTwo: { xs: {span: 24},sm: {span: 8}},
|
||||||
|
wrapperColTwo: { xs: {span: 24},sm: {span: 14}},
|
||||||
remarksLabelCol: {
|
remarksLabelCol: {
|
||||||
xxl: {span: 3},
|
xxl: {span: 3},
|
||||||
xl: {span: 4},
|
xl: {span: 4},
|
||||||
|
|||||||
@@ -23,9 +23,14 @@
|
|||||||
</a-col>
|
</a-col>
|
||||||
<a-row class="flex-col mul-row-row" v-if="currentMeetingInfo.isWasic">
|
<a-row class="flex-col mul-row-row" v-if="currentMeetingInfo.isWasic">
|
||||||
<label>关联会议:</label>
|
<label>关联会议:</label>
|
||||||
<span class="mul-row-content">
|
<div class="mul-row-content">
|
||||||
<span class="content" v-for="item in (currentMeetingInfo.linkTopics_dictText || '').split(',')" :key="item">{{item}}</span>
|
<div>
|
||||||
</span>
|
<div class="word-beak block-span" v-for="item in wasicLinkTopics" :key="item.name">
|
||||||
|
<div class="topic-title">{{ item.name }}</div>
|
||||||
|
<div v-for="innerItem in item.children" :key="'a_checked_'+ innerItem.value">{{ innerItem.text }}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</a-row>
|
</a-row>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -113,19 +118,19 @@
|
|||||||
</a-row>
|
</a-row>
|
||||||
<!-- 国际研讨会的邀请码-->
|
<!-- 国际研讨会的邀请码-->
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
||||||
<label>VIP邀请码:</label><span>{{ currentMeetingInfo.vipInvitationCode }}</span>
|
<label>VIP(吃饭+住宿+接站)邀请码:</label><span>{{ currentMeetingInfo.vipInvitationCode }}</span>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
||||||
<label style="min-width: 116px">演讲嘉宾邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.speakerInvitationCode" :length="35" ></j-ellipsis></span>
|
<label style="min-width: 116px">演讲嘉宾(吃饭+接站)邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.speakerInvitationCode" :length="35" ></j-ellipsis></span>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
||||||
<label style="min-width: 116px">特邀嘉宾邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.guestInvitationCode" :length="35"></j-ellipsis></span>
|
<label style="min-width: 116px">特邀嘉宾(接站)邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.guestInvitationCode" :length="35"></j-ellipsis></span>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
||||||
<label style="min-width: 116px">合作伙伴邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.cooperativeInvitationCode" :length="35"></j-ellipsis></span>
|
<label style="min-width: 116px">合作伙伴(只登记行程)邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.cooperativeInvitationCode" :length="35"></j-ellipsis></span>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType ==='3' ">
|
||||||
<label style="min-width: 116px">参展商邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.exhibitorInvitationCode" :length="35"></j-ellipsis></span>
|
<label style="min-width: 116px">参展商(只登记行程)邀请码:</label><span><j-ellipsis :value="currentMeetingInfo.exhibitorInvitationCode" :length="35"></j-ellipsis></span>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row class="flex-col">
|
<a-row class="flex-col">
|
||||||
@@ -393,6 +398,7 @@ import PreviewFile from '@comp/jero/PreviewFile'
|
|||||||
import JImageUpload from '@comp/jero/JImageUpload'
|
import JImageUpload from '@comp/jero/JImageUpload'
|
||||||
import SetGuessUploadFlagModal from './modules/SetGuessUploadFlagModal'
|
import SetGuessUploadFlagModal from './modules/SetGuessUploadFlagModal'
|
||||||
import { downloadFile } from '../../../api/manage'
|
import { downloadFile } from '../../../api/manage'
|
||||||
|
import WasicTopicData from "./modules/wasicStaticData";
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -667,6 +673,8 @@ export default {
|
|||||||
meetingCostBool: false,
|
meetingCostBool: false,
|
||||||
meetingId: '',
|
meetingId: '',
|
||||||
meetingTypeValue: '',
|
meetingTypeValue: '',
|
||||||
|
// 关联会议展示的字段
|
||||||
|
wasicLinkTopics: [],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -681,6 +689,7 @@ export default {
|
|||||||
getMeetInfoById(param).then(res => {
|
getMeetInfoById(param).then(res => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.currentMeetingInfo = Object.assign({}, res.result)
|
this.currentMeetingInfo = Object.assign({}, res.result)
|
||||||
|
this.wasicLinkTopics = this.handleWasicLinkTopics(this.currentMeetingInfo)
|
||||||
// 转化会议类型
|
// 转化会议类型
|
||||||
this.meetingType = this.generateMeetingType(this.currentMeetingInfo.meetingType)
|
this.meetingType = this.generateMeetingType(this.currentMeetingInfo.meetingType)
|
||||||
// 列表表头只有国际研讨会有对接人字段
|
// 列表表头只有国际研讨会有对接人字段
|
||||||
@@ -780,6 +789,41 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 处理国际研讨会-WASIC-已经选择的数据如何展示
|
||||||
|
handleWasicLinkTopics(currentMeetingInfo, dictKey) {
|
||||||
|
dictKey = dictKey || 'linkTopics'
|
||||||
|
let resultArr = []
|
||||||
|
if(currentMeetingInfo[dictKey] && currentMeetingInfo[dictKey + '_dictText']) {
|
||||||
|
let topicArr = currentMeetingInfo[dictKey].split(',')
|
||||||
|
let topicTextArr = currentMeetingInfo[dictKey + '_dictText'].split(',')
|
||||||
|
let opeArr = JSON.parse(JSON.stringify(WasicTopicData))
|
||||||
|
opeArr.map(tt => {
|
||||||
|
// 先查询子集中
|
||||||
|
tt.allChildren = [...tt.children, ...(tt.radioChildren || [])]
|
||||||
|
let ele = tt.allChildren.find(item => topicArr.includes(item.value))
|
||||||
|
if(ele) {
|
||||||
|
let dateItem = {
|
||||||
|
name: tt.name,
|
||||||
|
date: tt.date,
|
||||||
|
children: []
|
||||||
|
}
|
||||||
|
|
||||||
|
tt.allChildren.map(innerItem => {
|
||||||
|
let index = topicArr.findIndex(a => a === innerItem.value)
|
||||||
|
if(index > -1) {
|
||||||
|
dateItem.children.push({
|
||||||
|
'value': innerItem.value,
|
||||||
|
'text': topicTextArr[index],
|
||||||
|
'title': topicTextArr[index]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
resultArr.push(dateItem)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return resultArr
|
||||||
|
},
|
||||||
selectIdentity(){
|
selectIdentity(){
|
||||||
console.log(this.queryParam.identity)
|
console.log(this.queryParam.identity)
|
||||||
if(this.queryParam.identity !== '1'){
|
if(this.queryParam.identity !== '1'){
|
||||||
|
|||||||
@@ -32,8 +32,6 @@
|
|||||||
@ok="addContactsOk"></select-contacts>
|
@ok="addContactsOk"></select-contacts>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="手机号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="手机号" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-input placeholder="请输入手机号"
|
<a-input placeholder="请输入手机号"
|
||||||
@@ -43,23 +41,6 @@
|
|||||||
v-decorator="['phone',validatorRules.phone]"></a-input>
|
v-decorator="['phone',validatorRules.phone]"></a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
<!-- 国际研讨会 WASIC 增加会议名称的选择--已经到账的信息不能修改-->
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-if="currentMeetingInfo.isWasic">
|
|
||||||
<a-form-item label="会议名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<j-multi-select-tag
|
|
||||||
v-decorator="['choiceTopic',validatorRules.choiceTopic]"
|
|
||||||
:trigger-change="true"
|
|
||||||
style="width: 100%"
|
|
||||||
dict-code="linkTopics"
|
|
||||||
placeholder="请选择会议名称"
|
|
||||||
:options="linkTopicsOptionArr"
|
|
||||||
type="checkbox"
|
|
||||||
class="meeting-form-multi-select"
|
|
||||||
:disabled="model.inAccount === 1"
|
|
||||||
>
|
|
||||||
</j-multi-select-tag>
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-form-item label="身份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="身份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
@@ -76,15 +57,49 @@
|
|||||||
<a-col :xxl="8" :xl="12" :sm="24" v-if="identifyType === 1 && meetingType === '3' ">
|
<a-col :xxl="8" :xl="12" :sm="24" v-if="identifyType === 1 && meetingType === '3' ">
|
||||||
<a-form-item label="嘉宾类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item label="嘉宾类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-radio-group v-decorator="['guestType',validatorRules.guestType]" @change="changeGuestType">
|
<a-radio-group v-decorator="['guestType',validatorRules.guestType]" @change="changeGuestType">
|
||||||
<a-radio :value="1">VIP</a-radio>
|
<a-radio :value="1">VIP(吃饭+住宿+接站)</a-radio>
|
||||||
<a-radio :value="2">演讲嘉宾</a-radio>
|
<a-radio :value="2">演讲嘉宾(吃饭+接站)</a-radio>
|
||||||
<a-radio :value="3">特邀嘉宾</a-radio>
|
<a-radio :value="3">特邀嘉宾(接站)</a-radio>
|
||||||
<a-radio :value="4">合作伙伴</a-radio>
|
<a-radio :value="4">合作伙伴(只登记行程)</a-radio>
|
||||||
<a-radio :value="5">参展商</a-radio>
|
<a-radio :value="5">参展商类别(只登记行程)</a-radio>
|
||||||
</a-radio-group>
|
</a-radio-group>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
<a-row :gutter="24" v-if="currentMeetingInfo.isWasic">
|
||||||
|
<!-- 国际研讨会 WASIC 增加会议名称的选择--已经到账的信息不能修改-->
|
||||||
|
<a-col :xxl="8" :xl="12" :sm="24" v-if="currentMeetingInfo.isWasic">
|
||||||
|
<a-form-item label="会议名称" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<!--<j-multi-select-tag-->
|
||||||
|
<!-- v-decorator="['choiceTopic',validatorRules.choiceTopic]"-->
|
||||||
|
<!-- :trigger-change="true"-->
|
||||||
|
<!-- style="width: 100%"-->
|
||||||
|
<!-- dict-code="linkTopics"-->
|
||||||
|
<!-- placeholder="请选择会议名称"-->
|
||||||
|
<!-- :options="linkTopicsOptionArr"-->
|
||||||
|
<!-- type="checkbox"-->
|
||||||
|
<!-- class="meeting-form-multi-select"-->
|
||||||
|
<!-- :disabled="model.inAccount === 1"-->
|
||||||
|
<!-->-->
|
||||||
|
<!--</j-multi-select-tag>-->
|
||||||
|
|
||||||
|
<a-checkbox-group class="meeting-form-multi-select" @change="choiceTopicChange" v-decorator="['choiceTopic',validatorRules.choiceTopic]" :disabled="model.inAccount === 1">
|
||||||
|
<div v-for="(item, index) in showTopicsArr" :key="'showTopicTitle_'+ index">
|
||||||
|
<div class="topic-title">{{item.name}}</div>
|
||||||
|
<div>
|
||||||
|
<a-checkbox v-for="item in item.children" :key="'a_checkbox_'+ item.value" :value="item.value" :disabled="item.disabled">{{ item.text }}</a-checkbox>
|
||||||
|
</div>
|
||||||
|
<div class="radio-div" v-if="item.radioChildren">
|
||||||
|
<a-radio-group v-decorator="[item.radioKey]" :disabled="model.inAccount === 1" @change="changeRadioTopic">
|
||||||
|
<a-radio v-for="item in item.radioChildren" :key="'a_radio_'+ item.value" :value="item.value" :disabled="item.disabled">{{ item.text }}</a-radio>
|
||||||
|
</a-radio-group>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a-checkbox-group>
|
||||||
|
<a-button @click="cancelChoiceTopic">清空会议信息</a-button>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
<!--个人信息end-->
|
<!--个人信息end-->
|
||||||
<!--除开国际研讨会的其他会议的显示-->
|
<!--除开国际研讨会的其他会议的显示-->
|
||||||
<template v-if="meetingType !== '3' ">
|
<template v-if="meetingType !== '3' ">
|
||||||
@@ -153,6 +168,7 @@ import pick from 'lodash.pick'
|
|||||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||||
import { queryCompanyInfoById } from '../../../api/api'
|
import { queryCompanyInfoById } from '../../../api/api'
|
||||||
import { LinkTopicsEnums } from '../../../enums/commonEnums'
|
import { LinkTopicsEnums } from '../../../enums/commonEnums'
|
||||||
|
import WasicTopicData from './modules/wasicStaticData'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SignUpInfoEdit',
|
name: 'SignUpInfoEdit',
|
||||||
@@ -204,7 +220,7 @@ export default {
|
|||||||
},
|
},
|
||||||
choiceTopic: {
|
choiceTopic: {
|
||||||
rules: [
|
rules: [
|
||||||
{required: true, message: '请选择会议名称'},
|
{required: true, validator: this.checkChoiceTopic},
|
||||||
],
|
],
|
||||||
validateTrigger: ['change']
|
validateTrigger: ['change']
|
||||||
},
|
},
|
||||||
@@ -270,7 +286,9 @@ export default {
|
|||||||
// 当前参会企业是否是内部企业
|
// 当前参会企业是否是内部企业
|
||||||
isInternalEnterprise: false,
|
isInternalEnterprise: false,
|
||||||
// 可选会议名称的数组
|
// 可选会议名称的数组
|
||||||
linkTopicsOptionArr: []
|
linkTopicsOptionArr: [],
|
||||||
|
// WASIC可选会议的数组-前端写死
|
||||||
|
showTopicsArr: [...WasicTopicData]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -315,21 +333,74 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 验证选择会议名称的情况
|
||||||
|
checkChoiceTopic(rules, value, callback) {
|
||||||
|
console.log(value)
|
||||||
|
let arr = []
|
||||||
|
if (value && value.length > 0) {
|
||||||
|
arr = [...value]
|
||||||
|
}
|
||||||
|
let radioKey = this.form.getFieldValue('radioKey')
|
||||||
|
let radioKeyTwo = this.form.getFieldValue('radioKeyTwo')
|
||||||
|
if(radioKey || radioKeyTwo) {
|
||||||
|
callback()
|
||||||
|
} else {
|
||||||
|
arr = arr.filter(tt => tt !== LinkTopicsEnums.freeTwo.index + '')
|
||||||
|
if(arr.length === 0) {
|
||||||
|
callback('请至少选择一个非参观类会议')
|
||||||
|
} else {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
choiceTopicChange(e) {
|
||||||
|
console.log(e)
|
||||||
|
},
|
||||||
|
changeRadioTopic() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.form.validateFields(['choiceTopic'])
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 取消会议名称的选中
|
||||||
|
cancelChoiceTopic() {
|
||||||
|
this.form.setFieldsValue({
|
||||||
|
choiceTopic: [],
|
||||||
|
radioKey: undefined,
|
||||||
|
radioKeyTwo: undefined,
|
||||||
|
})
|
||||||
|
},
|
||||||
// 获取国际研讨会-能选择课题的数据字典数据
|
// 获取国际研讨会-能选择课题的数据字典数据
|
||||||
getLinkTopicsOptionArr(meetingId) {
|
getLinkTopicsOptionArr(meetingId) {
|
||||||
getLinkTopics({id: meetingId}).then(res =>{
|
getLinkTopics({id: meetingId}).then(res =>{
|
||||||
if(res.success) {
|
if(res.success) {
|
||||||
this.linkTopicsOptionArr = res.result || []
|
this.linkTopicsOptionArr = res.result || []
|
||||||
// 操作默认的课题,默认的课题不能删除
|
// 页面上展示的文字 按照数据字段返回的展示
|
||||||
this.linkTopicsOptionArr.map(item => {
|
this.showTopicsArr.map(tt => {
|
||||||
if((item.value + '') === (LinkTopicsEnums.default.index + '')) {
|
tt.children.map(item => {
|
||||||
item.disabled = true
|
let ele = this.linkTopicsOptionArr.find(a => a.value + '' === item.value)
|
||||||
}
|
if(ele) {
|
||||||
|
item.text = ele.text
|
||||||
|
item.title = ele.title
|
||||||
|
}
|
||||||
|
})
|
||||||
|
tt.radioChildren && tt.radioChildren.map(item => {
|
||||||
|
let ele = this.linkTopicsOptionArr.find(a => a.value + '' === item.value)
|
||||||
|
if(ele) {
|
||||||
|
item.text = ele.text
|
||||||
|
item.title = ele.title
|
||||||
|
}
|
||||||
|
})
|
||||||
})
|
})
|
||||||
// 非新增页面,给Form赋值
|
// 操作默认的课题,默认的课题不能删除
|
||||||
|
// this.linkTopicsOptionArr.map(item => {
|
||||||
|
// if((item.value + '') === (LinkTopicsEnums.default.index + '')) {
|
||||||
|
// item.disabled = true
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// 新增页面,给Form赋值
|
||||||
if(!this.model.id) {
|
if(!this.model.id) {
|
||||||
this.form.setFieldsValue({
|
this.form.setFieldsValue({
|
||||||
choiceTopic: LinkTopicsEnums.default.index + ''
|
choiceTopic: []
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -397,6 +468,34 @@ export default {
|
|||||||
id:this.model.companyContactTemporaryId,
|
id:this.model.companyContactTemporaryId,
|
||||||
name:this.model.companyContactName
|
name:this.model.companyContactName
|
||||||
}
|
}
|
||||||
|
// 如果存在所选择的课题,则对课题数据进行处理
|
||||||
|
if (this.model.choiceTopic) {
|
||||||
|
let choiceTopicArr = this.model.choiceTopic.split(',')
|
||||||
|
this.showTopicsArr = JSON.parse(JSON.stringify(WasicTopicData))
|
||||||
|
let checkboxArr = [], radioObj = {}
|
||||||
|
choiceTopicArr.map(checkedItem => {
|
||||||
|
this.showTopicsArr.map(tt => {
|
||||||
|
let index = tt.children.findIndex(inner => inner.value === checkedItem)
|
||||||
|
if(index > -1) {
|
||||||
|
tt.children[index].checked = true
|
||||||
|
checkboxArr.push(checkedItem)
|
||||||
|
}
|
||||||
|
if(tt.radioChildren) {
|
||||||
|
let radioIndex = tt.radioChildren.findIndex(inner => inner.value === checkedItem)
|
||||||
|
if(radioIndex > -1) {
|
||||||
|
tt.radioChildren[radioIndex].checked = true
|
||||||
|
radioObj[tt.radioKey] = checkedItem
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.form.setFieldsValue({
|
||||||
|
...radioObj,
|
||||||
|
'choiceTopic': checkboxArr
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
//国际研讨会的嘉宾编辑回显值
|
//国际研讨会的嘉宾编辑回显值
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
// 普通会议的编辑回显值
|
// 普通会议的编辑回显值
|
||||||
@@ -430,7 +529,6 @@ export default {
|
|||||||
'companyId',
|
'companyId',
|
||||||
'companyContactId',
|
'companyContactId',
|
||||||
'phone',
|
'phone',
|
||||||
'choiceTopic',
|
|
||||||
'email',
|
'email',
|
||||||
'post',
|
'post',
|
||||||
'identity',
|
'identity',
|
||||||
@@ -476,6 +574,22 @@ export default {
|
|||||||
if(this.meetingCostBool){
|
if(this.meetingCostBool){
|
||||||
submitData.needInvoice = 0
|
submitData.needInvoice = 0
|
||||||
}
|
}
|
||||||
|
// 国际研讨会处理 会议名称的问题
|
||||||
|
// 国际研讨会 且为WASIC 会议
|
||||||
|
if (this.currentMeetingInfo.meetingType === '3' && this.currentMeetingInfo.isWasic) {
|
||||||
|
let choiceTopicArr = submitData.choiceTopic
|
||||||
|
//11月27日 单选会议的处理
|
||||||
|
if(submitData.radioKey) {
|
||||||
|
choiceTopicArr.push(submitData.radioKey)
|
||||||
|
delete submitData.radioKey
|
||||||
|
}
|
||||||
|
//11月28日 单选会议的处理
|
||||||
|
if(submitData.radioKeyTwo) {
|
||||||
|
choiceTopicArr.push(submitData.radioKeyTwo)
|
||||||
|
delete submitData.radioKeyTwo
|
||||||
|
}
|
||||||
|
submitData.choiceTopic = choiceTopicArr.join(',')
|
||||||
|
}
|
||||||
console.log(submitData)
|
console.log(submitData)
|
||||||
let url = ''
|
let url = ''
|
||||||
if(!this.model.id){
|
if(!this.model.id){
|
||||||
@@ -485,6 +599,8 @@ export default {
|
|||||||
// 编辑的时候需要传入id
|
// 编辑的时候需要传入id
|
||||||
submitData.id = this.model.id
|
submitData.id = this.model.id
|
||||||
}
|
}
|
||||||
|
// that.confirmLoading = false
|
||||||
|
// return
|
||||||
let method = 'post'
|
let method = 'post'
|
||||||
httpAction(url,submitData,method).then(res => {
|
httpAction(url,submitData,method).then(res => {
|
||||||
if(res.success){
|
if(res.success){
|
||||||
@@ -668,14 +784,23 @@ export default {
|
|||||||
|
|
||||||
// 国际研讨会-关联会议 多选样式的修改
|
// 国际研讨会-关联会议 多选样式的修改
|
||||||
.meeting-form-multi-select{
|
.meeting-form-multi-select{
|
||||||
|
.topic-title{
|
||||||
|
padding: 10px 0;
|
||||||
|
}
|
||||||
|
|
||||||
/deep/.ant-checkbox-wrapper + .ant-checkbox-wrapper {
|
/deep/.ant-checkbox-wrapper + .ant-checkbox-wrapper {
|
||||||
margin-left: 0!important;
|
margin-left: 0!important;
|
||||||
}
|
}
|
||||||
/deep/ .ant-checkbox-wrapper{
|
/deep/ .ant-checkbox-wrapper,
|
||||||
|
/deep/ .ant-radio-wrapper{
|
||||||
margin-right: 8px;
|
margin-right: 8px;
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.radio-div{
|
||||||
|
border-top: 1px solid rgba(0, 0, 0, 0.2);
|
||||||
|
padding-top: 10px;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<a-form :form="form">
|
<a-form :form="form">
|
||||||
<!--演讲信息begin-->
|
<!--演讲信息begin-->
|
||||||
<!-- 特邀嘉宾没有用餐信息-->
|
<!-- 特邀嘉宾没有用餐信息 ;VIP || 演讲嘉宾 有-->
|
||||||
<template v-if="guestType !== 3 ">
|
<template v-if="guestType === 1 || guestType === 2">
|
||||||
<div class="item-title">演讲信息</div>
|
<div class="item-title">演讲信息</div>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
@@ -45,28 +45,30 @@
|
|||||||
</template>
|
</template>
|
||||||
<!--演讲信息end-->
|
<!--演讲信息end-->
|
||||||
<!--用餐信息begin-->
|
<!--用餐信息begin-->
|
||||||
<!-- 合作伙伴不需要用餐信息 -->
|
<!-- VIP || 演讲嘉宾 有 用餐信息 -->
|
||||||
<div class="item-title">用餐信息</div>
|
<template v-if="guestType === 1 || guestType === 2">
|
||||||
<a-row :gutter="24">
|
<div class="item-title">用餐信息</div>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-row :gutter="24">
|
||||||
<a-form-item label="是否用餐" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
<a-radio-group :disabled="isEditBool" v-decorator="['haveMeals',validatorRules.haveMealBools]"
|
<a-form-item label="是否用餐" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
@change="selecthaveMealBools">
|
<a-radio-group :disabled="isEditBool" v-decorator="['haveMeals',validatorRules.haveMealBools]"
|
||||||
<a-radio :value="1">是</a-radio>
|
@change="selecthaveMealBools">
|
||||||
<a-radio :value="0">否</a-radio>
|
<a-radio :value="1">是</a-radio>
|
||||||
</a-radio-group>
|
<a-radio :value="0">否</a-radio>
|
||||||
</a-form-item>
|
</a-radio-group>
|
||||||
</a-col>
|
</a-form-item>
|
||||||
<!--选择了用餐才会出现-->
|
</a-col>
|
||||||
<a-col :xxl="8" :xl="12" :sm="24" v-if="haveMealBool">
|
<!--选择了用餐才会出现-->
|
||||||
<a-form-item label="是否回民" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-col :xxl="8" :xl="12" :sm="24" v-if="haveMealBool">
|
||||||
<a-radio-group :disabled="isEditBool" v-decorator="['huiPeople',validatorRules.huiPeople]">
|
<a-form-item label="是否回民" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-radio :value="1">是</a-radio>
|
<a-radio-group :disabled="isEditBool" v-decorator="['huiPeople',validatorRules.huiPeople]">
|
||||||
<a-radio :value="0">否</a-radio>
|
<a-radio :value="1">是</a-radio>
|
||||||
</a-radio-group>
|
<a-radio :value="0">否</a-radio>
|
||||||
</a-form-item>
|
</a-radio-group>
|
||||||
</a-col>
|
</a-form-item>
|
||||||
</a-row>
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</template>
|
||||||
<!--用餐信息end-->
|
<!--用餐信息end-->
|
||||||
<!--住店信息begin-->
|
<!--住店信息begin-->
|
||||||
<!-- 特邀嘉宾 演讲嘉宾没有住店信息-->
|
<!-- 特邀嘉宾 演讲嘉宾没有住店信息-->
|
||||||
@@ -147,6 +149,14 @@
|
|||||||
v-decorator="[ 'arrivalShift',validatorRules.arrivalShift]"></a-input>
|
v-decorator="[ 'arrivalShift',validatorRules.arrivalShift]"></a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<!--需要做判断 增加 目的地 字段,目的记录入住的酒店 演讲嘉宾 || 特邀嘉宾 存在-->
|
||||||
|
<a-col :xxl="8" :xl="12" :sm="24" v-if="pickUpBool && (guestType === 2 || guestType === 3)">
|
||||||
|
<a-form-item label="目的地" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
|
<a-input :disabled="isEditBool" placeholder="请输入目的地"
|
||||||
|
@change="event => event.target.value = event.target.value.trim()" :maxLength="50"
|
||||||
|
v-decorator="['destinationHotel']"></a-input>
|
||||||
|
</a-form-item>
|
||||||
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
<a-col :xxl="8" :xl="12" :sm="24">
|
||||||
@@ -188,18 +198,8 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :xxl="8" :xl="12" :sm="24">
|
|
||||||
<a-form-item label="同行人" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
|
||||||
<a-input placeholder="请输入同行人"
|
|
||||||
:maxLength='50'
|
|
||||||
:disabled="isEditBool"
|
|
||||||
@change="event => event.target.value = event.target.value.trim()"
|
|
||||||
v-decorator="[ 'peer']"></a-input>
|
|
||||||
</a-form-item>
|
|
||||||
</a-col>
|
|
||||||
|
|
||||||
</a-row>
|
<!--</a-row>-->
|
||||||
<!--特邀嘉宾没有备注-->
|
<!--特邀嘉宾没有备注-->
|
||||||
<a-row v-if="guestType!== 3" :gutter="24" style="transform: translateX(-4px)">
|
<a-row v-if="guestType!== 3" :gutter="24" style="transform: translateX(-4px)">
|
||||||
<a-col>
|
<a-col>
|
||||||
@@ -491,7 +491,8 @@ export default {
|
|||||||
this.form.setFieldsValue(pick(record,
|
this.form.setFieldsValue(pick(record,
|
||||||
'arrivalTime',
|
'arrivalTime',
|
||||||
'destination',
|
'destination',
|
||||||
'arrivalShift'
|
'arrivalShift',
|
||||||
|
'destinationHotel'
|
||||||
))
|
))
|
||||||
})
|
})
|
||||||
} else if (record.pickUp === 0) {
|
} else if (record.pickUp === 0) {
|
||||||
|
|||||||
@@ -0,0 +1,73 @@
|
|||||||
|
const WasicTopicData = [
|
||||||
|
{
|
||||||
|
name: '11月27日',
|
||||||
|
date: '11月27日',
|
||||||
|
radioKey: 'radioKey',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
'value': '6',
|
||||||
|
'text': '国际发展论坛(09:00-15:00)',
|
||||||
|
'title': '国际发展论坛(09:00-15:00)'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
radioChildren: [
|
||||||
|
{
|
||||||
|
'value': '5',
|
||||||
|
'text': '弱势道路交通参与者(VRU)保护专题(14:00-18:00)',
|
||||||
|
'title': '弱势道路交通参与者(VRU)保护专题(14:00-18:00)'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'value': '2',
|
||||||
|
'text': '智能网联汽车标准化领航及标准路线图专题(14:00-18:00)',
|
||||||
|
'title': '智能网联汽车标准化领航及标准路线图专题(14:00-18:00)'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'value': '4',
|
||||||
|
'text': '动力电池安全专题(14:00-18:00)',
|
||||||
|
'title': '动力电池安全专题(14:00-18:00)'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '11月28日',
|
||||||
|
date: '11月28日',
|
||||||
|
radioKey: 'radioKeyTwo',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
'value': '99',
|
||||||
|
'text': '114/22焦点论坛(08:00-12:00,全体大会)',
|
||||||
|
'title': '114/22焦点论坛(08:00-12:00,全体大会)',
|
||||||
|
// 'disabled': true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
radioChildren: [
|
||||||
|
{
|
||||||
|
'value': '1',
|
||||||
|
'text': '汽车网络安全与数据安全标准合规专题(14:00-18:00)',
|
||||||
|
'title': '汽车网络安全与数据安全标准合规专题(14:00-18:00)'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'value': '3',
|
||||||
|
'text': '汽车低碳专题(14:00-18:00)',
|
||||||
|
'title': '汽车低碳专题(14:00-18:00)'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'value': '7',
|
||||||
|
'text': '无人小车专题(14:00-18:00)',
|
||||||
|
'title': '无人小车专题(14:00-18:00)'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '11月29日',
|
||||||
|
date: '11月29日',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
'value': '8',
|
||||||
|
'text': '湾区智联试验场参观(8:30-10:30)',
|
||||||
|
'title': '湾区智联试验场参观(8:30-10:30)'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
export default WasicTopicData
|
||||||
Reference in New Issue
Block a user