diff --git a/src/components/mall/detailTwo.vue b/src/components/mall/detailTwo.vue index 02f9ba2db035300719a57f8dca67f6b044147cd5..ddee8abad16795067b702b256f98c50f2156f7de 100644 --- a/src/components/mall/detailTwo.vue +++ b/src/components/mall/detailTwo.vue @@ -158,8 +158,6 @@ <span class="tips pointer"> 起价说明 </span> - <!-- <span class="blue split medium pointer">4.9</span> - <span class="blue pointer">0æ¡ç‚¹è¯„</span> --> <span style='margin-left:5px'>{{dataList.offerNumber+99}}人出游</span> </div> <div class="activy" v-if="maxdiscountAmount>0"> @@ -417,11 +415,6 @@ </table> </div> <div class="slider" v-if="showType==1&&loadNone==false"> - <!-- <el-carousel :interval="2000" height='400px' trigger="click" :style="{'background':'#ddd'}"> - <el-carousel-item v-for="(i,index) in feature.featureImgList" :key="index"> - <img :src="i.url" /> - </el-carousel-item> - </el-carousel> --> <swiper :imgs='feature.featureImgList'></swiper> </div> <div class="zidingyi" v-if="(showType==3 || showType<4)&&loadNone==false"> @@ -441,16 +434,14 @@ </span> <span>Trip Maps</span> </div> - <!-- --> <div class="map-box" v-if="dataList.isDirect&&travelLngLat.length>1"> - <!-- <bmap :data="travelLngLat"/> --> <GGMap :dataList="travelLngLat"></GGMap> <div class="_travelLngLatInfo_box"> - <p v-for="(item,index) in travelLngLatInfo" :key="index"><span class="_travelLngLatInfo_label">{{item.lable}}</span>: + <p v-for="(item,index) in travelLngLatInfo" :key="index"><span + class="_travelLngLatInfo_label">{{item.lable}}</span>: {{item.text}}</p> </div> </div> - <!-- <div id="map_canvas" style="width:1000px; height:600px;"></div> --> <div class="item-title"> <span class="t">{{dayTrip}}日行程</span> <span> @@ -460,7 +451,6 @@ </div> <div v-if='dayList&&dayList.length>0'> - <!-- <trip :tripList="dayList"></trip> --> <block :tripList="dayList" :isDirect="isDirect" :clickDate="clickDate"></block> </div> <div class="item-title" id='feiyong'> @@ -650,7 +640,7 @@ </div> </div> <div style="height:100px;"></div> - + <template v-if="sonData"> <confirmationOrderDownLoad ref="confirmationOrderDownLoad" :sonData="sonData" :TripLayer="TripLayer" /> </template> @@ -706,19 +696,16 @@ </table> </div> </el-dialog> - <viewer style="display:none" :images="images" :options='imageOptions' @inited="inited" class="viewer" ref="viewer"> <img v-for="(item,index) in images" :src="item.Url" :key="index+5000"> </viewer> - </div> </template> <script> import moment from 'moment' - // import bmap from './map.vue' import calendar from './calendar.vue' import trip from '../trip/waterfall/index' import block from '../trip/block/index' @@ -729,7 +716,6 @@ import bus from '../../plugins/event-bus' export default { components: { - // bmap, GGMap, calendar, trip, @@ -894,7 +880,7 @@ } else { let orderMsg = this.sonData.orderMsg this.travelControlTripLayerShow = false - var title=orderMsg.startDate + orderMsg.lineteamName + orderMsg + var title = orderMsg.startDate + orderMsg.lineteamName + orderMsg .dayNum + '日游'; this.toPDF(title); } @@ -903,12 +889,12 @@ toPDF: function (title) { this.pdfLoading = true let urlObj = this.domainManager(); - var tcid=0; + var tcid = 0; var cId = 0; - if(this.sonData&&this.sonData.priceList.length>0&&this.sonData.priceList[0].tcid){ - tcid=this.sonData.priceList[0].tcid; + if (this.sonData && this.sonData.priceList.length > 0 && this.sonData.priceList[0].tcid) { + tcid = this.sonData.priceList[0].tcid; } - if(this.sonData){ + if (this.sonData) { cId = this.sonData.id; } let msg = { @@ -980,7 +966,7 @@ }) }, - + DateDiff(sDate1, sDate2) { //sDate1å’ŒsDate2是2002-12-18æ ¼å¼ var aDate, oDate1, oDate2, iDays aDate = sDate1.split("-") @@ -1068,7 +1054,7 @@ this.showType = this.feature.featureType; this.dayTrip = this.dataList.dayNum; if (this.dataList.isDirect == 1 && this.dataList.travelLngLat.length) { - this.travelLngLat = []; + this.travelLngLat = []; this.dataList.travelLngLat.forEach(x => { if (x.type != 2) { this.travelLngLat.push(x) @@ -1093,7 +1079,7 @@ this.htmlTitle = this.dataList.ltName; this.showFlight = true this.$forceUpdate() - + } else { this.$message.error(r.data.message) } @@ -1165,17 +1151,17 @@ this.scrollobj.scrollTop = document.getElementById(id).offsetTop + screen.availHeight - 350; }, //跳转至新行程 - goUrlTrip(){ + goUrlTrip() { let routeData = this.$router.resolve({ name: 'newTrip', query: { - ID : decodeURIComponent(this.$route.params.id), - tcid : decodeURIComponent(this.$route.params.tcid), + ID: decodeURIComponent(this.$route.params.id), + tcid: decodeURIComponent(this.$route.params.tcid), } }) window.open(routeData.href, '_blank') - }, - handleScroll() { + }, + handleScroll() { try { if (this.scrollobj.scrollTop > this.$refs.nav.offsetTop) { this.changeNav = true diff --git a/src/components/trip/block/fiveday.vue b/src/components/trip/block/fiveday.vue index 10dc878bef346a836e18e6126c8b5bce06a4564c..def04cd4e6fdc9e9f8e6cae2d9667b009ff3c8eb 100644 --- a/src/components/trip/block/fiveday.vue +++ b/src/components/trip/block/fiveday.vue @@ -5,21 +5,25 @@ <div class="left"> <div class="image"> <template v-if="day.details[0].fileType&&day.details[0].fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" + controls="controls"> </video> </template> <template v-else> - <img :src='day.details[0].img' :style="{position: 'relative',top:day.details[0].scenicJson.y + 'px'}"/> + <img :src='day.details[0].img' + :style="{position: 'relative',top:day.details[0].scenicJson.y + 'px'}" /> </template> </div> <div class="item"> - <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" style="cursor: pointer" ></h3> + <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" + style="cursor: pointer"></h3> <div class="playInfo"> <span class="playInfo-item" v-if='day.details[0].ticketName!=""'> <!--<i class="iconfont icon-menpiao"></i>--> <!--{{day.details[0].ticketName}}--> </span> - <span class="playInfo-item" v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> + <span class="playInfo-item" + v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> <i class="iconfont icon-shijian1"></i> 约 <span v-if="day.details[0].playTimeHour">{{day.details[0].playTimeHour}} å°æ—¶</span> @@ -36,14 +40,15 @@ <div class="three-item"> <div class="image"> <template v-if="item.fileType&&item.fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="item.videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="item.videoPath" + controls="controls"> </video> </template> - <template v-else> - <img :src='item.img' /> + <template v-else> + <img :src='item.img' /> </template> </div> - <h3 v-html="item.title" @click.stop="goUrl(item.url)" style="cursor: pointer" ></h3> + <h3 v-html="item.title" @click.stop="goUrl(item.url)" style="cursor: pointer"></h3> <div class="playInfo"> <span class="playInfo-item" v-if='item.ticketName!=""'> <!--<i class="iconfont icon-menpiao"></i>--> @@ -55,7 +60,7 @@ <span v-if="item.playTimeHour">{{item.playTimeHour}}å°æ—¶ </span> <span v-if="item.playTimeMinutes">{{item.playTimeMinutes}}分钟</span> </span> - + </div> <span v-html="item.content"></span> </div> @@ -74,19 +79,19 @@ <el-row :gutter="30"> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_breakfast.png' /> + <img src='../../../assets/img/daily_breakfast.png' /> </div> <div class="val">{{day.can.breakfirst}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_lunch.png' /> + <img src='../../../assets/img/daily_lunch.png' /> </div> <div class="val">{{day.can.lanuch}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_dinner.png' /> + <img src='../../../assets/img/daily_dinner.png' /> </div> <div class="val">{{day.can.dinner}}</div> </el-col> @@ -96,10 +101,10 @@ <el-row :gutter="30"> <el-col :span="24" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_hotel-1.png' /> + <img src='../../../assets/img/daily_hotel-1.png' /> </div> <div class="val" v-if='day.jiu2.length>0'> - <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> + <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> {{k==day.jiu2.length-1?t.name:t.name+' / '}} </span> {{getHotelSuffix()}} @@ -112,32 +117,37 @@ </div> </template> <script> -export default { - props:{ - day:{}, - isDirect:{} - }, - methods:{ - getHotelSuffix(){ - let suffix =""; - if(this.day.jiu2.length>1){ - if(this.isDirect===1){ - suffix = "或åŒç´š" - } - }else{ - if(this.day.jiu2.length==1 && this.day.jiu2[0].name!='温馨的家'){ - if(this.isDirect===1){ - suffix = "ã€ä¿è¯å…¥ä½ã€‘" + export default { + props: { + day: {}, + isDirect: {} + }, + methods: { + getHotelSuffix() { + let suffix = ""; + if (this.day.jiu2.length > 1) { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } else { + if (this.day.jiu2.length == 1 && this.day.jiu2[0].name != '温馨的家' && this.day.jiu2[0].name != + '机场附近酒店') { + if (this.day.jiu2[0].status == 1) { + suffix = "ã€ä¿è¯å…¥ä½ã€‘" + } else { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } } } - } - return suffix; - }, - goUrl(url) { - if(url!=null&&url.length>0){ - window.open(url, "_blank"); + return suffix; + }, + goUrl(url) { + if (url != null && url.length > 0) { + window.open(url, "_blank"); + } } } } -} -</script> +</script> \ No newline at end of file diff --git a/src/components/trip/block/fourday.vue b/src/components/trip/block/fourday.vue index 2dffb0ebfd3f4b07962e24b1709c25c4842771eb..dec6991bb210a53d630cba2cbd741d391a4e3418 100644 --- a/src/components/trip/block/fourday.vue +++ b/src/components/trip/block/fourday.vue @@ -116,19 +116,24 @@ export default { }, methods:{ getHotelSuffix(){ - let suffix =""; - if(this.day.jiu2.length>1){ - if(this.isDirect===1){ - suffix = "或åŒç´š" - } - }else{ - if(this.day.jiu2.length==1 && this.day.jiu2[0].name!='温馨的家'){ - if(this.isDirect===1){ - suffix = "ã€ä¿è¯å…¥ä½ã€‘" + let suffix = ""; + if (this.day.jiu2.length > 1) { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } else { + if (this.day.jiu2.length == 1 && this.day.jiu2[0].name != '温馨的家' && this.day.jiu2[0].name != + '机场附近酒店') { + if (this.day.jiu2[0].status == 1) { + suffix = "ã€ä¿è¯å…¥ä½ã€‘" + } else { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } } } - } - return suffix; + return suffix; }, goUrl(url) { if(url!=null&&url.length>0){ diff --git a/src/components/trip/block/index.vue b/src/components/trip/block/index.vue index 9905dd44d1d2caf3b410829bcea5ebdb7c5d024f..b56fa2d2c2bb306fd426dedd9bb05a07f9aa5c89 100644 --- a/src/components/trip/block/index.vue +++ b/src/components/trip/block/index.vue @@ -1,11 +1,11 @@ <style> -@import url('../../../assets/trip/block/index.css'); + @import url('../../../assets/trip/block/index.css'); </style> <template> <div class="trip-box"> - <div class="trip-block" v-for="(item,i) in trips" :key="i"> + <div class="trip-block" v-for="(item,i) in trips" :key="i"> <div class="trip-title"> - <div > + <div> <p class="day">第<span v-if='item.dayNum<10'>0</span>{{item.dayNum}}天</p> <p>{{item.dateTime}}</p> </div> @@ -20,249 +20,264 @@ </div> </template> <script> -import oneday from './oneday' -import twoday from './twoday' -import threeday from './threeday' -import fourday from './fourday' -import fiveday from './fiveday' -export default { - props: ['tripList','isDirect','clickDate'], - components: { - oneday, - twoday, - threeday, - fourday, - fiveday - }, - watch:{ - clickDate:{ - handler:function(val,oldval){ - if (val) { - this.trips.forEach((x,index)=>{ - x.dateTime = this.setDate(index); - }) - this.$forceUpdate() - } + import oneday from './oneday' + import twoday from './twoday' + import threeday from './threeday' + import fourday from './fourday' + import fiveday from './fiveday' + export default { + props: ['tripList', 'isDirect', 'clickDate'], + components: { + oneday, + twoday, + threeday, + fourday, + fiveday + }, + watch: { + clickDate: { + handler: function (val, oldval) { + if (val) { + this.trips.forEach((x, index) => { + x.dateTime = this.setDate(index); + }) + this.$forceUpdate() + } + }, + deep: true //对象内部的属性监å¬ï¼Œä¹Ÿå«æ·±åº¦ç›‘å¬ }, - deep:true//对象内部的属性监å¬ï¼Œä¹Ÿå«æ·±åº¦ç›‘å¬ }, - }, - mounted() { - this.init() - - }, - data () { - return { - isReady:false, - trips:[] - } - }, - methods: { - init(){ - this.tripList.forEach((x,j)=>{ - let useDinnerTypeBy='' - let jin=[],jiu=[],jiu2=[],jiao=[],dadian=[],tips=[],activy=[],can={breakfirst:'敬请自ç†',lanuch:'敬请自ç†',dinner:'敬请自ç†'} - x.dayArray.forEach((y,index)=>{ - if(y.type==7 && y.childItem.title!=''){ - let obj={ - title:y.childItem.title, - content:y.childItem.description, - img:y.childItem.imaArray&&y.childItem.imaArray.length>0?y.childItem.imaArray[0].url:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null, - url:'' + mounted() { + this.init() + }, + data() { + return { + isReady: false, + trips: [] + } + }, + methods: { + init() { + this.tripList.forEach((x, j) => { + let useDinnerTypeBy = '' + let jin = [], + jiu = [], + jiu2 = [], + jiao = [], + dadian = [], + tips = [], + activy = [], + can = { + breakfirst: '敬请自ç†', + lanuch: '敬请自ç†', + dinner: '敬请自ç†' } - dadian.push(obj) - } else if (y.type==1 && y.childItem.subTraffic.length > 0) { - let title='' - y.childItem.subTraffic.forEach((z,i)=>{ - title+=z.startCityName - if(z.arrivalType==1){ - title+='<i class="iconfont icon-feiji"></i>' - }else if(z.arrivalType==2){ - title+='<i class="iconfont icon-bus"></i>' - }else if(z.arrivalType==3){ - title+='<i class="iconfont icon-icon31"></i>' - }else { - title+='<i class="iconfont icon-gaotiedongche"></i>' + x.dayArray.forEach((y, index) => { + if (y.type == 7 && y.childItem.title != '') { + let obj = { + title: y.childItem.title, + content: y.childItem.description, + img: y.childItem.imaArray && y.childItem.imaArray.length > 0 ? y + .childItem.imaArray[0].url : '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null, + url: '' } - if(i+1==y.childItem.subTraffic.length){ - title+=z.arrivalCityName + dadian.push(obj) + } else if (y.type == 1 && y.childItem.subTraffic.length > 0) { + let title = '' + y.childItem.subTraffic.forEach((z, i) => { + title += z.startCityName + if (z.arrivalType == 1) { + title += '<i class="iconfont icon-feiji"></i>' + } else if (z.arrivalType == 2) { + title += '<i class="iconfont icon-bus"></i>' + } else if (z.arrivalType == 3) { + title += '<i class="iconfont icon-icon31"></i>' + } else { + title += '<i class="iconfont icon-gaotiedongche"></i>' + } + if (i + 1 == y.childItem.subTraffic.length) { + title += z.arrivalCityName + } + }) + let obj = { + title: title, + content: y.childItem.description, + img: '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null, + url: '' } - }) - let obj={ - title:title, - content:y.childItem.description, - img:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null, - url:'' - } - jiao.push(obj) - } else if(y.type==2 && y.childItem.imaArray.length>0){ - let obj={ - title:y.childItem.couponsName, - content:y.childItem.description, - img:y.childItem.imaArray[0].url, - ticketName:y.childItem.couponsTicketName, - playTimeHour:y.childItem.playTimeHour, - playTimeMinutes:y.childItem.playTimeMinutes, - url:y.childItem.url, - scenicJson: y.childItem.scenicJson, - videoPath: y.childItem.imaArray[0].videoPath, - fileType: y.childItem.imaArray[0].fileType, - - } - jin.push(obj) - } else if(y.type==3 && y.childItem.hotelName!='' && y.childItem.imaArray.length>0){ - let obj={ - title:y.childItem.hotelName, - content:y.childItem.description, - img:y.childItem.imaArray[0].url, - ticketName:'', - playTimeHour:null, - playTimeMinutes:null, - url:y.childItem.url - } - jiu.push(obj) - } else if(y.type==4) { - if(y.childItem.useDinnerType=="1"){ - can.breakfirst=y.childItem.dinnerName - }else if(y.childItem.useDinnerType=="2"){ - can.lanuch=y.childItem.dinnerName - }else if(y.childItem.useDinnerType=="3"){ - can.dinner=y.childItem.dinnerName - } - } else if(y.type==5) { - let obj={ - title:'自由活动', - content:y.childItem.description, - img:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null, - url:'' + jiao.push(obj) + } else if (y.type == 2 && y.childItem.imaArray.length > 0) { + let obj = { + title: y.childItem.couponsName, + content: y.childItem.description, + img: y.childItem.imaArray[0].url, + ticketName: y.childItem.couponsTicketName, + playTimeHour: y.childItem.playTimeHour, + playTimeMinutes: y.childItem.playTimeMinutes, + url: y.childItem.url, + scenicJson: y.childItem.scenicJson, + videoPath: y.childItem.imaArray[0].videoPath, + fileType: y.childItem.imaArray[0].fileType, + } + jin.push(obj) + } else if (y.type == 3 && y.childItem.hotelName != '' && y.childItem.imaArray + .length > 0) { + let obj = { + title: y.childItem.hotelName, + content: y.childItem.description, + img: y.childItem.imaArray[0].url, + ticketName: '', + playTimeHour: null, + playTimeMinutes: null, + url: y.childItem.url + } + jiu.push(obj) + } else if (y.type == 4) { + if (y.childItem.useDinnerType == "1") { + can.breakfirst = y.childItem.dinnerName + } else if (y.childItem.useDinnerType == "2") { + can.lanuch = y.childItem.dinnerName + } else if (y.childItem.useDinnerType == "3") { + can.dinner = y.childItem.dinnerName + } + } else if (y.type == 5) { + let obj = { + title: '自由活动', + content: y.childItem.description, + img: '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null, + url: '' + } + activy.push(obj) + } else if (y.type == 6) { + let obj = { + title: y.childItem.title, + content: y.childItem.description, + img: '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null, + url: '' + } + tips.push(obj) } - activy.push(obj) - } else if(y.type==6) { - let obj={ - title:y.childItem.title, - content:y.childItem.description, - img:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null, - url:'' + if (y.type == 3) { + jiu2.push({ + name: y.childItem.hotelName, + url: y.childItem.url, + status:y.childItem.status + }); + useDinnerTypeBy = y.childItem.useDinnerType } - tips.push(obj) + }) + if (can.breakfirst == '敬请自ç†' && useDinnerTypeBy.indexOf('1') != -1) { + can.breakfirst = '酒店内享用早é¤' + } else if (can.breakfirst == '') { + can.breakfirst = '方便游玩敬请自ç†' } - if(y.type==3){ - // jiu2.push(y.childItem.hotelName) - jiu2.push({name:y.childItem.hotelName,url:y.childItem.url}); - useDinnerTypeBy=y.childItem.useDinnerType - } - }) - if(can.breakfirst=='敬请自ç†' && useDinnerTypeBy.indexOf('1')!=-1){ - can.breakfirst='酒店内享用早é¤' - }else if(can.breakfirst==''){ - can.breakfirst='方便游玩敬请自ç†' - } - if(can.lanuch=='敬请自ç†' && useDinnerTypeBy.indexOf('2')!=-1){ - can.lanuch='酒店自助' - }else if(can.lanuch==''){ - can.lanuch='方便游玩敬请自ç†' - } - if(can.dinner=='敬请自ç†' && useDinnerTypeBy.indexOf('3')!=-1){ - can.dinner='酒店自助' - }else if(can.dinner==''){ - can.dinner='方便游玩敬请自ç†' - } - x.can=can - let details=[]; - x.tips=tips - x.jiu2=jiu2 - if(jin.length>0){ - details=jin - } else if(jiu.length>0){ - details=jiu - } else if(dadian.length>0){ - details=dadian - } else if(jiao.length>0){ - if(j==this.tripList.length-1){ - let obj={ - title:'温暖的家', - content:'感谢您å‚åŠ æœ¬æ¬¡è¡Œç¨‹ï¼ŒæœŸå¾…ä¸‹æ¬¡ä¸Žæ‚¨ç›¸é‡', - img:'' + if (can.lanuch == '敬请自ç†' && useDinnerTypeBy.indexOf('2') != -1) { + can.lanuch = '酒店自助' + } else if (can.lanuch == '') { + can.lanuch = '方便游玩敬请自ç†' + } + if (can.dinner == '敬请自ç†' && useDinnerTypeBy.indexOf('3') != -1) { + can.dinner = '酒店自助' + } else if (can.dinner == '') { + can.dinner = '方便游玩敬请自ç†' + } + x.can = can + let details = []; + x.tips = tips + x.jiu2 = jiu2 + if (jin.length > 0) { + details = jin + } else if (jiu.length > 0) { + details = jiu + } else if (dadian.length > 0) { + details = dadian + } else if (jiao.length > 0) { + if (j == this.tripList.length - 1) { + let obj = { + title: '温暖的家', + content: '感谢您å‚åŠ æœ¬æ¬¡è¡Œç¨‹ï¼ŒæœŸå¾…ä¸‹æ¬¡ä¸Žæ‚¨ç›¸é‡', + img: '' + } + details.push(obj) + } else { + details = jiao } - details.push(obj) - }else{ - details=jiao + } else if (activy.length > 0) { + details = activy } - } else if(activy.length>0){ - details=activy - } - - x.title=dadian.length>0 && dadian[0].title && dadian[0].title!=''?dadian[0].title:(jiao.length>0?jiao[0].title:'集åˆå‡ºå‘') - x.details=details - if(x.details.length==0){ - if(j==0){ - let obj={ - title:'集åˆå‡ºå‘', - content:'å‘ç€è¿œæ–¹çš„ç›®æ ‡å‡ºå‘起飞', - img:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null - } - details.push(obj) - } else if(j==this.tripList.length-1){ - let obj={ - title:'温暖的家', - content:'感谢您å‚åŠ æœ¬æ¬¡è¡Œç¨‹ï¼ŒæœŸå¾…ä¸‹æ¬¡ä¸Žæ‚¨ç›¸é‡', - img:'', - ticketName:'', - playTimeHour:null, - playTimeMinutes:null + x.title = dadian.length > 0 && dadian[0].title && dadian[0].title != '' ? dadian[0].title : + (jiao.length > 0 ? jiao[0].title : '集åˆå‡ºå‘') + x.details = details + + if (x.details.length == 0) { + if (j == 0) { + let obj = { + title: '集åˆå‡ºå‘', + content: 'å‘ç€è¿œæ–¹çš„ç›®æ ‡å‡ºå‘起飞', + img: '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null + } + details.push(obj) + } else if (j == this.tripList.length - 1) { + let obj = { + title: '温暖的家', + content: '感谢您å‚åŠ æœ¬æ¬¡è¡Œç¨‹ï¼ŒæœŸå¾…ä¸‹æ¬¡ä¸Žæ‚¨ç›¸é‡', + img: '', + ticketName: '', + playTimeHour: null, + playTimeMinutes: null + } + details.push(obj) } - details.push(obj) - } - }else{ - if(x.title=='集åˆå‡ºå‘'){ - x.details.forEach(xc=>{ - if(xc.title!==undefined) - x.title=xc.title+'~' - }) - if(x.title=='集åˆå‡ºå‘'){ - if(j>0&&j<tripList.length-1) - x.title='自由活动' - }else{ - x.title=x.title.substring(0,x.title.length-1) + } else { + if (x.title == '集åˆå‡ºå‘') { + x.details.forEach(xc => { + if (xc.title !== undefined) + x.title = xc.title + '~' + }) + if (x.title == '集åˆå‡ºå‘') { + if (j > 0 && j < tripList.length - 1) + x.title = '自由活动' + } else { + x.title = x.title.substring(0, x.title.length - 1) + } } } + x.islast = (j + 1) == this.tripList.length + this.$set(this.tripList, j, x) + x.dateTime = this.setDate(j); + }) + this.trips = this.tripList + }, + setDate: function (j) { + if (j === 0) { + return this.clickDate + } else { + let d = new Date(this.clickDate) + d = d.getTime(d); + let add = d + ((24 * 60 * 60 * 1000) * j) + let date = new Date(add); //时间戳为10ä½éœ€*1000,时间戳为13ä½çš„è¯ä¸éœ€ä¹˜1000 + let Y = date.getFullYear() + '-'; + let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; + let D = date.getDate() < 10 ? ('0' + date.getDate()) + ' ' : date.getDate() + ' '; + return Y + M + D; } - x.islast=(j+1)==this.tripList.length - this.$set(this.tripList,j,x) - x.dateTime = this.setDate(j); - }) - this.trips=this.tripList - }, - setDate: function (j) { - if (j === 0) { - return this.clickDate - } else { - let d = new Date(this.clickDate) - d = d.getTime(d); - let add = d + ((24 * 60 * 60 * 1000) * j) - let date = new Date(add);//时间戳为10ä½éœ€*1000,时间戳为13ä½çš„è¯ä¸éœ€ä¹˜1000 - let Y = date.getFullYear() + '-'; - let M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; - let D = date.getDate() < 10 ? ('0' + date.getDate()) + ' ' : date.getDate() + ' '; - return Y+M+D; - } - }, + }, + } } -} -</script> +</script> \ No newline at end of file diff --git a/src/components/trip/block/oneday.vue b/src/components/trip/block/oneday.vue index f8ce27cf0d2476c2e1bf4e4cfa96cdc72ed2e46a..e14669a2fcbabc1058ed9047d612d195b8f3bc1e 100644 --- a/src/components/trip/block/oneday.vue +++ b/src/components/trip/block/oneday.vue @@ -4,25 +4,25 @@ <div class="item big"> <div class="left"> <template v-if="day.details[0].fileType&&day.details[0].fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" controls="controls"> - </video> + <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" + controls="controls"> + </video> </template> <template v-else> - <img v-if="day.details[0].img!=''" :src='day.details[0].img' /> - <img v-else-if="day.dayNum==1 && day.details[0].img==''" src='../../../assets/img/nll.jpg' /> - <img v-else-if="day.islast && day.details[0].img==''" src='../../../assets/img/nll.jpg' /> - <img v-else src='../../../assets/img/activy.jpg' /> + <img v-if="day.details[0].img!=''" :src='day.details[0].img' /> + <img v-else-if="day.dayNum==1 && day.details[0].img==''" src='../../../assets/img/nll.jpg' /> + <img v-else-if="day.islast && day.details[0].img==''" src='../../../assets/img/nll.jpg' /> + <img v-else src='../../../assets/img/activy.jpg' /> </template> </div> <div class="right"> <div class="details"> - <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" style="cursor: pointer" ></h3> + <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" + style="cursor: pointer"></h3> <div class="playInfo"> - <span class="playInfo-item" v-if='day.details[0].ticketName!=""'> - <!--<i class="iconfont icon-menpiao"></i>--> - <!--{{day.details[0].ticketName!=""}}--> - </span> - <span class="playInfo-item" v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> + <span class="playInfo-item" v-if='day.details[0].ticketName!=""'></span> + <span class="playInfo-item" + v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> <i class="iconfont icon-shijian1"></i> 约 <span v-if="day.details[0].playTimeHour">{{day.details[0].playTimeHour}}å°æ—¶ </span> @@ -43,19 +43,19 @@ <el-row :gutter="30"> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_breakfast.png' /> + <img src='../../../assets/img/daily_breakfast.png' /> </div> <div class="val">{{day.can.breakfirst}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_lunch.png' /> + <img src='../../../assets/img/daily_lunch.png' /> </div> <div class="val">{{day.can.lanuch}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_dinner.png' /> + <img src='../../../assets/img/daily_dinner.png' /> </div> <div class="val">{{day.can.dinner}}</div> </el-col> @@ -65,11 +65,11 @@ <el-row :gutter="30"> <el-col :span="24" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_hotel-1.png' /> + <img src='../../../assets/img/daily_hotel-1.png' /> </div> <div class="val" v-if='day.jiu2.length>0'> <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> - {{k==day.jiu2.length-1?t.name:t.name+' / '}} + {{k==day.jiu2.length-1?t.name:t.name+' / '}} </span> {{getHotelSuffix()}} </div> @@ -81,32 +81,37 @@ </div> </template> <script> -export default { - props:{ - day:{}, - isDirect:{} - }, - methods:{ - getHotelSuffix(){ - let suffix =""; - if(this.day.jiu2.length>1){ - if(this.isDirect===1){ - suffix = "或åŒç´š" - } - }else{ - if(this.day.jiu2.length==1 && this.day.jiu2[0].name!='温馨的家'){ - if(this.isDirect===1){ - suffix = "ã€ä¿è¯å…¥ä½ã€‘" + export default { + props: { + day: {}, + isDirect: {} + }, + methods: { + getHotelSuffix() { + let suffix = ""; + if (this.day.jiu2.length > 1) { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } else { + if (this.day.jiu2.length == 1 && this.day.jiu2[0].name != '温馨的家' && this.day.jiu2[0].name != + '机场附近酒店') { + if (this.day.jiu2[0].status == 1) { + suffix = "ã€ä¿è¯å…¥ä½ã€‘" + } else { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } } } - } - return suffix; - }, - goUrl(url) { - if(url!=null&&url.length>0){ - window.open(url, "_blank"); + return suffix; + }, + goUrl(url) { + if (url != null && url.length > 0) { + window.open(url, "_blank"); + } } } } -} </script> \ No newline at end of file diff --git a/src/components/trip/block/threeday.vue b/src/components/trip/block/threeday.vue index b59f5bb69dbdb67afa6f6f5a31e69216b6694075..88326a0e04346cb5314b716db6edbac9fa76eee2 100644 --- a/src/components/trip/block/threeday.vue +++ b/src/components/trip/block/threeday.vue @@ -4,22 +4,26 @@ <div class="item big"> <div class="left"> <template v-if="day.details[0].fileType&&day.details[0].fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="day.details[0].videoPath" + controls="controls"> </video> </template> <template v-else> - <img :src='day.details[0].img' :style="{position: 'relative',top:day.details[0].scenicJson.y + 'px'}" /> + <img :src='day.details[0].img' + :style="{position: 'relative',top:day.details[0].scenicJson.y + 'px'}" /> </template> </div> <div class="right"> <div class="details"> - <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" style="cursor: pointer" ></h3> + <h3 v-html="day.details[0].title" @click.stop="goUrl(day.details[0].url)" + style="cursor: pointer"></h3> <div class="playInfo"> <span class="playInfo-item" v-if='day.details[0].ticketName!=""'> <!--<i class="iconfont icon-menpiao"></i>--> <!--{{day.details[0].ticketName}}--> </span> - <span class="playInfo-item" v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> + <span class="playInfo-item" + v-if='day.details[0].playTimeHour || day.details[0].playTimeMinutes'> <i class="iconfont icon-shijian1"></i> 约 <span v-if="day.details[0].playTimeHour">{{day.details[0].playTimeHour}}å°æ—¶ </span> @@ -34,17 +38,20 @@ <el-col :span="8"> <div class="item hor-box"> <div class="remark"> - <h3 v-html="day.details[1].title" @click.stop="goUrl(day.details[1].url)" style="cursor: pointer" ></h3> + <h3 v-html="day.details[1].title" @click.stop="goUrl(day.details[1].url)" + style="cursor: pointer"></h3> <div class="playInfo"> - <span class="playInfo-item" v-if='day.details[1].ticketName!=""'> + <span class="playInfo-item" v-if='day.details[1].ticketName!=""'> <!--<i class="iconfont icon-menpiao"></i>--> <!--{{day.details[1].ticketName}}--> </span> - <span class="playInfo-item" v-if='day.details[1].playTimeHour || day.details[1].playTimeMinutes'> + <span class="playInfo-item" + v-if='day.details[1].playTimeHour || day.details[1].playTimeMinutes'> <i class="iconfont icon-shijian1"></i> 约 <span v-if="day.details[1].playTimeHour">{{day.details[1].playTimeHour}}å°æ—¶ </span> - <span v-if="day.details[1].playTimeMinutes">{{day.details[1].playTimeMinutes}}分钟 </span> + <span v-if="day.details[1].playTimeMinutes">{{day.details[1].playTimeMinutes}}分钟 + </span> </span> </div> <span v-html="day.details[1].content"></span> @@ -55,11 +62,13 @@ <div class="item hor-box"> <div class="image"> <template v-if="day.details[1].fileType&&day.details[1].fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="day.details[1].videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="day.details[1].videoPath" + controls="controls"> </video> </template> <template v-else> - <img :src="day.details[1].img" :style="{position: 'relative',top:day.details[1].scenicJson.y + 'px'}" /> + <img :src="day.details[1].img" + :style="{position: 'relative',top:day.details[1].scenicJson.y + 'px'}" /> </template> </div> </div> @@ -70,11 +79,13 @@ <div class="item hor-box"> <div class="image"> <template v-if="day.details[2].fileType&&day.details[2].fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="day.details[2].videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="day.details[2].videoPath" + controls="controls"> </video> </template> <template v-else> - <img :src="day.details[2].img" :style="{position: 'relative',top:day.details[2].scenicJson.y + 'px'}" /> + <img :src="day.details[2].img" + :style="{position: 'relative',top:day.details[2].scenicJson.y + 'px'}" /> </template> </div> </div> @@ -82,17 +93,20 @@ <el-col :span="8"> <div class="item hor-box"> <div class="remark"> - <h3 v-html="day.details[2].title" @click.native.stop="goUrl(day.details[2].url)" style="cursor: pointer"></h3> + <h3 v-html="day.details[2].title" @click.native.stop="goUrl(day.details[2].url)" + style="cursor: pointer"></h3> <div class="playInfo"> <span class="playInfo-item" v-if='day.details[2].ticketName!=""'> <!--<i class="iconfont icon-menpiao"></i>--> <!--{{day.details[2].ticketName}}--> </span> - <span class="playInfo-item" v-if='day.details[2].playTimeHour || day.details[2].playTimeMinutes'> + <span class="playInfo-item" + v-if='day.details[2].playTimeHour || day.details[2].playTimeMinutes'> <i class="iconfont icon-shijian1"></i> 约 <span v-if="day.details[2].playTimeHour">{{day.details[2].playTimeHour}}å°æ—¶ </span> - <span v-if="day.details[2].playTimeMinutes">{{day.details[2].playTimeMinutes}}分钟 </span> + <span v-if="day.details[2].playTimeMinutes">{{day.details[2].playTimeMinutes}}分钟 + </span> </span> </div> <span v-html="day.details[2].content"></span> @@ -110,19 +124,19 @@ <el-row :gutter="30"> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_breakfast.png' /> + <img src='../../../assets/img/daily_breakfast.png' /> </div> <div class="val">{{day.can.breakfirst}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_lunch.png' /> + <img src='../../../assets/img/daily_lunch.png' /> </div> <div class="val">{{day.can.lanuch}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_dinner.png' /> + <img src='../../../assets/img/daily_dinner.png' /> </div> <div class="val">{{day.can.dinner}}</div> </el-col> @@ -132,10 +146,10 @@ <el-row :gutter="30"> <el-col :span="24" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_hotel-1.png' /> + <img src='../../../assets/img/daily_hotel-1.png' /> </div> <div class="val" v-if='day.jiu2.length>0'> - <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k" > + <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> {{k==day.jiu2.length-1?t.name:t.name+' / '}} </span> {{getHotelSuffix()}} @@ -148,32 +162,37 @@ </div> </template> <script> -export default { - props:{ - day:{}, - isDirect:{} - }, - methods:{ - getHotelSuffix(){ - let suffix =""; - if(this.day.jiu2.length>1){ - if(this.isDirect===1){ - suffix = "或åŒç´š" - } - }else{ - if(this.day.jiu2.length==1 && this.day.jiu2[0].name!='温馨的家'){ - if(this.isDirect===1){ - suffix = "ã€ä¿è¯å…¥ä½ã€‘" + export default { + props: { + day: {}, + isDirect: {} + }, + methods: { + getHotelSuffix() { + let suffix = ""; + if (this.day.jiu2.length > 1) { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } else { + if (this.day.jiu2.length == 1 && this.day.jiu2[0].name != '温馨的家' && this.day.jiu2[0].name != + '机场附近酒店') { + if (this.day.jiu2[0].status == 1) { + suffix = "ã€ä¿è¯å…¥ä½ã€‘" + } else { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } } } - } - return suffix; - }, - goUrl(url) { - if(url!=null&&url.length>0){ - window.open(url, "_blank"); + return suffix; + }, + goUrl(url) { + if (url != null && url.length > 0) { + window.open(url, "_blank"); + } } } } -} -</script> +</script> \ No newline at end of file diff --git a/src/components/trip/block/twoday.vue b/src/components/trip/block/twoday.vue index cafc8871c9bf8cd6fd2b1c11cb8d3b346f87bf69..e51418b366ef51d205fa48315d5c44aa86f254ea 100644 --- a/src/components/trip/block/twoday.vue +++ b/src/components/trip/block/twoday.vue @@ -6,19 +6,19 @@ <div class="item"> <div class="up"> <template v-if="item.fileType&&item.fileType=='.mp4'"> - <video ref="myVideo" width="100%" height="100%" :src="item.videoPath" controls="controls"> + <video ref="myVideo" width="100%" height="100%" :src="item.videoPath" + controls="controls"> </video> </template> <template v-else> - <img :src='item.img' /> + <img :src='item.img' /> </template> </div> <div class="down"> - <h3 v-if='item.title!=""' v-html="item.title" @click.stop="goUrl(item.url)" style="cursor: pointer" ></h3> + <h3 v-if='item.title!=""' v-html="item.title" @click.stop="goUrl(item.url)" + style="cursor: pointer"></h3> <div class="playInfo"> - <span class="playInfo-item" v-if='item.ticketName!=""'> - <!--<i class="iconfont icon-menpiao"></i>--> - <!--{{item.ticketName}}--> + <span class="playInfo-item" v-if='item.ticketName!=""'> </span> <span class="playInfo-item" v-if='item.playTimeHour || item.playTimeMinutes'> <i class="iconfont icon-shijian1"></i> @@ -42,19 +42,19 @@ <el-row :gutter="30"> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_breakfast.png' /> + <img src='../../../assets/img/daily_breakfast.png' /> </div> <div class="val">{{day.can.breakfirst}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_lunch.png' /> + <img src='../../../assets/img/daily_lunch.png' /> </div> <div class="val">{{day.can.lanuch}}</div> </el-col> <el-col :span="8" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_dinner.png' /> + <img src='../../../assets/img/daily_dinner.png' /> </div> <div class="val">{{day.can.dinner}}</div> </el-col> @@ -64,11 +64,11 @@ <el-row :gutter="30"> <el-col :span="24" class="restaurant-item"> <div class="key"> - <img src='../../../assets/img/daily_hotel-1.png' /> + <img src='../../../assets/img/daily_hotel-1.png' /> </div> <div class="val" v-if='day.jiu2.length>0'> - <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> - {{k==day.jiu2.length-1?t.name:t.name+' / '}} + <span v-for="(t,k) in day.jiu2" @click.stop="goUrl(t.url)" style="cursor: pointer" :key="k"> + {{k==day.jiu2.length-1?t.name:t.name+' / '}} </span> {{getHotelSuffix()}} </div> @@ -80,32 +80,37 @@ </div> </template> <script> -export default { - props:{ - day:{}, - isDirect:{} - }, - methods:{ - getHotelSuffix(){ - let suffix =""; - if(this.day.jiu2.length>1){ - if(this.isDirect===1){ - suffix = "或åŒç´š" - } - }else{ - if(this.day.jiu2.length==1 && this.day.jiu2[0].name!='温馨的家'){ - if(this.isDirect===1){ - suffix = "ã€ä¿è¯å…¥ä½ã€‘" + export default { + props: { + day: {}, + isDirect: {} + }, + methods: { + getHotelSuffix() { + let suffix = ""; + if (this.day.jiu2.length > 1) { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } else { + if (this.day.jiu2.length == 1 && this.day.jiu2[0].name != '温馨的家' && this.day.jiu2[0].name != + '机场附近酒店') { + if (this.day.jiu2[0].status == 1) { + suffix = "ã€ä¿è¯å…¥ä½ã€‘" + } else { + if (this.isDirect === 1) { + suffix = "或åŒç´š" + } + } } } - } - return suffix; - }, - goUrl(url) { - if(url!=null&&url.length>0){ - window.open(url, "_blank"); + return suffix; + }, + goUrl(url) { + if (url != null && url.length > 0) { + window.open(url, "_blank"); + } } } } -} -</script> +</script> \ No newline at end of file