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
3979b429
Commit
3979b429
authored
Dec 27, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
c537e89e
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
724 additions
and
610 deletions
+724
-610
detailTwo.vue
src/components/mall/detailTwo.vue
+724
-610
No files found.
src/components/mall/detailTwo.vue
View file @
3979b429
<
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,62 +1171,62 @@ export default {
...
@@ -1057,62 +1171,62 @@ 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
()
{
this
.
$router
.
push
({
this
.
$router
.
push
({
name
:
"newTrip"
,
name
:
"newTrip"
,
query
:
{}
query
:
{}
})
})
},
},
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
;
...
@@ -1160,5 +1274,5 @@ export default {
...
@@ -1160,5 +1274,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