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
75a8781e
Commit
75a8781e
authored
May 16, 2019
by
huangyuanyuan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
3620f990
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
299 additions
and
46 deletions
+299
-46
localtourhome.css
src/assets/css/localtourhome.css
+7
-1
AdmissionTicket.vue
src/components/LocalTour/AdmissionTicket.vue
+3
-2
Appointment.vue
src/components/LocalTour/Appointment.vue
+204
-20
LocalTourList.vue
src/components/LocalTour/LocalTourList.vue
+54
-14
Localtourhome.vue
src/components/LocalTour/Localtourhome.vue
+1
-1
OnedayList.vue
src/components/LocalTour/OnedayList.vue
+11
-5
TicketDetails.vue
src/components/LocalTour/TicketDetails.vue
+2
-2
LocalTourCalendar.vue
src/components/mall/LocalTourCalendar.vue
+1
-1
main.js
src/main.js
+16
-0
No files found.
src/assets/css/localtourhome.css
View file @
75a8781e
...
...
@@ -463,6 +463,11 @@
height
:
100%
;
}
/* 列表页样式 */
.LocalTourList
.item-pager
.el-pagination__editor
,
.LocalTourList
.item-pager
.el-pager
li
,
.LocalTourList
.el-pagination
.btn-next
,
.LocalTourList
.el-pagination
.btn-prev
{
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
}
.LocalTourList
.tab
{
border-bottom
:
2px
solid
#4CB960
;
}
...
...
@@ -1023,7 +1028,7 @@
}
.Appointment
.payMoney
p
>
span
{
display
:
inline-block
;
width
:
100px
;
min-
width
:
100px
;
margin-right
:
10px
;
}
...
...
@@ -1042,6 +1047,7 @@
font-size
:
14px
;
line-height
:
32px
;
margin-left
:
15px
;
cursor
:
pointer
;
}
.Appointment
.Rotate
.icon-more
{
...
...
src/components/LocalTour/AdmissionTicket.vue
View file @
75a8781e
...
...
@@ -19,7 +19,7 @@
</p>
</div>
<div
class=
"threeDiv"
>
<p><span
style=
"color:#FDAC11;font-size:22px"
>
¥
{{
item
.
b2bPrice
}}
</span>
起
</p>
<p><span
style=
"color:#FDAC11;font-size:22px"
>
¥
{{
item
.
b2bPrice
|
NoDesnum
}}
</span>
起
</p>
</div>
</li>
<ul
class=
"ticketDiv"
>
...
...
@@ -28,7 +28,7 @@
<span
class=
"ticketdes"
>
{{
item
.
name
}}
{{
ticket
.
ticketDesc
}}
门票>
</span>
<span
class=
"peopleType"
>
{{
ticket
.
ticketName
}}
</span></span>
<span
class=
"SecondSpan"
>
<span
class=
"price"
>
¥
{{
ticket
.
b2bPrice
}}
</span>
<span
class=
"price"
>
¥
{{
ticket
.
b2bPrice
|
NoDesnum
}}
</span>
<!--
<span
style=
"color:#999999;font-size:12px;margin-left:7px;text-decoration: line-through"
>
原价:¥300
</span>
-->
</span>
<span
class=
"ThreeSpan"
>
...
...
@@ -113,6 +113,7 @@ export default {
height
:
24px
;
background
:
rgba
(
238
,
68
,
84
,
1
);
color
:
#fff
;
cursor
:
pointer
;
}
.AdmissionTicket
.ticketDiv
li
.SecondSpan
.price
{
color
:
#FDAC11
;
...
...
src/components/LocalTour/Appointment.vue
View file @
75a8781e
...
...
@@ -19,7 +19,7 @@
</div>
<div
class=
"form"
>
<el-form
ref=
"f
orm"
:model=
"form"
label-width=
"80px"
>
<el-form
:rules=
"rules"
ref=
"ruleF
orm"
:model=
"form"
label-width=
"80px"
>
<el-form-item
class=
"formline"
label=
"使用日期"
>
<el-popover
popper-class=
"calendarPopover"
v-model=
"visible"
placement=
"bottom-start"
...
...
@@ -46,21 +46,21 @@
</el-form-item>
<el-form-item
label=
"购买数量"
>
<el-input-number
size=
"small"
v-model=
"form.purchaseQuantity"
:min=
"1"
:max=
"10"
label=
"描述文字
"
></el-input-number>
<el-input-number
size=
"small"
v-model=
"form.purchaseQuantity"
:min=
"1"
:max=
"10"
@
change=
"PurchaseQuantity
"
></el-input-number>
</el-form-item>
<div
class=
"fg"
></div>
<div
style=
"padding:0 20px"
>
<p
class=
"pfR"
style=
"color:#000000;margin:30px 0"
>
取票人/出行人信息
</p>
<el-form-item
class=
"formline"
label=
"中文姓名"
>
<el-form-item
class=
"formline"
label=
"中文姓名"
prop=
"contactCNName"
>
<el-input
size=
"small"
v-model=
"form.contactCNName"
></el-input>
</el-form-item>
<el-form-item
class=
"formline"
label=
"英文姓名"
>
<el-input
size=
"small"
v-model=
"form.contactENName"
></el-input>
</el-form-item>
<el-form-item
class=
"formline"
label=
"手机号"
>
<el-form-item
class=
"formline"
label=
"手机号"
prop=
"contactMobile"
>
<el-input
size=
"small"
v-model=
"form.contactMobile"
></el-input>
</el-form-item>
<el-form-item
class=
"formline"
label=
"E-mail"
>
<el-form-item
class=
"formline"
label=
"E-mail"
prop=
"contactEmail"
>
<el-input
size=
"small"
v-model=
"form.contactEmail"
></el-input>
</el-form-item>
</div>
...
...
@@ -72,31 +72,38 @@
<div
class=
"Yhq"
>
<p
class=
"pfR"
style=
"color:#000000;padding-left:20px"
>
优惠券使用
</p>
<ul
class=
"yhqUl"
>
<li
v-for=
"(item,index) in CouponsList"
:key=
"index+5000"
class=
"sawtooth"
>
<span
class=
"kdj"
v-if=
"item.overlapUse==1"
>
可叠加
</span>
<li
v-for=
"(item,index) in UserCanUseCouponList"
:key=
"index+5000"
class=
"sawtooth"
>
<span
class=
"kdj"
>
<span
v-if=
"item.overlapUse==1"
>
可叠加
</span>
<span
v-else
>
不可叠加
</span>
</span>
<p
style=
"margin-top:10px"
>
¥
<span>
{{
item
.
denomination
}}
</span></p>
<p
style=
"font-size:14px"
>
满
{{
item
.
useCondition
}}
使用
</p>
<p
style=
"font-size:12px;color:#4C58A4"
>
<p
style=
"font-size:12px;color:#4C58A4
;margin-top:6px
"
>
有效期:
{{
item
.
effectDate
|
YMD
}}
-
{{
item
.
expirationDate
|
YMD
}}
<input
class=
"input"
type=
"checkbox"
value=
"1"
name=
""
/>
</p>
<div
@
click=
"clickCoupon(item)"
class=
"_choice_box"
>
<span
v-if=
"!item.active"
></span>
<span
v-else
class=
"iconfont icon-xuanzhong2"
></span>
</div>
</li>
</ul>
<div
style=
"border-bottom:1px dashed #E5E5E5"
></div>
<div
class=
"basefix"
style=
"padding-right:20px"
>
<div
style=
"text-align:right"
>
<div
class=
"payMoney basefix"
>
<p
style=
"font-size:12px;margin-top:20px"
>
小计:
<span>
¥
2500
</span></p>
<p
style=
"margin:7px 0"
>
优惠:
<span
class=
"pfR"
>
-¥
2500
</span></p>
<p
class=
"pfR"
>
实付款:
<span
style=
"color:#AAAAAA;font-size:24px"
>
¥
<span
style=
"color:#E95252;font-size:24px"
>
2500
</span></span></p>
<p
style=
"font-size:12px;margin-top:20px"
>
小计:
<span>
¥
{{
price
}}
</span></p>
<p
style=
"margin:7px 0"
>
优惠:
<span
class=
"pfR"
>
-¥
{{
form
.
discountMoney
}}
</span></p>
<p
class=
"pfR"
>
实付款:
<span
style=
"color:#AAAAAA;font-size:24px"
>
¥
<span
style=
"color:#E95252;font-size:24px"
>
{{
SettlementPrice
}}
</span></span></p>
</div>
</div>
<div
class=
"orderOk"
>
我已阅读并同意
<span
style=
"color:#39B372"
>
预订须知、旅游合同、特别预订提示、安全提示
</span>
<span
class=
"orderPay"
>
确认订单
</span>
<span
@
click=
"SaveOrder('ruleForm')"
class=
"orderPay"
>
确认订单
</span>
</div>
</div>
</div>
...
...
@@ -117,7 +124,12 @@ export default {
form
:{
useDate
:
''
,
purchaseQuantity
:
1
,
contactEmail
:
''
,
discountMoney
:
0
,
orderSource
:
2
,
orderForm
:
1
,
couponAllotIds
:
""
,
customerId
:
0
,
},
show
:
false
,
idDes
:
0
,
...
...
@@ -131,11 +143,35 @@ export default {
CouponsList
:[],
Ticketinfo
:{},
dataDes
:{},
rules
:
{
contactCNName
:
[
{
required
:
true
,
message
:
'请输入姓名'
,
trigger
:
'blur'
}
],
contactMobile
:
[
{
required
:
true
,
message
:
'请输入联系电话'
,
trigger
:
'blur'
},
{
required
:
true
,
trigger
:
'blur'
,
pattern
:
/^1
[
3|4|5|7|8
][
0-9
]\d{8}
$/
,
message
:
'请填写正确的手机号'
}
],
contactEmail
:[
{
type
:
'email'
,
message
:
'请输入正确的邮箱地址'
,
trigger
:
[
'blur'
,
'change'
]
}
]
},
CouponList
:[],
UserCanUseCouponList
:[],
CouponIds
:
''
,
SettlementPrice
:
0
,
price
:
0
,
CheckedId
:[],
}
},
created
(){
let
userInfo
=
JSON
.
parse
(
localStorage
.
userInfo
);
this
.
form
.
customerId
=
userInfo
.
customerId
;
// console.log("StorageInfo.customerId",userInfo.customerId);
this
.
dataDes
=
JSON
.
parse
(
sessionStorage
.
dataDes
);
this
.
Ticketinfo
=
JSON
.
parse
(
sessionStorage
.
Ticketinfo
);
this
.
price
=
(
this
.
Ticketinfo
.
b2bPrice
*
this
.
form
.
purchaseQuantity
).
toFixed
(
2
);
this
.
SettlementPrice
=
this
.
price
;
},
mounted
()
{
this
.
idDes
=
decodeURIComponent
(
this
.
$route
.
query
.
idDes
);
...
...
@@ -143,9 +179,136 @@ export default {
this
.
GetCoupons
();
},
watch
:{
price
:{
handler
(
n
,
o
){
if
(
n
!==
o
&&
this
.
CouponList
.
length
>
0
)
{
this
.
SettlementPrice
=
n
;
this
.
filterCoupon
()
}
},
deep
:
true
},
},
methods
:
{
PurchaseQuantity
(
val
){
this
.
price
=
(
this
.
Ticketinfo
.
b2bPrice
*
val
).
toFixed
(
2
);
},
clickCoupon
:
function
(
item
)
{
let
list
=
[];
if
(
!
item
.
active
)
{
// 是否选中
if
(
item
.
overlapUse
===
1
)
{
// 1允许叠加使用
this
.
CouponList
.
forEach
(
x
=>
{
if
(
x
.
overlapUse
===
1
&&
x
.
couponsType
===
item
.
couponsType
)
{
// 优惠券列表筛选出允许叠加并且type相同的
list
.
push
(
x
)
}
})
item
.
active
=
!
item
.
active
this
.
UserCanUseCouponList
=
list
}
else
{
// 不允许叠加使用
this
.
CouponList
.
forEach
(
x
=>
{
// 筛选掉其他
if
(
x
.
id
===
item
.
id
)
{
list
.
push
(
x
)
}
})
item
.
active
=
!
item
.
active
this
.
UserCanUseCouponList
=
list
}
}
else
{
item
.
active
=
!
item
.
active
if
(
this
.
UserCanUseCouponList
.
length
===
1
)
{
// 取消优惠券选中状态 之前直选择了一个优惠券
this
.
UserCanUseCouponList
=
this
.
CouponList
}
else
{
//... 之前选择了多个优惠券 循环判断是否已全部取消
let
num
=
0
this
.
UserCanUseCouponList
.
forEach
(
x
=>
{
if
(
x
.
active
)
num
+=
1
})
if
(
num
===
0
)
{
this
.
CouponList
.
forEach
(
x
=>
{
x
.
active
=
false
})
this
.
UserCanUseCouponList
=
this
.
CouponList
}
}
}
if
(
this
.
UserCanUseCouponList
.
length
>
0
)
{
let
CouponIds
=
''
let
CouponMoney
=
0
let
CouponSale
=
1
let
type
=
0
this
.
UserCanUseCouponList
.
forEach
(
x
=>
{
if
(
x
.
active
)
{
type
=
x
.
couponsType
CouponIds
=
CouponIds
+
x
.
id
+
','
if
(
x
.
couponsType
===
1
)
{
CouponMoney
=
CouponMoney
+
x
.
denomination
}
else
{
CouponSale
=
CouponSale
*
(
x
.
denomination
/
10
)
}
}
})
this
.
CouponIds
=
CouponIds
if
(
type
===
1
)
{
this
.
SettlementPrice
=
this
.
price
-
CouponMoney
}
else
if
(
type
===
2
)
{
this
.
SettlementPrice
=
this
.
price
*
CouponSale
}
else
if
(
type
===
0
)
{
this
.
SettlementPrice
=
this
.
price
}
}
else
{
this
.
SettlementPrice
=
this
.
price
}
console
.
log
(
"SettlementPrice"
,
this
.
SettlementPrice
)
// this.SettlementPrice=parseInt(this.SettlementPrice).toFixed(2);
let
allmonney
=
this
.
price
-
this
.
SettlementPrice
;
this
.
form
.
discountMoney
=
(
this
.
price
-
this
.
SettlementPrice
).
toFixed
(
2
);
this
.
CouponIds
=
this
.
CouponIds
.
substring
(
0
,
this
.
CouponIds
.
length
-
1
)
this
.
form
.
couponAllotIds
=
this
.
CouponIds
;
},
filterCoupon
()
{
let
list
=
[]
this
.
CouponList
.
forEach
(
x
=>
{
if
(
this
.
price
>
x
.
useCondition
)
{
x
.
active
=
false
list
.
push
(
x
)
}
})
this
.
UserCanUseCouponList
=
list
},
SaveOrder
(
formName
){
this
.
form
.
preferPrice
=
this
.
SettlementPrice
;
if
(
this
.
form
.
useDate
==
""
){
this
.
Error
(
"请选择使用日期!"
)
return
;
}
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
apiJavaPost
(
"/api/b2b/scenic/setTicketOrder"
,
this
.
form
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
null
);
}
else
{
return
false
;
}
});
},
SelectChild
(
item
)
{
console
.
log
(
item
);
console
.
log
(
item
);
this
.
form
.
useDate
=
item
.
date_str
;
this
.
form
.
couponsId
=
item
.
couponsId
;
this
.
form
.
ticketId
=
item
.
ticketId
;
...
...
@@ -162,9 +325,12 @@ export default {
};
this
.
apiJavaPost
(
"/api/b2b/user/getUserCanUseCouponList"
,
msg
,
res
=>
{
console
.
log
(
res
);
if
(
res
.
data
.
resultCode
==
1
){
this
.
CouponsList
=
res
.
data
.
data
;
this
.
CouponList
=
res
.
data
.
data
;
this
.
CouponList
.
forEach
(
item
=>
{
item
.
active
=
false
;
})
this
.
filterCoupon
();
}
},
null
...
...
@@ -203,7 +369,7 @@ export default {
let
msg
=
{
price
:
time
.
b2bPrice
,
couponsId
:
time
.
couponsId
,
i
d
:
time
.
id
,
priceI
d
:
time
.
id
,
idDes
:
time
.
idDes
,
ticketId
:
time
.
ticketId
,
dateStr
:
item
.
dateStr
,
...
...
@@ -301,5 +467,23 @@ export default {
<
style
scoped
>
@import
"../../assets/css/localtourhome.css"
;
.Appointment
._choice_box
{
height
:
19px
;
position
:
absolute
;
right
:
10px
;
bottom
:
8px
;
}
.Appointment
._choice_box
span
{
width
:
16px
;
height
:
16px
;
border-radius
:
50%
;
line-height
:
16px
;
text-align
:
center
;
background-color
:
white
;
display
:
inline-block
;
font-size
:
12px
!important
;
}
.Appointment
.icon-xuanzhong2
{
color
:
#31AA21
;
}
</
style
>
src/components/LocalTour/LocalTourList.vue
View file @
75a8781e
...
...
@@ -42,11 +42,12 @@
线路
</div>
<div
class=
"tabRight spanMargin"
>
<span
@
click=
"SelectLineId(0)"
:class=
"msg.lineId==0?'spanActive':''"
>
不限
</span>
<span
@
click=
"SelectLineId(item.lineId)"
:class=
"msg.lineId==item.lineId?'spanActive':''"
v-for=
"(item,index) in lineTeamList"
:key=
"index"
>
{{
item
.
lineShortName
}}
</span>
</div>
</li>
<li
v-if=
"tab==1"
>
<li
v-if=
"tab==1
&& lineList.length>0
"
>
<div
class=
"tabLeft"
>
系列
</div>
...
...
@@ -186,6 +187,16 @@
<OnedayList
:onelist=
"onelist"
v-show=
"tab==1"
></OnedayList>
<AdmissionTicket
:ticketList=
"ticketList"
v-show=
"tab==2"
></AdmissionTicket>
</div>
<div
style=
"text-align:right;width:950px;margin-top:15px"
>
<el-pagination
:page-size=
"msg.pageSize"
:current-page
.
sync=
"CurrentPage"
layout=
"total, prev, pager, next"
:total=
"totalCount"
@
current-change=
"handleCurrentChange"
></el-pagination>
</div>
</div>
</div>
</
template
>
...
...
@@ -202,7 +213,11 @@ export default {
maxPrice
:
""
,
startDate
:
""
,
endDate
:
""
,
totalCount
:
0
,
CurrentPage
:
1
,
msg
:{
pageIndex
:
1
,
pageSize
:
5
,
lineId
:
0
,
lineTeamId
:
0
,
startDate
:
""
,
...
...
@@ -259,23 +274,36 @@ export default {
this
.
GetLine
();
if
(
this
.
$route
.
query
.
tab
){
this
.
tab
=
this
.
$route
.
query
.
tab
;
if
(
this
.
tab
==
1
){
this
.
GetList
();
}
else
{
this
.
GetTicketList
();
}
}
},
mounted
()
{
this
.
CountryCity
();
this
.
GetList
();
this
.
GetTicketList
();
},
methods
:
{
handleCurrentChange
(
val
){
this
.
msg
.
pageIndex
=
val
;
if
(
this
.
tab
==
1
){
this
.
GetList
();
}
if
(
this
.
tab
==
2
){
this
.
GetTicketList
();
}
},
GetTicketList
(){
this
.
Loading
=
true
;
this
.
apiJavaPost
(
'/api/b2b/scenic/getScenicTicketList'
,
this
.
msg
,
res
=>
{
this
.
Loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
){
this
.
ticketList
=
res
.
data
.
data
.
pageData
;
this
.
totalCount
=
res
.
data
.
data
.
count
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
...
...
@@ -350,7 +378,7 @@ export default {
if
(
this
.
maxPrice
==
""
){
this
.
msg
.
maxPrice
=-
1
;
}
else
{
this
.
msg
.
m
in
Price
=
this
.
maxPrice
;
this
.
msg
.
m
ax
Price
=
this
.
maxPrice
;
}
if
(
!
this
.
msg
.
startDate
){
this
.
msg
.
startDate
=
""
;
...
...
@@ -358,8 +386,10 @@ export default {
if
(
!
this
.
msg
.
endDate
){
this
.
msg
.
endDate
=
""
;
}
this
.
Loading
=
true
;
this
.
apiJavaPost
(
'/api/b2b/dayTrip/getDayTripProductList'
,
this
.
msg
,
res
=>
{
this
.
totalCount
=
res
.
data
.
data
.
count
;
this
.
Loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
){
...
...
@@ -410,16 +440,26 @@ export default {
this
.
GetList
();
},
SelectLineId
(
lineId
){
this
.
msg
.
lineId
=
lineId
;
this
.
lineTeamList
.
forEach
(
item
=>
{
this
.
msg
.
lineId
=
lineId
;
if
(
lineId
==
0
){
this
.
lineList
=
[];
this
.
msg
.
lineTeamId
=
0
;
this
.
GetList
();
}
else
{
this
.
lineTeamList
.
forEach
(
item
=>
{
if
(
lineId
==
item
.
lineId
){
this
.
lineList
=
item
.
lineTeamList
;
}
})
}
},
ChangeTab
(
num
){
this
.
tab
=
num
;
this
.
msg
.
pageIndex
=
1
;
this
.
CurrentPage
=
1
;
if
(
this
.
tab
==
1
){
this
.
GetList
();
}
...
...
@@ -439,12 +479,12 @@ export default {
if
(
this
.
$route
.
query
.
ltId
){
this
.
msg
.
lineTeamId
=
this
.
$route
.
query
.
ltId
}
if
(
this
.
msg
.
lineId
==
0
){
this
.
msg
.
lineId
=
this
.
lineTeamList
[
0
].
lineId
;
if
(
this
.
lineTeamList
.
length
>
0
){
this
.
lineList
=
this
.
lineTeamList
[
0
].
lineTeamList
;
}
}
//
if(this.msg.lineId==0){
//
this.msg.lineId=this.lineTeamList[0].lineId;
//
if(this.lineTeamList.length>0){
//
this.lineList=this.lineTeamList[0].lineTeamList;
//
}
//
}
}
else
{
this
.
Error
(
res
.
data
.
message
);
...
...
src/components/LocalTour/Localtourhome.vue
View file @
75a8781e
...
...
@@ -150,7 +150,7 @@
</div>
-->
<div
class=
"bottom"
>
<span>
{{
item
.
name
}}
</span>
<span
class=
"font12 textHidden1"
>
¥
<a
class=
"font14"
>
{{
item
.
b2bPrice
|
priceFormat
}}
</a>
起/人
</span>
<span
class=
"font12 textHidden1"
>
¥
<a
class=
"font14"
>
{{
item
.
b2bPrice
|
NoDesnum
}}
</a>
起/人
</span>
</div>
</li>
</ul>
...
...
src/components/LocalTour/OnedayList.vue
View file @
75a8781e
<
template
>
<div
class=
"OnedayList"
>
<ul
class=
"oneList"
>
<li
v-for=
"(item,index) in dataList"
:key=
"index+200"
>
<li
@
click=
"goOneDayDetail(item)"
v-for=
"(item,index) in dataList"
:key=
"index+200"
>
<div>
<img
style=
"width:199px;height:148px;"
:src=
"item.imgCover[0].url"
alt=
""
>
</div>
<div
class=
"secondDiv"
>
<p
style=
"font-size:16px;color:#2A5532"
>
{{
item
.
title
}}
</p>
<p
class=
"taglist"
style=
"margin-top:18px;"
>
<span>
明日可订
</span>
<span>
明日可订
</span>
<
!--
<
span>
明日可订
</span>
<span>
明日可订
</span>
-->
</p>
<p
style=
"margin-top:14px;"
class=
"font12"
>
<i
class=
"iconfont icon-bb-chufadi"
></i>
...
...
@@ -23,7 +23,7 @@
</p>
</div>
<div
class=
"threeDiv"
>
<p><span
style=
"color:#FDAC11;font-size:22px"
>
¥
{{
item
.
b2BPrice
}}
</span>
起
</p>
<p><span
style=
"color:#FDAC11;font-size:22px"
>
¥
{{
item
.
b2BPrice
|
NoDesnum
}}
</span>
起
</p>
<p
style=
"margin-top:80px"
><span
class=
"ckxq"
@
click=
"GetDes(item)"
>
查看详情
</span></p>
</div>
</li>
...
...
@@ -35,7 +35,7 @@
</ul>
<ul
class=
"hottour_ul"
>
<p
class=
"pfR font14"
style=
"margin-bottom:8px"
>
历史浏览
</p>
<li
v-for=
"(item,index) in Historylist"
:key=
"index+2000"
>
<li
@
click=
"goOneDayDetail(item)"
v-for=
"(item,index) in Historylist"
:key=
"index+2000"
>
<img
:src=
"item.imgCover[0].url"
alt=
""
>
<div
class=
"hotcontent"
>
<span
class=
"textHidden font12"
>
{{
item
.
title
}}
</span>
...
...
@@ -63,6 +63,11 @@ export default {
this
.
Historylist
=
arr
;
},
methods
:
{
goOneDayDetail
(
item
){
let
path
=
'OneDayDetailTwo'
;
path
=
`
${
path
}
/
${
encodeURIComponent
(
item
.
idDes
)}
/
${
item
.
tcid
}
`
;
this
.
$router
.
push
({
path
})
},
GetDes
(
item
){
if
(
this
.
Historylist
.
length
>
4
||
this
.
Historylist
.
length
==
4
){
this
.
Historylist
.
pop
();
...
...
@@ -120,6 +125,7 @@ export default {
.OnedayList
.hottour_ul
li
{
position
:
relative
;
margin-bottom
:
14px
;
cursor
:
pointer
;
}
.OnedayList
.hottour_ul
{
width
:
228px
;
...
...
src/components/LocalTour/TicketDetails.vue
View file @
75a8781e
...
...
@@ -28,7 +28,7 @@
<p
class=
"pfR"
style=
"color:#2A5532;font-size:20px;"
>
{{
dataDes
.
name
}}
</p>
<!--
<p
style=
"margin-top:20px"
class=
"ticketSpan"
>
票类包括:
<span>
大小同价
</span><span>
大小价
</span></p>
-->
<div
class=
"price"
>
¥
{{
dataDes
.
minPrice
|
priceFormat
}}
~¥
{{
dataDes
.
maxPrice
|
priceFormat
}}
¥
{{
dataDes
.
minPrice
|
NoDesnum
}}
~¥
{{
dataDes
.
maxPrice
|
NoDesnum
}}
</div>
<p>
<span
style=
"color:#666666"
>
景点地址:
</span>
...
...
@@ -76,7 +76,7 @@
<!--
<span
class=
"colorG"
>
可订今日
</span>
<span
class=
"colorG"
>
可订今日
</span>
-->
</el-col>
<el-col
class=
"pfR"
:span=
"3"
style=
"color:#FDAC11"
>
¥
<span
class=
"font22"
>
{{
item
.
b2bPrice
|
priceFormat
}}
</span></el-col>
<el-col
class=
"pfR"
:span=
"3"
style=
"color:#FDAC11"
>
¥
<span
class=
"font22"
>
{{
item
.
b2bPrice
|
NoDesnum
}}
</span></el-col>
<el-col
:span=
"2"
>
<span
@
click=
"YdUrl(dataDes,item)"
class=
"ydBtn"
>
预定
</span>
</el-col>
...
...
src/components/mall/LocalTourCalendar.vue
View file @
75a8781e
...
...
@@ -163,7 +163,7 @@ export default {
// dayDict.price = price.price;
dayDict
.
date_str
=
price
.
dateStr
;
dayDict
.
couponsId
=
price
.
couponsId
;
dayDict
.
id
=
price
.
i
d
;
dayDict
.
priceId
=
price
.
priceI
d
;
dayDict
.
ticketId
=
price
.
ticketId
;
if
(
dayIndex
<
strDate
&&
strMonth
==
currentMonth
){
dayDict
.
price
=
''
;
...
...
src/main.js
View file @
75a8781e
...
...
@@ -112,6 +112,22 @@ Vue.filter('priceFormat', function (value) {
x1
=
x1
.
replace
(
rgx
,
'$1'
+
','
+
'$2'
);
}
return
x1
+
x2
;
})
// 不要小数点
Vue
.
filter
(
'NoDesnum'
,
function
(
value
)
{
if
(
value
==
null
)
{
return
0.00
;
}
let
nStr
=
value
.
toFixed
(
0
)
nStr
+=
''
;
let
x
=
nStr
.
split
(
'.'
);
let
x1
=
x
[
0
];
let
x2
=
x
.
length
>
1
?
'.'
+
x
[
1
]
:
''
;
var
rgx
=
/
(\d
+
)(\d{3})
/
;
while
(
rgx
.
test
(
x1
))
{
x1
=
x1
.
replace
(
rgx
,
'$1'
+
','
+
'$2'
);
}
return
x1
+
x2
;
})
// 时间格式YYYY-MM-DD
Vue
.
filter
(
"YMD"
,
function
(
date
)
{
...
...
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