Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
11424104
Commit
11424104
authored
Dec 24, 2024
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
111
parent
7a10061c
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
198 additions
and
132 deletions
+198
-132
HotelDetails.vue
src/components/Hotel/DiDa/HotelDetails.vue
+169
-112
ShoppingStore.vue
src/components/ShoppingStore/ShoppingStore.vue
+29
-20
No files found.
src/components/Hotel/DiDa/HotelDetails.vue
View file @
11424104
...
...
@@ -228,9 +228,6 @@
.el-card__body
{
height
:
285px
;
/* display: flex;
max-width: 1200px;
*/
display
:
flex
;
flex-wrap
:
wrap
;
overflow
:
auto
;
...
...
@@ -538,7 +535,6 @@
</span>
<span
class=
"text-grey-8 q-pl-xs"
>
/
{{
$t
(
'op.Qi'
)
}}
</span>
</div>
<div
class=
"q-ml-md"
v-if=
"DidaHotelDetails.StarRating&&DidaHotelDetails.StarRating>0"
>
<el-rate
v-model=
"DidaHotelDetails.StarRating"
:max=
"getPrice(DidaHotelDetails.StarRating)"
size=
"3em"
disabled
color=
"orange"
readonly
show-score
/>
...
...
@@ -551,8 +547,6 @@
<span
class=
"col fz14 text-blick text-333"
>
{{
DidaHotelDetails
.
Address_CN
}}
</span>
</div>
</div>
<div
class=
"col q-px-lg"
>
<div
class=
"row nowrap"
>
<i
class=
"text-grey-13 q-mr-xs el-icon-phone"
name=
"place"
size=
"xs"
style=
"color:#c0c4cc;"
></i>
...
...
@@ -595,13 +589,10 @@
<div
style=
"width:40%;"
class=
"row"
v-if=
"DidaHotelImg&&DidaHotelImg.length>2"
>
<div
class=
"row rounded-borders relative-position"
style=
"margin-right: 0.5%;margin-bottom:1%;position: relative; overflow: hidden;"
>
<el-image
style=
"width: 100%; height: 100%;"
:src=
"DidaHotelImg[1]"
:preview-src-list=
"DidaHotelImg"
>
</el-image>
</div>
<div
class=
"row rounded-borders relative-position"
style=
"margin-right: 0.5%; position: relative;overflow: hidden;"
>
...
...
@@ -619,40 +610,33 @@
</
template
>
</div>
</div>
<!-- 地图 -->
<div
style=
"position: relative;min-height:240px;"
:style=
"{'width':DidaHotelImg&&DidaHotelImg.length>0?'40%':'100%'}"
>
<!-- <iframe v-if="hotelMapUrl&&hotelMapUrl!=''" style="height:100%;min-height:215px;width:100%" marginHeight=0 :src="hotelMapUrl" frameBorder=0
marginWidth=0 scrolling=no></iframe> -->
<div
style=
"height:100%;min-height:215px;width:100%"
id=
"mapContainer"
class=
"rounded-borders"
></div>
</div>
<!-- 地图 -->
</div>
</div>
<div
class=
"rounded-borders bg-white row items-center q-pb-md"
style=
"margin-top:20px;width: 1300px;"
>
<el-form
class=
"iis_info_box clearfix"
label-width=
"60px"
style=
"display: block;width: 100%;"
>
<el-row>
<el-col
:span=
"5"
:gutter=
"35"
>
<el-form-item
:label=
"$t('pub.date')"
>
<el-date-picker
size=
"small"
v-model=
"dateList"
type=
"daterange"
value-format=
"yyyy-MM-dd"
:picker-options=
"beforeCheck"
range-separator=
"-"
:start-placeholder=
"$t('hotel.table_CheckInDate')"
:end-placeholder=
"$t('hotel.table_CheckOutDate')"
>
:picker-options=
"beforeCheck"
range-separator=
"-"
:start-placeholder=
"$t('hotel.table_CheckInDate')"
:end-placeholder=
"$t('hotel.table_CheckOutDate')"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"2"
:gutter=
"35"
>
<el-form-item
:label=
"$t('objFill.v101.hote.kefangshu')"
>
<el-select
size=
"small"
v-model=
"room"
:placeholder=
"$t('objFill.v101.hote.qingxzkfs')"
@
change=
"getRoomList"
style=
"width:70px;bolder:1px solid #DCDFE6;border-radius:4px;"
>
<el-select
size=
"small"
v-model=
"room"
:placeholder=
"$t('objFill.v101.hote.qingxzkfs')"
@
change=
"getRoomList"
style=
"width:70px;bolder:1px solid #DCDFE6;border-radius:4px;"
>
<el-option
v-for=
"item in roomList"
:key=
"item.Id"
:label=
"item.Id"
:value=
"item.Id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"3"
:gutter=
"35"
style=
"margin-left:3%;margin-top:4px;"
>
<el-popover
class=
""
style=
"z-index: 0; box-shadow: 0 0 50px #ddd !important"
placement=
"right"
...
...
@@ -668,7 +652,8 @@
<div
class=
""
>
{{$t('salesModule.Adult')}}
</div>
<el-select
v-model=
"item.numberOfAdults"
:placeholder=
"$t('objFill.v101.hote.qingxzcrs')"
@
change=
"setPeopleNum()"
>
<el-select
v-model=
"item.numberOfAdults"
:placeholder=
"$t('objFill.v101.hote.qingxzcrs')"
@
change=
"setPeopleNum()"
>
<el-option
v-for=
"item in adultList"
:key=
"item.Id"
:label=
"item.Id"
:value=
"item.Id"
>
</el-option>
</el-select>
...
...
@@ -677,7 +662,8 @@
<div
class=
""
>
{{$t('sm.ertong')}}
</div>
<el-select
v-model=
"item.numberOfChildren"
:placeholder=
"$t('objFill.v101.hote.qingxzets')"
@
change=
"setPeopleNum()"
>
<el-select
v-model=
"item.numberOfChildren"
:placeholder=
"$t('objFill.v101.hote.qingxzets')"
@
change=
"setPeopleNum()"
>
<el-option
v-for=
"item in childrenList"
:key=
"item.Id"
:label=
"item.Id"
:value=
"item.Id"
>
</el-option>
</el-select>
...
...
@@ -708,7 +694,8 @@
<div
style=
"color:red;"
>
{{$t('objFill.v101.hote.chaog13swcrcl')}}
</div>
</el-col>
<el-col
:span=
"2"
:gutter=
"35"
style=
"margin-left:-4%;margin-top:7px;float:right;"
>
<el-button
type=
"primary"
size=
"small"
plain
@
click=
"getDiDaPriceSearchList()"
:loading=
"loading"
>
{{$t('objFill.v101.hote.jiansuo')}}
<el-button
type=
"primary"
size=
"small"
plain
@
click=
"getDiDaPriceSearchList()"
:loading=
"loading"
>
{{$t('objFill.v101.hote.jiansuo')}}
</el-button>
</el-col>
</el-row>
...
...
@@ -719,20 +706,33 @@
<div
style=
"width:100%;background:#e1f5fe!important;font-weight:700;border-radius:4px;height:53px;display:flex;padding-left:10px; align-items: center;"
>
{{$t('objFill.v101.hote.fuhetjdfx')}}
</div>
<div
style=
"display: flex;justify-content: flex-start;margin-top:10px; "
>
<
template
v-if=
"qRoomTypeList&&qRoomTypeList.length>0"
>
<el-select
placeholder=
"房型"
v-model=
"qMsg.RoomTypeName"
style=
"width:130px;"
clearable
filterable
@
clear=
"qMsg.RoomTypeName=''"
>
<el-option
label=
"房型(全部)"
value=
""
></el-option>
<el-option
v-for=
"(item,index) in qRoomTypeList"
:label=
"item.RoomName_CN"
:value=
"item.RoomName_CN"
:key=
"`ry_`+index"
></el-option>
</el-select>
</
template
>
<
template
v-if=
"qMealTypeList&&qMealTypeList.length>0"
>
<el-select
placeholder=
"餐型"
v-model=
"qMsg.MTypeName"
style=
"float:left;padding-left:10px;width:130px;"
clearable
@
clear=
"qMsg.MTypeName=''"
>
<el-option
label=
"餐型(全部)"
value=
""
></el-option>
<el-option
v-for=
"(item,index) in qMealTypeList"
:label=
"item.MTypeName"
:value=
"item.MTypeName"
:key=
"item.MTypeName+index"
>
</el-option>
</el-select>
</
template
>
</div>
</div>
<!-- 价格信息循环开始 -->
<!-- {{DidaHotelRoomDetails }} {{DidaHotelRoomDetails.HotelList}} {{DidaHotelRoomDetails.HotelList.length}} {{DidaHotelRoomDetails.HotelList[0].GroupRatePlanList}} {{DidaHotelRoomDetails.HotelList[0].GroupRatePlanList.length}} -->
<div
class=
"q-my-md q-px-lg listBox"
style=
"width:100%;"
>
<div
class=
"q-card row "
style=
"border:1px solid #dedede; box-shadow:none;border-radius:4px 4px 0px 0px; background-color: #f1f1f1;"
>
<div
class=
"col q-pa-sm q-pr-lg col-3 row no-wrap justify-between"
style=
"border-right: 1px solid rgb(238, 238, 238);width:15%;height:auto;"
>
<span
class=
"text-grey-6 q-px-sm"
style=
"margin-top:4px;"
>
{{$t('OrderList.rooms.default')}}
</span>
</div>
<div
class=
"col"
style=
"width:85%;"
>
<div>
<div
class=
"relative-position"
style=
"clear:both; position:relative;height:auto;"
>
...
...
@@ -742,7 +742,6 @@
<div
class=
"col-2 text-grey-6"
style=
"line-height: 30px;height: 30px;height: auto; width:21%;"
>
</div>
<div
class=
"col-2 text-grey-6"
style=
"line-height: 30px;height: 30px;height: auto; width:21%;"
>
<span
class=
"text-grey-6 "
style=
"margin-top:4px;"
>
{{$t('objFill.v101.hote.chuangxcx')}}
<el-popover
placement=
"top"
trigger=
"hover"
:content=
"$t('objFill.v101.hote.ruyufxmcybyz')"
>
<i
class=
"el-icon-question"
slot=
"reference"
></i>
...
...
@@ -750,58 +749,49 @@
</span>
</div>
<div
class=
"col-2 text-grey-6"
style=
"line-height: 30px;height: 30px;height: auto; width:26%;"
>
<span
class=
"text-grey-6 "
style=
"margin-top:4px;"
>
{{$t('objFill.v101.hote.zhengce')}}
</span>
</div>
<div
class=
"col-2 text-grey-6"
style=
"line-height: 30px;height: 30px;height: auto; width:22%;"
>
<span
class=
"text-grey-6 "
style=
"margin-top:4px;"
>
{{$t('objFill.v101.hote.jiagejy')}}
</span>
</div>
<div
class=
"row no-wrap justify-end items-center"
style=
"line-height: 30px;height: 30px;height: auto;width:10%; "
>
<span
class=
"text-grey-6 "
style=
"margin-top:4px;"
>
{{$t('objFill.v101.hote.yuding')}}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<
template
v-if=
"DidaHotelRoomDetails&&DidaHotelRoomDetails.HotelList&&DidaHotelRoomDetails.HotelList.length>0&&DidaHotelRoomDetails.HotelList[0].GroupRoomTypeList&&DidaHotelRoomDetails.HotelList[0].GroupRoomTypeList.length>0 "
>
<div
v-loading=
"loading"
>
<div
class=
"q-card row q-cardradius "
v-for=
"(item, index) in DidaHotelRoomDetails.HotelList[0].GroupRoomTypeList"
>
<div
class=
"q-card row q-cardradius "
v-for=
"(item, index) in getQueryData"
:key=
"`dh_`+index"
>
<div
class=
"col q-pa-sm q-pr-lg col-3 row no-wrap justify-between"
style=
"border-right: 1px solid rgb(238, 238, 238);width:15%;height:auto;"
>
<div
class=
"col column q-pl-xs"
>
<div
class=
" q-pt-md q-px-sm text-333"
>
{{
item
.
RoomName_CN
}}
</div>
<div
class=
" q-pt-sm q-px-sm text-333"
>
{{
item
.
RoomName
==
item
.
RoomName_CN
?
""
:
item
.
RoomName
}}
</div>
<div
class=
"q-pt-md q-px-sm text-333"
>
{{
item
.
RoomName_CN
}}
</div>
<div
class=
"q-pt-sm q-px-sm text-333"
>
{{
item
.
RoomName
==
item
.
RoomName_CN
?
""
:
item
.
RoomName
}}
</div>
</div>
</div>
<div
class=
"col "
style=
"width:85%;"
>
<div
v-for=
"(subItem, subIndex) in item.RatePlanList"
:key=
"subIndex"
v-show=
"subIndex
<
(
isShow =
==
index
?
item
.
RatePlanList
.
length
:
3
)"
>
<el-divider
v-if=
"subIndex != 0"
></el-divider>
<div
class=
"relative-position hover-effect"
style=
"clear:both; position:relative;height:auto;"
>
<!---->
<div
class=
"col q-pt-sm row items-center no-wrap"
>
<div
class=
"col-3 q-pl-lg "
style=
"line-height: 30px;height: 30px;padding-top: 30px; height: auto; width: 21%;"
>
<template
v-if=
"subItem.IsOnRequest"
>
<el-popover
placement=
"top"
title=
""
trigger=
"hover"
:content=
"$t('objFill.v101.hote.xiansnwqr')"
>
<span
slot=
"reference"
class=
"nd-confirmation"
>
0.5
{{
$t
(
'objFill.v101.hote.xiaoshinqr'
)
}}
</span>
<el-popover
placement=
"top"
title=
""
trigger=
"hover"
:content=
"$t('objFill.v101.hote.xiansnwqr')"
>
<span
slot=
"reference"
class=
"nd-confirmation"
>
0.5
{{
$t
(
'objFill.v101.hote.xiaoshinqr'
)
}}
</span>
</el-popover>
</
template
>
<
template
v-else
><span
class=
"text-333"
>
{{
$t
(
'objFill.v101.hote.lijiquer'
)
}}
</span></
template
>
</div>
<div
class=
"col-2 text-grey-6"
style=
"line-height: 30px;height: 30px;padding-top: 30px;height: auto; width: 21%;"
>
...
...
@@ -823,7 +813,6 @@
style=
"box-shadow: none;line-height: 30px;height: 30px;padding-top: 30px;width:26%;"
>
<
template
v-if=
"subItem.RatePlanCancellationPolicyList && subItem.RatePlanCancellationPolicyList != null"
>
<div>
<div
class=
"column q-pl-md q-pr-md"
>
<span
class=
"q-pt-md "
...
...
@@ -832,16 +821,21 @@
<div
style=
"display:block;height:auto;"
>
<div
v-for=
"( itemCancella, index1 ) in subItem.RatePlanCancellationPolicyList"
:key=
"index1"
>
<p
v-if=
"index1==0"
>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}{{
$t
(
'objFill.v101.hote.zhiqmfqx'
)
}}
</p>
<p
v-if=
"index1==0"
>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}{{
$t
(
'objFill.v101.hote.zhiqmfqx'
)
}}
</p>
<div
v-if=
"itemCancella.Amount==subItem.TotalPrice"
>
<p>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}{{
$t
(
'objFill.v101.hote.qibkqxqxsqe'
)
}}
</p>
<p>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}{{
$t
(
'objFill.v101.hote.qibkqxqxsqe'
)
}}
</p>
</div>
<div
v-else
>
<p>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}
<span
v-if=
"index1!=(subItem.RatePlanCancellationPolicyList.length-1)"
>
-
{{
getformatDateStr
(
subItem
.
RatePlanCancellationPolicyList
[
index1
+
1
].
FromDate
)
}}
{{
$t
(
'objFill.v101.hote.zhijian'
)
}}
</span>
{{
$t
(
'objFill.v101.hote.quxiaosf'
)
}}{{
subItem
.
Currency
}}{{
getPrice
(
itemCancella
.
Amount
)
}}
;
</p>
{{
$t
(
'objFill.v101.hote.quxiaosf'
)
}}{{
subItem
.
Currency
}}{{
getPrice
(
itemCancella
.
Amount
)
}}
;
</p>
</div>
</div>
</div>
...
...
@@ -851,17 +845,18 @@
<span
v-else
class=
"nd-label_warning"
>
{{
$t
(
'objFill.v101.hote.fufeiqx'
)
}}
</span>
</span>
</el-popover>
<p
style=
"line-height:0px;padding-top:5px;"
v-if=
"getIsCancella(subItem.RatePlanCancellationPolicyList,subItem.TotalPrice)==1"
>
<p
style=
"line-height:0px;padding-top:5px;"
v-if=
"getIsCancella(subItem.RatePlanCancellationPolicyList,subItem.TotalPrice)==1"
>
{{
getformatDateStr
(
subItem
.
RatePlanCancellationPolicyList
[
subItem
.
RatePlanCancellationPolicyList
.
length
-
1
].
FromDate
)
}}{{
$t
(
'objFill.v101.hote.zhiqmfqx'
)
}}
</p>
<p
v-else
style=
"line-height:0px;padding-top:5px;"
>
{{
getformatDateStr
(
subItem
.
RatePlanCancellationPolicyList
[
subItem
.
RatePlanCancellationPolicyList
.
length
-
1
].
FromDate
)
}}{{
$t
(
'objFill.v101.hote.qianshouf'
)
}}{{
subItem
.
Currency
}}{{
getPrice
(
subItem
.
RatePlanCancellationPolicyList
[
subItem
.
RatePlanCancellationPolicyList
.
length
>
1
?
subItem
.
RatePlanCancellationPolicyList
.
length
-
2
:
subItem
.
RatePlanCancellationPolicyList
.
length
-
1
].
Amount
)
}}
;
</p>
</span>
<span
v-else
class=
"text-right q-pt-md nd-label_error"
>
{{
$t
(
'objFill.v101.hote.buketuig'
)
}}
</span>
<span
v-else
class=
"text-right q-pt-md nd-label_error"
>
{{
$t
(
'objFill.v101.hote.buketuig'
)
}}
</span>
</div>
</div>
</
template
>
<
template
v-else
>
<div
class=
"column q-pl-md q-pr-md"
>
...
...
@@ -869,12 +864,10 @@
</div>
</
template
>
</div>
<div
class=
"row no-wrap justify-end items-center "
style=
"line-height: 30px;height: 30px;padding-top: 8px;width:22%;"
>
<div
class=
"row no-wrap items-center q-pr-lg"
>
<div
style=
"cursor: pointer;width:100%;"
>
<el-popover
placement=
"top"
trigger=
"click"
>
<div
v-loading=
"confirmLoading"
style=
"display: block; line-height: 15px;min-height: 150px; height: auto;font-size:12px;text-align:center;"
...
...
@@ -886,7 +879,6 @@
:key=
"indexp"
>
{{getWeek(itemp.StayDate)}}
</td>
</tr>
<tr>
<td
v-for=
"( itemp, indexp ) in roomRateDetails.RatePlanList[0].PriceList"
...
...
@@ -903,25 +895,29 @@
</tr>
<tr
style=
"border:none;"
>
<td
style=
"border:none;font-size: 14px;text-align:left;"
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('hotel.hotel_roomType')}}:
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('hotel.hotel_roomType')}}:
{{item.RoomName_CN.length==0?item.RoomName:item.RoomName_CN}}
</td>
</tr>
<tr
style=
"border:none;"
>
<td
style=
"border:none;font-size: 14px;text-align:left;"
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('objFill.chuangxing')}}:
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('objFill.chuangxing')}}:
{{getRoomType(subItem.BedType)}}
</td>
</tr>
<tr
style=
"border:none;"
>
<td
style=
"border:none;font-size: 14px;text-align:left;"
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('objFill.v101.hote.meijianmwjj')}}:
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('objFill.v101.hote.meijianmwjj')}}:
{{subItem.Currency }}{{getAveragePrice(roomRateDetails.RatePlanList[0].PriceList)}}
</td>
</tr>
<tr
style=
"border:none;"
>
<td
style=
"border:none;font-size: 14px;text-align:left;"
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('op.TotalMoney')}}:
<span
class=
"text-red"
>
{{subItem.Currency }}
{{getPrice(roomRateDetails.RatePlanList[0].TotalPrice)}}
</span>
1{{$t('hotel.hotel_room')}}
</td>
:colspan=
"roomRateDetails.RatePlanList[0].PriceList.length"
>
{{$t('op.TotalMoney')}}:
<span
class=
"text-red"
>
{{subItem.Currency }}
{{getPrice(roomRateDetails.RatePlanList[0].TotalPrice)}}
</span>
1{{$t('hotel.hotel_room')}}
</td>
</tr>
</table>
</div>
...
...
@@ -935,23 +931,19 @@
</el-popover>
</div>
<div
style=
"font-size:12px !important;"
>
<span
class=
"text-grey-6 "
>
{{$t('op.TotalMoney')}} {{subItem.Currency }}{{getPrice(subItem.TotalPrice)}}
</span>
<span
class=
"text-grey-6 "
>
{{$t('op.TotalMoney')}}
{{subItem.Currency }}{{getPrice(subItem.TotalPrice)}}
</span>
</div>
</div>
</div>
<div
class=
"row no-wrap justify-end items-center "
style=
"line-height: 30px;height: 30px;padding-top: 30px;width:10%;"
>
<el-button
:type=
"subItem.IsSellOut==0?'primary':'info'"
:disabled=
"subItem.IsSellOut==1 "
@
click=
"goUrl('HotelSure',subItem)"
>
{{$t('objFill.v101.hote.lijiyud')}}
</el-button>
</div>
</div>
</div>
</div>
<div
class=
"order-show"
style=
"border-top:1px solid rgb(238, 238, 238);"
@
click=
"showMore(index)"
v-if=
"item.RatePlanList.length > 3"
>
<span
class=
"oder-show-content "
:class=
"isShow===index?'el-icon-caret-top':'el-icon-caret-bottom'"
>
{{
...
...
@@ -959,47 +951,40 @@
}}
</span>
</div>
</div>
</div>
</div>
</template>
<
template
v-else
>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</
template
>
</div>
<!-- 价格循环结束 -->
<div
class=
"rounded-borders bg-white row items-center q-pb-md"
style=
"margin-top:20px;width: 1300px;"
>
<div
class=
"row q-px-lg q-mb-lg row justify-between "
style=
"width:100%;"
>
<el-card
style=
"width:100%;"
>
<div
style=
" border-bottom: 1px solid #ddd; width:100%;padding-bottom:8px;font-size:16px;"
class=
"text-weight-bold"
><b>
{{$t('objFill.jiudianxiangqing')}}
</b></div>
<
template
v-if=
"DidaDescription&&DidaDescription.length>0"
>
<div
class=
"q-pt-sm q-px-lg12 PolicyDiv DidaDescriptionDiv"
v-for=
"(itemDe, indexDe) in DidaDescription"
style=
"line-height:27px;"
v-html=
"itemDe.HotelDescription_CN"
>
:key=
"`hdddd_`+indexDe"
style=
"line-height:27px;"
v-html=
"itemDe.HotelDescription_CN"
>
</div>
</
template
>
<
template
v-else
>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</
template
>
</el-card>
</div>
</div>
<div
class=
"rounded-borders bg-white row items-center q-pb-md"
style=
"width: 1300px;"
>
<div
class=
"row q-px-lg q-mb-lg row justify-between "
style=
"width:100%;"
>
<el-card
style=
"width:100%;"
>
<div
style=
"border-bottom: 1px solid #ddd; width:100%;padding-bottom:8px;font-size:16px;"
class=
"text-weight-bold"
><b>
{{$t('hotel.hotel_policy')}}
</b></div>
<
template
v-if=
"Policy&&Policy.length>0"
>
<div
v-for=
"(itemp, indexp) in Policy"
style=
"width:100%;"
class=
"q-px-lg12"
>
<div
v-for=
"(itemp, indexp) in Policy"
style=
"width:100%;"
class=
"q-px-lg12"
:key=
"`hdp_`+indexp"
>
<div
v-if=
"itemp.Type=='CheckInOut'"
style=
"margin-top:15px;"
>
<el-timeline>
<el-timeline-item
v-for=
"(itempo, indexpo) in itemp.List"
:key=
"indexpo"
color=
"#33B3FF"
>
...
...
@@ -1010,26 +995,26 @@
<template
v-else
>
<div
class=
"q-pt-sm PolicyDiv"
:style=
"indexp==1?'':'margin-top:15px'"
v-if=
"itempo.Description_CN&&itempo.Description_CN.length>0"
v-for=
"(itempo, indexpo) in itemp.List"
v-html=
"itempo.Description_CN"
>
</div>
:key=
"`hdd2_`+indexpo"
v-html=
"itempo.Description_CN"
>
</div>
</
template
>
</div>
</template>
<
template
v-else
>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</
template
>
</el-card>
</div>
</div>
<div
class=
"rounded-borders bg-white row items-center q-pb-md"
style=
"width: 1300px;"
>
<div
class=
"row q-px-lg q-mb-lg row justify-between "
style=
"width:100%;"
>
<el-card
style=
"width:100%;padding-bottom:20px;"
>
<div
style=
" border-bottom: 1px solid #ddd; width:100%;padding-bottom:8px;font-size:16px;"
class=
"text-weight-bold"
><b>
{{$t('objFill.v101.hote.jiudianss')}}
</b></div>
<
template
v-if=
"Facilities&&Facilities.length>0"
>
<div
class=
"q-pt-sm q-px-lg12 Facilities"
v-for=
"(itemf, indexf) in Facilities"
<div
class=
"q-pt-sm q-px-lg12 Facilities"
v-for=
"(itemf, indexf) in Facilities"
:key=
"`hdd_`+indexf"
v-if=
"itemf.Description_CN&&itemf.Description_CN.length>0"
style=
"line-height:27px;"
>
<el-tooltip
:content=
"itemf.Description_CN"
placement=
"bottom"
effect=
"light"
>
<span>
{{
itemf
.
Description_CN
}}
</span>
...
...
@@ -1037,22 +1022,21 @@
</div>
</
template
>
<
template
v-else
>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</
template
>
</el-card>
</div>
</div>
<div
class=
"rounded-borders bg-white row items-center q-pb-md"
style=
"width: 1300px;"
>
<div
class=
"row q-px-lg q-mb-lg row justify-between "
style=
"width:100%;"
>
<el-card
style=
"width:100%;padding-bottom:20px;"
>
<div
style=
" border-bottom: 1px solid #ddd; width:100%;padding-bottom:8px;font-size:16px;"
class=
"text-weight-bold"
><b>
{{$t('objFill.fangjianss')}}
</b><span
class=
"hotel-info-section__warning"
>
{{$t('objFill.v101.hote.jiudssjck')}}
</span></div>
<
template
v-if=
"RoomFacilities&&RoomFacilities.length>0"
>
<div
class=
"q-pt-sm q-px-lg12 Facilities"
v-for=
"(itemf, indexf) in RoomFacilities"
<div
class=
"q-pt-sm q-px-lg12 Facilities"
v-for=
"(itemf, indexf) in RoomFacilities"
:key=
"`hdf`+indexf"
v-if=
"itemf.Description_CN&&itemf.Description_CN.length>0"
style=
"line-height:27px;"
>
<el-tooltip
:content=
"itemf.Description_CN"
placement=
"bottom"
effect=
"light"
>
<span>
{{
itemf
.
Description_CN
}}
</span>
...
...
@@ -1060,12 +1044,13 @@
</div>
</
template
>
<
template
v-else
>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
<div
class=
"q-my-md q-px-lg"
style=
"text-align:center;margin-top:15px;"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</
template
>
</el-card>
</div>
</div>
</div>
</div>
</template>
...
...
@@ -1171,9 +1156,57 @@
}
}
},
hotelMapUrl
:
""
hotelMapUrl
:
""
,
qRoomTypeList
:
[],
//房型筛选条件
qMealTypeList
:
[],
//早餐筛选条件
qMsg
:
{
RoomTypeName
:
""
,
//房型筛选
MTypeName
:
""
,
//早餐筛选
}
};
},
computed
:
{
getQueryData
:
{
get
()
{
var
_this
=
this
;
var
tempData
=
[];
if
(
_this
.
DidaHotelRoomDetails
&&
_this
.
DidaHotelRoomDetails
.
HotelList
&&
_this
.
DidaHotelRoomDetails
.
HotelList
.
length
>
0
&&
_this
.
DidaHotelRoomDetails
.
HotelList
[
0
].
GroupRoomTypeList
)
{
tempData
=
JSON
.
parse
(
JSON
.
stringify
(
_this
.
DidaHotelRoomDetails
.
HotelList
[
0
].
GroupRoomTypeList
));
if
(
_this
.
qMsg
.
RoomTypeName
&&
_this
.
qMsg
.
RoomTypeName
!=
''
)
{
tempData
=
tempData
.
filter
(
qitem
=>
qitem
.
RoomName_CN
==
_this
.
qMsg
.
RoomTypeName
);
}
if
(
_this
.
qMsg
.
MTypeName
&&
_this
.
qMsg
.
MTypeName
.
MTypeName
!=
''
)
{
var
newDataArray
=
[];
tempData
.
forEach
(
qitem
=>
{
var
tempRetePlanList
=
[];
if
(
qitem
.
RatePlanList
&&
qitem
.
RatePlanList
.
length
>
0
)
{
qitem
.
RatePlanList
.
forEach
(
pItem
=>
{
if
(
pItem
.
PriceList
&&
pItem
.
PriceList
.
length
>
0
)
{
pItem
.
PriceList
.
forEach
(
mItem
=>
{
var
tempObj
=
_this
.
qMealTypeList
.
find
(
mtItem
=>
mtItem
.
MTypeName
==
_this
.
qMsg
.
MTypeName
);
if
(
mItem
.
MealAmount
==
tempObj
.
MealAmount
&&
mItem
.
MealType
==
tempObj
.
MealType
)
{
tempRetePlanList
.
push
(
pItem
)
}
})
}
})
}
qitem
.
RatePlanList
=
tempRetePlanList
;
if
(
tempRetePlanList
&&
tempRetePlanList
.
length
>
0
)
{
newDataArray
.
push
(
qitem
);
}
})
tempData
=
newDataArray
;
}
}
return
tempData
;
},
}
},
methods
:
{
goUrl
(
url
,
row
)
{
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
...
...
@@ -1278,10 +1311,49 @@
this
.
msg
.
CheckInDate
=
''
;
this
.
msg
.
CheckOutDate
=
''
;
}
var
that
=
this
;
this
.
apipost
(
'dmc_post_GetDiDaPriceSearchList'
,
this
.
msg
,
res
=>
{
this
.
loading
=
false
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
DidaHotelRoomDetails
=
res
.
data
.
data
var
tempData
=
res
.
data
.
data
;
this
.
DidaHotelRoomDetails
=
tempData
;
if
(
tempData
)
{
if
(
tempData
.
HotelList
&&
tempData
.
HotelList
.
length
>
0
)
{
tempData
.
HotelList
.
forEach
(
rootItem
=>
{
if
(
rootItem
&&
rootItem
.
GroupRoomTypeList
&&
rootItem
.
GroupRoomTypeList
.
length
>
0
)
{
rootItem
.
GroupRoomTypeList
.
forEach
(
rItem
=>
{
this
.
qRoomTypeList
.
push
({
"RoomName_CN"
:
rItem
.
RoomName_CN
});
})
}
if
(
rootItem
&&
rootItem
.
RatePlanList
&&
rootItem
.
RatePlanList
.
length
>
0
)
{
rootItem
.
RatePlanList
.
forEach
(
pItem
=>
{
if
(
pItem
&&
pItem
.
PriceList
&&
pItem
.
PriceList
.
length
>
0
)
{
pItem
.
PriceList
.
forEach
(
mItem
=>
{
var
MTypeName
=
that
.
getMealtype
(
mItem
.
MealType
);
if
(
mItem
.
MealAmount
>
0
)
{
MTypeName
+=
mItem
.
MealAmount
+
"份"
;
}
var
mObj
=
{
MTypeName
:
MTypeName
,
MealAmount
:
mItem
.
MealAmount
,
MealType
:
mItem
.
MealType
};
var
qObj
=
that
.
qMealTypeList
.
find
((
qMItem
)
=>
{
return
qMItem
.
MealType
===
mObj
.
MealType
&&
qMItem
.
MealAmount
==
mObj
.
MealAmount
;
})
if
(
!
qObj
)
{
that
.
qMealTypeList
.
push
(
mObj
);
}
})
}
});
}
});
}
}
}
},
null
)
},
...
...
@@ -1315,7 +1387,6 @@
}
return
roomtypeName
;
},
//获取餐型
getMealtype
(
mealtypeId
)
{
let
mealtypeName
=
""
;
...
...
@@ -1337,23 +1408,18 @@
res
.
data
.
data
.
forEach
((
item
,
index
)
=>
{
this
.
DidaHotelImg
.
push
(
item
.
ImageUrl
);
});
// this.DidaHotelImg = res.data.data;
}
},
null
)
},
//获取酒店详情信息
getDidaDescriptionList
()
{
this
.
apipost
(
'dmc_post_GetDidaDescriptionList'
,
this
.
hotelMsg
,
res
=>
{
this
.
loading
=
false
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
DidaDescription
=
res
.
data
.
data
;
}
},
null
)
},
//获取酒店设施信息
getDidaFacilitiesList
()
{
this
.
apipost
(
'dmc_post_GetDiDaHotelFacilitiesList'
,
this
.
hotelMsg
,
res
=>
{
...
...
@@ -1364,8 +1430,6 @@
}
},
null
)
},
//获取酒店政策信息
getDidaPolicyList
()
{
this
.
apipost
(
'dmc_post_GetDiDaHotelPolicyList'
,
this
.
hotelMsg
,
res
=>
{
...
...
@@ -1386,7 +1450,6 @@
let
seconds
=
(
dt
.
getSeconds
()).
toString
().
padStart
(
2
,
"0"
);
return
year
+
"-"
+
month
+
"-"
+
date
+
" "
+
hours
+
":"
+
minutes
+
":"
+
seconds
;
},
//通过日期得到周几
getWeek
(
dateTime
)
{
let
dt
=
new
Date
(
dateTime
);
...
...
@@ -1395,7 +1458,6 @@
let
date
=
(
dt
.
getDate
()
+
1
).
toString
().
padStart
(
2
,
"0"
);
return
month
+
"-"
+
date
+
"("
+
this
.
WeekList
[
dt
.
getDay
()]
+
")"
;
},
//日期格式化
getIsCancella1
(
value
)
{
var
dt
=
new
Date
(
value
);
//取消时间
...
...
@@ -1406,8 +1468,6 @@
}
return
IsCancel
;
},
//日期格式化
getIsCancella
(
RatePlanCancellationPolicyList
,
TotalPrice
)
{
let
IsCancel
=
0
;
//不可取消
...
...
@@ -1427,11 +1487,9 @@
}
}
}
});
return
IsCancel
;
},
getPrice
(
price
)
{
return
Math
.
ceil
(
price
);
},
...
...
@@ -1442,7 +1500,6 @@
this
.
isShow
=
index
;
}
},
initMap
(
lng
,
lat
,
name
)
{
if
(
this
.
map
)
{
this
.
map
.
clearOverlays
()
...
...
src/components/ShoppingStore/ShoppingStore.vue
View file @
11424104
...
...
@@ -465,7 +465,9 @@
.IsConflict
td
{
background-color
:
pink
!important
;
}
/* 购物店 */
</
style
>
<
template
>
<div
class=
"flexOne shoppingStore"
>
...
...
@@ -640,7 +642,7 @@
</el-form-item>
</li>
<li>
<el-form-item
:label=
"$t('hotel.hotel_mapLocation')"
prop=
"Address"
>
<el-form-item
:label=
"$t('hotel.hotel_mapLocation')"
>
<div
class=
"addressChoice"
>
<input
type=
"text"
v-model=
"addMsg.Address"
class=
"addChoice"
>
<span
class=
"addressIcon"
@
click=
"selectAddress = true"
><i
class=
"iconfont icon-img_dw"
></i></span>
...
...
@@ -739,34 +741,39 @@
<td>
{{
item
.
EnterTime
}}
</td>
<td
:class=
"
{'redType':item.GuideID==0}">
<span>
{{
item
.
GuideName
}}
<span
v-if=
"(item.GuideID>0||item.GuideName.length>0)&&item.TCIDExist>-1"
>
{{
item
.
IsGuideDaiTuan
==
1
?
$t
(
'objFill.v101.dmc.daituan'
):
$t
(
'objFill.v101.dmc.budaituan'
)
}}
</span>
<span
v-if=
"(item.GuideID>0||item.GuideName.length>0)&&item.TCIDExist>-1"
>
{{
item
.
IsGuideDaiTuan
==
1
?
$t
(
'objFill.v101.dmc.daituan'
):
$t
(
'objFill.v101.dmc.budaituan'
)
}}
</span>
</span>
</td>
<td
:class=
"
{'redType':item.LeaderID==0}">
<span>
{{
item
.
LeaderName
}}
<span
v-if=
"(item.LeaderID>0||item.LeaderName.length>0)&&item.TCIDExist>-1"
>
{{
item
.
IsLeaderDaiTuan
==
1
?
$t
(
'objFill.v101.dmc.daituan'
):
$t
(
'objFill.v101.dmc.budaituan'
)
}}
</span>
{{
item
.
IsLeaderDaiTuan
==
1
?
$t
(
'objFill.v101.dmc.daituan'
):
$t
(
'objFill.v101.dmc.budaituan'
)
}}
</span>
</span>
</td>
<td>
{{
item
.
ImportGuideName
}}
<span
v-if=
"item.IsErrorData==1 && item.GuideName != item.ImportGuideName"
style=
"color:red"
>
[
{{
$t
(
'objFill.youwu'
)
}}
]
</span></td>
<td>
{{
item
.
ImportLeaderName
}}
<span
v-if=
"item.IsErrorData==1 && item.LeaderName != item.ImportLeaderName"
style=
"color:red"
>
[
{{
$t
(
'objFill.youwu'
)
}}
]
</span></td>
<td>
{{
item
.
ImportGuideName
}}
<span
v-if=
"item.IsErrorData==1 && item.GuideName != item.ImportGuideName"
style=
"color:red"
>
[
{{
$t
(
'objFill.youwu'
)
}}
]
</span></td>
<td>
{{
item
.
ImportLeaderName
}}
<span
v-if=
"item.IsErrorData==1 && item.LeaderName != item.ImportLeaderName"
style=
"color:red"
>
[
{{
$t
(
'objFill.youwu'
)
}}
]
</span></td>
<td>
{{
item
.
TotalPrice
}}
</td>
<td
:class=
"
{'redType':item.GroupExtractExist==-1}">
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('objFill.v101.yiczxtshuju')"
placement=
"top-start"
>
<span
style=
" cursor: pointer; "
>
{{
item
.
GroupExtract
}}
</span></el-tooltip>
</td>
<span
style=
" cursor: pointer; "
>
{{
item
.
GroupExtract
}}
</span></el-tooltip>
</td>
<td
:class=
"
{'redType':item.LeaderExtractExist==-1}">
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('objFill.v101.yiczxtshuju')"
placement=
"top-start"
>
<span
style=
" cursor: pointer; "
>
{{
item
.
LeaderExtract
}}
</span></el-tooltip></td>
<span
style=
" cursor: pointer; "
>
{{
item
.
LeaderExtract
}}
</span></el-tooltip>
</td>
<td
:class=
"
{'redType':item.GuideExtractExist==-1}">
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('objFill.v101.yiczxtshuju')"
placement=
"top-start"
>
<span
style=
" cursor: pointer; "
>
{{
item
.
GuideExtract
}}
</span></el-tooltip>
</td>
<span
style=
" cursor: pointer; "
>
{{
item
.
GuideExtract
}}
</span></el-tooltip>
</td>
<td
:class=
"
{'redType':item.PICExtractExist==-1}">
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"$t('objFill.v101.yiczxtshuju')"
placement=
"top-start"
>
<span
style=
" cursor: pointer; "
>
{{
item
.
PICExtract
}}
</span></el-tooltip></td>
<span
style=
" cursor: pointer; "
>
{{
item
.
PICExtract
}}
</span></el-tooltip>
</td>
<td>
{{
item
.
Rate
}}
</td>
<td
:class=
"
{'redType':item.CurrencyExist==-1}">
<span>
{{
item
.
Currency
}}
</span></td>
<td>
{{
item
.
Remarks
}}
</td>
...
...
@@ -794,13 +801,15 @@
<div
slot=
"tip"
class=
"el-upload__tip"
>
{{
$t
(
"ground.znscexcel"
)
}}
</div>
</el-upload>
<div>
--------------------------------------------------------------------------------------------------------------------
</div>
<div>
--------------------------------------------------------------------------------------------------------------------
</div>
<div
style=
"text-align:center; margin-bottom:5px;color:tomato;"
>
{{
$t
(
'objFill.v101.xinbtdmsgwd'
)
}}
</div>
<el-upload
drag
class=
"upload-demo"
:action=
"importFileUrl3"
:on-success=
"handleAvatarSuccess"
<el-upload
drag
class=
"upload-demo"
:action=
"importFileUrl3"
:on-success=
"handleAvatarSuccess"
:before-upload=
"beforeAvatarUpload"
>
<i
class=
"el-icon-upload"
></i>
<div
class=
"el-upload__text"
>
{{
$t
(
"tips.tuodongwenjian"
)
}}
<em>
{{
$t
(
'tips.dianjishanhcuan'
)
}}
</em></div>
<div
class=
"el-upload__text"
>
{{
$t
(
"tips.tuodongwenjian"
)
}}
<em>
{{
$t
(
'tips.dianjishanhcuan'
)
}}
</em></div>
<div
slot=
"tip"
class=
"el-upload__tip"
>
{{
$t
(
"ground.znscexcel"
)
}}
</div>
</el-upload>
...
...
@@ -825,13 +834,13 @@
defaultImg
:
'this.src="'
+
require
(
"../../assets/img/shoppingstore.jpg"
)
+
'"'
,
importFileUrl2
:
this
.
domainManager
().
UploadFileUrl
+
"?cmd=dmc_post_LocalFileUpload&fileType=1&fileLimit=1&RB_Group_id=2&Type=1"
,
importFileUrl3
:
this
.
domainManager
().
UploadFileUrl
+
importFileUrl3
:
this
.
domainManager
().
UploadFileUrl
+
"?cmd=dmc_post_LocalFileUpload&fileType=1&fileLimit=20&RB_Group_id=2&Type=20"
,
downList
:
""
,
TotalPrice
:
""
,
GroupExtract
:
""
,
GuideExtract
:
""
,
PICExtract
:
""
,
PICExtract
:
""
,
LeaderExtract
:
""
,
getShoppType
:
""
,
isShow
:
false
,
...
...
@@ -1073,7 +1082,7 @@
TotalPrice
:
item
.
TotalPrice
,
GroupExtract
:
item
.
GroupExtract
,
GuideExtract
:
item
.
GuideExtract
,
PICExtract
:
item
.
PICExtract
,
PICExtract
:
item
.
PICExtract
,
LeaderExtract
:
item
.
LeaderExtract
,
blank
:
'y'
,
tab
:
'购物店明细'
...
...
@@ -1283,7 +1292,7 @@
if
(
res
.
data
.
resultCode
==
1
)
{
that
.
tabLoading
=
false
;
that
.
fillShow
=
false
;
that
.
Success
(
this
.
$t
(
'objFill.v101.daoruchengg'
)
+
'!'
);
that
.
Success
(
this
.
$t
(
'objFill.v101.daoruchengg'
)
+
'!'
);
that
.
getList
();
}
else
{
that
.
Error
(
res
.
data
.
message
);
...
...
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