【update】-国际研讨会需求变更1

This commit is contained in:
fengchenchen
2023-10-23 16:14:53 +08:00
parent 3d7ba120ab
commit 6d8ac49804
4 changed files with 180 additions and 18 deletions
@@ -94,6 +94,34 @@
</a-form-item>
</a-col>
<template v-if="meetingType === '3' ">
<!--国际研讨会-【是否WASIC】 -->
<a-col :xxl="8" :xl="12" :sm="24" >
<a-form-item label="是否WASIC" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-dict-select-tag
v-decorator="['isWasic',validatorRules.isWasic]"
:trigger-change="true"
style="width: 100%"
dict-code="yn"
placeholder="请选择是否WASIC"
@change="isWasicChange"
></j-dict-select-tag>
</a-form-item>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24" v-if="isWasic">
<a-form-item label="关联课题" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-multi-select-tag
v-decorator="['linkTopics',validatorRules.linkTopics]"
:trigger-change="true"
style="width: 100%"
dict-code="linkTopics"
placeholder="请选择关联课题"
>
</j-multi-select-tag>
</a-form-item>
</a-col>
</template>
</a-row>
<a-row>
@@ -282,17 +310,18 @@
<span class="working-group-remind" v-if="isWorkGroupMeetType">不收费请填写0元</span>
</div>
<a-row :gutter="24">
<a-col :xxl="8" :xl="12" :sm="24">
<a-form-item label="会议费用" :labelCol="labelCol" :wrapperCol="{ xs: {span: 24},sm: {span: 16}}">
<a-input placeholder="请输入会议费用"
:maxLength='50'
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
@blur="addZero"
v-decorator="[ 'meetingCosts',validateInviteCode.meetingCosts]"></a-input>
<span class="yuan">元/人</span>
</a-form-item>
</a-col>
<template v-if="!isWasic">
<a-col :xxl="8" :xl="12" :sm="24">
<a-form-item label="会议费用" :labelCol="labelCol" :wrapperCol="{ xs: {span: 24},sm: {span: 16}}">
<a-input placeholder="请输入会议费用"
:maxLength='50'
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
@blur="addZero"
v-decorator="[ 'meetingCosts',validateInviteCode.meetingCosts]"></a-input>
<span class="yuan">元/人</span>
</a-form-item>
</a-col>
</template>
<!-- 标协会议才有 -->
<a-col :xxl="8" :xl="12" :sm="24" v-if="meetingType === '2' ">
<a-form-item label="会议费用(标协会员)" :labelCol="{ xs: {span: 24},sm: {span: 8}}"
@@ -305,6 +334,34 @@
<span class="yuan">元/人</span>
</a-form-item>
</a-col>
<!--2023-10-23 wasic会议的时候存在-->
<template v-if="isWasic">
<a-col :xxl="8" :xl="12" :sm="24">
<a-form-item label="会议费用(2个课题)" :labelCol="labelCol" :wrapperCol="{ xs: {span: 24},sm: {span: 16}}">
<a-input placeholder="请输入会议费用(2个课题)"
:maxLength='50'
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
@blur="addZero"
v-decorator="[ 'meetingCostsTwoTopic',validateInviteCode.meetingCostsTwoTopic]"></a-input>
<span class="yuan">元/人</span>
</a-form-item>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24">
<a-form-item label="会议费用(3个及以上)" :labelCol="labelCol" :wrapperCol="{ xs: {span: 24},sm: {span: 16}}">
<a-input placeholder="请输入会议费用(3个及以上)"
:maxLength='50'
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9.]/g,'')}"
@blur="addZero"
v-decorator="[ 'meetingCostsThreeTopic',validateInviteCode.meetingCostsThreeTopic]"></a-input>
<span class="yuan">元/人</span>
</a-form-item>
</a-col>
</template>
<template>
</template>
<!--收款二维码-->
<a-col :xxl="8" :xl="12" :sm="24" v-if="QRcodeBool">
<a-form-item label="收款二维码" :labelCol="{ xs: {span: 24},sm: {span: 8}}"
@@ -565,6 +622,18 @@ export default {
],
validateTrigger: ['blur']
},
meetingCostsTwoTopic: {
rules: [
{required: true, validator: this.validateMeetingCostsTwoTopic},
],
validateTrigger: ['blur']
},
meetingCostsThreeTopic: {
rules: [
{required: true, validator: this.validateMeetingCostsThreeTopic},
],
validateTrigger: ['blur']
},
directorPhone: {
rules: [
{required: true, validator: this.validateDirectorPhone}
@@ -591,6 +660,8 @@ export default {
meetingType: '',
// 是否需要 问题征集
isAddQuestion: 0,
// 是否需要 特殊课题
isWasic: 0,
// 标协会议类型
tbMeetingType: undefined,
}
@@ -685,6 +756,8 @@ export default {
}]
}
this.model.isAddQuestion = this.model.isAddQuestion || 0 // 处理历史数据的问题
// 是否WASIC--处理历史数据的问题
this.isWasic = this.model.isWasic || 0
} else {
this.title = '新增会议'
// 所有的会议都显示酒店联系人
@@ -759,7 +832,7 @@ export default {
}
// 如果是国际研讨会则赋值邀请码
if (this.meetingType === '3') {
this.form.setFieldsValue(pick(this.model, 'vipInvitationCode', 'speakerInvitationCode', 'guestInvitationCode', 'cooperativeInvitationCode','exhibitorInvitationCode'))
this.form.setFieldsValue(pick(this.model, 'isWasic', 'linkTopics', 'meetingCostsTwoTopic', 'meetingCostsThreeTopic', 'vipInvitationCode', 'speakerInvitationCode', 'guestInvitationCode', 'cooperativeInvitationCode','exhibitorInvitationCode'))
}
})
@@ -1110,6 +1183,11 @@ export default {
changeIsAddQuestion(e) {
this.isAddQuestion = e.target.value
},
// 是否WASIC 会议
isWasicChange(e) {
console.log(e)
this.isWasic = e
},
/*
* 根据会议类型返回不同的会议新增与编辑接口
* */
@@ -1260,6 +1338,26 @@ export default {
callback('请输入合法的金额数字,最多2位小数,10位整数')
}
},
validateMeetingCostsTwoTopic(rule, value, callback) {
if (value === undefined || value === '' || value === null) {
callback('请输入会议费用(2个课题)')
}
if (value && money(value)) {
callback()
} else {
callback('请输入合法的金额数字,最多2位小数,10位整数')
}
},
validateMeetingCostsThreeTopic(rule, value, callback) {
if (value === undefined || value === '' || value === null) {
callback('请输入会议费用(3个及以上)')
}
if (value && money(value)) {
callback()
} else {
callback('请输入合法的金额数字,最多2位小数,10位整数')
}
},
validateDirectorPhone(rule, value, callback) {
if (value && value !== '') {
if (phoneReg(value)) {
@@ -16,6 +16,16 @@
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType === '2' ">
<label>标协会议类型</label><span>{{ tbMeetingType }}</span>
</a-col>
<!--国际研讨会的判断-是否WASIC-->
<template v-show="currentMeetingInfo.meetingType === '3' ">
<a-col :xxl="8" :xl="12" :sm="24" >
<label>是否WASIC</label><span>{{ currentMeetingInfo.isWasic_dictText || '否' }}</span>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24" v-if="currentMeetingInfo.isWasic">
<label>关联课题</label><span>{{ currentMeetingInfo.linkTopics_dictTixt }}</span>
</a-col>
</template>
<a-col :xxl="8" :xl="12" :sm="24">
<label>负责人</label><span>{{ currentMeetingInfo.directorName }}</span>
</a-col>
@@ -38,12 +48,23 @@
<a-col :xxl="8" :xl="12" :sm="24">
<label>召开地点</label><span>{{ currentMeetingInfo.venue + '/' + currentMeetingInfo.address }}</span>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24">
<label>会议费用</label><span>{{ currentMeetingInfo.meetingCosts }} /</span>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType === '2' ">
<label>会议费用(标协会员)</label><span>{{ currentMeetingInfo.meetingCostsVip }} /</span>
</a-col>
<!--国际研讨会 且为WASIC-->
<template v-if="currentMeetingInfo.meetingType === '3' && currentMeetingInfo.isWasic">
<a-col :xxl="8" :xl="12" :sm="24">
<label>会议费用2个课题</label><span>{{ currentMeetingInfo.meetingCostsTwoTopic }} /</span>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24">
<label>会议费用3个及以上</label><span>{{ currentMeetingInfo.meetingCostsThreeTopic }} /</span>
</a-col>
</template>
<temaplte v-else>
<a-col :xxl="8" :xl="12" :sm="24" >
<label>会议费用</label><span>{{ currentMeetingInfo.meetingCosts }} /</span>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24" v-show="currentMeetingInfo.meetingType === '2' ">
<label>会议费用(标协会员)</label><span>{{ currentMeetingInfo.meetingCostsVip }} /</span>
</a-col>
</temaplte>
<a-col :xxl="8" :xl="12" :sm="24">
<label>预计参加人数</label><span>{{ currentMeetingInfo.estimatedNumber }}</span>
</a-col>
@@ -1089,4 +1110,5 @@ export default {
/deep/.flex-width-zero .ant-form-item-control-wrapper {
width: 0;
}
</style>
@@ -43,6 +43,21 @@
v-decorator="['phone',validatorRules.phone]"></a-input>
</a-form-item>
</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="请选择课题名称"
type="checkbox"
class="meeting-form-multi-select"
>
</j-multi-select-tag>
</a-form-item>
</a-col>
<a-col :xxl="8" :xl="12" :sm="24">
<a-form-item label="身份" :labelCol="labelCol" :wrapperCol="wrapperCol">
@@ -184,6 +199,12 @@ export default {
rules: [{required: true, message: '请输入手机号'}],
validateTrigger: 'blur'
},
choiceTopic: {
rules: [
{required: true, message: '请选择课题名称'},
],
validateTrigger: ['change']
},
identify: {
rules: [{required: true, message: '请选择身份'}],
validateTrigger: 'change'
@@ -614,5 +635,14 @@ export default {
left: 15px;
}
}
.meeting-form-multi-select{
/deep/.ant-checkbox-wrapper + .ant-checkbox-wrapper {
margin-left: 0!important;
}
/deep/ .ant-checkbox-wrapper{
margin-right: 8px;
}
}
</style>
@@ -29,6 +29,18 @@ export default {
],
validateTrigger: ['change']
},
isWasic: {
rules: [
{required: false, message: '请选择是否WASIC'},
],
validateTrigger: ['change']
},
linkTopics: {
rules: [
{required: true, message: '请选择关联课题'},
],
validateTrigger: ['change']
},
registerDeadline: {
rules: [
{required: true, message: '请选择报名截止时间'},