[update]-国际研讨会 WASIC会议 相关需求变更1

This commit is contained in:
fengchenchen
2023-10-24 09:25:45 +08:00
parent 3ad2db725a
commit 0cec7b057c
6 changed files with 151 additions and 16 deletions
+4 -1
View File
@@ -65,6 +65,8 @@ const queryPostInfoById = (params) => getAction('/company/payContactsManagement/
// 报名的时候修改企业的信息 // 报名的时候修改企业的信息
const updateInvoiceBySignUp = (params) => postAction('/company/payCompanyManagement/updateInvoice', params) const updateInvoiceBySignUp = (params) => postAction('/company/payCompanyManagement/updateInvoice', params)
// 国际研讨会-WASIC-通过会议ID获取关联主题的信息
const getLinkTopics = (params) => getAction('/meeting/internalMeeting/getLinkTopics', params)
export { export {
queryCommonProjectById, queryCommonProjectById,
@@ -96,5 +98,6 @@ export {
judgeMeetingCode, judgeMeetingCode,
upgradeVip, upgradeVip,
updateInvoiceBySignUp updateInvoiceBySignUp,
getLinkTopics
} }
+10
View File
@@ -53,3 +53,13 @@ export const InvoiceTypeEnums = {
plain: { name: '增值税普通发票', index: 1 }, plain: { name: '增值税普通发票', index: 1 },
special: { name: '增值税专用发票', index: 2 } special: { name: '增值税专用发票', index: 2 }
} }
// 国际研讨会关联课题
//汽车网络安全与数据安全标准合规专题,
// 智能网汽车标准化领航及标准路线图专题,
// 汽车地毯专题,
// 动力电池安全专题,
// 弱势道路交通参与者(VRU)保护专题,
// 免费专题
export const LinkTopicsEnums = {
free: { name: '免费专题', index: 6 }
}
+39 -12
View File
@@ -21,6 +21,17 @@
<span><j-ellipsis :value="generateMeetingType(model.meetingType)" :length="20"></j-ellipsis></span> <span><j-ellipsis :value="generateMeetingType(model.meetingType)" :length="20"></j-ellipsis></span>
</a-col> </a-col>
</a-row> </a-row>
<!--国际研讨会的判断-是否WASIC-->
<a-row :gutter="24" class="flex-col" v-if="model.meetingType === MeetingTypeEnums.internationalSeminar.index">
<a-col :span="12">
<label>是否WASIC:</label>
<span><j-ellipsis :value="model.isWasic_dictText || '否'" :length="20"></j-ellipsis></span>
</a-col>
<a-col :span="12" v-if="model.isWasic">
<label>关联课题:</label>
<span><j-ellipsis :value="model.linkTopics_dictTixt" ></j-ellipsis></span>
</a-col>
</a-row>
<a-row :gutter="24" class="flex-col"> <a-row :gutter="24" class="flex-col">
<a-col :span="12"> <a-col :span="12">
<label>召开时间:</label> <label>召开时间:</label>
@@ -87,22 +98,33 @@
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="24" class="flex-col"> <a-row :gutter="24" class="flex-col">
<a-col :span="12"> <!--国际研讨会 且为WASIC-->
<label>会议费用:</label> <template v-if="Number(model.meetingType) === MeetingTypeEnums.internationalSeminar.index && model.isWasic">
<span>{{ model.meetingCosts }} 元/人</span> <a-col :xxl="8" :xl="12" :sm="24">
</a-col> <label>会议费用(2个课题):</label><span>{{ model.meetingCostsTwoTopic }} 元/人</span>
<a-col :span="12" v-show="model.meetingType === '2' "> </a-col>
<label>会议费用(标协会员):</label> <a-col :xxl="8" :xl="12" :sm="24">
<span>{{ model.meetingCostsVip }} 元/人</span> <label>会议费用(3个及以上):</label><span>{{ model.meetingCostsThreeTopic }} 元/人</span>
</a-col> </a-col>
<a-col :span="12" v-if="model.paymentQrCode && model.meetingType !== '2'"> </template>
<template v-else>
<a-col :span="12">
<label>会议费用:</label>
<span>{{ model.meetingCosts }} 元/人</span>
</a-col>
<a-col :span="12" v-show="Number(model.meetingType) === MeetingTypeEnums.standard.index">
<label>会议费用(标协会员):</label>
<span>{{ model.meetingCostsVip }} 元/人</span>
</a-col>
</template>
<a-col :span="12" v-if="model.paymentQrCode && Number(model.meetingType) !== MeetingTypeEnums.standard.index">
<label>收费二维码:</label> <label>收费二维码:</label>
<span> <span>
<img :src="paymentQrCodeSrc" alt="nothing show" class="payment-qrcode-img"/> <img :src="paymentQrCodeSrc" alt="nothing show" class="payment-qrcode-img"/>
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="24" class="flex-col" v-if="model.paymentQrCode && model.meetingType === '2'"> <a-row :gutter="24" class="flex-col" v-if="model.paymentQrCode && Number(model.meetingType) === MeetingTypeEnums.standard.index">
<a-col :span="24"> <a-col :span="24">
<label>收费二维码:</label> <label>收费二维码:</label>
<span> <span>
@@ -189,14 +211,19 @@
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="24" class="flex-col"> <a-row :gutter="24" class="flex-col">
<!--是否为WASIC字段判断-->
<a-col :span="12" v-if="model.isWasic">
<label>课题名称:</label>
<span><j-ellipsis :value="situationInfo.choiceTopic_dictText"></j-ellipsis></span>
</a-col>
<a-col :span="12"> <a-col :span="12">
<label>手机号:</label> <label>手机号:</label>
<span><j-ellipsis :value="situationInfo.phone" :length="20"></j-ellipsis></span> <span><j-ellipsis :value="situationInfo.phone" :length="20"></j-ellipsis></span>
</a-col> </a-col>
</a-row> </a-row>
<!-- 行程信息 --> <!-- 行程信息 -->
<a-row :gutter="24" class="flex-col"> <a-row :gutter="24" class="flex-col" v-show="situationInfo.checkInHotel_dictText">
<a-col :span="12" v-show="situationInfo.checkInHotel_dictText"> <a-col :span="12" >
<label>是否住酒店:</label> <label>是否住酒店:</label>
<span>{{ situationInfo.checkInHotel_dictText }}</span> <span>{{ situationInfo.checkInHotel_dictText }}</span>
</a-col> </a-col>
@@ -159,6 +159,7 @@
@click.stop="uploadPaymentRecord(item)" @click.stop="uploadPaymentRecord(item)"
>查看凭证 >查看凭证
</a-button> </a-button>
{{item.signUpStatus}}--{{$store.getters.userInfo.roleCode !== '3'}}
<!-- 有上传凭证按钮: A 待上传凭证 | 凭证被拒绝 状态 B 缴费方式为汇款+现场缴费、会议状态进行中 || 缴费方式为汇款 、会议状态为未开始 || 不是企业管理员--> <!-- 有上传凭证按钮: A 待上传凭证 | 凭证被拒绝 状态 B 缴费方式为汇款+现场缴费、会议状态进行中 || 缴费方式为汇款 、会议状态为未开始 || 不是企业管理员-->
<a-button <a-button
v-if="(item.signUpStatus === SignUpStatusEnum.pendingUploadVoucher.index || item.signUpStatus === SignUpStatusEnum.rejectedVoucher.index) v-if="(item.signUpStatus === SignUpStatusEnum.pendingUploadVoucher.index || item.signUpStatus === SignUpStatusEnum.rejectedVoucher.index)
+12
View File
@@ -75,6 +75,12 @@
<span class="word-beak">{{ currentMeetingInfo.meetingContent }}</span> <span class="word-beak">{{ currentMeetingInfo.meetingContent }}</span>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="24" v-if="isWasic">
<a-col :span="24" class="flex-col">
<label style="flex-shrink: 0">关联课题:</label>
<span class="word-beak">{{ currentMeetingInfo.linkTopics_dictText }}</span>
</a-col>
</a-row>
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="24" class="flex-col"> <a-col :span="24" class="flex-col">
<label>备注:</label> <label>备注:</label>
@@ -133,6 +139,8 @@ export default {
invalidationBool: false, invalidationBool: false,
// url是否有id参数 // url是否有id参数
urlHaveIdBool:false, urlHaveIdBool:false,
// 是否为国际研讨会 WASIC会议
isWasic: false
} }
}, },
created() { created() {
@@ -203,6 +211,10 @@ export default {
// 有vip会议费用 并且 不是 信息交流会(年会) // 有vip会议费用 并且 不是 信息交流会(年会)
if (this.currentMeetingInfo.meetingCostsVip && (this.currentMeetingInfo.tbMeetingType + '' !== '3')) { if (this.currentMeetingInfo.meetingCostsVip && (this.currentMeetingInfo.tbMeetingType + '' !== '3')) {
this.meetingMoney = `非标协会员(${this.currentMeetingInfo.meetingCosts}/人) 标协会员(${this.currentMeetingInfo.meetingCostsVip}/人)` this.meetingMoney = `非标协会员(${this.currentMeetingInfo.meetingCosts}/人) 标协会员(${this.currentMeetingInfo.meetingCostsVip}/人)`
} else if (this.currentMeetingInfo.meetingType === '3' && this.currentMeetingInfo.isWasic){
this.isWasic = true
// 国际研讨会 且为WASIC 会议
this.meetingMoney = `会议费用(2个课题)(${this.currentMeetingInfo.meetingCostsTwoTopic}/人) 会议费用(3个及以上)(${this.currentMeetingInfo.meetingCostsThreeTopic}/人)`
} else { } else {
this.meetingMoney = ` ${this.currentMeetingInfo.meetingCosts}/人` this.meetingMoney = ` ${this.currentMeetingInfo.meetingCosts}/人`
} }
+85 -3
View File
@@ -82,6 +82,12 @@
<span class="word-beak">{{ currentMeetingInfo.meetingContent }}</span> <span class="word-beak">{{ currentMeetingInfo.meetingContent }}</span>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="24" v-if="isWasic">
<a-col :span="24" class="flex-col">
<label style="flex-shrink: 0">关联课题:</label>
<span class="word-beak">{{ currentMeetingInfo.linkTopics_dictText }}</span>
</a-col>
</a-row>
<a-row> <a-row>
<a-col :span="24" class="flex-col"> <a-col :span="24" class="flex-col">
<label>备注:</label> <label>备注:</label>
@@ -142,7 +148,26 @@
</a-radio-group> </a-radio-group>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :xxl="8" :xl="12" :sm="24" v-if="meetingType === '3' "> <template v-if="meetingType === '3' ">
<!-- 国际研讨会 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"
:options="linkTopicsOptionArr"
@change="changeChoiceTopic"
>
</j-multi-select-tag>
</a-form-item>
</a-col>
</template>
<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-radio-group v-decorator="['inviteCode',validatorRules.inviteCode]" @change="changeInviteCode"> <a-radio-group v-decorator="['inviteCode',validatorRules.inviteCode]" @change="changeInviteCode">
<a-radio :value="1">是</a-radio> <a-radio :value="1">是</a-radio>
@@ -252,6 +277,8 @@ import SeminarVipForm from '@comp/signUpForm/SeminarVipForm'
import SeminarPartnerForm from '@comp/signUpForm/SeminarPartnerForm' import SeminarPartnerForm from '@comp/signUpForm/SeminarPartnerForm'
import InviteCode from './InviteCode' import InviteCode from './InviteCode'
import InvoiceConfirmModal from './modules/InvoiceConfirmModal' import InvoiceConfirmModal from './modules/InvoiceConfirmModal'
import {LinkTopicsEnums} from '../../enums/commonEnum'
import {getLinkTopics} from "../../api/incomePaymentsApi";
export default { export default {
@@ -277,6 +304,10 @@ export default {
currentMeetingInfo: {}, currentMeetingInfo: {},
// 会议费用 // 会议费用
meetingMoney: '', meetingMoney: '',
// 是否为国际研讨会 WASIC会议
isWasic: false,
// 可选课题名称的数组
linkTopicsOptionArr: [],
// 召开时间 // 召开时间
holdtime: '', holdtime: '',
// 召开地点 // 召开地点
@@ -306,6 +337,12 @@ export default {
rules: [{required: true, message: '请选择参会企业'}], rules: [{required: true, message: '请选择参会企业'}],
validateTrigger: 'change' validateTrigger: 'change'
}, },
choiceTopic: {
rules: [
{required: true, message: '请选择课题名称'},
],
validateTrigger: ['change']
},
inviteCode: { inviteCode: {
rules: [{required: true, message: '请选择是否有邀请码'}], rules: [{required: true, message: '请选择是否有邀请码'}],
validateTrigger: 'change' validateTrigger: 'change'
@@ -361,6 +398,8 @@ export default {
}, },
// 当前参会企业是否是内部企业 // 当前参会企业是否是内部企业
isInternalEnterprise: false, isInternalEnterprise: false,
// 国际研讨会-WASIC-选择关联客户的数组
choiceTopicArr: []
} }
}, },
created() { created() {
@@ -374,6 +413,14 @@ export default {
} }
}, },
methods: { methods: {
// 获取国际研讨会-能选择课题的数据字典数据
getLinkTopicsOptionArr() {
getLinkTopics({id: this.meetingId}).then(res =>{
if(res.success) {
this.linkTopicsOptionArr = res.result || []
}
})
},
/* /*
* 获取会议详情 * 获取会议详情
* */ * */
@@ -389,6 +436,11 @@ export default {
this.meetingMoney = `非标协会员(${this.currentMeetingInfo.meetingCosts}/人) 标协会员(${this.currentMeetingInfo.meetingCostsVip}/人)` this.meetingMoney = `非标协会员(${this.currentMeetingInfo.meetingCosts}/人) 标协会员(${this.currentMeetingInfo.meetingCostsVip}/人)`
// 费用合计 // 费用合计
this.meetingCostSum = this.currentMeetingInfo.meetingCosts this.meetingCostSum = this.currentMeetingInfo.meetingCosts
} else if (this.currentMeetingInfo.meetingType === '3' && this.currentMeetingInfo.isWasic){
// 国际研讨会 且为WASIC 会议
this.isWasic = true
this.meetingMoney = `会议费用(2个课题)(${this.currentMeetingInfo.meetingCostsTwoTopic}/人) 会议费用(3个及以上)(${this.currentMeetingInfo.meetingCostsThreeTopic}/人)`
this.getLinkTopicsOptionArr()
} else { } else {
this.meetingMoney = `${this.currentMeetingInfo.meetingCosts}/人` this.meetingMoney = `${this.currentMeetingInfo.meetingCosts}/人`
// 费用合计 // 费用合计
@@ -546,7 +598,7 @@ export default {
that.confirmLoading = false that.confirmLoading = false
}) })
} }
//todo 判断当前是否需要发票,如果需要发票,二次判断对应发票的信息是否正确 //判断当前是否需要发票,如果需要发票,二次判断对应发票的信息是否正确
if (Number(submitData.needInvoice)) { if (Number(submitData.needInvoice)) {
that.showInvoiceConfirmModal(submitData, callbackFunc) that.showInvoiceConfirmModal(submitData, callbackFunc)
that.confirmLoading = false that.confirmLoading = false
@@ -575,7 +627,15 @@ export default {
if(e.target.value === 3 && this.currentMeetingInfo.meetingType === '3' ){ if(e.target.value === 3 && this.currentMeetingInfo.meetingType === '3' ){
this.meetingCostSum = '0.00' this.meetingCostSum = '0.00'
}else { }else {
this.meetingCostSum = this.currentMeetingInfo.meetingCosts this.meetingCostSum = this.currentMeetingInfo.meetingCosts
// TODO 如果当前是WASIC会议 则需要通过课题名称判断会议的费用
if(this.isWasic) {
if(this.choiceTopicArr.length > 2) {
this.meetingCostSum = this.currentMeetingInfo.meetingCostsThreeTopic
} else {
this.meetingCostSum = this.currentMeetingInfo.meetingCostsTwoTopic
}
}
} }
// 当前会议不是国际研讨会议 身份选择嘉宾和 内部企业的会议费用为0 // 当前会议不是国际研讨会议 身份选择嘉宾和 内部企业的会议费用为0
if(e.target.value !== 2 && this.currentMeetingInfo.meetingType !== '3' ){ if(e.target.value !== 2 && this.currentMeetingInfo.meetingType !== '3' ){
@@ -669,6 +729,18 @@ export default {
this.guestType = null this.guestType = null
}) })
}, },
changeChoiceTopic(choiceTopic) {
// 保存选择的付费主题 用于进行费用的计算
this.choiceTopicArr = (choiceTopic || '').split(',')
this.choiceTopicArr = this.choiceTopicArr.filter(item => item && item !== (LinkTopicsEnums.free.index + ''))
if(this.choiceTopicArr.length > 2) {
this.meetingCostSum = this.currentMeetingInfo.meetingCostsThreeTopic
} else {
this.meetingCostSum = this.currentMeetingInfo.meetingCostsTwoTopic
}
console.log(this.choiceTopicArr)
},
/* /*
* 是否有邀请码 * 是否有邀请码
* */ * */
@@ -970,4 +1042,14 @@ export default {
} }
} }
// 国际研讨会-关联课题 多选样式的修改
.meeting-form-multi-select{
/deep/.ant-checkbox-wrapper + .ant-checkbox-wrapper {
margin-left: 0!important;
}
/deep/ .ant-checkbox-wrapper{
margin-right: 8px;
}
}
</style> </style>