Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
Athena
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
华国豪
Athena
Commits
4f9cd9bf
Commit
4f9cd9bf
authored
Dec 27, 2019
by
zhengke
Browse files
Options
Browse Files
Download
Plain Diff
S
parents
59462332
3979b429
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
726 additions
and
612 deletions
+726
-612
detailTwo.vue
src/components/mall/detailTwo.vue
+726
-612
No files found.
src/components/mall/detailTwo.vue
View file @
4f9cd9bf
<
style
>
<
style
>
@import
url('../../assets/mall/detail.css')
;
@import
url('../../assets/mall/detail.css')
;
._labelClass
{
width
:
120px
;
._labelClass
{
width
:
120px
;
background-color
:
white
;
background-color
:
white
;
text-align
:
center
;
text-align
:
center
;
}
}
._travelLngLatInfo_box
{
._travelLngLatInfo_box
{
background-color
:
#f3f3f3
;
background-color
:
#f3f3f3
;
padding
:
20px
;
padding
:
20px
;
margin-top
:
15px
;
margin-top
:
15px
;
}
}
._travelLngLatInfo_label
{
._travelLngLatInfo_label
{
display
:
inline-block
;
display
:
inline-block
;
width
:
20px
;
width
:
20px
;
height
:
20px
;
height
:
20px
;
...
@@ -20,10 +23,12 @@
...
@@ -20,10 +23,12 @@
text-align
:
center
;
text-align
:
center
;
line-height
:
20px
;
line-height
:
20px
;
}
}
.zanding_flight
{
.zanding_flight
{
position
:
relative
;
position
:
relative
;
}
}
.zanding_flight
span
{
.zanding_flight
span
{
position
:
absolute
;
position
:
absolute
;
right
:
-36px
;
right
:
-36px
;
top
:
10px
;
top
:
10px
;
...
@@ -34,14 +39,36 @@
...
@@ -34,14 +39,36 @@
cursor
:
pointer
;
cursor
:
pointer
;
border-radius
:
50%
;
border-radius
:
50%
;
}
}
.template_box_two
>
div
>
div
{
zoom
:
0.89
;
.template_box_two
>
div
>
div
{
zoom
:
0.89
;
}
.TripDownLoadCommon
{
height
:
350px
;
text-align
:
center
}
.TripDownLoadCommon
>
label
{
cursor
:
pointer
;
vertical-align
:
middle
;
}
.TripDownLoadCommon
>
label
input
{
vertical-align
:
middle
;
}
.TripDownLoadCommon
.TripBtn
{
color
:
#fff
;
width
:
90px
;
height
:
30px
;
background
:
#E95252
;
border
:
1px
solid
#E95252
;
cursor
:
pointer
;
border-radius
:
15px
;
}
}
.TripDownLoadCommon
{
height
:
350px
;
text-align
:
center
}
.TripDownLoadCommon
>
label
{
cursor
:
pointer
;
vertical-align
:
middle
;}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]+
label
::before
{
.TripDownLoadCommon
>
label
input
{
vertical-align
:
middle
;}
.TripDownLoadCommon
.TripBtn
{
color
:
#fff
;
width
:
90px
;
height
:
30px
;
background
:
#E95252
;
border
:
1px
solid
#E95252
;
cursor
:
pointer
;
border-radius
:
15px
;}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
+
label
::before
{
content
:
"\A0"
;
content
:
"\A0"
;
display
:
inline-block
;
display
:
inline-block
;
width
:
15px
;
width
:
15px
;
...
@@ -54,23 +81,30 @@
...
@@ -54,23 +81,30 @@
color
:
white
;
color
:
white
;
border
:
1px
solid
#e95252
;
border
:
1px
solid
#e95252
;
}
}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:checked
+
label
::before
{
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:checked
+
label
::before
{
content
:
"\2713"
;
content
:
"\2713"
;
background-color
:
#e95252
;
background-color
:
#e95252
;
}
}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
{
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
{
position
:
absolute
;
position
:
absolute
;
clip
:
rect
(
0
,
0
,
0
,
0
);
clip
:
rect
(
0
,
0
,
0
,
0
);
}
}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:focus
+
label
::before
{
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:focus
+
label
::before
{
box-shadow
:
none
;
box-shadow
:
none
;
}
}
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:disabled
+
label
::before
{
.TripDownLoadCommon
input
[
type
=
"checkbox"
]
:disabled
+
label
::before
{
background-color
:
gray
;
background-color
:
gray
;
box-shadow
:
none
;
box-shadow
:
none
;
color
:
#555
;
color
:
#555
;
}
}
.w450
{
width
:
450px
;}
.w450
{
width
:
450px
;
}
</
style
>
</
style
>
<
template
>
<
template
>
...
@@ -80,8 +114,12 @@
...
@@ -80,8 +114,12 @@
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-breadcrumb
separator-class=
"el-icon-arrow-right"
>
<el-breadcrumb
separator-class=
"el-icon-arrow-right"
>
<el-breadcrumb-item
:to=
"
{ path: '/heel',query:{} }">跟团游
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/heel',query:{} }">跟团游
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/search',query:{'keywords':'','lineId':dataList.lineId,'lineName':dataList.lineName} }">
{{
dataList
.
lineName
}}
</el-breadcrumb-item>
<el-breadcrumb-item
<el-breadcrumb-item
:to=
"
{ path: '/search',query:{'keywords':'','lineId':dataList.lineId,'lineName':dataList.lineName,'lineteamId':dataList.lineteamId,'lineteamName':dataList.ltName} }">
{{
dataList
.
ltName
}}
</el-breadcrumb-item>
:to=
"
{ path: '/search',query:{'keywords':'','lineId':dataList.lineId,'lineName':dataList.lineName} }">
{{
dataList
.
lineName
}}
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/search',query:{'keywords':'','lineId':dataList.lineId,'lineName':dataList.lineName,'lineteamId':dataList.lineteamId,'lineteamName':dataList.ltName} }">
{{
dataList
.
ltName
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
dataList
.
title
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
dataList
.
title
}}
</el-breadcrumb-item>
</el-breadcrumb>
</el-breadcrumb>
</el-col>
</el-col>
...
@@ -90,7 +128,8 @@
...
@@ -90,7 +128,8 @@
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-breadcrumb
separator-class=
"el-icon-arrow-right"
>
<el-breadcrumb
separator-class=
"el-icon-arrow-right"
>
<el-breadcrumb-item
:to=
"
{ path: '/IndependentTravel',query:{} }">自由行
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/IndependentTravel',query:{} }">自由行
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/IndependentList',query:{'lineteamId':dataList.lineteamId} }">
{{
dataList
.
ltName
}}
</el-breadcrumb-item>
<el-breadcrumb-item
:to=
"
{ path: '/IndependentList',query:{'lineteamId':dataList.lineteamId} }">
{{
dataList
.
ltName
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
dataList
.
title
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
dataList
.
title
}}
</el-breadcrumb-item>
</el-breadcrumb>
</el-breadcrumb>
</el-col>
</el-col>
...
@@ -113,7 +152,8 @@
...
@@ -113,7 +152,8 @@
</div>
</div>
<div>
<div>
<span
class=
"red"
>
¥
</span>
<span
class=
"red"
>
¥
</span>
<span
class=
"red big"
>
{{
toDayObj
?(
isLogin
!==
1
?
toDayObj
.
b2CPrice
:
toDayObj
.
b2BPrice
):
0
}}
</span>
<span
class=
"red big"
>
{{
toDayObj
?(
isLogin
!==
1
?
toDayObj
.
b2CPrice
:
toDayObj
.
b2BPrice
):
0
}}
</span>
<span>
/人起
</span>
<span>
/人起
</span>
<span
class=
"tips pointer"
>
<span
class=
"tips pointer"
>
起价说明
起价说明
...
@@ -132,21 +172,32 @@
...
@@ -132,21 +172,32 @@
<el-row
:gutter=
"7"
>
<el-row
:gutter=
"7"
>
<template
v-if=
"VideoStr"
>
<template
v-if=
"VideoStr"
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<video
:src=
"VideoStr"
width=
"100%"
height=
"259"
class=
"avatar"
controls=
"controls"
>
您的浏览器不支持视频播放
</video>
<video
:src=
"VideoStr"
width=
"100%"
height=
"259"
class=
"avatar"
controls=
"controls"
>
您的浏览器不支持视频播放
</video>
</el-col>
</el-col>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<img
@
click=
"BigImgShow(0)"
v-if=
"imgCover&&imgCover[0]"
:src=
"editSrc(imgCover[0].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(0)"
v-if=
"imgCover&&imgCover[0]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
:src=
"editSrc(imgCover[0].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(1)"
v-if=
"imgCover&&imgCover[1]"
:src=
"editSrc(imgCover[1].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(1)"
v-if=
"imgCover&&imgCover[1]"
:src=
"editSrc(imgCover[1].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
</el-col>
</el-col>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<img
@
click=
"BigImgShow(2)"
v-if=
"imgCover&&imgCover[2]"
:src=
"imgCover[2].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[2].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(2)"
v-if=
"imgCover&&imgCover[2]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
:src=
"imgCover[2].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[2].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
<div
class=
"last"
>
<div
class=
"last"
>
<img
@
click=
"BigImgShow(3)"
v-if=
"imgCover&&imgCover[3]"
:src=
"imgCover[3].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[3].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(3)"
v-if=
"imgCover&&imgCover[3]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
:src=
"imgCover[3].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[3].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
<div
class=
"tip"
@
click=
"BigImgShow(4)"
>
<div
class=
"tip"
@
click=
"BigImgShow(4)"
>
查看全部图片
查看全部图片
</div>
</div>
...
@@ -156,22 +207,33 @@
...
@@ -156,22 +207,33 @@
</
template
>
</
template
>
<
template
v-else
>
<
template
v-else
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<img
@
click=
"BigImgShow(0)"
v-if=
"imgCover&&imgCover[0]"
:src=
"editSrc(imgCover[0].Url)"
style=
"height: 259px;width:100%"
/>
<img
@
click=
"BigImgShow(0)"
v-if=
"imgCover&&imgCover[0]"
:src=
"editSrc(imgCover[0].Url)"
style=
"height: 259px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 259px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 259px;width:100%"
/>
</el-col>
</el-col>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<img
@
click=
"BigImgShow(1)"
v-if=
"imgCover&&imgCover[1]"
:src=
"editSrc(imgCover[1].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(1)"
v-if=
"imgCover&&imgCover[1]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
:src=
"editSrc(imgCover[1].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(2)"
v-if=
"imgCover&&imgCover[2]"
:src=
"editSrc(imgCover[2].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(2)"
v-if=
"imgCover&&imgCover[2]"
:src=
"editSrc(imgCover[2].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
</el-col>
</el-col>
<el-col
:span=
'12'
>
<el-col
:span=
'12'
>
<img
@
click=
"BigImgShow(3)"
v-if=
"imgCover&&imgCover[3]"
:src=
"imgCover[3].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[3].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(3)"
v-if=
"imgCover&&imgCover[3]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
:src=
"imgCover[3].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[3].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%"
/>
<div
class=
"last"
>
<div
class=
"last"
>
<img
@
click=
"BigImgShow(4)"
v-if=
"imgCover&&imgCover[4]"
:src=
"imgCover[4].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[4].Url)"
style=
"height: 126px;width:100%"
/>
<img
@
click=
"BigImgShow(4)"
v-if=
"imgCover&&imgCover[4]"
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
:src=
"imgCover[4].Url==''?'../../assets/img/bg_c2@3x.png':editSrc(imgCover[4].Url)"
style=
"height: 126px;width:100%"
/>
<img
v-else
src=
"../../assets/img/bg_c2@3x.png"
style=
"height: 126px;width:100%;margin-top:3px;"
/>
<div
class=
"tip"
@
click=
"BigImgShow(4)"
>
<div
class=
"tip"
@
click=
"BigImgShow(4)"
>
查看全部图片
查看全部图片
</div>
</div>
...
@@ -193,22 +255,25 @@
...
@@ -193,22 +255,25 @@
<el-col
:span=
'10'
class=
"right-team-box-col"
>
<el-col
:span=
'10'
class=
"right-team-box-col"
>
<div
class=
"right-team-box"
>
<div
class=
"right-team-box"
>
<div
class=
"title"
>
<div
class=
"title"
>
<span
class=
"item"
v-for=
"(i,index) in calendarTit"
@
click=
"selectMounth(index)"
:class=
"index===indexActive?'avtice':''"
>
<span
class=
"item"
v-for=
"(i,index) in calendarTit"
@
click=
"selectMounth(index)"
<span>
{{i.dateStrS}}
</span><br/>
:class=
"index===indexActive?'avtice':''"
:key=
"index"
>
<span>
{{i.dateStrS}}
</span><br
/>
<span
class=
"price"
>
¥{{isLogin!==1?i.price:i.b2BPrice}}起
</span>
<span
class=
"price"
>
¥{{isLogin!==1?i.price:i.b2BPrice}}起
</span>
</span>
</span>
</div>
</div>
<calendar
v-for=
"(item,index) in classArray"
:key=
"index"
:dateData=
"item"
:day =
"item[0].dateStr"
@
ChildrenSelect=
"ListenChildren"
v-if=
"index == selectMonth"
/>
<calendar
v-for=
"(item,index) in classArray"
:key=
"index"
:dateData=
"item"
:day=
"item[0].dateStr"
@
ChildrenSelect=
"ListenChildren"
v-if=
"index == selectMonth"
/>
</div>
</div>
</el-col>
</el-col>
</el-col>
</el-col>
</el-row>
</el-row>
<trade
:free=
"free"
:teamType=
"teamType"
:priceList=
'dataList.priceList'
:trip=
'dataList'
:numPeople=
"null"
v-if=
"dataList.priceList && dataList.priceList.length>0"
></trade>
<trade
:free=
"free"
:teamType=
"teamType"
:priceList=
'dataList.priceList'
:trip=
'dataList'
:numPeople=
"null"
v-if=
"dataList.priceList && dataList.priceList.length>0"
></trade>
<div
ref=
"nav"
>
<div
ref=
"nav"
>
<el-row>
<el-row>
<el-col
:span=
"20"
:offset=
"2"
>
<el-col
:span=
"20"
:offset=
"2"
>
<el-col
:span=
"18"
>
<el-col
:span=
"18"
>
<ul
class=
"top-nav"
>
<ul
class=
"top-nav"
>
<li
:class=
"crtnav=='flight'?'active':''"
@
click=
"goScroll('flight')"
>
<li
:class=
"crtnav=='flight'?'active':''"
@
click=
"goScroll('flight')"
>
<i
class=
"iconfont icon-Pointer"
></i>
<i
class=
"iconfont icon-Pointer"
></i>
<span>
航班信息
</span>
<span>
航班信息
</span>
...
@@ -241,7 +306,8 @@
...
@@ -241,7 +306,8 @@
<i
class=
"iconfont icon-hangchenganpai"
></i>
<i
class=
"iconfont icon-hangchenganpai"
></i>
同行备注
同行备注
</li>
</li>
<li
:class=
"crtnav=='PDFDownL'?'active':''"
@
click=
"crtnav=='PDFDownL',PDFDownLoad('tonghang')"
>
<li
:class=
"crtnav=='PDFDownL'?'active':''"
@
click=
"crtnav=='PDFDownL',PDFDownLoad('tonghang')"
>
<i
class=
"iconfont icon-hangchenganpai"
></i>
<i
class=
"iconfont icon-hangchenganpai"
></i>
PDF下载
PDF下载
</li>
</li>
...
@@ -294,14 +360,19 @@
...
@@ -294,14 +360,19 @@
<table
border=
"0"
align=
"center"
cellspacing=
"0"
cellpadding=
"0"
class=
"flight_list"
>
<table
border=
"0"
align=
"center"
cellspacing=
"0"
cellpadding=
"0"
class=
"flight_list"
>
<tbody
v-if=
"showFlight && FlightList.length>0"
>
<tbody
v-if=
"showFlight && FlightList.length>0"
>
<tr
v-for=
"(flight,ftIndex) in sonData.currentPriceInfo.priceFlight"
:key=
"ftIndex"
>
<tr
v-for=
"(flight,ftIndex) in sonData.currentPriceInfo.priceFlight"
:key=
"ftIndex"
>
<td
width=
"170"
><span
class=
"nth-day"
>
{{flight.startDate.substring(5)}}
</span>
<span
class=
"num"
>
{{flight.departureTime}}
</span></td>
<td
width=
"170"
><span
<td
width=
"170"
><span
class=
"nth-day"
>
{{flight.arriveDate.substring(5)}}
</span>
<span
class=
"num"
>
{{flight.arrivalTime}}
</span></td>
class=
"nth-day"
>
{{flight.startDate.substring(5)}}
</span>
<span
class=
"num"
>
{{flight.departureTime}}
</span></td>
<td
width=
"170"
><span
class=
"nth-day"
>
{{flight.arriveDate.substring(5)}}
</span>
<span
class=
"num"
>
{{flight.arrivalTime}}
</span></td>
<td
width=
"216"
>
{{flight.departureAirPortName}}
<span
class=
"citycode"
></span></td>
<td
width=
"216"
>
{{flight.departureAirPortName}}
<span
class=
"citycode"
></span></td>
<td
width=
"18"
class=
"gap"
>
</td>
<td
width=
"18"
class=
"gap"
>
</td>
<td>
{{flight.arrivalAirPortName}}
<span
class=
"citycode"
></span></td>
<td>
{{flight.arrivalAirPortName}}
<span
class=
"citycode"
></span></td>
<td
width=
"18"
class=
"gap"
>
</td>
<td
width=
"18"
class=
"gap"
>
</td>
<td
width=
"80"
>
{{flight.alName}}
</td>
<td
width=
"80"
>
{{flight.alName}}
</td>
<td
width=
"90"
class=
"zanding_flight"
>
{{flight.flightNumber}}
<span
v-if=
"flight.flightState===2"
title=
"暂定"
>
!
</span></td>
<td
width=
"90"
class=
"zanding_flight"
>
{{flight.flightNumber}}
<span
v-if=
"flight.flightState===2"
title=
"暂定"
>
!
</span></td>
</tr>
</tr>
</tbody>
</tbody>
<tbody
v-else
>
<tbody
v-else
>
...
@@ -322,17 +393,23 @@
...
@@ -322,17 +393,23 @@
<table>
<table>
<tbody>
<tbody>
<tr>
<tr>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index<3"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index<3"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index>2&&index<6"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index>2&&index<6"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index>5&&index<=8"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
<td
@
click=
"showImg(feature.featureImgList),initialIndex=index"
v-for=
"(i,index) in feature.featureImgList"
:key=
"index"
v-if=
"index>5&&index<=8"
:style=
"{background:'url(' + i.url + ') no-repeat bottom left/100% auto'}"
>
</td>
</td>
</tr>
</tr>
...
@@ -369,7 +446,8 @@
...
@@ -369,7 +446,8 @@
<!-- <bmap :data="travelLngLat"/> -->
<!-- <bmap :data="travelLngLat"/> -->
<GGMap
:dataList=
"travelLngLat"
></GGMap>
<GGMap
:dataList=
"travelLngLat"
></GGMap>
<div
class=
"_travelLngLatInfo_box"
>
<div
class=
"_travelLngLatInfo_box"
>
<p
v-for=
"item in travelLngLatInfo"
><span
class=
"_travelLngLatInfo_label"
>
{{item.lable}}
</span>
: {{item.text}}
</p>
<p
v-for=
"(item,index) in travelLngLatInfo"
:key=
"index"
><span
class=
"_travelLngLatInfo_label"
>
{{item.lable}}
</span>
:
{{item.text}}
</p>
</div>
</div>
</div>
</div>
<!-- <div id="map_canvas" style="width:1000px; height:600px;"></div> -->
<!-- <div id="map_canvas" style="width:1000px; height:600px;"></div> -->
...
@@ -402,7 +480,8 @@
...
@@ -402,7 +480,8 @@
<div
class=
"left"
>
自理费用
</div>
<div
class=
"left"
>
自理费用
</div>
<div
class=
"right"
>
<div
class=
"right"
>
<div
v-html=
"feature.feeNonInclude"
></div>
<div
v-html=
"feature.feeNonInclude"
></div>
<table
class=
"expense-table"
cellspacing=
0
cellpadding=
0
v-if=
'dataList.selfpayingList && dataList.selfpayingList.length>0'
>
<table
class=
"expense-table"
cellspacing=
0
cellpadding=
0
v-if=
'dataList.selfpayingList && dataList.selfpayingList.length>0'
>
<thead>
<thead>
<th>
城市
</th>
<th>
城市
</th>
<th>
活动
</th>
<th>
活动
</th>
...
@@ -501,10 +580,10 @@
...
@@ -501,10 +580,10 @@
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row
class=
"fuben-nav"
v-if=
"changeNav&&loadNone==false"
>
<el-row
class=
"fuben-nav"
v-if=
"changeNav&&loadNone==false"
>
<el-col
:span=
"20"
:offset=
"2"
>
<el-col
:span=
"20"
:offset=
"2"
>
<el-col
:span=
"18"
>
<el-col
:span=
"18"
>
<ul
class=
"top-nav"
>
<ul
class=
"top-nav"
>
<li
:class=
"crtnav=='flight'?'active':''"
@
click=
"goScroll('flight')"
>
<li
:class=
"crtnav=='flight'?'active':''"
@
click=
"goScroll('flight')"
>
<i
class=
"iconfont icon-Pointer"
></i>
<i
class=
"iconfont icon-Pointer"
></i>
<span>
航班信息
</span>
<span>
航班信息
</span>
...
@@ -561,10 +640,11 @@
...
@@ -561,10 +640,11 @@
</el-col>
</el-col>
</el-row>
</el-row>
<div
v-if=
'picIsShow'
class=
"_show_img_box"
@
click=
"picIsShow=false,picObj=[]"
>
<div
v-if=
'picIsShow'
class=
"_show_img_box"
@
click=
"picIsShow=false,picObj=[]"
>
<div
style=
"position: absolute; width: 800px; height: 600px; left: 50%; top: 50%; margin-left: -400px; margin-top: -300px;"
>
<div
style=
"position: absolute; width: 800px; height: 600px; left: 50%; top: 50%; margin-left: -400px; margin-top: -300px;"
>
<el-carousel
:initial-index=
initialIndex
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel
:initial-index=
initialIndex
height=
"600px"
:interval=
"5000"
trigger=
"click"
>
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
<el-carousel-item
v-for=
"(item,index) in picObj"
:key=
"index"
>
<img
:src=
"item.Url?item.Url:item.url"
style=
"width: 100%; height: 100%;"
/>
<img
:src=
"item.Url?item.Url:item.url"
style=
"width: 100%; height: 100%;"
/>
</el-carousel-item>
</el-carousel-item>
</el-carousel>
</el-carousel>
</div>
</div>
...
@@ -572,10 +652,10 @@
...
@@ -572,10 +652,10 @@
<div
style=
"height:100px;"
></div>
<div
style=
"height:100px;"
></div>
<!-- <el-button class="pdfDom_btn" type="primary" size="small" @click="donwLoad()" v-if="loadNone==false">点击下载</el-button> -->
<!-- <el-button class="pdfDom_btn" type="primary" size="small" @click="donwLoad()" v-if="loadNone==false">点击下载</el-button> -->
<
template
v-if=
"sonData"
>
<
template
v-if=
"sonData"
>
<confirmationOrderDownLoad
ref=
"confirmationOrderDownLoad"
:sonData=
"sonData"
:TripLayer=
"TripLayer"
/>
<confirmationOrderDownLoad
ref=
"confirmationOrderDownLoad"
:sonData=
"sonData"
:TripLayer=
"TripLayer"
/>
</
template
>
</
template
>
<el-dialog
custom-class=
'w450'
title=
"行程下载"
:visible
.
sync=
"travelControlTripLayerShow"
center
>
<el-dialog
custom-class=
'w450'
title=
"行程下载"
:visible
.
sync=
"travelControlTripLayerShow"
center
>
<div
class=
"TripDownLoadCommon"
>
<div
class=
"TripDownLoadCommon"
>
<table
style=
"width:380px"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<table
style=
"width:380px"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<tr>
<th
colspan=
"2"
>
<th
colspan=
"2"
>
...
@@ -584,27 +664,38 @@
...
@@ -584,27 +664,38 @@
</tr>
</tr>
<tbody>
<tbody>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td
width=
"50%"
><input
id=
"vshowA"
v-model=
"TripLayer.vshowA"
type=
"checkbox"
/><label
for=
"vshowA"
>
基础信息
</label></td>
<td
width=
"50%"
><input
id=
"vshowA"
v-model=
"TripLayer.vshowA"
type=
"checkbox"
/><label
<td
width=
"50%"
><input
id=
"vshowB"
v-model=
"TripLayer.vshowB"
type=
"checkbox"
/><label
for=
"vshowB"
>
航班信息
</label></td>
for=
"vshowA"
>
基础信息
</label></td>
<td
width=
"50%"
><input
id=
"vshowB"
v-model=
"TripLayer.vshowB"
type=
"checkbox"
/><label
for=
"vshowB"
>
航班信息
</label></td>
</tr>
</tr>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td><input
id=
"vshowC"
v-model=
"TripLayer.vshowC"
type=
"checkbox"
/><label
for=
"vshowC"
>
行程特色
</label></td>
<td><input
id=
"vshowC"
v-model=
"TripLayer.vshowC"
type=
"checkbox"
/><label
<td><input
id=
"vshowD"
v-model=
"TripLayer.vshowD"
type=
"checkbox"
/><label
for=
"vshowD"
>
行程安排
</label></td>
for=
"vshowC"
>
行程特色
</label></td>
<td><input
id=
"vshowD"
v-model=
"TripLayer.vshowD"
type=
"checkbox"
/><label
for=
"vshowD"
>
行程安排
</label></td>
</tr>
</tr>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td><input
id=
"vshowE"
v-model=
"TripLayer.vshowE"
type=
"checkbox"
/><label
for=
"vshowE"
>
费用说明
</label></td>
<td><input
id=
"vshowE"
v-model=
"TripLayer.vshowE"
type=
"checkbox"
/><label
<td><input
id=
"vshowF"
v-model=
"TripLayer.vshowF"
type=
"checkbox"
/><label
for=
"vshowF"
>
购物说明
</label></td>
for=
"vshowE"
>
费用说明
</label></td>
<td><input
id=
"vshowF"
v-model=
"TripLayer.vshowF"
type=
"checkbox"
/><label
for=
"vshowF"
>
购物说明
</label></td>
</tr>
</tr>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td><input
id=
"vshowG"
v-model=
"TripLayer.vshowG"
type=
"checkbox"
/><label
for=
"vshowG"
>
订单须知
</label></td>
<td><input
id=
"vshowG"
v-model=
"TripLayer.vshowG"
type=
"checkbox"
/><label
<td><input
id=
"vshowH"
v-model=
"TripLayer.vshowH"
type=
"checkbox"
/><label
for=
"vshowH"
>
签证信息
</label></td>
for=
"vshowG"
>
订单须知
</label></td>
<td><input
id=
"vshowH"
v-model=
"TripLayer.vshowH"
type=
"checkbox"
/><label
for=
"vshowH"
>
签证信息
</label></td>
</tr>
</tr>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td><input
id=
"vshowI"
v-model=
"TripLayer.vshowI"
type=
"checkbox"
/><label
for=
"vshowI"
>
同行备注
</label></td>
<td><input
id=
"vshowI"
v-model=
"TripLayer.vshowI"
type=
"checkbox"
/><label
<td><input
id=
"vshowJ"
v-model=
"TripLayer.vshowJ"
type=
"checkbox"
/><label
for=
"vshowJ"
>
印象标识
</label></td>
for=
"vshowI"
>
同行备注
</label></td>
<td><input
id=
"vshowJ"
v-model=
"TripLayer.vshowJ"
type=
"checkbox"
/><label
for=
"vshowJ"
>
印象标识
</label></td>
</tr>
</tr>
<tr
height=
"36"
>
<tr
height=
"36"
>
<td><input
id=
"vshowK"
v-model=
"TripLayer.vshowK"
type=
"checkbox"
/><label
for=
"vshowK"
>
景点图片
</label></td>
<td><input
id=
"vshowK"
v-model=
"TripLayer.vshowK"
type=
"checkbox"
/><label
for=
"vshowK"
>
景点图片
</label></td>
</tr>
</tr>
</tbody>
</tbody>
<!-- <tbody>
<!-- <tbody>
...
@@ -645,7 +736,8 @@
...
@@ -645,7 +736,8 @@
</div>
</div>
</el-dialog>
</el-dialog>
<viewer
style=
"display:none"
:images=
"images"
:options=
'imageOptions'
@
inited=
"inited"
class=
"viewer"
ref=
"viewer"
>
<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"
>
<img
v-for=
"(item,index) in images"
:src=
"item.Url"
:key=
"index+5000"
>
</viewer>
</viewer>
...
@@ -654,17 +746,17 @@
...
@@ -654,17 +746,17 @@
<
script
>
<
script
>
import
moment
from
'moment'
import
moment
from
'moment'
// import bmap from './map.vue'
// import bmap from './map.vue'
import
calendar
from
'./calendar.vue'
import
calendar
from
'./calendar.vue'
import
trip
from
'../trip/waterfall/index'
import
trip
from
'../trip/waterfall/index'
import
block
from
'../trip/block/index'
import
block
from
'../trip/block/index'
import
trade
from
'../trade/order/index'
import
trade
from
'../trade/order/index'
import
swiper
from
'../trip/swiper/index'
import
swiper
from
'../trip/swiper/index'
import
GGMap
from
'../global/GGMap'
import
GGMap
from
'../global/GGMap'
import
confirmationOrderDownLoad
from
'../global/confirmationOrderDownLoad'
import
confirmationOrderDownLoad
from
'../global/confirmationOrderDownLoad'
import
bus
from
'../../plugins/event-bus'
import
bus
from
'../../plugins/event-bus'
export
default
{
export
default
{
components
:
{
components
:
{
// bmap,
// bmap,
GGMap
,
GGMap
,
...
@@ -675,57 +767,57 @@ export default {
...
@@ -675,57 +767,57 @@ export default {
swiper
,
swiper
,
confirmationOrderDownLoad
confirmationOrderDownLoad
},
},
props
:
[
'changeCity'
],
props
:
[
'changeCity'
],
data
()
{
data
()
{
return
{
return
{
ID
:
''
,
ID
:
''
,
tcid
:
''
,
tcid
:
''
,
pre
:
0
,
pre
:
0
,
chosenTime
:
''
,
chosenTime
:
''
,
crn
:
2
,
crn
:
2
,
etn
:
0
,
etn
:
0
,
changeNav
:
false
,
changeNav
:
false
,
scrollobj
:
null
,
scrollobj
:
null
,
picIsShow
:
false
,
picIsShow
:
false
,
initialIndex
:
0
,
initialIndex
:
0
,
showType
:
-
1
,
showType
:
-
1
,
crtnav
:
'tese'
,
crtnav
:
'tese'
,
dayList
:
[],
dayList
:
[],
feature
:
{},
feature
:
{},
priceList
:
[],
priceList
:
[],
dataList
:
{},
dataList
:
{},
toDayObj
:
{},
toDayObj
:
{},
calendarTit
:
[],
calendarTit
:
[],
classArray
:
[],
classArray
:
[],
imgCover
:
[],
imgCover
:
[],
picObj
:
[],
picObj
:
[],
travelLngLat
:
[],
travelLngLat
:
[],
selectMonth
:
0
,
selectMonth
:
0
,
value
:
'1'
,
value
:
'1'
,
dayTrip
:
''
,
dayTrip
:
''
,
input10
:
''
,
input10
:
''
,
isLogin
:
1
,
isLogin
:
1
,
oderInfoShow
:
false
,
oderInfoShow
:
false
,
indexActive
:
0
,
indexActive
:
0
,
clickDate
:
''
,
clickDate
:
''
,
travelControlTripLayerShow
:
false
,
travelControlTripLayerShow
:
false
,
TripLayer
:
{
TripLayer
:
{
vshowA
:
true
,
vshowA
:
true
,
vshowB
:
true
,
vshowB
:
true
,
vshowC
:
true
,
vshowC
:
true
,
vshowD
:
true
,
vshowD
:
true
,
vshowE
:
true
,
vshowE
:
true
,
vshowF
:
true
,
vshowF
:
true
,
vshowG
:
true
,
vshowG
:
true
,
vshowH
:
true
,
vshowH
:
true
,
vshowI
:
true
,
vshowI
:
true
,
vshowJ
:
true
,
vshowJ
:
true
,
vshowK
:
true
,
vshowK
:
true
,
vshowL
:
true
,
vshowL
:
true
,
vshowM
:
true
,
vshowM
:
true
,
vshowLLR
:
true
,
vshowLLR
:
true
,
},
},
navs
:
[
navs
:
[
'flight'
,
'flight'
,
'tese'
,
'tese'
,
'teamacitvy'
,
'teamacitvy'
,
...
@@ -735,71 +827,75 @@ export default {
...
@@ -735,71 +827,75 @@ export default {
'qianz'
,
'qianz'
,
'tonghang'
'tonghang'
],
],
pickerOptions
:
{
pickerOptions
:
{
disabledDate
(
time
)
{
disabledDate
(
time
)
{
// return moment(time).format('YYYY-MM-DD')!='2018-10-18' && moment(time).format('YYYY-MM-DD')!='2018-10-28'
// return moment(time).format('YYYY-MM-DD')!='2018-10-18' && moment(time).format('YYYY-MM-DD')!='2018-10-28'
}
}
},
},
maxdiscountAmount
:
0
,
maxdiscountAmount
:
0
,
loadingDataList
:
false
,
loadingDataList
:
false
,
htmlTitle
:
'印象之旅'
,
htmlTitle
:
'印象之旅'
,
loadNone
:
false
,
loadNone
:
false
,
site
:
localStorage
.
site
,
site
:
localStorage
.
site
,
priceListIndex
:
0
,
priceListIndex
:
0
,
isDirect
:
1
,
//是否是直采 0:否,1:是
isDirect
:
1
,
//是否是直采 0:否,1:是
abcList
:
[
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
'I'
,
'J'
,
'K'
,
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
,
'AA'
,
'AB'
,
'AC'
,
'AD'
,
'AE'
,
'AF'
,
'AG'
],
abcList
:
[
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
'I'
,
'J'
,
'K'
,
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
travelLngLatInfo
:[],
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
,
'AA'
,
'AB'
,
'AC'
,
'AD'
,
'AE'
,
'AF'
,
'AG'
VideoStr
:
''
,
],
travelLngLatInfo
:
[],
VideoStr
:
''
,
sonData
:
null
,
sonData
:
null
,
showFlight
:
false
,
showFlight
:
false
,
FlightList
:
[],
FlightList
:
[],
city
:
-
1
,
city
:
-
1
,
teamType
:
0
,
teamType
:
0
,
free
:
0
,
free
:
0
,
images
:
[],
images
:
[],
imageOptions
:
{
imageOptions
:
{
navbar
:
false
,
navbar
:
false
,
title
:
false
title
:
false
},
},
}
}
},
watch
:
{
// 监听参数变化
},
watch
:
{
// 监听参数变化
changeCity
:
{
changeCity
:
{
handler
:
function
(
val
,
oldVal
)
{
handler
:
function
(
val
,
oldVal
)
{
// console.log(val)
// console.log(val)
if
(
val
)
{
if
(
val
)
{
this
.
getList
()
this
.
getList
()
}
}
},
},
deep
:
true
deep
:
true
},
},
},
created
(){
},
if
(
this
.
$route
.
query
.
teamType
){
created
()
{
this
.
teamType
=
this
.
$route
.
query
.
teamType
;
if
(
this
.
$route
.
query
.
teamType
)
{
this
.
teamType
=
this
.
$route
.
query
.
teamType
;
}
}
this
.
ID
=
decodeURIComponent
(
this
.
$route
.
params
.
id
)
this
.
ID
=
decodeURIComponent
(
this
.
$route
.
params
.
id
)
this
.
tcid
=
decodeURIComponent
(
this
.
$route
.
params
.
tcid
)
this
.
tcid
=
decodeURIComponent
(
this
.
$route
.
params
.
tcid
)
if
(
this
.
$route
.
params
.
pre
&&
this
.
$route
.
params
.
pre
==
'preview'
)
{
if
(
this
.
$route
.
params
.
pre
&&
this
.
$route
.
params
.
pre
==
'preview'
)
{
this
.
pre
=
1
this
.
pre
=
1
}
}
this
.
getList
()
this
.
getList
()
this
.
isLogin
=
this
.
$store
.
state
.
isLogin
;
this
.
isLogin
=
this
.
$store
.
state
.
isLogin
;
bus
.
$on
(
'order-chosen'
,
this
.
orderChosen
)
bus
.
$on
(
'order-chosen'
,
this
.
orderChosen
)
if
(
this
.
$route
.
query
.
free
)
{
if
(
this
.
$route
.
query
.
free
)
{
this
.
free
=
1
;
this
.
free
=
1
;
this
.
getAction
(
3
);
this
.
getAction
(
3
);
}
}
},
},
mounted
()
{
mounted
()
{
this
.
scrollobj
=
document
.
getElementsByClassName
(
'el-scrollbar__wrap'
)[
0
];
this
.
scrollobj
=
document
.
getElementsByClassName
(
'el-scrollbar__wrap'
)[
0
];
this
.
scrollobj
.
addEventListener
(
'scroll'
,
this
.
handleScroll
);
this
.
scrollobj
.
addEventListener
(
'scroll'
,
this
.
handleScroll
);
// this.initMap();
// this.initMap();
},
},
methods
:
{
methods
:
{
inited
(
viewer
)
{
inited
(
viewer
)
{
this
.
$viewer
=
viewer
this
.
$viewer
=
viewer
},
},
BigImgShow
(
index
)
{
BigImgShow
(
index
)
{
// if(num==1){
// if(num==1){
this
.
$viewer
.
view
(
index
)
this
.
$viewer
.
view
(
index
)
this
.
$viewer
.
show
()
this
.
$viewer
.
show
()
...
@@ -808,13 +904,13 @@ export default {
...
@@ -808,13 +904,13 @@ export default {
orderChosen
:
function
(
date
)
{
orderChosen
:
function
(
date
)
{
let
day
=
date
.
split
(
'-'
)[
0
]
+
'-'
+
date
.
split
(
'-'
)[
1
]
let
day
=
date
.
split
(
'-'
)[
0
]
+
'-'
+
date
.
split
(
'-'
)[
1
]
this
.
calendarTit
.
forEach
((
x
,
index
)
=>
{
this
.
calendarTit
.
forEach
((
x
,
index
)
=>
{
if
(
x
.
dateStrS
===
day
)
{
if
(
x
.
dateStrS
===
day
)
{
this
.
selectMonth
=
index
;
this
.
selectMonth
=
index
;
this
.
indexActive
=
index
;
this
.
indexActive
=
index
;
setTimeout
(
function
()
{
setTimeout
(
function
()
{
bus
.
$emit
(
'order-chosen_calendar'
,
date
)
bus
.
$emit
(
'order-chosen_calendar'
,
date
)
},
500
)
},
500
)
}
}
})
})
},
},
...
@@ -827,12 +923,14 @@ export default {
...
@@ -827,12 +923,14 @@ export default {
}
else
{
}
else
{
let
orderMsg
=
this
.
sonData
.
orderMsg
let
orderMsg
=
this
.
sonData
.
orderMsg
this
.
travelControlTripLayerShow
=
false
this
.
travelControlTripLayerShow
=
false
this
.
$refs
.
confirmationOrderDownLoad
.
toPDF
(
orderMsg
.
startDate
+
orderMsg
.
lineteamName
+
orderMsg
.
dayNum
+
'日游'
);
this
.
$refs
.
confirmationOrderDownLoad
.
toPDF
(
orderMsg
.
startDate
+
orderMsg
.
lineteamName
+
orderMsg
.
dayNum
+
'日游'
);
}
}
},
},
ToWord
:
function
()
{
ToWord
:
function
()
{
this
.
loadingDataList
=
true
this
.
loadingDataList
=
true
let
title
=
this
.
dataList
.
currentPriceInfo
.
startDate
+
this
.
dataList
.
ltName
+
this
.
dataList
.
dayNum
+
'日游'
let
title
=
this
.
dataList
.
currentPriceInfo
.
startDate
+
this
.
dataList
.
ltName
+
this
.
dataList
.
dayNum
+
'日游'
let
msg
=
{
let
msg
=
{
configId
:
this
.
dayList
.
id
,
configId
:
this
.
dayList
.
id
,
cityId
:
this
.
city
,
cityId
:
this
.
city
,
...
@@ -840,7 +938,7 @@ export default {
...
@@ -840,7 +938,7 @@ export default {
orderId
:
0
,
orderId
:
0
,
FileName
:
title
,
FileName
:
title
,
//是否显示基础信息
//是否显示基础信息
isShowBase
:
1
,
isShowBase
:
1
,
//是否显示航班
//是否显示航班
isShowFlight
:
1
,
isShowFlight
:
1
,
//是否显示行程特色
//是否显示行程特色
...
@@ -877,76 +975,89 @@ export default {
...
@@ -877,76 +975,89 @@ export default {
});
});
},
},
donwLoad
()
{
donwLoad
()
{
this
.
loadNone
=
true
;
this
.
loadNone
=
true
;
this
.
loadingDataList
=
true
;
this
.
loadingDataList
=
true
;
let
imgs
=
document
.
getElementsByTagName
(
'img'
);
let
imgs
=
document
.
getElementsByTagName
(
'img'
);
for
(
let
i
=
0
;
i
<
imgs
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
imgs
.
length
;
i
++
)
{
document
.
getElementsByTagName
(
'img'
)[
i
].
setAttribute
(
'crossOrigin'
,
'Anonymous'
)
document
.
getElementsByTagName
(
'img'
)[
i
].
setAttribute
(
'crossOrigin'
,
'Anonymous'
)
}
}
window
.
setTimeout
(
this
.
getPdf
(
'#pdfDom'
),
3000
);
window
.
setTimeout
(
this
.
getPdf
(
'#pdfDom'
),
3000
);
},
},
DateDiff
(
sDate1
,
sDate2
){
//sDate1和sDate2是2002-12-18格式
DateDiff
(
sDate1
,
sDate2
)
{
//sDate1和sDate2是2002-12-18格式
var
aDate
,
oDate1
,
oDate2
,
iDays
var
aDate
,
oDate1
,
oDate2
,
iDays
aDate
=
sDate1
.
split
(
"-"
)
aDate
=
sDate1
.
split
(
"-"
)
oDate1
=
new
Date
(
aDate
[
1
]
+
'-'
+
aDate
[
2
]
+
'-'
+
aDate
[
0
])
//转换为12-18-2002格式
oDate1
=
new
Date
(
aDate
[
1
]
+
'-'
+
aDate
[
2
]
+
'-'
+
aDate
[
0
])
//转换为12-18-2002格式
aDate
=
sDate2
.
split
(
"-"
)
aDate
=
sDate2
.
split
(
"-"
)
oDate2
=
new
Date
(
aDate
[
1
]
+
'-'
+
aDate
[
2
]
+
'-'
+
aDate
[
0
])
oDate2
=
new
Date
(
aDate
[
1
]
+
'-'
+
aDate
[
2
]
+
'-'
+
aDate
[
0
])
iDays
=
parseInt
(
Math
.
abs
(
oDate1
-
oDate2
)
/
1000
/
60
/
60
/
24
)
//把相差的毫秒数转换为天数
iDays
=
parseInt
(
Math
.
abs
(
oDate1
-
oDate2
)
/
1000
/
60
/
60
/
24
)
//把相差的毫秒数转换为天数
return
iDays
return
iDays
},
},
ListenChildren
(
word
)
{
ListenChildren
(
word
)
{
this
.
clickDate
=
word
this
.
clickDate
=
word
let
data
=
this
.
dataList
.
priceList
;
let
data
=
this
.
dataList
.
priceList
;
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
if
(
word
===
data
[
i
].
startDate
)
{
if
(
word
===
data
[
i
].
startDate
)
{
this
.
priceListIndex
=
i
;
this
.
priceListIndex
=
i
;
let
msg
=
{
configId
:
data
[
i
].
configIDDes
,
cityId
:
this
.
city
,
preview
:
this
.
pre
,
tcid
:
data
[
i
].
tcid
,
teamType
:
this
.
teamType
}
let
msg
=
{
configId
:
data
[
i
].
configIDDes
,
cityId
:
this
.
city
,
preview
:
this
.
pre
,
tcid
:
data
[
i
].
tcid
,
teamType
:
this
.
teamType
}
bus
.
$emit
(
'chosen-tripdate'
,
word
)
bus
.
$emit
(
'chosen-tripdate'
,
word
)
this
.
getData
(
msg
)
this
.
getData
(
msg
)
}
}
}
}
},
},
oderInfoShowF
()
{
oderInfoShowF
()
{
this
.
oderInfoShow
=
!
this
.
oderInfoShow
this
.
oderInfoShow
=
!
this
.
oderInfoShow
},
},
showImg
(
obj
)
{
showImg
(
obj
)
{
obj
.
forEach
(
x
=>
{
obj
.
forEach
(
x
=>
{
x
.
Url
=
x
.
Url
.
split
(
'?'
)[
0
]
x
.
Url
=
x
.
Url
.
split
(
'?'
)[
0
]
})
})
this
.
picObj
=
obj
this
.
picObj
=
obj
this
.
picIsShow
=
true
;
this
.
picIsShow
=
true
;
},
},
getList
()
{
getList
()
{
this
.
apipost
(
'b2b_get_site'
,{},
res
=>
{
this
.
apipost
(
'b2b_get_site'
,
{},
res
=>
{
let
data
=
res
.
data
.
data
let
data
=
res
.
data
.
data
let
city
=
0
let
city
=
0
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
if
(
data
[
i
].
companyId
==
localStorage
.
site
)
{
if
(
data
[
i
].
companyId
==
localStorage
.
site
)
{
city
=
data
[
i
].
cityId
city
=
data
[
i
].
cityId
this
.
city
=
city
this
.
city
=
city
break
break
}
}
}
}
let
msg
=
{
configId
:
this
.
ID
,
cityId
:
city
,
preview
:
this
.
pre
,
tcid
:
this
.
tcid
,
teamType
:
this
.
teamType
}
let
msg
=
{
configId
:
this
.
ID
,
cityId
:
city
,
preview
:
this
.
pre
,
tcid
:
this
.
tcid
,
teamType
:
this
.
teamType
}
this
.
getData
(
msg
)
this
.
getData
(
msg
)
})
})
},
},
getData
:
function
(
msg
)
{
getData
:
function
(
msg
)
{
this
.
loadingDataList
=
true
this
.
loadingDataList
=
true
this
.
apipost
(
'b2b_get_GetB2BTravelInfoV1'
,
msg
,
r
=>
{
this
.
apipost
(
'b2b_get_GetB2BTravelInfoV1'
,
msg
,
r
=>
{
if
(
r
.
data
.
resultCode
==
1
)
{
if
(
r
.
data
.
resultCode
==
1
)
{
let
data
=
(
r
.
data
.
data
);
let
data
=
(
r
.
data
.
data
);
this
.
sonData
=
data
;
this
.
sonData
=
data
;
this
.
dayList
=
data
.
dayList
;
this
.
dayList
=
data
.
dayList
;
this
.
feature
=
data
.
feature
;
this
.
feature
=
data
.
feature
;
this
.
isDirect
=
data
.
isDirect
;
this
.
isDirect
=
data
.
isDirect
;
if
(
!
this
.
$route
.
query
.
free
)
{
if
(
!
this
.
$route
.
query
.
free
)
{
this
.
getAction
(
7
,
data
.
lineId
);
this
.
getAction
(
7
,
data
.
lineId
);
}
}
if
(
data
.
videoStr
)
{
if
(
data
.
videoStr
)
{
let
path
=
data
.
videoStr
.
indexOf
(
'http'
)
>
-
1
?
data
.
videoStr
:
domainManager
().
ViittoFileUrl
+
data
.
videoStr
;
let
path
=
data
.
videoStr
.
indexOf
(
'http'
)
>
-
1
?
data
.
videoStr
:
domainManager
()
.
ViittoFileUrl
+
data
.
videoStr
;
this
.
VideoStr
=
path
;
this
.
VideoStr
=
path
;
}
}
// console.log(data.priceList[0].priceFlight)
// console.log(data.priceList[0].priceFlight)
...
@@ -972,63 +1083,64 @@ export default {
...
@@ -972,63 +1083,64 @@ export default {
// })
// })
// }
// }
this
.
priceList
=
data
.
priceList
;
this
.
priceList
=
data
.
priceList
;
this
.
clickDate
=
data
.
currentPriceInfo
&&
data
.
currentPriceInfo
.
startDate
?
data
.
currentPriceInfo
.
startDate
:
''
;
this
.
clickDate
=
data
.
currentPriceInfo
&&
data
.
currentPriceInfo
.
startDate
?
data
this
.
FlightList
=
data
.
currentPriceInfo
&&
data
.
currentPriceInfo
.
priceFlight
?
data
.
currentPriceInfo
.
priceFlight
:
''
;
.
currentPriceInfo
.
startDate
:
''
;
this
.
FlightList
=
data
.
currentPriceInfo
&&
data
.
currentPriceInfo
.
priceFlight
?
data
.
currentPriceInfo
.
priceFlight
:
''
;
this
.
dataList
=
data
;
this
.
dataList
=
data
;
this
.
toDayObj
=
data
.
currentPriceInfo
;
this
.
toDayObj
=
data
.
currentPriceInfo
;
this
.
imgCover
=
JSON
.
parse
(
this
.
dataList
.
imgCover
);
this
.
imgCover
=
JSON
.
parse
(
this
.
dataList
.
imgCover
);
this
.
images
=
this
.
imgCover
;
this
.
images
=
this
.
imgCover
;
this
.
showType
=
this
.
feature
.
featureType
;
this
.
showType
=
this
.
feature
.
featureType
;
this
.
dayTrip
=
this
.
dataList
.
dayNum
;
this
.
dayTrip
=
this
.
dataList
.
dayNum
;
if
(
this
.
dataList
.
isDirect
==
1
&&
this
.
dataList
.
travelLngLat
.
length
)
{
if
(
this
.
dataList
.
isDirect
==
1
&&
this
.
dataList
.
travelLngLat
.
length
)
{
this
.
travelLngLat
=
[];
//this.dataList.travelLngLat;
this
.
travelLngLat
=
[];
//this.dataList.travelLngLat;
this
.
dataList
.
travelLngLat
.
forEach
(
x
=>
{
this
.
dataList
.
travelLngLat
.
forEach
(
x
=>
{
if
(
x
.
type
!=
2
)
{
if
(
x
.
type
!=
2
)
{
this
.
travelLngLat
.
push
(
x
)
this
.
travelLngLat
.
push
(
x
)
}
}
})
})
let
travelLngLatInfo
=
[];
let
travelLngLatInfo
=
[];
this
.
travelLngLat
.
forEach
((
x
,
index
)
=>
{
this
.
travelLngLat
.
forEach
((
x
,
index
)
=>
{
travelLngLatInfo
.
push
(
travelLngLatInfo
.
push
({
{
lable
:
this
.
abcList
[
index
],
lable
:
this
.
abcList
[
index
],
text
:
x
.
name
text
:
x
.
name
}
})
)
})
})
this
.
travelLngLatInfo
=
travelLngLatInfo
;
this
.
travelLngLatInfo
=
travelLngLatInfo
;
}
}
this
.
creatCalendar
(
this
.
priceList
);
this
.
creatCalendar
(
this
.
priceList
);
if
(
data
.
lineTeamDiscountList
&&
data
.
lineTeamDiscountList
.
length
>
0
){
if
(
data
.
lineTeamDiscountList
&&
data
.
lineTeamDiscountList
.
length
>
0
)
{
data
.
lineTeamDiscountList
.
forEach
(
x
=>
{
data
.
lineTeamDiscountList
.
forEach
(
x
=>
{
this
.
maxdiscountAmount
=
x
.
discountAmount
>
this
.
maxdiscountAmount
?
x
.
discountAmount
:
this
.
maxdiscountAmount
this
.
maxdiscountAmount
=
x
.
discountAmount
>
this
.
maxdiscountAmount
?
x
.
discountAmount
:
this
.
maxdiscountAmount
})
})
}
}
this
.
htmlTitle
=
this
.
dataList
.
ltName
;
this
.
htmlTitle
=
this
.
dataList
.
ltName
;
this
.
showFlight
=
true
this
.
showFlight
=
true
this
.
$forceUpdate
()
this
.
$forceUpdate
()
// console.log("dataList",this.dataList)
// console.log("dataList",this.dataList)
}
else
{
}
else
{
this
.
$message
.
error
(
r
.
data
.
message
)
this
.
$message
.
error
(
r
.
data
.
message
)
}
}
this
.
loadingDataList
=
false
this
.
loadingDataList
=
false
},
null
)
},
null
)
},
},
creatCalendar
(
list
){
// 创建日历
creatCalendar
(
list
)
{
// 创建日历
let
dateList
=
[];
let
dateList
=
[];
if
(
list
&&
list
.
length
>
0
)
{
if
(
list
&&
list
.
length
>
0
)
{
list
.
forEach
((
x
,
index
)
=>
{
list
.
forEach
((
x
,
index
)
=>
{
if
(
x
.
tcState
==
3
)
{
if
(
x
.
tcState
==
3
)
{
let
msg
=
{
let
msg
=
{
dateStr
:
x
.
startDate
,
dateStr
:
x
.
startDate
,
cDate
:
x
.
startDate
.
replace
(
'-'
,
'年'
).
replace
(
'-'
,
'月'
),
cDate
:
x
.
startDate
.
replace
(
'-'
,
'年'
).
replace
(
'-'
,
'月'
),
price
:
x
.
b2CPrice
,
price
:
x
.
b2CPrice
,
b2BMemberPrice
:
x
.
b2BMemberPrice
,
b2BMemberPrice
:
x
.
b2BMemberPrice
,
b2BPrice
:
x
.
b2BPrice
,
b2BPrice
:
x
.
b2BPrice
,
b2CMemberPrice
:
x
.
b2CMemberPrice
,
b2CMemberPrice
:
x
.
b2CMemberPrice
,
id
:
index
,
id
:
index
,
dateStrS
:
x
.
startDate
.
substring
(
0
,
x
.
startDate
.
length
-
3
),
dateStrS
:
x
.
startDate
.
substring
(
0
,
x
.
startDate
.
length
-
3
),
tcid
:
x
.
tcid
,
tcid
:
x
.
tcid
,
configIDDes
:
x
.
configIDDes
configIDDes
:
x
.
configIDDes
}
}
...
@@ -1040,16 +1152,18 @@ export default {
...
@@ -1040,16 +1152,18 @@ export default {
let
monthArray
=
[];
let
monthArray
=
[];
for
(
var
i
in
dateList
)
{
for
(
var
i
in
dateList
)
{
var
data
=
dateList
[
i
];
var
data
=
dateList
[
i
];
var
dateDict
=
{
'mounth'
:
data
.
dateStr
.
substring
(
0
,
data
.
dateStr
.
length
-
3
)};
var
dateDict
=
{
'mounth'
:
data
.
dateStr
.
substring
(
0
,
data
.
dateStr
.
length
-
3
)
};
monthArray
.
push
(
dateDict
);
monthArray
.
push
(
dateDict
);
}
}
//数组去重,获取有几个月
//数组去重,获取有几个月
var
hash
=
{};
var
hash
=
{};
monthArray
=
monthArray
.
reduce
(
monthArray
=
monthArray
.
reduce
(
function
(
item
,
next
)
{
function
(
item
,
next
)
{
hash
[
next
.
mounth
]?
''
:
hash
[
next
.
mounth
]
=
true
&&
item
.
push
(
next
);
hash
[
next
.
mounth
]
?
''
:
hash
[
next
.
mounth
]
=
true
&&
item
.
push
(
next
);
return
item
;
return
item
;
},
[]
},
[]
)
)
//数据分组
//数据分组
let
classArray
=
[];
let
classArray
=
[];
...
@@ -1057,24 +1171,24 @@ export default {
...
@@ -1057,24 +1171,24 @@ export default {
var
newArray
=
new
Array
();
var
newArray
=
new
Array
();
for
(
var
i
in
dateList
)
{
for
(
var
i
in
dateList
)
{
var
data
=
dateList
[
i
];
var
data
=
dateList
[
i
];
if
(
data
.
dateStr
.
substring
(
0
,
data
.
dateStr
.
length
-
3
)
==
monthArray
[
j
].
mounth
)
{
if
(
data
.
dateStr
.
substring
(
0
,
data
.
dateStr
.
length
-
3
)
==
monthArray
[
j
].
mounth
)
{
newArray
.
push
(
data
)
newArray
.
push
(
data
)
}
}
}
}
classArray
.
push
(
newArray
);
classArray
.
push
(
newArray
);
}
}
this
.
classArray
=
classArray
;
this
.
classArray
=
classArray
;
var
hash
=
{};
var
hash
=
{};
dateList
=
dateList
.
reduce
(
dateList
=
dateList
.
reduce
(
function
(
item
,
next
)
{
function
(
item
,
next
)
{
hash
[
next
.
dateStrS
]?
''
:
hash
[
next
.
dateStrS
]
=
true
&&
item
.
push
(
next
);
hash
[
next
.
dateStrS
]
?
''
:
hash
[
next
.
dateStrS
]
=
true
&&
item
.
push
(
next
);
return
item
;
return
item
;
},
[]
},
[]
)
)
this
.
calendarTit
=
dateList
;
this
.
calendarTit
=
dateList
;
},
},
goScroll
(
id
)
{
goScroll
(
id
)
{
this
.
scrollobj
.
scrollTop
=
document
.
getElementById
(
id
).
offsetTop
+
screen
.
availHeight
-
350
;
this
.
scrollobj
.
scrollTop
=
document
.
getElementById
(
id
).
offsetTop
+
screen
.
availHeight
-
350
;
},
},
//跳转至新行程
//跳转至新行程
goUrlTrip
(){
goUrlTrip
(){
...
@@ -1086,36 +1200,36 @@ export default {
...
@@ -1086,36 +1200,36 @@ export default {
}
}
})
})
},
},
handleScroll
()
{
handleScroll
()
{
try
{
try
{
if
(
this
.
scrollobj
.
scrollTop
>
this
.
$refs
.
nav
.
offsetTop
)
{
if
(
this
.
scrollobj
.
scrollTop
>
this
.
$refs
.
nav
.
offsetTop
)
{
this
.
changeNav
=
true
this
.
changeNav
=
true
}
else
{
}
else
{
this
.
changeNav
=
false
this
.
changeNav
=
false
}
}
let
current
=
''
let
current
=
''
this
.
navs
.
forEach
(
x
=>
{
this
.
navs
.
forEach
(
x
=>
{
let
t
=
document
.
getElementById
(
x
).
offsetTop
let
t
=
document
.
getElementById
(
x
).
offsetTop
if
(
t
<=
this
.
scrollobj
.
scrollTop
-
200
)
{
if
(
t
<=
this
.
scrollobj
.
scrollTop
-
200
)
{
current
=
x
current
=
x
}
}
})
})
this
.
crtnav
=
current
this
.
crtnav
=
current
}
catch
(
error
)
{
}
catch
(
error
)
{
}
}
},
},
selectMounth
(
index
)
{
selectMounth
(
index
)
{
this
.
selectMonth
=
index
;
this
.
selectMonth
=
index
;
this
.
indexActive
=
index
;
this
.
indexActive
=
index
;
},
},
initMap
:
function
()
{
initMap
:
function
()
{
//所有坐标
//所有坐标
var
locations
=
new
Array
(
var
locations
=
new
Array
(
"31.953313,121.841581"
,
"31.15347,121.291706"
,
"31.953313,121.841581"
,
"31.15347,121.291706"
,
"31.207516,121.412556"
,
"31.122909,121.458561"
,
"31.207516,121.412556"
,
"31.122909,121.458561"
,
"31.118207,121.38715"
,
"31.041168,121.426289"
,
"31.118207,121.38715"
,
"31.041168,121.426289"
,
"30.985262,121.301319"
,
"31.057934,121.305834"
);
"30.985262,121.301319"
,
"31.057934,121.305834"
);
//地图
//地图
var
map
;
var
map
;
var
marker
;
var
marker
;
...
@@ -1163,5 +1277,5 @@ export default {
...
@@ -1163,5 +1277,5 @@ export default {
// }
// }
}
}
}
}
}
}
</
script
>
</
script
>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment