更改
This commit is contained in:
+2
-2
@@ -228,7 +228,7 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
||||
cnd.and("b.id", "in", list);
|
||||
}
|
||||
|
||||
cnd.asc("sortNumber");
|
||||
cnd.asc("sortNumber * 1");
|
||||
taSql.setCondition(cnd);
|
||||
return listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), taSql);
|
||||
}
|
||||
@@ -609,7 +609,7 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
||||
}
|
||||
|
||||
//判断人数报满没有
|
||||
if(lineUnionSelect.getMaxGroupSize() > 0) {
|
||||
if(lineUnionSelect.getMaxGroupSize() != null && lineUnionSelect.getMaxGroupSize() > 0) {
|
||||
Map<Boolean, String> validSignCountMap = validSignCount(enrollInfo, config, lineUnionSelect.getMaxGroupSize(), StrUtil.isBlank(enrollInfo.getId()) ? "add" : "edit");
|
||||
if (validSignCountMap.containsKey(false)) {
|
||||
return validSignCountMap;
|
||||
|
||||
@@ -293,9 +293,10 @@ layout("/mobile/platform.html"){
|
||||
</div>
|
||||
</div>
|
||||
<van-divider :style="{ color: 'orange', fontSize: '12px' }">上下滑动翻页,单击查看,再单击返回</van-divider>
|
||||
<div v-if="isPdf" v-html="baseData.content" class="content"></div>
|
||||
<div v-else id="demo" class="pdf_div"></div>
|
||||
|
||||
<div class="pdf_div">
|
||||
<div v-if="isPdf" v-html="baseData.content" class="content"></div>
|
||||
<div v-else id="demo" class="pdf_div"></div>
|
||||
</div>
|
||||
</div>
|
||||
</van-skeleton>
|
||||
|
||||
@@ -313,6 +314,8 @@ layout("/mobile/platform.html"){
|
||||
<van-button v-if="moment().unix() >= moment(configData.fragmentStartTime).unix() && moment().unix() <= moment(configData.fragmentEndTime).unix()" @click="join"
|
||||
class="join">{{ enrollId ? '修改报名' : '我要报名' }}
|
||||
</van-button>
|
||||
<van-button v-if="moment().unix() < moment(configData.fragmentStartTime).unix()" class="join">报名未开始
|
||||
</van-button>
|
||||
<van-button v-if="moment().unix() > moment(configData.fragmentEndTime).unix()" class="join">报名结束
|
||||
</van-button>
|
||||
</div>
|
||||
@@ -915,19 +918,22 @@ layout("/mobile/platform.html"){
|
||||
}
|
||||
},
|
||||
readPDFPicture(pdf) {
|
||||
const that = this
|
||||
if(pdf != null) {
|
||||
pdf.on("complete", function () {
|
||||
const imgDoc = document.querySelectorAll('img')
|
||||
let array = []
|
||||
const elements = document.querySelectorAll('[class*="canvasImg"]')
|
||||
let classArray = []
|
||||
imgDoc.forEach(o => {
|
||||
if(o.getAttribute('class') !== 'top_icon') {
|
||||
classArray.push(o.getAttribute('class'))
|
||||
array.push(o.getAttribute('src'))
|
||||
}
|
||||
elements.forEach(element => {
|
||||
classArray.push(element.getAttribute('src'))
|
||||
})
|
||||
document.addEventListener('click', (event) => that.handleClick(event, classArray, array))
|
||||
elements.forEach((element,index) => {
|
||||
element.addEventListener('click', function() {
|
||||
vant.ImagePreview({
|
||||
images: classArray,
|
||||
startPosition: index,
|
||||
closeable: true,
|
||||
})
|
||||
});
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -956,19 +962,12 @@ layout("/mobile/platform.html"){
|
||||
})
|
||||
}catch (e) {
|
||||
this.isPdf = true
|
||||
//document.addEventListener('click', (event) => this.handleClick(event))
|
||||
}
|
||||
|
||||
this.$nextTick(() => {
|
||||
this.readPDFPicture(pdfh5)
|
||||
})
|
||||
},
|
||||
mounted() {
|
||||
//window.addEventListener('scroll', this.scrollToTop)
|
||||
},
|
||||
destroyed() {
|
||||
|
||||
},
|
||||
})
|
||||
</script>
|
||||
|
||||
|
||||
@@ -36,6 +36,10 @@ layout("/mobile/platform.html"){
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.pdfjs .backTop {
|
||||
bottom: 30px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<div id="app" v-cloak>
|
||||
@@ -123,40 +127,22 @@ layout("/mobile/platform.html"){
|
||||
})
|
||||
}catch (e) {
|
||||
this.isPdf = true
|
||||
document.addEventListener('click', function (event) {
|
||||
// 打印被点击的元素标签名和 class
|
||||
if (event.target.tagName === 'IMG' && !['van-image__img', 'top_icon'].includes(event.target.className)) {
|
||||
vant.ImagePreview({
|
||||
images: [event.target.src],
|
||||
closeable: true,
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
this.$nextTick(() => {
|
||||
pdfh5.on("complete", function () {
|
||||
const imgDoc = document.querySelectorAll('img')
|
||||
let array = []
|
||||
const elements = document.querySelectorAll('[class*="canvasImg"]')
|
||||
let classArray = []
|
||||
imgDoc.forEach(o => {
|
||||
if(!['van-image__img', 'top_icon'].includes(o.getAttribute('class'))) {
|
||||
classArray.push(o.getAttribute('class'))
|
||||
array.push(o.getAttribute('src'))
|
||||
}
|
||||
elements.forEach(element => {
|
||||
classArray.push(element.getAttribute('src'))
|
||||
})
|
||||
document.addEventListener('click', function (event) {
|
||||
// 打印被点击的元素标签名和 class
|
||||
if (event.target.tagName === 'IMG' && !['van-image__img', 'top_icon'].includes(event.target.className)) {
|
||||
const index = classArray.indexOf(event.target.className)
|
||||
if(index !== -1) {
|
||||
vant.ImagePreview({
|
||||
images: array,
|
||||
startPosition: index,
|
||||
closeable: true,
|
||||
})
|
||||
}
|
||||
}
|
||||
elements.forEach((element,index) => {
|
||||
element.addEventListener('click', function() {
|
||||
vant.ImagePreview({
|
||||
images: classArray,
|
||||
startPosition: index,
|
||||
closeable: true,
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
@@ -6,7 +6,6 @@ layout("/mobile/platform.html"){
|
||||
#app {
|
||||
font-family: 微软雅黑,serif;
|
||||
}
|
||||
|
||||
.container img {
|
||||
background-size: contain;
|
||||
width: 100%;
|
||||
@@ -14,50 +13,43 @@ layout("/mobile/platform.html"){
|
||||
margin: 5px auto;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.header {
|
||||
padding: 10px 20px 0;
|
||||
}
|
||||
|
||||
.content {
|
||||
line-height: 26px;
|
||||
padding: 0px 10px 56px 10px;
|
||||
padding: 0 10px 56px 10px;
|
||||
}
|
||||
|
||||
.pdf_div {
|
||||
padding-bottom: 70px;
|
||||
height: calc(100vh - 46px - 60px - 151px - 160px);
|
||||
height: calc(100vh - 350px);
|
||||
position: relative;
|
||||
}
|
||||
.pdfjs {
|
||||
overflow-y: auto;
|
||||
}
|
||||
/*.backTop {
|
||||
display: none !important;
|
||||
}*/
|
||||
|
||||
.pdfjs .backTop {
|
||||
bottom: 30px;
|
||||
}
|
||||
.title {
|
||||
font-weight: bold;
|
||||
font-size: 19px;
|
||||
color: #505050;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.van-divider {
|
||||
border-color: grey;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.van-skeleton {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.van-skeleton__content {
|
||||
height: 600px;
|
||||
padding-top: 60px;
|
||||
}
|
||||
|
||||
.van-skeleton__row, .van-skeleton__title {
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
background-color: white;
|
||||
position: fixed;
|
||||
@@ -69,39 +61,32 @@ layout("/mobile/platform.html"){
|
||||
align-items: center;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.footer .van-button {
|
||||
height: 34px;
|
||||
border-radius: 6px;
|
||||
width: 90% !important;
|
||||
}
|
||||
|
||||
.family_join {
|
||||
background-color: #ff976a;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.join {
|
||||
background-color: #0e78c5;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.joinPopup {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #f6f7f9;
|
||||
}
|
||||
|
||||
.join_content {
|
||||
padding: 20px;
|
||||
height: calc(100% - 26px - 60px);
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.join_submit {
|
||||
width: 90% !important;
|
||||
}
|
||||
|
||||
.van-doc-card {
|
||||
background-color: #fff;
|
||||
border-radius: 6px;
|
||||
@@ -109,7 +94,6 @@ layout("/mobile/platform.html"){
|
||||
line-height: 20px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.van-card-header {
|
||||
padding: 14px 20px;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
@@ -117,11 +101,9 @@ layout("/mobile/platform.html"){
|
||||
color: #0e78c5;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.van-card-body {
|
||||
padding: 0px 10px 0px 10px
|
||||
padding: 0 10px 0 10px
|
||||
}
|
||||
|
||||
.van-doc-card > div:first-child {
|
||||
border: 2px #0e78c5 solid;
|
||||
width: 26px;
|
||||
@@ -130,56 +112,44 @@ layout("/mobile/platform.html"){
|
||||
top: 0;
|
||||
left: 20px;
|
||||
}
|
||||
|
||||
.van-cell {
|
||||
padding: 8px 5px;
|
||||
}
|
||||
|
||||
.van-tabs__wrap {
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
.van-tabs__nav--card {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.van-tabs__nav--card .van-tab.van-tab--active {
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.van-tabs__nav--card .van-tab {
|
||||
border-right: 0 !important;
|
||||
}
|
||||
|
||||
.top_icon {
|
||||
position: fixed;
|
||||
bottom: 80px;
|
||||
right: 20px;
|
||||
}
|
||||
|
||||
.van-field__control {
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.list-card {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.companionList_empty_text {
|
||||
text-align: center;
|
||||
padding: 10px 0px;
|
||||
padding: 10px 0;
|
||||
font-size: 14px;
|
||||
color: grey;
|
||||
}
|
||||
|
||||
.header div span {
|
||||
color: grey;
|
||||
}
|
||||
|
||||
.header :last-child {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.van-empty {
|
||||
position: relative;
|
||||
transform: none;
|
||||
@@ -188,7 +158,6 @@ layout("/mobile/platform.html"){
|
||||
background-color: transparent;
|
||||
height: calc(100vh - 46px - 153px - 60px);
|
||||
}
|
||||
|
||||
.submitButton {
|
||||
background-color: white !important;
|
||||
width: 100%;
|
||||
@@ -198,25 +167,17 @@ layout("/mobile/platform.html"){
|
||||
align-items: center;*/
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.submitButton .van-button {
|
||||
height: 34px;
|
||||
border-radius: 6px;
|
||||
width: 90% !important;
|
||||
}
|
||||
|
||||
.van-image-preview img {
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.van-tag {
|
||||
color: white !important;
|
||||
}
|
||||
|
||||
.viewerContainer {
|
||||
overflow: unset !important;
|
||||
}
|
||||
|
||||
.sign_div {
|
||||
background-color: white;
|
||||
margin-bottom: 16px;
|
||||
@@ -251,67 +212,61 @@ layout("/mobile/platform.html"){
|
||||
|
||||
<template v-if="isLoad">
|
||||
<!--线路详情-->
|
||||
<van-skeleton title :loading="skeLoading" :row="12">
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<div class="title">
|
||||
<van-tag size="large" color="#1867b0" style="position: relative; top: -2px">
|
||||
{{lineData.lotName}}
|
||||
</van-tag>
|
||||
{{lineData.lineName}}
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<div class="title">
|
||||
<van-tag size="large" color="#1867b0" style="position: relative; top: -2px">
|
||||
{{lineData.lotName}}
|
||||
</van-tag>
|
||||
{{lineData.lineName}}
|
||||
</div>
|
||||
<div style="margin-top: 10px">
|
||||
<div>
|
||||
<div>
|
||||
<span>预计费用:</span>
|
||||
{{lineData.estimatedCost}}元
|
||||
</div>
|
||||
<div>
|
||||
<span class="line_label">最少成团:</span>
|
||||
<label v-if="lineData.minimumGroupSize">{{lineData.minimumGroupSize}}人</label>
|
||||
<label v-else>不限制</label>
|
||||
</div>
|
||||
<!--<div v-if="configData.familyInfo == 2">
|
||||
<span>当前报名:</span>
|
||||
{{lineData.signUpUserNum + lineData.signUpUserFamilyNum + '(家属' + lineData.signUpUserFamilyNum + '人)'}}
|
||||
</div>
|
||||
<div v-else>
|
||||
<span>当前报名:</span>
|
||||
{{lineData.signUpUserNum + lineData.familyNumber + '(家属' + lineData.familyNumber + '人)'}}
|
||||
</div>-->
|
||||
</div>
|
||||
<div style="margin-top: 10px">
|
||||
<div>
|
||||
<div>
|
||||
<span>预计费用:</span>
|
||||
{{lineData.estimatedCost}}元
|
||||
</div>
|
||||
<div>
|
||||
<span class="line_label">最少成团:</span>
|
||||
<label v-if="lineData.minimumGroupSize">{{lineData.minimumGroupSize}}人</label>
|
||||
<label v-else>不限制</label>
|
||||
</div>
|
||||
<!--<div v-if="configData.familyInfo == 2">
|
||||
<span>当前报名:</span>
|
||||
{{lineData.signUpUserNum + lineData.signUpUserFamilyNum + '(家属' + lineData.signUpUserFamilyNum + '人)'}}
|
||||
</div>
|
||||
<div v-else>
|
||||
<span>当前报名:</span>
|
||||
{{lineData.signUpUserNum + lineData.familyNumber + '(家属' + lineData.familyNumber + '人)'}}
|
||||
</div>-->
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<span>报名时间:</span>
|
||||
{{moment(configData.implodeStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||
moment(configData.implodeEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||
</div>
|
||||
<div>
|
||||
<span>出行时间:</span>
|
||||
{{moment(lineData.playStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||
moment(lineData.playEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||
</div>
|
||||
<div>
|
||||
<span>旅 行 社:</span>
|
||||
{{lineData.travelAgencyName}}
|
||||
</div>
|
||||
<div>
|
||||
<span>联系方式:</span>
|
||||
{{lineData.contactMobileNumber}}
|
||||
</div>
|
||||
<div>
|
||||
<span>报名时间:</span>
|
||||
{{moment(configData.implodeStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||
moment(configData.implodeEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||
</div>
|
||||
<div>
|
||||
<span>出行时间:</span>
|
||||
{{moment(lineData.playStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||
moment(lineData.playEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||
</div>
|
||||
<div>
|
||||
<span>旅 行 社:</span>
|
||||
{{lineData.travelAgencyName}}
|
||||
</div>
|
||||
<div>
|
||||
<span>联系方式:</span>
|
||||
{{lineData.contactMobileNumber}}
|
||||
</div>
|
||||
</div>
|
||||
<van-divider :style="{ color: 'orange', fontSize: '12px' }">上下滑动翻页,单击查看,再单击返回</van-divider>
|
||||
<div v-if="isPdf" v-html="lineData.content" class="content"></div>
|
||||
<div v-else id="demo" class="pdf_div"></div>
|
||||
|
||||
<!--<van-empty
|
||||
v-else class="custom-image"
|
||||
image="https://img01.yzcdn.cn/vant/custom-empty-image.png"
|
||||
description="暂无详细信息"
|
||||
></van-empty>-->
|
||||
</div>
|
||||
</van-skeleton>
|
||||
<van-divider :style="{ color: 'orange', fontSize: '12px' }">上下滑动翻页,单击查看,再单击返回</van-divider>
|
||||
<div class="pdf_div">
|
||||
<div v-if="isPdf" v-html="lineData.content" class="content"></div>
|
||||
<div v-else id="demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--置顶图标-->
|
||||
<image v-if="btnFlag" @click="backTop" src="/assets/mobile/svg/therapyRecuperation/top.svg"
|
||||
@@ -322,6 +277,8 @@ layout("/mobile/platform.html"){
|
||||
<van-button v-if="moment().unix() >= moment(configData.implodeStartTime).unix() && moment().unix() <= moment(configData.implodeEndTime).unix()" @click="join"
|
||||
class="join">{{ enrollId ? '修改报名' : '我要报名' }}
|
||||
</van-button>
|
||||
<van-button v-if="moment().unix() < moment(configData.implodeStartTime).unix()" class="join">报名未开始
|
||||
</van-button>
|
||||
<van-button v-if="moment().unix() > moment(configData.implodeEndTime).unix()" class="join">报名结束
|
||||
</van-button>
|
||||
</div>
|
||||
@@ -822,19 +779,22 @@ layout("/mobile/platform.html"){
|
||||
}
|
||||
},
|
||||
readPDFPicture(pdf) {
|
||||
const that = this
|
||||
if(pdf != null) {
|
||||
pdf.on("complete", function () {
|
||||
const imgDoc = document.querySelectorAll('img')
|
||||
let array = []
|
||||
const elements = document.querySelectorAll('[class*="canvasImg"]')
|
||||
let classArray = []
|
||||
imgDoc.forEach(o => {
|
||||
if(o.getAttribute('class') !== 'top_icon') {
|
||||
classArray.push(o.getAttribute('class'))
|
||||
array.push(o.getAttribute('src'))
|
||||
}
|
||||
elements.forEach(element => {
|
||||
classArray.push(element.getAttribute('src'))
|
||||
})
|
||||
document.addEventListener('click', (event) => that.handleClick(event, classArray, array))
|
||||
elements.forEach((element,index) => {
|
||||
element.addEventListener('click', function() {
|
||||
vant.ImagePreview({
|
||||
images: classArray,
|
||||
startPosition: index,
|
||||
closeable: true,
|
||||
})
|
||||
});
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -852,7 +812,6 @@ layout("/mobile/platform.html"){
|
||||
}
|
||||
await this.getData()
|
||||
this.isLoad = true
|
||||
|
||||
try {
|
||||
const parser = new DOMParser();
|
||||
const doc = parser.parseFromString(this.lineData.content, 'text/html');
|
||||
@@ -865,19 +824,11 @@ layout("/mobile/platform.html"){
|
||||
})
|
||||
}catch (e) {
|
||||
this.isPdf = true
|
||||
//document.addEventListener('click', (event) => this.handleClick(event, [], []))
|
||||
}
|
||||
|
||||
this.$nextTick(() => {
|
||||
this.readPDFPicture(pdfh5)
|
||||
})
|
||||
},
|
||||
mounted() {
|
||||
//window.addEventListener('scroll', this.scrollToTop)
|
||||
},
|
||||
beforeDestroy() {
|
||||
//window.removeEventListener('scroll', this.scrollToTop)
|
||||
},
|
||||
})
|
||||
</script>
|
||||
|
||||
|
||||
@@ -301,6 +301,14 @@ layout("/mobile/platform.html"){
|
||||
radius="8"
|
||||
:src="CREATE_PREVIEW_URL(o.fileId)"
|
||||
width="130">
|
||||
<template v-slot:error>
|
||||
<van-image
|
||||
width="130"
|
||||
height="92"
|
||||
fit="contain"
|
||||
src="/assets/mobile/img/therapyRecuperation/hotel.jpg"
|
||||
></van-image>
|
||||
</template>
|
||||
</van-image>
|
||||
|
||||
<div v-if="pageForm.theRapyRecuperationType != '2' && pageForm.theRapyRecuperationType != '3'" class="content-right">
|
||||
|
||||
Reference in New Issue
Block a user