Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
bigwood
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
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
罗超
bigwood
Commits
9ce32917
Commit
9ce32917
authored
Aug 30, 2023
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
f4723e35
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
117 additions
and
501 deletions
+117
-501
quasar.conf.js
quasar.conf.js
+1
-1
DetailsList.vue
src/components/scattered/dida/DetailsList.vue
+67
-114
DidaHeader.vue
src/components/scattered/dida/DidaHeader.vue
+14
-128
DidaListTable.vue
src/components/scattered/dida/DidaListTable.vue
+3
-3
dictionary.ts
src/config/dictionary.ts
+21
-2
didaDetails.vue
src/pages/scattered/didaDetails.vue
+4
-251
didaHotel.vue
src/pages/scattered/didaHotel.vue
+4
-2
routes.ts
src/router/routes.ts
+3
-0
No files found.
quasar.conf.js
View file @
9ce32917
...
...
@@ -64,7 +64,7 @@ module.exports = configure(function (ctx) {
publicPath
:
ctx
.
dev
?
'/'
:
'./'
,
env
:
ctx
.
dev
?
{
BASE_APP_API
:
'http://
192.168.10.226
/api/common/post'
,
BASE_APP_API
:
'http://
localhost
/api/common/post'
,
JAVA_URL_API
:
'http://efficient.oytour.com'
,
VERSION
:
require
(
'./package.json'
).
version
,
...
...
src/components/scattered/dida/DetailsList.vue
View file @
9ce32917
...
...
@@ -50,52 +50,48 @@
<q-card
class=
"row q-mb-md"
v-for=
"(item,index) in SimilarList"
:key=
"index"
v-loading=
"loading"
>
<div
class=
"col q-pa-sm q-pr-lg"
:class=
"
{'col-3 row no-wrap justify-between': $q.platform.is.desktop,'col-4 column': $q.platform.is.mobile}" :style="{'border-right': $q.platform.is.desktop?'1px solid #eeeeee':''}">
<div
v-if=
"$q.platform.is.desktop"
:class=
"
{'col-6':$q.platform.is.desktop,'col-12':$q.platform.is.mobile}" :style="{'height':$q.platform.is.desktop?'100px':'50px'}">
<q-img
:src=
"item.roomImageURL
"
:style=
"
{'height':$q.platform.is.desktop?'100%':'50px'}" spinner-color="drk" spinner-size="20px" mode="cover"/>
<q-img
src=
"/src/assets/images/home.png
"
:style=
"
{'height':$q.platform.is.desktop?'100%':'50px'}" spinner-color="drk" spinner-size="20px" mode="cover"/>
</div>
<div
class=
"col column"
:class=
"
{'q-pl-xs':$q.platform.is.desktop}">
<div
class=
"text-right text-green q-pt-md"
>
{{
getGradeType
(
item
.
gradeType
)
}}{{
getRoomType
(
item
.
room
Type
)
}}
{{
getRoomType
(
item
.
Bed
Type
)
}}
</div>
<div
class=
"row no-wrap justify-end q-pt-md text-right"
>
<span
class=
"text-blue bg-blue-1 q-px-sm q-mr-sm"
style=
"white-space: nowrap;"
>
<template
v-if=
"item.smoking==0"
>
{{
$t
(
'v101.scatteredDetails.jinyan'
)
}}
</
template
>
<
template
v-if=
"item.smoking==1"
>
{{
$t
(
'v101.scatteredDetails.kexiyan'
)
}}
</
template
>
</span>
<span
class=
"text-blue bg-blue-1 q-px-sm"
style=
"white-space: nowrap;"
>
<
template
v-if=
"item.withBath==0"
>
{{
$t
(
'v101.scatteredDetails.wuyushi'
)
}}
</
template
>
<
template
v-if=
"item.withBath==1"
>
{{
$t
(
'v101.scatteredDetails.youyushi'
)
}}
</
template
>
剩余库存:
{{
item
.
InventoryCount
}}
</span>
</div>
</div>
</div>
<div
class=
"col"
:style=
"
{'border-left': $q.platform.is.mobile?'1px solid #eeeeee':''}">
<div
class=
"relative-position"
v-for=
"(subItem,subIndex) in item.roomOptions"
:key=
"subIndex"
>
<q-separator
v-if=
"subIndex!=0"
/>
<div
class=
"col q-ml-lg q-pt-lg q-pb-md q-pr-md"
>
<div
class=
"col q-pt-sm"
:class=
"
{'row items-center no-wrap': $q.platform.is.desktop,'common': $q.platform.is.mobile}">
<div
class=
"absolute text-white q-px-lg"
style=
"left: 0;top: 0;border-bottom-right-radius: 10px;"
:class=
"getMealType(subItem.meals)==ScatMeaList[0].name?'HD_Black':'HD_Green'"
>
{{getMealType(subItem.meals)}}
</div>
<div
class=
"col-2 text-grey-6"
v-if=
"$q.platform.is.desktop"
>
{{subItem.bookingDeadline}}
</div>
<div
class=
"col-3"
:class=
"{'q-pl-lg':$q.platform.is.desktop}"
v-if=
"$q.platform.is.desktop"
>
{{subItem.minNights}}
</div>
<div
class=
"row text-red"
:class=
"{'col q-pl-lg':$q.platform.is.desktop}"
v-if=
"$q.platform.is.desktop"
>
<div
class=
"column"
>
<span
class=
"wrap-title"
>
{{$t('v101.scatteredDetails.Time1')}}
</span>
<span>
{{subItem['check-inStartTime']}}
</span>
:class=
"item.BreakfastType==2?'HD_Black':'HD_Green'"
>
{{
item
.
BreakfastType
==
1
?
"含早"
:
"不含早"
}}
</div>
<div
class=
"col-3"
:class=
"
{'q-pl-lg':$q.platform.is.desktop}" v-if="$q.platform.is.desktop">
{{
item
.
RatePlanName
}}
</div>
<div
class=
"col-2 text-grey-6"
v-if=
"item.PriceList&&item.PriceList!=null"
>
<q-card
class=
"row q-mb-md"
style=
"box-shadow:none;"
v-for=
"(itemPrice,indexPrice) in item.PriceList"
:key=
"indexPrice"
v-loading=
"loading"
>
<div
class=
"text-right text-green q-pt-md"
>
{{
getformatDateStr
(
itemPrice
.
StayDate
)
}}
报价:
{{
itemPrice
.
Price
}}
</div>
</q-card>
</div>
<div
v-if=
"item.RatePlanCancellationPolicyList&&item.RatePlanCancellationPolicyList!=null"
>
<q-card
class=
"row q-mb-md"
style=
"box-shadow:none;"
v-for=
"(itemCancella,index1) in item.RatePlanCancellationPolicyList"
:key=
"index1"
v-loading=
"loading"
>
<div
class=
"column q-pl-md q-pr-md"
>
<span
class=
"wrap-title"
>
{{$t('v101.scatteredDetails.Time2')}}
</span>
<span>
{{subItem['finalCheck-inTime']}}
</span>
</div>
<div
class=
"column"
>
<span
class=
"wrap-title"
>
{{$t('v101.scatteredDetails.Time3')}}
</span>
<span>
{{subItem['finalCheck-outTime']}}
</span>
<span
class=
"text-right q-pt-md"
>
{{
getformatDateStr
(
itemCancella
.
FromDate
)
}}
开始取消罚金(
{{
item
.
Currency
}}
):
{{
itemCancella
.
Amount
}}
</span>
<span></span>
</div>
</q-card>
</div>
<div
class=
"row no-wrap justify-end items-center"
:class=
"
{'q-pl-lg':$q.platform.is.desktop}">
<div
class=
"row no-wrap items-center q-pr-lg"
>
<span
class=
"text-grey-6"
>
円
</span>
<span
class=
"fz20 text-red q-px-sm"
>
{{getPrice(subItem.chargeableRateInfoPerPersonForANightBySetCurrency)}}
</span>
<span
class=
"text-grey-6"
>
/{{$t('v101.scatteredDetails.renju')}}
</span>
<span
class=
"text-grey-6"
>
{{
item
.
Currency
}}
</span>
<span
class=
"fz20 text-red q-px-sm"
>
{{
getPrice
(
item
.
TotalPrice
)
}}
</span>
</div>
<div
class=
"q-pt-xs"
>
<q-btn
class=
"bg-green-6 hover q-px-md q-py-xs q-ml-xs text-white"
@
click=
"goUrl('/scattered/HotelSure',subItem)"
:label=
"$t('v101.scatteredDetails.yuyue')"
/>
...
...
@@ -103,12 +99,11 @@
</div>
</div>
<div
class=
"q-pt-sm"
>
<
span
class=
"text-green fz12 q-px-sm"
style=
"border:1px solid green"
>
{{subItem.minNights}}
</span
>
<
!--
<span
class=
"text-green fz12 q-px-sm"
style=
"border:1px solid green"
>
{{
item
.
StandardOccupancy
}}
</span>
--
>
</div>
</div>
</div>
</div>
</q-card>
</
template
>
<div
v-else
class=
"col q-pa-lg text-center"
>
...
...
@@ -160,9 +155,8 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
childrenList
:
[]
as
Array
<
Number
>
,
//儿童下拉
isShowPop
:
false
,
//房间
SimilarList
:
[]
as
Array
<
any
>
,
JapanIncrease
:
0
,
//除以
RoomTypeList
:
[]
as
Array
<
HotelArea
>
,
//房间等级
scatteredRoomTypeList
:
[]
as
Array
<
HotelArea
>
,
//散客房间类型
HotelRoomTypes
:
[]
as
Array
<
HotelArea
>
,
//散客房间类型
ScatMeaList
:
[]
as
Array
<
HotelArea
>
//散客房间餐型
})
for
(
let
i
=
1
;
i
<
11
;
i
++
){
...
...
@@ -185,10 +179,10 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
})
}
let
getParamsMsg
=
JSON
.
parse
(
localStorage
.
getItem
(
DirtionmaryHelper
.
SCATTERED_HOTEL_DATE
))
let
getParamsMsg
=
JSON
.
parse
(
localStorage
.
getItem
(
DirtionmaryHelper
.
SCATTERED_
DiDa
HOTEL_DATE
))
data
.
auditNum
=
getParamsMsg
.
auditNum
data
.
childNum
=
getParamsMsg
.
childNum
?
getParamsMsg
.
childNum
:
''
data
.
room
=
data
.
theRooms
[
search
.
searchroomGroup
.
length
-
1
]
data
.
room
=
1
//
data.theRooms[search.searchroomGroup.length-1]
data
.
dateRange
.
to
=
search
.
CheckInDate
data
.
dateRange
.
from
=
search
.
CheckOutDate
...
...
@@ -210,87 +204,42 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
// $router.push({ path:url })
},
getPrice
(
price
){
return
Math
.
ceil
(
price
/
data
.
JapanIncrease
)
return
Math
.
ceil
(
price
)
},
//获取餐
getMealType
(
meals
)
{
if
(
meals
!=
""
)
{
let
mealType
=
meals
.
split
(
","
);
if
(
mealType
[
0
]
==
0
&&
mealType
[
2
]
==
0
)
{
return
data
.
ScatMeaList
[
0
].
name
;
}
if
(
mealType
[
0
]
==
1
&&
mealType
[
2
]
==
1
)
{
return
data
.
ScatMeaList
[
1
].
name
;
}
if
(
mealType
[
0
]
==
1
&&
mealType
[
2
]
==
0
)
{
return
data
.
ScatMeaList
[
2
].
name
;
}
if
(
mealType
[
0
]
==
0
&&
mealType
[
2
]
==
1
)
{
return
data
.
ScatMeaList
[
30
].
name
;
}
}
//日期格式化
getformatDateStr
(
value
){
var
dt
=
new
Date
(
value
);
let
year
=
dt
.
getFullYear
();
let
month
=
(
dt
.
getMonth
()
+
1
).
toString
().
padStart
(
2
,
'0'
);
let
date
=
(
dt
.
getDate
()
+
1
).
toString
().
padStart
(
2
,
'0'
);
return
year
+
"-"
+
month
+
"-"
+
date
;
},
//获取房间等级
getRoomType
(
type
)
{
let
gradeType
=
""
;
switch
(
parseInt
(
type
))
{
case
1
:
gradeType
=
data
.
scatteredRoomTypeList
[
0
].
name
;
break
;
case
2
:
gradeType
=
data
.
scatteredRoomTypeList
[
1
].
name
;
break
;
case
3
:
gradeType
=
data
.
scatteredRoomTypeList
[
2
].
name
;
break
;
case
4
:
gradeType
=
data
.
scatteredRoomTypeList
[
3
].
name
;
break
;
case
5
:
gradeType
=
data
.
scatteredRoomTypeList
[
4
].
name
;
break
;
case
6
:
gradeType
=
data
.
scatteredRoomTypeList
[
5
].
name
;
break
;
case
7
:
gradeType
=
data
.
scatteredRoomTypeList
[
6
].
name
;
break
;
case
8
:
gradeType
=
data
.
scatteredRoomTypeList
[
7
].
name
;
break
;
case
9
:
gradeType
=
data
.
scatteredRoomTypeList
[
8
].
name
;
break
;
//获取房型
getRoomType
(
roomtypeId
)
{
let
roomtypeName
=
""
;
if
(
roomtypeId
>
0
)
{
data
.
HotelRoomTypes
.
forEach
((
item
)
=>
{
if
(
item
.
ID
==
roomtypeId
)
{
roomtypeName
=
item
.
Name_CN
;
}
return
gradeType
;
});
}
return
roomtypeName
;
},
//获取房型
getGradeType
(
type
)
{
let
gradeType
=
""
;
switch
(
parseInt
(
type
))
{
case
1
:
gradeType
=
data
.
RoomTypeList
[
0
].
name
;
break
;
case
2
:
gradeType
=
data
.
RoomTypeList
[
1
].
name
;
break
;
case
3
:
gradeType
=
data
.
RoomTypeList
[
2
].
name
;
break
;
case
4
:
gradeType
=
data
.
RoomTypeList
[
3
].
name
;
break
;
case
5
:
gradeType
=
data
.
RoomTypeList
[
4
].
name
;
break
;
case
6
:
gradeType
=
data
.
RoomTypeList
[
5
].
name
;
break
;
//获取道旅房型列表
getdidaBedType
()
{
DidaService
.
GetDidaBedType
({}).
then
((
res
)
=>
{
console
.
log
(
"getdidaBedType"
,
res
);
if
(
res
.
data
.
resultCode
==
1
)
{
data
.
HotelRoomTypes
=
res
.
data
.
data
;
}
return
gradeType
;
})
;
},
initHotel
()
{
data
.
loading
=
true
let
param
=
Object
.
assign
(
search
)
DidaService
.
GetHotelRoomsList
(
param
)
.
then
(
r
=>
{
...
...
@@ -298,13 +247,15 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
console
.
log
(
"道旅酒店详情"
,
r
.
data
.
data
.
PriceDetails
.
HotelList
);
if
(
r
.
data
.
resultCode
==
ApiResult
.
SUCCESS
)
{
if
(
Object
.
prototype
.
toString
.
call
(
r
.
data
.
data
.
PriceDetails
.
HotelList
)
==
Object
.
prototype
.
toString
.
call
(
r
.
data
.
data
.
PriceDetails
.
HotelList
[
0
].
RatePlanList
)
==
"[object Object]"
)
{
data
.
SimilarList
.
push
(
r
.
data
.
data
.
PriceDetails
.
HotelList
);
data
.
SimilarList
.
push
(
r
.
data
.
data
.
PriceDetails
.
HotelList
[
0
].
RatePlanList
);
}
else
{
data
.
SimilarList
=
r
.
data
.
data
.
PriceDetails
.
HotelList
;
data
.
SimilarList
=
r
.
data
.
data
.
PriceDetails
.
HotelList
[
0
].
RatePlanList
;
}
console
.
log
(
" 道旅data.SimilarList"
,
data
.
SimilarList
);
data
.
SimilarList
.
forEach
(
x
=>
{
if
(
Object
.
prototype
.
toString
.
call
(
x
.
roomOptions
)
==
...
...
@@ -323,6 +274,7 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
message
.
errorMsg
(
e
.
message
)
})
},
//设置房间里面成人数改变总成人数和儿童数
setPeopleNum
()
{
data
.
auditNum
=
0
;
...
...
@@ -383,6 +335,7 @@ import { HotelArea, useHotel } from "../../../utils/hotelRate";
})
onMounted
(()
=>
{
methods
.
getdidaBedType
();
methods
.
initHotel
()
})
return
{
...
...
src/components/scattered/dida/DidaHeader.vue
View file @
9ce32917
...
...
@@ -99,78 +99,7 @@
</q-popup-proxy>
</q-field>
</div>
<div
class=
"q-my-md row justify-between"
v-if=
"$q.platform.is.mobile"
>
<q-select
style=
"min-width: 90px; z-index: 99999"
unelevated
v-model=
"room"
dense
:options=
"theRooms"
emit-value
option-label=
"name"
option-value=
"id"
map-options
:label=
"$t('v101.scattered.kefang')"
standout
@
update:model-value=
"getRoomList"
>
</q-select>
<q-btn
unelevated
class=
"bg-white hover q-px-xs q-py-sm q-ml-xs text-grey-6"
icon=
"person"
>
<div
class=
"text-dark q-ml-xs"
>
{{
auditNum
}}{{
$t
(
"v101.scattered.chengren"
)
}}
<span
class=
"q-px-sm"
>
.
</span>
<template
v-if=
"childNum > 0"
>
{{
childNum
}}
</
template
>
{{ $t("v101.scattered.ertong") }}
</div>
<q-popup-proxy
class=
"no-shadow absolute"
style=
"z-index: 0; box-shadow: 0 0 50px #ddd !important"
:offset=
"[0, 20]"
:model-value=
"isShowPop"
>
<q-card
class=
"row wrap q-pa-md rounded-borders"
style=
"max-width: 697px"
>
<div
class=
"q-mr-md"
v-for=
"(item, index) in search.searchroomGroup"
:key=
"index"
style=
"min-width: 150px"
>
<div
class=
"q-mb-md text-subtitle2"
>
{{ $t("v101.scattered.kefang") }}{{ index + 1 }}
</div>
<div
class=
"q-my-md"
>
<q-select
v-model=
"item.numberOfAdults"
dense
:options=
"adultList"
emit-value
map-options
:label=
"$t('v101.scattered.chengren')"
standout
@
update:model-value=
"setPeopleNum"
/>
</div>
<div
class=
"q-my-md"
>
<q-select
v-model=
"item.numberOfChildren"
dense
:options=
"childrenList"
emit-value
map-options
:label=
"$t('v101.scattered.ertong')"
standout
@
update:model-value=
"setPeopleNum"
/>
</div>
</div>
</q-card>
</q-popup-proxy>
</q-btn>
</div>
<div
class=
"q-my-md row items-center"
>
<q-input
v-model=
"search.MinPrice"
...
...
@@ -312,7 +241,7 @@ export default defineComponent({
HotelMealTypes
:
[]
as
Array
<
HotelRate
>
,
//餐型
HotelDidaPropertyCategory
:[]
as
Array
<
HotelRate
>
,
keyWords
:
""
as
stringify
,
CityCode
:
t
(
"v101.scattered.HotelArea1"
)
,
CityCode
:
''
as
stringify
,
});
for
(
let
i
=
1
;
i
<
11
;
i
++
)
{
data
.
theRooms
.
push
(
i
);
...
...
@@ -325,8 +254,7 @@ export default defineComponent({
}
data
.
scrollStyle
=
useScrollModule
().
scrollStyle
;
const
search
=
inject
(
DirtionmaryHelper
.
HOTEL_QUERY_PARAM
)
as
any
;
// data.searchClone = JSON.parse(JSON.stringify(search.msg))
const
search
=
inject
(
DirtionmaryHelper
.
DiDaHOTEL_QUERY_PARAM
)
as
any
;
if
(
search
.
searchroomGroup
&&
search
.
searchroomGroup
.
length
==
0
)
{
search
.
searchroomGroup
.
push
({
roomNum
:
1
,
...
...
@@ -350,48 +278,6 @@ export default defineComponent({
data
.
HotelConceptTypes
=
useHotel
.
getHotelConcept
();
data
.
CityCode
=
data
.
CityCode
;
const
methods
=
{
//设置房间里面成人数改变总成人数和儿童数
setPeopleNum
()
{
data
.
auditNum
=
0
;
data
.
childNum
=
0
;
search
.
searchroomGroup
.
forEach
((
x
)
=>
{
data
.
auditNum
+=
x
.
numberOfAdults
;
data
.
childNum
+=
x
.
numberOfChildren
;
});
if
(
data
.
auditNum
==
null
||
data
.
auditNum
==
undefined
)
{
data
.
auditNum
=
1
;
}
if
(
data
.
childNum
==
null
||
data
.
childNum
==
undefined
)
{
data
.
childNum
=
1
;
}
},
//房间数改变
getRoomList
(
roomNum
)
{
let
length
=
search
.
searchroomGroup
.
length
;
if
(
roomNum
>
length
)
{
for
(
let
i
=
1
;
i
<=
roomNum
-
length
;
i
++
)
{
let
obj
=
{
roomNum
:
i
,
numberOfAdults
:
1
,
numberOfChildren
:
0
,
};
search
.
searchroomGroup
.
push
(
obj
);
}
}
else
{
search
.
searchroomGroup
=
search
.
searchroomGroup
.
filter
((
x
:
any
,
i
:
Number
)
=>
{
if
(
roomNum
>
i
)
return
x
;
});
}
data
.
auditNum
=
0
;
data
.
childNum
=
0
;
search
.
searchroomGroup
.
forEach
((
x
)
=>
{
data
.
auditNum
+=
x
.
numberOfAdults
;
data
.
childNum
+=
x
.
numberOfChildren
;
});
data
.
isShowPop
=
true
;
search
.
auditNum
=
data
.
auditNum
;
search
.
childNum
=
data
.
childNum
;
},
dateRangeHandler
(
e
:
any
)
{
search
.
CheckInDate
=
`
${
e
.
from
.
year
}
/
${
e
.
from
.
month
}
/
${
e
.
from
.
day
}
`
;
search
.
CheckOutDate
=
`
${
e
.
to
.
year
}
/
${
e
.
to
.
month
}
/
${
e
.
to
.
day
}
`
;
...
...
@@ -404,17 +290,13 @@ export default defineComponent({
);
},
setData
()
{
// localStorage.removeItem(DirtionmaryHelper.SCATTERED_HOTEL_DATE);
// let d = {
// searchroomGroup: search.searchroomGroup,
// room: data.room,
// auditNum: data.auditNum,
// childNum: data.childNum,
// arrivalDate: search.arrivalDate,
// departureDate: search.departureDate,
// };
//先不缓存
//localStorage.setItem(DirtionmaryHelper.SCATTERED_HOTEL_DATE, JSON.stringify(d));
localStorage
.
removeItem
(
DirtionmaryHelper
.
SCATTERED_DiDaHOTEL_DATE
);
let
d
=
{
CheckInDate
:
search
.
CheckInDate
,
CheckOutDate
:
search
.
CheckOutDate
,
};
// 先不缓存
localStorage
.
setItem
(
DirtionmaryHelper
.
SCATTERED_DiDaHOTEL_DATE
,
JSON
.
stringify
(
d
));
},
//获取道旅餐食类型
getdidaMealType
()
{
...
...
@@ -455,6 +337,7 @@ export default defineComponent({
});
}
data
.
Areas
=
newCity
;
search
.
CityCode
=
data
.
Areas
[
0
].
CityCode
;
}
});
},
...
...
@@ -476,6 +359,9 @@ export default defineComponent({
search
.
Name_CN
=
data
.
keyWords
;
return
setCnt
;
});
watch
(
search
,
(
n
,
o
)
=>
{
methods
.
setData
()
})
onMounted
(()
=>
{
methods
.
getdidaCity
();
methods
.
getdidaBedType
();
...
...
src/components/scattered/dida/DidaListTable.vue
View file @
9ce32917
...
...
@@ -220,11 +220,11 @@ export default defineComponent({
setup
()
{
const
$q
=
useQuasar
();
const
{
t
}
=
useI18n
();
const
search
=
inject
(
DirtionmaryHelper
.
HOTEL_QUERY_PARAM
)
as
any
;
const
search
=
inject
(
DirtionmaryHelper
.
DiDa
HOTEL_QUERY_PARAM
)
as
any
;
const
$router
=
useRouter
();
watch
(
search
,
(
n
,
o
)
=>
{
if
(
data
.
loading
)
return
;
console
.
log
(
"search change"
);
//
if (data.loading) return;
console
.
log
(
"search change"
,
search
);
data
.
pages
.
pageIndex
=
1
;
methods
.
initHotels
();
});
...
...
src/config/dictionary.ts
View file @
9ce32917
...
...
@@ -15,16 +15,30 @@ class DirtionmaryHelper {
*/
static
readonly
MENU_KEYS
=
'Current_Menu_Cehck'
/**
* 菜單選項
*/
static
readonly
DIDAMENU_KEYS
=
'DIDACurrent_Menu_Cehck'
/**
* 子頁面傳遞給主界面的標題KEY
*/
static
readonly
PAGE_TITLE_KEY
=
'page_title_key'
/**
* 子頁面傳遞給主界面的標題KEY
*/
static
readonly
DiDaPAGE_TITLE_KEY
=
'DiDapage_title_key'
/**
* 酒店查詢參數
*/
static
readonly
HOTEL_QUERY_PARAM
=
'hotelqueryparam'
/**
* 道旅酒店查詢參數
*/
static
readonly
DiDaHOTEL_QUERY_PARAM
=
'hoteldidaqueryparam'
/**
* 购物车参数
*/
...
...
@@ -70,6 +84,11 @@ class DirtionmaryHelper {
*/
static
readonly
SCATTERED_HOTEL_DATE
=
"scatteredhoteldate"
/**
* 散客预约酒店缓存搜索客房数据等
*/
static
readonly
SCATTERED_DiDaHOTEL_DATE
=
"scattereddidahoteldate"
/**
* 散客预约酒店缓存客房下单是详情数据
*/
...
...
src/pages/scattered/didaDetails.vue
View file @
9ce32917
...
...
@@ -9,8 +9,8 @@
<div
class=
"text-weight-bold fz20 ellipsis desktop-only"
>
{{
hotelSummary
.
Name_CN
}}
</div>
<div
:class=
"
{'q-pt-sm':$q.platform.is.mobile}">
<span
class=
" text-orange text-weight-bold fz18"
:class=
"
{'q-pl-lg':$q.platform.is.desktop}">
円
{{
urlParamsMsg
.
lowrateBySetCurrency
}}
CNY
{{
hotelSummary
.
Name_CN
}}
</span>
<span
class=
"text-grey-8 q-pl-xs"
>
/
{{
$t
(
'v101.scattered.qi'
)
}}
</span>
</div>
...
...
@@ -226,7 +226,8 @@ import DidaService from 'src/api/didahotel'
pageTitle
.
value
=
t
(
'v101.scatteredDetails.xiangqing'
)
data
.
scrollStyle
=
useScrollModule
().
scrollStyle
data
.
getParamsMsg
=
JSON
.
parse
(
localStorage
.
getItem
(
DirtionmaryHelper
.
SCATTERED_HOTEL_DATE
))
data
.
getParamsMsg
=
JSON
.
parse
(
localStorage
.
getItem
(
DirtionmaryHelper
.
SCATTERED_DiDaHOTEL_DATE
))
console
.
log
(
"111"
,
localStorage
.
getItem
(
DirtionmaryHelper
.
SCATTERED_DiDaHOTEL_DATE
));
data
.
urlParamsMsg
=
currentRouter
.
currentRoute
.
value
.
params
const
search
=
reactive
({
hotelId
:
data
.
urlParamsMsg
.
hotelId
,
...
...
@@ -283,254 +284,6 @@ import DidaService from 'src/api/didahotel'
data
.
h
.
List
=
[]
data
.
h
.
List
.
push
(
"http://upload.oytour.com/image/index?filePath=/Upload/DMC/20200212065038003.jpg&process=resize,m_filt,w_663,h_"
)
data
.
images
=
data
.
h
.
List
//拆分网络连接
if
(
data
.
h
.
internetAccessibilityOfTheRoom
!=
""
)
{
data
.
InterArr
=
[]
as
Array
<
any
>
;
let
InternetArr
=
data
.
h
.
internetAccessibilityOfTheRoom
.
split
(
","
);
InternetArr
.
forEach
((
x
:
String
,
index
:
Number
)
=>
{
if
(
x
==
1
){
data
.
InterArr
.
push
(
data
.
InterList
[
index
].
name
)
}
})
}
//拆分温泉
if
(
data
.
h
.
bathAndBathAmenities
!=
""
)
{
data
.
HotSpring
=
[];
data
.
bathRoom
=
[];
let
HotSpring
=
data
.
h
.
bathAndBathAmenities
.
split
(
","
);
data
.
bathRoom
=
HotSpring
.
slice
(
2
,
11
);
if
(
HotSpring
[
0
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
0
].
name
);
}
else
if
(
HotSpring
[
0
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
1
].
name
);
}
else
if
(
HotSpring
[
0
]
==
3
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
2
].
name
);
}
else
if
(
HotSpring
[
0
]
==
4
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
3
].
name
);
}
if
(
HotSpring
[
1
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
4
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ0'
)}
)`
);
}
else
if
(
HotSpring
[
1
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
4
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ1'
)}
)`
);
}
if
(
HotSpring
[
11
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
5
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
11
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
5
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
12
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
6
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
12
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
6
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
13
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
7
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
13
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
7
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
14
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
8
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
14
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
8
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
15
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
9
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
15
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
9
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
16
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
10
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
16
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
10
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
17
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
11
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
17
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
11
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
18
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
12
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
18
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
12
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
19
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
13
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
19
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
13
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
20
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
14
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
20
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
14
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
21
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
15
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
21
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
15
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
22
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
16
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
22
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
16
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
23
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
17
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
23
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
17
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
24
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
18
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
24
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
18
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
25
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
19
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
25
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
19
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
26
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
20
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
26
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
20
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
27
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
21
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesY1'
)}
)`
);
}
if
(
HotSpring
[
28
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
22
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ0'
)}
)`
);
}
else
if
(
HotSpring
[
28
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
22
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ1'
)}
)`
);
}
if
(
HotSpring
[
29
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
23
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF0'
)}
)`
);
}
else
if
(
HotSpring
[
29
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
23
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesMF1'
)}
)`
);
}
if
(
HotSpring
[
30
]
==
1
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
24
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ0'
)}
)`
);
}
else
if
(
HotSpring
[
29
]
==
2
)
{
data
.
HotSpring
.
push
(
data
.
HotSpringList
[
24
].
name
+
`(
${
t
(
'v101.scatteredDetails.SpringStatesTJ1'
)}
)`
);
}
}
//拆分酒店服务与设施
if
(
data
.
h
.
roomEquipments
!=
""
)
{
let
ServeArr
=
data
.
h
.
roomEquipments
.
split
(
","
);
data
.
Services
=
[];
if
(
ServeArr
[
0
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
0
].
name
);
}
if
(
ServeArr
[
1
]
==
0
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
1
].
name
);
}
if
(
ServeArr
[
1
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
2
].
name
);
}
if
(
ServeArr
[
1
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
3
].
name
);
}
if
(
ServeArr
[
1
]
==
3
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
4
].
name
);
}
if
(
ServeArr
[
1
]
==
4
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
5
].
name
);
}
if
(
ServeArr
[
2
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
6
].
name
);
}
if
(
ServeArr
[
2
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
7
].
name
);
}
if
(
ServeArr
[
2
]
==
3
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
8
].
name
);
}
if
(
ServeArr
[
2
]
==
4
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
9
].
name
);
}
if
(
ServeArr
[
3
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
10
].
name
);
}
if
(
ServeArr
[
3
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
11
].
name
);
}
if
(
ServeArr
[
3
]
==
3
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
12
].
name
);
}
if
(
ServeArr
[
3
]
==
4
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
13
].
name
);
}
if
(
ServeArr
[
4
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
14
].
name
);
}
if
(
ServeArr
[
4
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
15
].
name
);
}
if
(
ServeArr
[
4
]
==
3
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
16
].
name
);
}
if
(
ServeArr
[
4
]
==
4
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
17
].
name
);
}
if
(
ServeArr
[
5
]
==
0
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
18
].
name
);
}
if
(
ServeArr
[
5
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
19
].
name
);
}
if
(
ServeArr
[
5
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
20
].
name
);
}
if
(
ServeArr
[
5
]
==
3
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
21
].
name
);
}
if
(
ServeArr
[
5
]
==
4
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
22
].
name
);
}
if
(
ServeArr
[
6
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
23
].
name
);
}
if
(
ServeArr
[
6
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
24
].
name
);
}
if
(
ServeArr
[
7
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
25
].
name
);
}
if
(
ServeArr
[
7
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
26
].
name
);
}
if
(
ServeArr
[
8
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
27
].
name
);
}
if
(
ServeArr
[
8
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
28
].
name
);
}
if
(
ServeArr
[
9
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
29
].
name
);
}
if
(
ServeArr
[
9
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
30
].
name
);
}
if
(
ServeArr
[
10
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
31
].
name
);
}
if
(
ServeArr
[
11
]
==
1
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
32
].
name
);
}
if
(
ServeArr
[
11
]
==
2
)
{
data
.
Services
.
push
(
data
.
ServicesList
[
33
].
name
);
}
}
methods
.
initMap
(
data
.
hotelSummary
.
Longitude
,
data
.
hotelSummary
.
Latitude
)
}
else
{
message
.
errorMsg
(
r
.
data
.
message
)
...
...
src/pages/scattered/didaHotel.vue
View file @
9ce32917
...
...
@@ -60,11 +60,13 @@
MaxPrice
:
''
,
//最大金额
Name_CN
:
""
,
//酒店名字
CityCode
:
""
,
searchroomGroup
:
[]
as
Array
<
ang
>
,
//客房数
searchHotelIdList
:
[],
})
provide
(
DirtionmaryHelper
.
HOTEL_QUERY_PARAM
,
search
)
provide
(
DirtionmaryHelper
.
DiDa
HOTEL_QUERY_PARAM
,
search
)
const
menu
=
inject
(
DirtionmaryHelper
.
MENU_KEYS
)
as
any
const
menu
=
inject
(
DirtionmaryHelper
.
DIDA
MENU_KEYS
)
as
any
menu
.
value
=
23
const
methods
=
{}
return
{
...
...
src/router/routes.ts
View file @
9ce32917
...
...
@@ -43,6 +43,9 @@ const routes: RouteRecordRaw[] = [{
path
:
'/didahotel'
,
//道旅酒店
component
:
()
=>
import
(
'pages/scattered/didaHotel.vue'
)
},
{
path
:
'/scattered/HotelDetails/:hotelId/:groupBookingFlg/:lowrateBySetCurrency'
,
component
:
()
=>
import
(
'pages/scattered/hotelDetails.vue'
)
},
{
path
:
'/scattered/didaDetails/:hotelId'
,
component
:
()
=>
...
...
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