diff --git a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/controller/baseManage/TheRapyRecuperationBaseManagerController.java b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/controller/baseManage/TheRapyRecuperationBaseManagerController.java index 118f3ea..7502199 100644 --- a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/controller/baseManage/TheRapyRecuperationBaseManagerController.java +++ b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/controller/baseManage/TheRapyRecuperationBaseManagerController.java @@ -191,7 +191,8 @@ public class TheRapyRecuperationBaseManagerController { @RequiresAuthentication public Object selectBaseManageById(String id) { Assert.notBlank(id); - return dao.fetchLinks(dao.fetch(TheRapyRecuperationBaseManagement.class, id), "travelAgency"); + TheRapyRecuperationBaseManagement management = dao.fetch(TheRapyRecuperationBaseManagement.class, id); + return dao.fetchLinks(management, "travelAgency"); } diff --git a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/model/TheRapyRecuperationBaseManagement.java b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/model/TheRapyRecuperationBaseManagement.java index 223eb63..e7994cd 100644 --- a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/model/TheRapyRecuperationBaseManagement.java +++ b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/model/TheRapyRecuperationBaseManagement.java @@ -163,5 +163,10 @@ public class TheRapyRecuperationBaseManagement { @Column @ColDefine(type = ColType.MYSQL_JSON) @Comment("天数") - private List allowDay; + private List allowDay; + + @Column + @ColDefine(type = ColType.VARCHAR) + @Comment("旅行社地点") + private String travelAgencyPlace; } diff --git a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/service/impl/TheRapyRecuperationEnrollServiceImpl.java b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/service/impl/TheRapyRecuperationEnrollServiceImpl.java index 6733c4f..98604e3 100644 --- a/src/main/java/io/v/nutz/zhgh/therapyRecuperation/service/impl/TheRapyRecuperationEnrollServiceImpl.java +++ b/src/main/java/io/v/nutz/zhgh/therapyRecuperation/service/impl/TheRapyRecuperationEnrollServiceImpl.java @@ -531,20 +531,21 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl thisYearCount = this.validCountThisYear(loginName, travelFrequency); - if (thisYearCount != null && thisYearCount.containsKey(false)) { - return thisYearCount; - } - //如果报酒店,酒店可以一年报2次 - if (StrUtil.isNotBlank(enrollInfo.getTakePartInBaseManagementId()) && StrUtil.isBlank(enrollInfo.getId())) { + if (StrUtil.isNotBlank(enrollInfo.getTakePartInBaseManagementId())) { + travelFrequency = 2; Map validResult = this.validBaseManagementCount(loginName, enrollInfo); if(validResult != null && validResult.containsKey(false)) { return validResult; } } + //先判断有没有报过 + Map thisYearCount = this.validCountThisYear(loginName, travelFrequency); + if (thisYearCount != null && thisYearCount.containsKey(false) && StrUtil.isBlank(enrollInfo.getId())) { + return thisYearCount; + } + if (StrUtil.isNotBlank(enrollInfo.getTakePartInLineId())) { //线路信息 TheRapyRecuperationLineUnionSelect lineUnionSelect = dao().fetch(TheRapyRecuperationLineUnionSelect.class, enrollInfo.getTakePartInLineId()); @@ -670,8 +671,9 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl= 2) { + if(StrUtil.isBlank(currentEnroll.getId()) && enrollList.size() >= 2) { return Map.of(false, "您已经报名了%s次分段疗休养".formatted(enrollList.size())); } //如果报过第一次就要判断 @@ -702,8 +704,7 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl 0) { str = "省内线路"; @@ -734,6 +740,8 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl 0) { str = "旅行社"; + } else if (hotelCount > 0) { + str = "酒店"; } return Map.of(false, "一年只能报" + travelFrequency + "次,您已报" + str + ",请先在我的疗休养中删除,方可报名!"); } @@ -874,8 +882,6 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl--> - -
- {{ item.lotName }} -
-
- {{ viewData.estimatedCost }} {{ viewData.baseContactPerson }} {{ viewData.baseContactNumber }} - {{ viewData.signUpStartTime }} - {{ viewData.signUpEndTime }} - {{ viewData.changeEndTime }} - - {{ viewData.activityStartTime }} - {{ viewData.activityEndTime }} - diff --git a/src/main/resources/views/mobile/platform.html b/src/main/resources/views/mobile/platform.html index 721bacc..9f42cf1 100644 --- a/src/main/resources/views/mobile/platform.html +++ b/src/main/resources/views/mobile/platform.html @@ -95,7 +95,7 @@ url: url, container: "#container", maxCacheLength: 0, - push: true, + push: false, replace: true, fragment: "#container", timeout: 8000, diff --git a/src/main/resources/views/mobile/therapyRecuperation/baseManagement.html b/src/main/resources/views/mobile/therapyRecuperation/baseManagement.html index 4350420..b55e3f1 100644 --- a/src/main/resources/views/mobile/therapyRecuperation/baseManagement.html +++ b/src/main/resources/views/mobile/therapyRecuperation/baseManagement.html @@ -45,10 +45,6 @@ layout("/mobile/platform.html"){ height: 30px; } - .backTop { - display: none !important; - } - .footer { background-color: white; position: fixed; @@ -247,7 +243,11 @@ layout("/mobile/platform.html"){ .pdf_div { padding-bottom: 12px; - height: 800px; + height: calc(100vh - 46px - 60px - 151px - 50px); + overflow-y: auto; + } + .backTop { + display: none !important; } @@ -579,7 +579,8 @@ layout("/mobile/platform.html"){ methods: { playDayConfirm(val) { this.formData.playDay = val.value - this.lotValue = val.value === 2.5 ? 3 : val.value + this.lotValue = val.value == 2.5 ? 3 : val.value + this.formData.specificTime = '' this.playDayVisible = false }, specificTimeClick() { @@ -592,7 +593,7 @@ layout("/mobile/platform.html"){ pageBack() { window.removeEventListener('scroll', this.scrollToTop) document.removeEventListener('click', this.handleClick) - if(['find', 'editDo'].includes(this.fromUrlByMy)) { + if(['find', 'edit'].includes(this.fromUrlByMy)) { pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation') } else { pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage') @@ -695,17 +696,16 @@ layout("/mobile/platform.html"){ const resp = await $.post('/platform/theRapyRecuperation/line/enroll/doSignUpForBaseManagement', { enroll: JSON.stringify(cloneData), }) - toast.close() - if (resp.code === 0) { + setTimeout(() => { + toast.clear() vant.Dialog.alert({ title: '温馨提示', - message: this.enrollId ? '修改成功,请务必联系并告知旅行社' : resp.msg, - }).then(() => { - pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index) + message: resp.msg, }) - } else { - vant.Toast(resp.msg) - } + if (resp.code === 0) { + pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index) + } + }, 1000) }, addCompanion() { this.formData.companionList.push({userName: '', loginName: '', sex: '', relation: '', bedInfo: {}}) @@ -963,7 +963,7 @@ layout("/mobile/platform.html"){ }) }, mounted() { - window.addEventListener('scroll', this.scrollToTop) + //window.addEventListener('scroll', this.scrollToTop) }, destroyed() { diff --git a/src/main/resources/views/mobile/therapyRecuperation/lineInfo.html b/src/main/resources/views/mobile/therapyRecuperation/lineInfo.html index c936861..110fb71 100644 --- a/src/main/resources/views/mobile/therapyRecuperation/lineInfo.html +++ b/src/main/resources/views/mobile/therapyRecuperation/lineInfo.html @@ -15,10 +15,6 @@ layout("/mobile/platform.html"){ display: block; } - .backTop { - display: none !important; - } - .header { padding: 20px; } @@ -30,7 +26,11 @@ layout("/mobile/platform.html"){ .pdf_div { padding-bottom: 70px; - height: 800px; + height: calc(100vh - 46px - 60px - 151px - 170px); + overflow-y: auto; + } + .backTop { + display: none !important; } .title { @@ -249,12 +249,16 @@ layout("/mobile/platform.html"){ {{lineData.lineName}}
-
+
- 成团人数包括家属: - + 最少成团人数: +
+
当前报名: {{lineData.signUpUserNum + lineData.signUpUserFamilyNum + '(家属' + lineData.signUpUserFamilyNum + '人)'}} @@ -265,25 +269,10 @@ layout("/mobile/platform.html"){
-
-
- 最多成团人数: - -
-
- 当前报名: - {{lineData.signUpUserNum + '(家属' + lineData.signUpUserFamilyNum + '人)'}} -
-
- 当前报名: - {{lineData.signUpUserNum + '(家属' + lineData.familyNumber + '人)'}} -
-
-
报名时间: - {{moment(lineData.signUpStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' + - moment(lineData.signUpEndTime).format('YYYY-MM-DD HH:mm')}} + {{moment(configData.implodeStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' + + moment(configData.implodeEndTime).format('YYYY-MM-DD HH:mm')}}
出行时间: @@ -301,8 +290,6 @@ layout("/mobile/platform.html"){
上下滑动翻页,单击查看,再单击返回 -
@@ -320,17 +307,17 @@ layout("/mobile/platform.html"){ -
+ -
+ + <!––> -
+
-->
@@ -591,9 +578,8 @@ layout("/mobile/platform.html"){ }, methods: { pageBack() { - window.removeEventListener('scroll', this.scrollToTop) document.removeEventListener('click', this.handleClick) - if(['find', 'editDo'].includes(this.fromUrlByMy)) { + if(['find', 'edit'].includes(this.fromUrlByMy)) { pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation') } else { pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage') @@ -677,16 +663,11 @@ layout("/mobile/platform.html"){ enroll: JSON.stringify(cloneData), }) setTimeout(() => { - if (resp.code === 0) { - toast.message = '提交成功' - toast.type = 'success' - } else { - toast.message = resp.msg - toast.type = 'fail' - } - setTimeout(() => { - toast.clear() - }, 500) + toast.clear() + vant.Dialog.alert({ + title: '温馨提示', + message: resp.msg, + }) if (resp.code === 0) { pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index) } @@ -866,10 +847,10 @@ layout("/mobile/platform.html"){ } }, mounted() { - window.addEventListener('scroll', this.scrollToTop) + //window.addEventListener('scroll', this.scrollToTop) }, destroyed() { - + //window.removeEventListener('scroll', this.scrollToTop) }, }) diff --git a/src/main/resources/views/mobile/therapyRecuperation/lineList.html b/src/main/resources/views/mobile/therapyRecuperation/lineList.html index 9f0b7bc..b4c199d 100644 --- a/src/main/resources/views/mobile/therapyRecuperation/lineList.html +++ b/src/main/resources/views/mobile/therapyRecuperation/lineList.html @@ -108,7 +108,8 @@ layout("/mobile/platform.html"){ } .van-list { - padding-bottom: 10px; + height: calc(100vh - 43px - 116px - 20px); + overflow-y: auto; } .van-row { @@ -172,14 +173,14 @@ layout("/mobile/platform.html"){ @click="pageForm.lineUnionType = 3; getData()"> 校工会组织 - 本分工会 其他分工会 - + --> 个人组织 diff --git a/src/main/resources/views/mobile/therapyRecuperation/myRecuperation.html b/src/main/resources/views/mobile/therapyRecuperation/myRecuperation.html index 2609d34..9e7b7d6 100644 --- a/src/main/resources/views/mobile/therapyRecuperation/myRecuperation.html +++ b/src/main/resources/views/mobile/therapyRecuperation/myRecuperation.html @@ -332,14 +332,18 @@ layout("/mobile/platform.html"){
联系方式:{{o.contactMobileNumber}}
-
- 随行家属:{{o.companionUserNames ? o.companionUserNames : '无'}} - 随行家属:{{o.familyNumber}}人 + +
+ 旅 行 社:{{o.travelAgencyName}}
@@ -360,8 +364,8 @@ layout("/mobile/platform.html"){ 邮箱:{{o.email}}
-->
- 官网:官网:{{o.officialWebsite}} - diff --git a/src/main/resources/views/platform/theRapyRecuperation/baseManage/baseManagement.html b/src/main/resources/views/platform/theRapyRecuperation/baseManage/baseManagement.html index 7b79283..97f6049 100644 --- a/src/main/resources/views/platform/theRapyRecuperation/baseManage/baseManagement.html +++ b/src/main/resources/views/platform/theRapyRecuperation/baseManage/baseManagement.html @@ -158,7 +158,8 @@ layout("/layouts/platform.html"){ - + - - - - 省内 - 省外 - + + + + @@ -196,9 +193,9 @@ layout("/layouts/platform.html"){ > --> - 3天 - 2天 - 2.5天 + + + @@ -219,7 +216,15 @@ layout("/layouts/platform.html"){ - + + + + 省内 + 省外 + + + + 不限 @@ -525,7 +530,7 @@ layout("/layouts/platform.html"){ //{label: '标段时间', prop: 'lotId', sortable: true}, {label: '联系人', prop: 'baseContactPerson', sortable: true}, {label: '联系人电话', prop: 'baseContactNumber', sortable: true}, - {label: '活动时间', prop: 'activityTime', sortable: true}, + //{label: '活动时间', prop: 'activityTime', sortable: true}, //{label: '创建工会', prop: 'createUnionName', sortable: true}, {label: '活动范围', prop: 'regionalNature', sortable: true}, //{label: '组织形式', prop: 'signUpMode', sortable: true}, @@ -547,18 +552,11 @@ layout("/layouts/platform.html"){ files: [{required: true, message: '请上传图片', trigger: ['change', 'blur']}], createMode: [{required: true, message: '请选择组织方式', trigger: ['change', 'blur']}], weekIn: [{required: true, message: '请选择组织方式', trigger: ['change', 'blur']}], - activityStartTime: [{ - required: true, - validator: validateActivityStartTime, - trigger: ['change', 'blur'] - }], - activityEndTime: [{ - required: true, - validator: validateActivityEndTime, - trigger: ['change', 'blur'] - }], + activityStartTime: [{required: true, validator: validateActivityStartTime, trigger: ['change', 'blur']}], + activityEndTime: [{required: true, validator: validateActivityEndTime, trigger: ['change', 'blur']}], estimatedCost: [{required: true, message: '请输入预计费用', trigger: ['change', 'blur']}], allowDay: [{required: true, message: '请选择天数', trigger: ['change', 'blur']}], + travelAgencyPlace: [{required: true, message: '请选择旅行社地点', trigger: ['change', 'blur']}], }, //目的地导入 importVisible: false, @@ -650,6 +648,7 @@ layout("/layouts/platform.html"){ background: 'rgba(0, 0, 0, 0.7)' }); this.formData.weekCheckIn = JSON.stringify(this.formData.weekCheckIn) + this.formData.allowDay = JSON.stringify(this.formData.allowDay) const resp = await $.post(loc() + '/doSubmit', this.formData) loading.close() if (resp.code === 0) { diff --git a/src/main/resources/views/platform/theRapyRecuperation/process/lineUnionSelect.html b/src/main/resources/views/platform/theRapyRecuperation/process/lineUnionSelect.html index b5e4e31..59200b4 100644 --- a/src/main/resources/views/platform/theRapyRecuperation/process/lineUnionSelect.html +++ b/src/main/resources/views/platform/theRapyRecuperation/process/lineUnionSelect.html @@ -475,11 +475,11 @@ layout("/layouts/platform.html"){ size="mini" type="primary">新增出行时间
- + type="warning">--> - + 取消 提交 @@ -981,8 +981,8 @@ layout("/layouts/platform.html"){ } if(resp.data && resp.data.length > 0){ resp.data.forEach(item => { - item.chooseUserList = JSON.parse(item.chooseUserList) - item.signScope = JSON.parse(item.signScope) + item.chooseUserList = JSON.parse(item.chooseUserList || '[]') + item.signScope = JSON.parse(item.signScope || '[]') }) this.$set(this.formData, 'times', resp.data) }else{