Commit 5e8336a8 authored by 罗超's avatar 罗超

修改详情

parent 1b553dc2
<template>
<div style="min-height: 80vh">
<div v-if="dataList && !$q.loading.isActive">
<div
style="
position: fixed;
......@@ -60,7 +61,10 @@
class="cursor-pointer"
@click="CommonJump('/index', {})"
/>
<q-breadcrumbs-el :label="dataList.aimPlaceName" class="cursor-pointer" />
<q-breadcrumbs-el
:label="dataList.aimPlaceName"
class="cursor-pointer"
/>
<!-- <q-breadcrumbs-el>
<span v-for="(x, i) in citys" :key="i">
<span class="cursor-pointer">{{ x }} </span>
......@@ -113,7 +117,11 @@
style="width: 80%"
class="q-mx-sm"
>
<q-img :src="item.Url" spinner-color="grey" spinner-size="20px" />
<q-img
:src="item.Url"
spinner-color="grey"
spinner-size="20px"
/>
</slideritem>
<div slot="loading">loading...</div>
</slider>
......@@ -121,7 +129,10 @@
</div>
<div
class="q-py-lg"
:class="{ row: $q.platform.is.desktop, column: $q.platform.is.mobile }"
:class="{
row: $q.platform.is.desktop,
column: $q.platform.is.mobile,
}"
style="border-bottom: 1px solid #eee"
>
<div class="col q-mr-lg">
......@@ -150,7 +161,8 @@
icon="iconfont iconOwner-1"
label=" 印象自組團"
/>
<q-chip v-if="dataList.dayList"
<q-chip
v-if="dataList.dayList"
class="transparent q-mr-xl no-padding"
square
icon="iconfont icontime"
......@@ -192,7 +204,7 @@
color="primary"
label="選擇方案"
unelevated
:disable="dataList.priceList.length>0?false:true"
:disable="dataList.priceList.length > 0 ? false : true"
@click="goScrollHandler(priceListHeight)"
:class="{ 'q-mt-md full-width': $q.platform.is.desktop }"
/>
......@@ -310,7 +322,15 @@
</div>
<div class="text-grey f12">
<ul class="q-pl-md no-margin">
<li v-for="(x, i) in warnBuy" :class="{'q-mt-md':$q.platform.is.desktop|(i!=0&&$q.platform.is.mobile)}" :key="i">
<li
v-for="(x, i) in warnBuy"
:class="{
'q-mt-md':
$q.platform.is.desktop
| (i != 0 && $q.platform.is.mobile),
}"
:key="i"
>
{{ x }}
</li>
</ul>
......@@ -390,7 +410,9 @@
<div
class="col q-ml-xl position-relative"
v-if="
dataList.priceList.length>0&&(!(dataList.priceList && dataList.priceList[0].teamType==2)&&!(dataList.currentPrice && dataList.currentPrice.teamType==2)) &&
dataList.priceList.length > 0 &&
!(dataList.priceList && dataList.priceList[0].teamType == 2) &&
!(dataList.currentPrice && dataList.currentPrice.teamType == 2) &&
currentHeight > days[0].top - 60 &&
currentHeight < navs[2].top &&
$q.platform.is.desktop
......@@ -413,7 +435,10 @@
</div>
</div>
<div
:class="{ 'col-8': $q.platform.is.desktop, col: $q.platform.is.mobile }"
:class="{
'col-8': $q.platform.is.desktop,
col: $q.platform.is.mobile,
}"
>
<flight :price="currentPrice"></flight>
<div
......@@ -426,7 +451,7 @@
行程特色
</div>
<div
class="q-mt-md trip-text q-pb-xl line-feature"
class="q-mt-md trip-text q-pb-xl line-feature large-feature"
v-html="dataList.feature.featureContent"
v-if="dataList.feature.featureContent != ''"
></div>
......@@ -454,7 +479,14 @@
'q-px-md': $q.screen.width < 1220 && $q.platform.is.desktop,
}"
></smaple>
<template v-if="dataList.priceList.length>0&&(dataList.priceList && dataList.priceList[0].teamType==2)||(dataList.currentPrice && dataList.currentPrice.teamType==2)">
<template
v-if="
(dataList.priceList.length > 0 &&
dataList.priceList &&
dataList.priceList[0].teamType == 2) ||
(dataList.currentPrice && dataList.currentPrice.teamType == 2)
"
>
<trip :trip="dataList" @change="changeTripShowHandler"></trip>
</template>
<template v-else>
......@@ -540,7 +572,9 @@
class="q-mt-lg trip-text bg-white q-pa-md rounded-borders q-mb-xl"
style="border: 1px dashed var(--q-color-info)"
v-html="
dataList.feature.warmTip ? dataList.feature.warmTip : '暂无溫馨提示'
dataList.feature.warmTip
? dataList.feature.warmTip
: '暂无溫馨提示'
"
:class="{
'q-mx-md': $q.screen.width < 1220 && $q.platform.is.mobile,
......@@ -563,10 +597,14 @@
>
<ul class="no-padding text-grey-9 q-ml-md">
<li>所选日期 15 天(含)之前取消,收取手续费 0%</li>
<li class="q-mt-sm">所选日期 8 ~ 14 天之间取消,收取手续费 30%</li>
<li class="q-mt-sm">
所选日期 8 ~ 14 天之间取消,收取手续费 30%
</li>
<li class="q-mt-sm">所选日期 4 ~ 7 天之间取消,收取手续费 50%</li>
<li class="q-mt-sm">所选日期 1 ~ 3 天之间取消,收取手续费 80%</li>
<li class="q-mt-sm">所选日期 0 ~ 0 天之间取消,收取手续费 100%</li>
<li class="q-mt-sm">
所选日期 0 ~ 0 天之间取消,收取手续费 100%
</li>
</ul>
<div class="q-mt-lg f12 text-grey-6">
<q-icon name="iconfont icontishi" class="q-mr-sm" />
......@@ -602,6 +640,14 @@
</template>
</div>
</div>
<div v-if="!dataList && !$q.loading.isActive" class="text-center q-my-xl">
<none-data
iconType="order"
title="沒有找到您想要的商品哦"
subtitle="趕緊去挑選心儀的旅遊產品吧"
></none-data>
</div>
</div>
</template>
<script>
......@@ -613,7 +659,8 @@ import Trip from "src/components/trip/trip.vue";
import headStyle4 from "../components/trip/style4";
import headStyle5 from "../components/trip/style5";
import block from "src/components/trip/block/index";
import Flight from 'src/components/trip/flight.vue';
import Flight from "src/components/trip/flight.vue";
import NoneData from "src/components/common/noneData.vue";
export default {
props: [],
data() {
......@@ -629,8 +676,8 @@ export default {
tcid: 0,
teamType: 0,
isGetPriceFlight: true,
pType: 1,//类型 1 来源B2C
newConfigId: 0,//列表里的configId
pType: 1, //类型 1 来源B2C
newConfigId: 0, //列表里的configId
},
currentPrice: {},
isShow: false,
......@@ -724,7 +771,8 @@ export default {
smaple,
Trip,
block,
Flight
Flight,
NoneData
},
watch: {
days: {
......@@ -764,7 +812,7 @@ export default {
this.msg.tcid = decodeURIComponent(this.$route.params.tcid);
}
if (this.$route.params.newConfigId) {
this.msg.newConfigId = decodeURIComponent(this.$route.params.newConfigId)
this.msg.newConfigId = decodeURIComponent(this.$route.params.newConfigId);
}
},
mounted() {
......@@ -777,17 +825,17 @@ export default {
// this.getCarData();
},
methods: {
changeShowOrderPreviewHandler(){
this.showOrderPreview=!this.showOrderPreview
if(!this.showOrderPreview){
changeShowOrderPreviewHandler() {
this.showOrderPreview = !this.showOrderPreview;
if (!this.showOrderPreview) {
// this.currentPrice=null
if(this.currentPrice){
this.currentPrice.isSupportChildren=null
this.currentPrice.unionCityList=null
this.currentPrice.singleRoomPrice=0
this.currentPrice.originalB2CPrice=0
if (this.currentPrice) {
this.currentPrice.isSupportChildren = null;
this.currentPrice.unionCityList = null;
this.currentPrice.singleRoomPrice = 0;
this.currentPrice.originalB2CPrice = 0;
}
this.changeTripShowHandler()
this.changeTripShowHandler();
}
},
getTopNum(x) {
......@@ -881,37 +929,44 @@ export default {
},
resetHandler() {
// this.currentPrice=null;
if(this.currentPrice){
this.currentPrice.isSupportChildren=null
this.currentPrice.unionCityList=null
this.currentPrice.singleRoomPrice=0
this.currentPrice.originalB2CPrice=0
if (this.currentPrice) {
this.currentPrice.isSupportChildren = null;
this.currentPrice.unionCityList = null;
this.currentPrice.singleRoomPrice = 0;
this.currentPrice.originalB2CPrice = 0;
}
if(this.$q.platform.is.mobile)
this.$refs.calendarMobile.reset()
else
this.$refs.calendar.reset();
if (this.$q.platform.is.mobile) this.$refs.calendarMobile.reset();
else this.$refs.calendar.reset();
},
changeChosenDateHandler(val) {
val.price.version = new Date().getTime();
this.currentPrice = JSON.parse(JSON.stringify(val.price));
this.currentPrice.RealPrice = this.currentPrice.RealPrice?this.currentPrice.RealPrice:this.currentPrice.originalB2CPrice
this.currentPrice.originalB2CPrice = this.currentPrice.RealPrice
if(this.currentPrice.unionCityList && this.currentPrice.unionCityList.length>0 && this.dataList.startCityId!=0){
if(this.currentPrice.unionCityList.findIndex(x=>x.cityId==this.dataList.startCityId)==-1){
this.currentPrice.unionCityList.splice(0,0,{
cityId:this.dataList.startCityId,
cityName:this.dataList.startCityName
})
this.currentPrice.RealPrice = this.currentPrice.RealPrice
? this.currentPrice.RealPrice
: this.currentPrice.originalB2CPrice;
this.currentPrice.originalB2CPrice = this.currentPrice.RealPrice;
if (
this.currentPrice.unionCityList &&
this.currentPrice.unionCityList.length > 0 &&
this.dataList.startCityId != 0
) {
if (
this.currentPrice.unionCityList.findIndex(
(x) => x.cityId == this.dataList.startCityId
) == -1
) {
this.currentPrice.unionCityList.splice(0, 0, {
cityId: this.dataList.startCityId,
cityName: this.dataList.startCityName,
});
}
}
if(this.$q.platform.is.mobile){
if (this.$q.platform.is.mobile) {
this.$refs.qDateProxy.hide();
}
this.$forceUpdate()
this.$nextTick(()=>{
this.changeTripShowHandler()
this.$forceUpdate();
this.$nextTick(() => {
this.changeTripShowHandler();
});
},
showDialog() {
......@@ -923,11 +978,13 @@ export default {
},
getData() {
this.$q.loading.show();
console.log(this.$q.loading)
this.apipost(
"b2b_get_GetB2BTravelInfoV1",
this.msg,
(r) => {
if (r.data.resultCode == 1) {
try {
if (r.data.resultCode == 1 && r.data.data.id>0) {
this.dataList = r.data.data;
if (this.dataList.dayList && this.dataList.dayList.length > 0) {
this.dataList.dayList.forEach((item) => {
......@@ -939,8 +996,8 @@ export default {
this.citys.push(x.cityName);
}
});
if(this.citys.length>0){
this.citys = Array.from(new Set(this.citys))
if (this.citys.length > 0) {
this.citys = Array.from(new Set(this.citys));
}
}
}
......@@ -1016,40 +1073,39 @@ export default {
// console.log('异常信息', error)
}
});
} else {
this.$q.notify({
type: "negative",
message: r.data.message,
position: "top",
timeout: 2000, // 以毫秒为单位; 0意味着没有超时
});
}
} catch (error) {}
this.$q.loading.hide();
},
null
e=>{
this.$q.loading.hide();
}
);
},
changeCityHandler(unionCity){
this.currentPrice.originalB2CPrice=this.currentPrice.RealPrice
if(unionCity.cityId!=this.dataList.startCityId){
if(unionCity.backFlight && unionCity.backFlight.addPrice){
this.currentPrice.originalB2CPrice+=unionCity.backFlight.addPrice
changeCityHandler(unionCity) {
this.currentPrice.originalB2CPrice = this.currentPrice.RealPrice;
if (unionCity.cityId != this.dataList.startCityId) {
if (unionCity.backFlight && unionCity.backFlight.addPrice) {
this.currentPrice.originalB2CPrice += unionCity.backFlight.addPrice;
}
if(unionCity.goFlight && unionCity.goFlight.addPrice){
this.currentPrice.originalB2CPrice+=unionCity.goFlight.addPrice
if (unionCity.goFlight && unionCity.goFlight.addPrice) {
this.currentPrice.originalB2CPrice += unionCity.goFlight.addPrice;
}
}
console.log(this.$refs)
if(this.$q.platform.is.desktop)
this.$refs.calendar.changePriceHandler(this.currentPrice.startDate,this.currentPrice.originalB2CPrice)
this.$forceUpdate()
console.log(this.$refs);
if (this.$q.platform.is.desktop)
this.$refs.calendar.changePriceHandler(
this.currentPrice.startDate,
this.currentPrice.originalB2CPrice
);
this.$forceUpdate();
},
// 获取车的详情
getCarData() {
this.$q.loading.show();
this.apipost(
"b2c_get_GetCarSingleProductDetail",
{ ProductId: '16' },
{ ProductId: "16" },
(r) => {
if (r.data.resultCode == 1) {
this.dataList = r.data.data;
......@@ -1168,7 +1224,7 @@ export default {
</script>
<style>
.line-feature *{
.line-feature * {
line-height: normal !important;
}
.slider-item {
......@@ -1243,4 +1299,7 @@ export default {
#setZoom > div {
zoom: calc(100 / 1000);
}
.large-feature img{
width:100% !important
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment