From 1938867db27de84612069a41fe2f66b0ab695ebf Mon Sep 17 00:00:00 2001 From: danshihao Date: Tue, 25 Jun 2024 14:45:11 +0800 Subject: [PATCH] =?UTF-8?q?[update=20=E6=B5=B7=E5=A4=96=E4=BC=9A=E8=AE=AE]?= =?UTF-8?q?=20=E5=AF=B9=E6=8E=A5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/incomeMeetingApi.js | 5 +- src/enums/commonEnums.js | 2 +- .../meetManage/AddOrDetailMeet.vue | 4 +- .../incomePayments/meetManage/Attendance.vue | 140 +++++- .../meetManage/SignUpInfoEdit.vue | 231 +-------- .../meetManage/SignUpInfoEditOverseas.vue | 475 ++++++++++++++++++ .../modules/UploadMeetFileModal.vue | 7 + .../projectManagement/OverseasMeeting.vue | 18 +- 8 files changed, 631 insertions(+), 251 deletions(-) create mode 100644 src/views/incomePayments/meetManage/SignUpInfoEditOverseas.vue diff --git a/src/api/incomeMeetingApi.js b/src/api/incomeMeetingApi.js index d3773df..a1acfba 100644 --- a/src/api/incomeMeetingApi.js +++ b/src/api/incomeMeetingApi.js @@ -32,6 +32,8 @@ const getStandardNumberList = (params) => getAction('/meeting/standardsMeeting/g // 国际研讨会-WASIC-通过会议ID获取关联主题的信息 const getLinkTopics = (params) => getAction('/meeting/internalMeeting/getLinkTopics', params) +// 通过id获取海外会议参会人详细信息 +const getSingUpUserInfoOverseas = (params) => getAction('/meeting/overseasSituation/queryById', params) export { getUserInfo, @@ -46,5 +48,6 @@ export { addGenerateCodeList, editGenerateCodeList, getStandardNumberList, - getLinkTopics + getLinkTopics, + getSingUpUserInfoOverseas } diff --git a/src/enums/commonEnums.js b/src/enums/commonEnums.js index 1fdb7f3..b883cf7 100644 --- a/src/enums/commonEnums.js +++ b/src/enums/commonEnums.js @@ -73,5 +73,5 @@ export const MeetingTypeEnums = { committee: { name: '分标委会议', value: '5' }, council: { name: '理事会会议', value: '6' }, draftGroup: { name: '起草会会议', value: '7' }, - overseas: { name: '海外会议', value: '9' } + overseas: { name: '海外会议', value: '8' } } \ No newline at end of file diff --git a/src/views/incomePayments/meetManage/AddOrDetailMeet.vue b/src/views/incomePayments/meetManage/AddOrDetailMeet.vue index 18f436d..4ac7161 100644 --- a/src/views/incomePayments/meetManage/AddOrDetailMeet.vue +++ b/src/views/incomePayments/meetManage/AddOrDetailMeet.vue @@ -1417,8 +1417,8 @@ export default { // 海外会议 case MeetingTypeEnums.overseas.value: return { - add: '', - edit: '', + add: '/meeting/overseas/add', + edit: '/meeting/overseas/edit' } } }, diff --git a/src/views/incomePayments/meetManage/Attendance.vue b/src/views/incomePayments/meetManage/Attendance.vue index 1a76d47..6e8bef9 100644 --- a/src/views/incomePayments/meetManage/Attendance.vue +++ b/src/views/incomePayments/meetManage/Attendance.vue @@ -174,7 +174,7 @@
- + @@ -273,6 +273,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 查询 + 重置 + + +
@@ -571,6 +611,62 @@ export default { scopedSlots: { customRender: 'action' } } ], + // 海外会议表格 + overseasMeetingColumns: [ + { + title: '序号', + dataIndex: '', + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function (t, r, index) { + return parseInt(index) + 1 + } + }, + { + title: '姓名', + align: 'center', + dataIndex: 'name', + width: 100 + }, + { + title: '职务及单位', + align: 'center', + dataIndex: 'unit', + width: 100 + }, + { + title: '国籍', + align: 'center', + dataIndex: 'nationality', + width: 100 + }, + { + title: '地址', + align: 'center', + dataIndex: 'address', + width: 300 + }, + { + title: '邮箱', + align: 'center', + dataIndex: 'email', + width: 200 + }, + { + title: '联系电话', + align: 'center', + dataIndex: 'phone', + width: 120 + }, + { + title: '操作', + align: 'center', + fixed: 'right', + width: 300, + scopedSlots: { customRender: 'action' } + } + ], // 权限编码 authorCode: {}, // 其他会议的参会情况的权限编码 @@ -733,13 +829,13 @@ export default { exportXlsUrl: '/meeting/draftGroupMeetingSituation/exportXls', importExcelUrl: '/meeting/draftGroupMeetingSituation/importExcel' }, - // 起草组会议的url + // 海外会议的url overseasMeetingUrl: { - list: '', - delete: '', - deleteBatch: '', - exportXlsUrl: '', - importExcelUrl: '' + list: '/meeting/overseasSituation/page', + delete: '/meeting/overseasSituation/delete', + deleteBatch: '/meeting/overseasSituation/deleteBatch', + exportXlsUrl: '/meeting/overseasSituation/exportXls', + importExcelUrl: '/meeting/overseasSituation/importExcel' }, // 当前的会议信息详情 currentMeetingInfo: {}, @@ -760,6 +856,10 @@ export default { }, created() { // console.log(this.$route,'this.$route this.$route') + // 海外会议处理表格 + if (this.isOverseasMeeting) { + this.columns = this.overseasMeetingColumns + } // 为不同会议的参会情况去设置不同的权限编码 this.setCodeByMeetingType(this.$route.query.meetingType) // 获取会议详情 @@ -776,7 +876,9 @@ export default { // 列表表头只有国际研讨会有对接人字段 if (this.currentMeetingInfo.meetingType !== '3') { let index = this.columns.findIndex(item => item.dataIndex === 'dockName') - this.columns.splice(index, 1) + if (index !== -1) { + this.columns.splice(index, 1) + } } // 计算会议费用 会议费用为0 添加参会人不显示邮寄信息与缴费信息 标协会议 if (this.currentMeetingInfo.meetingType === '2' && this.currentMeetingInfo.meetingCostsVip) { @@ -823,6 +925,10 @@ export default { this.signInQRCode = await this.generateQRCode(this.signInUrl) }, computed: { + // 是否海外会议 + isOverseasMeeting () { + return this.$route.query.meetingType === MeetingTypeEnums.overseas.value + }, // 标协会议类型 tbMeetingType() { if (this.currentMeetingInfo.tbMeetingType === '1') { @@ -956,8 +1062,13 @@ export default { * 添加参会人 * */ addParticipant() { + let path = '/incomePayments/meetManage/SignUpInfoEdit' + // 海外会议跳转另一个页面 + if (this.isOverseasMeeting) { + path = '/incomePayments/meetManage/SignUpInfoEditOverseas' + } this.$router.push({ - path: '/incomePayments/meetManage/SignUpInfoEdit', + path, query: { meetingType: this.currentMeetingInfo.meetingType, meetingId: this.$route.query.id, @@ -969,8 +1080,13 @@ export default { * 编辑参会人 * */ handleEdit(record) { + let path = '/incomePayments/meetManage/SignUpInfoEdit' + // 海外会议跳转另一个页面 + if (this.isOverseasMeeting) { + path = '/incomePayments/meetManage/SignUpInfoEditOverseas' + } this.$router.push({ - path: '/incomePayments/meetManage/SignUpInfoEdit', + path, query: { id: record.id, meetingId: this.$route.query.id, @@ -1164,6 +1280,10 @@ export default { case '7': this.authorCode = Object.assign({}, this.draftGroupMeetingCode) break + // 海外会议 + case MeetingTypeEnums.overseas.value: + this.authorCode = Object.assign({}, this.overseasMeetingCode) + break } } } diff --git a/src/views/incomePayments/meetManage/SignUpInfoEdit.vue b/src/views/incomePayments/meetManage/SignUpInfoEdit.vue index dec0974..f4887f5 100644 --- a/src/views/incomePayments/meetManage/SignUpInfoEdit.vue +++ b/src/views/incomePayments/meetManage/SignUpInfoEdit.vue @@ -3,7 +3,7 @@ - +
个人信息
@@ -153,133 +153,6 @@ - -
- 确定 - 取消 -
-
- - - -
个人信息
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
确定 取消 @@ -304,16 +177,12 @@ import {httpAction} from '@api/manage' import pick from 'lodash.pick' import PageHeaderTitle from '@comp/layouts/PageHeaderTitle' import { queryCompanyInfoById } from '../../../api/api' -import {LinkTopicsEnums, MeetingTypeEnums, YesOrNoEnums} from '../../../enums/commonEnums' +import {LinkTopicsEnums, MeetingTypeEnums} from '../../../enums/commonEnums' import WasicTopicData from './modules/wasicStaticData' -import JImageUpload from '@comp/jero/JImageUpload' -import JDate from '@comp/tools/JDate' export default { name: 'SignUpInfoEdit', components: { - JDate, - JImageUpload, SelectContacts, SeminarPartnerForm, // JDictSelectTag, @@ -434,8 +303,8 @@ export default { }, // 海外会议的url overseasMeetingUrl: { - add: '', - edit: '' + add: '/meeting/overseasSituation/add', + edit: '/meeting/overseasSituation/edit' }, title:'添加参会人', // 当前参会企业是否是内部企业 @@ -445,74 +314,7 @@ export default { // 可选会议名称的数组 linkTopicsOptionArr: [], // WASIC可选会议的数组-前端写死 - showTopicsArr: [...WasicTopicData], - /*海外会议start*/ - // 是否需要签证 - isNeedVisa: false, - // 海外会议表单校验 - overseasRules: { - photo: { - rules: [{required: true, message: '请上传照片'}], - validateTrigger: 'change' - }, - name: { - rules: [{required: true, message: '请输入姓名'}], - validateTrigger: 'blur' - }, - unit: { - rules: [{required: true, message: '请输入职务及单位'}], - validateTrigger: 'blur' - }, - international: { - rules: [{required: true, message: '请输入国际'}], - validateTrigger: 'blur' - }, - address: { - rules: [{required: true, message: '请输入地址'}], - validateTrigger: 'blur' - }, - email: { - rules: [{required: true, message: '请输入邮箱'}], - validateTrigger: 'blur' - }, - phone: { - rules: [{required: true, message: '请输入联系电话'}], - validateTrigger: 'blur' - }, - needVisa: { - rules: [{required: true, message: '请选择是否需要签证'}], - validateTrigger: 'change' - }, - foreignName: { - rules: [{required: true, message: '请输入外文姓名'}], - validateTrigger: 'blur' - }, - sex: { - rules: [{required: true, message: '请输入性别'}], - validateTrigger: 'blur' - }, - birthday: { - rules: [{required: true, message: '请输入选择日期'}], - validateTrigger: 'change' - }, - nationality: { - rules: [{required: true, message: '请输入国籍'}], - validateTrigger: 'blur' - }, - passportNo: { - rules: [{required: true, message: '请输入护照号码'}], - validateTrigger: 'blur' - }, - entryAndExitDate: { - rules: [{required: true, message: '请选择出入境日期'}], - validateTrigger: 'change' - }, - embassiesAndConsulates: { - rules: [{required: true, message: '请输入办理签证使领馆'}], - validateTrigger: 'blur' - }, - } - /*海外会议end*/ + showTopicsArr: [...WasicTopicData] } }, created() { @@ -538,10 +340,6 @@ export default { }, computed:{ - // 是否海外会议,报名信息调整 - isOverseasMeeting () { - return this.meetingType + '' === MeetingTypeEnums.overseas.value - }, // eslint-disable-next-line url() { switch (this.$route.query.meetingType) { @@ -566,14 +364,6 @@ export default { }, }, methods: { - // 是否需要签证改变 - changeNeedVisa (val) { - if (val + '' === YesOrNoEnums.no.value) { - this.isNeedVisa = true - } else { - this.isNeedVisa = false - } - }, // 验证选择会议名称的情况 checkChoiceTopic(rules, value, callback) { console.log(value) @@ -675,13 +465,6 @@ export default { if(this.model.id){ this.title = '编辑参会人' } - // 海外会议回显单独处理 - if (this.isOverseasMeeting) { - this.$nextTick(() => { - this.form.setFieldsValue(this.model) - }) - return - } // 设置编辑的显示隐藏状态 this.identifyType = this.model.identity this.guestType = this.model.guestType ? this.model.guestType : null @@ -815,9 +598,7 @@ export default { if(submitData.companyName) { submitData.companyName = (submitData.companyName || '').replaceAll(' (未审核)','').replaceAll(' (未审核)','') } - if (values.companyId) { - submitData.companyId = values.companyId.id - } + submitData.companyId = values.companyId.id // 会议id submitData.meetingId = this.$route.query.meetingId // 会议类型 diff --git a/src/views/incomePayments/meetManage/SignUpInfoEditOverseas.vue b/src/views/incomePayments/meetManage/SignUpInfoEditOverseas.vue new file mode 100644 index 0000000..cbcc6da --- /dev/null +++ b/src/views/incomePayments/meetManage/SignUpInfoEditOverseas.vue @@ -0,0 +1,475 @@ + + + + + diff --git a/src/views/incomePayments/meetManage/modules/UploadMeetFileModal.vue b/src/views/incomePayments/meetManage/modules/UploadMeetFileModal.vue index bc532d8..86f39b9 100644 --- a/src/views/incomePayments/meetManage/modules/UploadMeetFileModal.vue +++ b/src/views/incomePayments/meetManage/modules/UploadMeetFileModal.vue @@ -61,6 +61,7 @@ import { ACCESS_TOKEN } from '../../../../store/mutation-types' import { Modal } from 'ant-design-vue' import store from '@/store' import { isExternalTerminal } from '../../../../utils/util' +import {MeetingTypeEnums} from '@/enums/commonEnums' const FILE_TYPE_ALL = 'all' const columns = [ @@ -208,6 +209,12 @@ export default { uploadFile: '/meeting/draftGroupMeeting/uploadFile', uploadCouncilFile: '/meeting/draftGroupMeeting/uploadCouncilFile', } + // 海外会议 + case MeetingTypeEnums.overseas.value: + return { + uploadFile: '/meeting/overseas/uploadFile', + uploadCouncilFile: '/meeting/overseas/uploadCouncilFile', + } } }, handleOk() { diff --git a/src/views/projectManagement/OverseasMeeting.vue b/src/views/projectManagement/OverseasMeeting.vue index c7a3863..ebdae2a 100644 --- a/src/views/projectManagement/OverseasMeeting.vue +++ b/src/views/projectManagement/OverseasMeeting.vue @@ -74,7 +74,7 @@ 导出 批量删除 - 发布 + 发布
@@ -230,21 +230,15 @@ export default { endKey: 'meetingEndTime' }, url: { - list: '/meeting/payMeeting/queryMeetingSummary', - delete: '', - deleteBatch: '', - exportXlsUrl: '', - importExcelUrl: '', - releaseMeeingUrl: ''// 发布会议的接口 + list: '/meeting/overseas/page', + delete: '/meeting/overseas/delete', + deleteBatch: '/meeting/overseas/deleteBatch', + exportXlsUrl: '/meeting/overseas/exportXls', + releaseMeeingUrl: '/meeting/overseas/publishReminder'// 发布会议的接口 }, disableMixinCreated: true } }, - computed: { - importExcelUrl: function () { - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` - }, - }, created() { this.filters.meetingType = MeetingTypeEnums.overseas.value this.loadData(1)