Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gxpt_wechat
Overview
Overview
Details
Activity
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
pseer
gxpt_wechat
Commits
623687f3
Commit
623687f3
authored
Mar 01, 2024
by
zhangzhen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
细节优化
parent
e09cb261
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
329 additions
and
249 deletions
+329
-249
index.vue
pages/deviceManage/index.vue
+24
-14
index.vue
pages/index/index.vue
+282
-227
orderResult.vue
pages/orderResult/orderResult.vue
+8
-7
list.vue
setting/license-plate-number/list.vue
+15
-1
No files found.
pages/deviceManage/index.vue
View file @
623687f3
...
...
@@ -59,13 +59,10 @@
</view>
<view
class=
"part"
v-if=
"val.deviceList.el"
>
<text
class=
"text-title"
>
取电开关
</text>
<view
v-if=
"val.deviceList.el.status >=1"
class=
""
>
<!--
<button
@
tap=
"onDeviceRun(20,val.deviceList.el.devId)"
class=
"cu-btn bg-blue margin-right-sm"
>
开启
</button>
<button
@
tap=
"onDeviceRun(40,val.deviceList.el.devId)"
class=
"cu-btn bg-blue"
>
关闭
</button>
-->
<switch
data-type=
"door"
:data-index=
"index"
:data-k=
"k"
:data-id=
"val.deviceList.el.roomId"
@
change=
"onSwitchDoor"
:class=
"val.deviceList.el.status==3?'checked':''"
:checked=
"val.deviceList.el.status==3?true:false"
color=
"#e54d42"
></switch>
</view>
<view
v-else
class=
""
>
<text>
离线
</text>
<view
class=
""
>
<button
@
tap=
"onDeviceRun(20,val.deviceList.el.roomId)"
class=
"cu-btn bg-blue margin-right-sm"
>
开启
</button>
<button
@
tap=
"onDeviceRun(40,val.deviceList.el.roomId)"
class=
"cu-btn bg-blue"
>
关闭
</button>
<!--
<switch
data-type=
"door"
:data-index=
"index"
:data-k=
"k"
:data-id=
"val.deviceList.el.roomId"
@
change=
"onSwitchDoor"
:class=
"val.deviceList.el.status==3?'checked':''"
:checked=
"val.deviceList.el.status==3?true:false"
color=
"#e54d42"
></switch>
-->
</view>
</view>
</view>
...
...
@@ -235,10 +232,10 @@ import moment from "@/common/moment";
this
.
list
[
index
].
show
=
!
this
.
list
[
index
].
show
;
this
.
$forceUpdate
();
},
onSwitchDoor
(
e
){
let
t
=
e
.
target
.
value
?
20
:
40
this
.
onDeviceRun
(
t
,
e
.
target
.
dataset
.
id
)
},
//
onSwitchDoor(e){
//
let t = e.target.value? 20: 40
//
this.onDeviceRun(t,e.target.dataset.id)
//
},
onDeviceRun
(
opType
,
roomId
){
let
that
=
this
;
if
(
this
.
deviceTime
){
...
...
@@ -262,10 +259,23 @@ import moment from "@/common/moment";
icon
:
"success"
,
title
:
this
.
optionStatus
[
opType
]
+
"成功"
})
setTimeout
(()
=>
{
that
.
deviceTime
=
false
;
},
5000
)
}
else
{
uni
.
showToast
({
icon
:
"none"
,
title
:
'操作失败'
})
}
setTimeout
(()
=>
{
that
.
deviceTime
=
false
;
},
5000
)
}).
catch
(
err
=>
{
uni
.
showToast
({
icon
:
"none"
,
title
:
'操作失败'
})
setTimeout
(()
=>
{
that
.
deviceTime
=
false
;
},
5000
)
})
}
}
...
...
pages/index/index.vue
View file @
623687f3
<
template
>
<view
class=
"home"
@
touchstart=
"onTouchStart"
@
touchend=
"onTouchEnd"
>
<f-navbar
:title=
"
'凑角-'+storeInfo.name"
:isShowTransparentTitle=
"false"
:isShowLeft=
"false"
fontColor=
"#ffffff"
:fontSize=
"38
"
bgColor=
"#e40583"
:scrollTop=
"scrollTop"
navbarType=
'5'
></f-navbar>
<f-navbar
:title=
"
storeInfo.name"
:isShowTransparentTitle=
"false"
:isShowLeft=
"false"
fontColor=
"#ffffff
"
:fontSize=
"38"
bgColor=
"#e40583"
:scrollTop=
"scrollTop"
navbarType=
'5'
></f-navbar>
<scroll-view
:enable-flex=
"true"
class=
"scroll-view"
scroll-y=
"true"
@
scroll=
"onScroll"
>
<view
class=
"content-box"
>
<view
class=
"header-content"
:style=
"
{paddingTop:statusBarHeight+'px' }">
<view
class=
"header-content"
:style=
"
{paddingTop:statusBarHeight+'px' }">
<image
:src=
"assetsPath + '/banner.png'"
mode=
"widthFix"
></image>
</view>
<view
class=
"store-nav"
>
...
...
@@ -14,27 +13,29 @@
</view>
<view
class=
"flex-col content"
>
<view
class=
"flex-row title-content"
>
<text>
凑角共享棋牌室
</text>
<button
class=
"cu-btn round text-bold"
@
tap=
"onNavToChangeStore"
>
切换门店
</button>
<text
class=
"text-bold"
>
{{
storeInfo
.
name
}}
</text>
<button
class=
"cu-btn round text-bold"
@
tap=
"onNavToChangeStore"
>
切换门店
</button>
</view>
<view
class=
"flex-1 tips-content"
>
<image
class=
"bg-img"
:src=
"assetsPath+ '/44@2x.png'"
mode=
"scaleToFill"
></image>
<view
class=
"flex-between tips-box"
>
<view
class=
"flex-col part-left"
>
<view
class=
"flex-1 store-name"
>
<text>
{{
storeInfo
.
name
}}
</text>
</view>
<view
v-if=
"storeInfo && storeInfo.distance"
class=
"flex-1 flex-row"
>
<view
v-if=
"storeInfo && storeInfo.distance"
class=
" flex-row"
>
<text
class=
"cuIcon-locationfill text-red text-dw"
></text>
<text>
距您
{{
storeInfo
.
distance
}}
公里
</text>
</view>
<view
v-else
class=
"flex-1 flex-row"
>
<view
v-else
class=
" flex-row"
>
</view>
<view
class=
"store-name"
>
<text
class=
"text-gray"
>
{{
storeInfo
.
address
}}
</text>
</view>
</view>
<view
class=
"flex-row part-right"
>
<image
:src=
"assetsPath +'/map_icon.png'"
mode=
"scaleToFill"
@
tap=
"onNavToMap"
></image>
<image
:src=
"assetsPath +'/phone_icon.png'"
mode=
"scaleToFill"
@
tap=
"onOpenTelphone"
>
<image
:src=
"assetsPath +'/map_icon.png'"
mode=
"scaleToFill"
@
tap=
"onNavToMap"
>
</image>
<image
:src=
"assetsPath +'/phone_icon.png'"
mode=
"scaleToFill"
@
tap=
"onOpenTelphone"
>
</image>
</view>
</view>
...
...
@@ -52,7 +53,8 @@
@
tap=
"onNavToOrder(item)"
>
<view
class=
"itemRow listStyle"
>
<view
class=
"relative part-top"
>
<image
class=
"room-img"
:src=
"item.images[0]"
mode=
"aspectFill"
@
tap
.
stop=
"onPreview(item.images)"
></image>
<image
class=
"room-img"
:src=
"item.images[0]"
mode=
"aspectFill"
@
tap
.
stop=
"onPreview(item.images)"
></image>
</view>
<view
class=
"flex-col part-bottom"
>
<view
class=
"flex-between room-title"
>
...
...
@@ -64,12 +66,15 @@
<view
class=
'cu-tag radius line-red'
v-if=
"item.isDirtyRoom >= 1"
>
未保洁
</view>
<view
v-else
class=
'cu-tag radius'
:class=
"item.status==0?'line-green':item.status==1?'line-orange':'line-blue'"
>
{{
roomStatusEnum
[
item
.
status
]
}}
</view>
<view
v-else
class=
'cu-tag radius'
:class=
"item.status==0?'line-green':item.status==1?'line-orange':'line-blue'"
>
{{
roomStatusEnum
[
item
.
status
]
}}
</view>
</view>
</view>
</view>
<view
class=
"facilitie-box"
>
<view
v-for=
"(val,i) in item.facilities"
:key=
"i"
v-if=
"i
<
=
7
"
class=
'cu-tag radius bg-brown'
>
<view
v-for=
"(val,i) in item.facilities"
:key=
"i"
v-if=
"i
<
=
7
"
class=
'cu-tag radius bg-brown'
>
<text>
{{
facilitieList
[
val
]
}}
</text>
</view>
</view>
...
...
@@ -98,14 +103,16 @@
</view>
<view
class=
"flex-row list-point-box"
>
<view
v-for=
"(val,k) in list"
:key=
"k"
class=
"flex-1 flex-col"
>
<view
class=
"box"
:class=
"item.roomStatusList && item.roomStatusList[val].status==1 && item.roomStatusList[val].m>=59?'bg-pink':'bg-gray'"
>
<view
class=
"box"
:class=
"item.roomStatusList && item.roomStatusList[val].status==1 && item.roomStatusList[val].m>=59?'bg-pink':'bg-gray'"
>
</view>
<text
class=
"text-gray text-sm"
>
{{
val
==
24
?
'次日'
:
val
>
24
?
val
-
24
:
val
}}
</text>
</view>
</view>
</view>
<u-empty
v-if=
"!roomVoList ||roomVoList.lenght
<
=
0
"
text=
"门店暂无可使用房间"
textColor=
'#C1C1C1'
></u-empty>
<u-empty
v-if=
"!roomVoList ||roomVoList.lenght
<
=
0
"
text=
"门店暂无可使用房间"
textColor=
'#C1C1C1'
></u-empty>
</view>
</view>
</scroll-view>
...
...
@@ -117,12 +124,12 @@
<text
class=
"text-black text-xl text-bold"
>
提示
</text>
</view>
<view
class=
"content"
>
<text
class=
"text-black text-lg"
>
未授权位置信息,请先授权,以便获取最近的门店信息
</text>
<text
class=
"text-black text-lg"
>
未授权位置信息,请先授权,以便获取最近的门店信息
</text>
</view>
</view>
<view
class=
"flex-between btn-box"
>
<button
class=
"cu-btn bg-white block"
@
tap=
"onClose"
>
关闭
</button>
<button
class=
"cu-btn bg-pink block"
@
tap=
"onNavToSet"
>
去授权
</button>
<button
class=
"cu-btn bg-pink block"
@
tap=
"onNavToSet"
>
去授权
</button>
</view>
</view>
</uni-popup>
...
...
@@ -150,7 +157,7 @@
import
{
getDictItem
}
from
"@/utils/tools.js"
import
moment
from
'@/common/moment'
;
import
moment
from
'@/common/moment'
;
export
default
{
components
:
{
...
...
@@ -208,13 +215,13 @@
}
],
facilitieList
:
{},
roomTypeEnum
:{},
roomStatusEnum
:{},
roomTypeEnum
:
{},
roomStatusEnum
:
{},
show
:
true
,
timer
:
null
,
roomVoList
:[],
list
:
[
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
],
objListDate
:[],
roomVoList
:
[],
list
:
[
0
,
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
],
objListDate
:
[],
timer2
:
null
}
},
...
...
@@ -239,19 +246,19 @@
this
.
$refs
.
loginPop
.
open
();
},
methods
:
{
onSetShowPoint
(){
onSetShowPoint
()
{
let
h
=
new
Date
().
getHours
();
let
list
=
[]
for
(
let
i
=
0
;
i
<
24
;
i
++
)
{
list
.
push
(
h
+
i
)
for
(
let
i
=
0
;
i
<
24
;
i
++
)
{
list
.
push
(
h
+
i
)
}
this
.
list
=
list
;
this
.
onLoading
()
},
onGetSysConfig
(){
systemConfig
().
then
(
res
=>
{
onGetSysConfig
()
{
systemConfig
().
then
(
res
=>
{
uni
.
setStorage
({
key
:
'sysConfig'
,
key
:
'sysConfig'
,
data
:
res
.
data
.
rows
})
})
...
...
@@ -259,60 +266,60 @@
onGetDicts
()
{
let
dicts
=
[]
let
dictStr
=
uni
.
getStorageSync
(
'dicts'
)
if
(
dictStr
)
{
let
dicts
=
JSON
.
parse
(
dictStr
)
if
(
dictStr
)
{
let
dicts
=
JSON
.
parse
(
dictStr
)
this
.
facilitieList
=
getDictItem
(
dicts
,
"indoor_facilities"
);
this
.
roomTypeEnum
=
getDictItem
(
dicts
,
"store_room_type"
);
this
.
roomStatusEnum
=
getDictItem
(
dicts
,
"store_room_status"
);
if
(
this
.
roomVoList
.
length
)
{
if
(
this
.
roomVoList
.
length
)
{
this
.
$forceUpdate
()
}
}
dictList
().
then
(
res
=>
{
dicts
=
res
.
data
.
data
;
uni
.
setStorageSync
(
'dicts'
,
JSON
.
stringify
(
res
.
data
.
data
))
this
.
facilitieList
=
getDictItem
(
dicts
,
"indoor_facilities"
);
this
.
roomTypeEnum
=
getDictItem
(
dicts
,
"store_room_type"
);
this
.
roomStatusEnum
=
getDictItem
(
dicts
,
"store_room_status"
);
if
(
this
.
roomVoList
.
length
)
{
this
.
$forceUpdate
()
}
})
dictList
().
then
(
res
=>
{
dicts
=
res
.
data
.
data
;
uni
.
setStorageSync
(
'dicts'
,
JSON
.
stringify
(
res
.
data
.
data
))
this
.
facilitieList
=
getDictItem
(
dicts
,
"indoor_facilities"
);
this
.
roomTypeEnum
=
getDictItem
(
dicts
,
"store_room_type"
);
this
.
roomStatusEnum
=
getDictItem
(
dicts
,
"store_room_status"
);
if
(
this
.
roomVoList
.
length
)
{
this
.
$forceUpdate
()
}
})
},
onLoading
()
{
uni
.
showLoading
({
title
:
'加载中'
title
:
'加载中'
})
if
(
this
.
timer2
)
{
if
(
this
.
timer2
)
{
clearTimeout
(
this
.
timer2
);
this
.
timer2
=
null
;
}
if
(
uni
.
getStorageSync
(
"latitude"
)
&&
uni
.
getStorageSync
(
"longitude"
))
{
this
.
latitude
=
uni
.
getStorageSync
(
"latitude"
);
if
(
uni
.
getStorageSync
(
"latitude"
)
&&
uni
.
getStorageSync
(
"longitude"
))
{
this
.
latitude
=
uni
.
getStorageSync
(
"latitude"
);
this
.
longitude
=
uni
.
getStorageSync
(
"longitude"
);
this
.
onGetListStore
()
}
uni
.
getLocation
({
type
:
"gcj02"
,
complete
:
(
res
)
=>
{
if
(
res
.
errMsg
==
'getLocation:ok'
)
{
if
(
res
.
errMsg
==
'getLocation:ok'
)
{
this
.
latitude
=
res
.
latitude
;
this
.
longitude
=
res
.
longitude
;
uni
.
setStorageSync
(
"latitude"
,
res
.
latitude
)
uni
.
setStorageSync
(
"longitude"
,
res
.
longitude
)
this
.
timer2
=
setTimeout
(()
=>
{
this
.
timer2
=
setTimeout
(()
=>
{
this
.
onGetListStore
()
},
5000
)
}
else
{
},
5000
)
}
else
{
this
.
$refs
.
popup
.
open
()
}
}
})
},
...
...
@@ -324,46 +331,50 @@
nowLongitude
:
this
.
longitude
}).
then
(
res
=>
{
if
(
res
.
data
.
code
==
200
&&
res
.
data
.
data
.
length
)
{
let
obj
=
{}
if
(
uni
.
getStorageSync
(
"storeId"
))
{
obj
=
res
.
data
.
data
.
find
(
item
=>
item
.
id
===
uni
.
getStorageSync
(
"storeId"
))
}
else
{
obj
=
res
.
data
.
data
[
0
];
uni
.
setStorageSync
(
"storeId"
,
obj
.
id
);
}
that
.
storeInfo
=
{
...
obj
,
distance
:
obj
.
distance
?
Number
(
obj
.
distance
.
substr
(
0
,
8
)).
toFixed
(
2
):
0
}
that
.
onGetRoomList
(
obj
.
id
)
let
obj
=
{}
if
(
uni
.
getStorageSync
(
"storeId"
))
{
obj
=
res
.
data
.
data
.
find
(
item
=>
item
.
id
===
uni
.
getStorageSync
(
"storeId"
))
}
else
{
obj
=
res
.
data
.
data
[
0
];
uni
.
setStorageSync
(
"storeId"
,
obj
.
id
);
}
that
.
storeInfo
=
{
...
obj
,
distance
:
obj
.
distance
?
Number
(
obj
.
distance
.
substr
(
0
,
8
)).
toFixed
(
2
)
:
0
}
that
.
onGetRoomList
(
obj
.
id
)
}
})
},
onGetRoomList
(
storeId
){
onGetRoomList
(
storeId
)
{
let
that
=
this
;
getRoomList
({
storeId
}).
then
(
res
=>
{
if
(
res
.
data
.
code
==
200
&&
res
.
data
.
data
.
length
){
getRoomList
({
storeId
}).
then
(
res
=>
{
if
(
res
.
data
.
code
==
200
&&
res
.
data
.
data
.
length
)
{
that
.
roomVoList
=
res
.
data
.
data
.
map
(
item
=>
{
return
{
...
item
,
facilities
:
item
.
facilities
?
item
.
facilities
.
split
(
","
)
:
[],
images
:
item
.
images
?
item
.
images
.
split
(
","
).
map
(
val
=>
this
.
hostUrl
+
val
)
:
[],
roomStatusList
:
item
.
roomStatusList
.
map
(
val
=>
{
return
{
...
val
,
m
:
val
.
endHoldTime
?
Number
(
moment
(
val
.
endHoldTime
).
format
(
"mm"
)):
0
}
})
}
})
}
else
{
return
{
...
item
,
facilities
:
item
.
facilities
?
item
.
facilities
.
split
(
","
)
:
[],
images
:
item
.
images
?
item
.
images
.
split
(
","
).
map
(
val
=>
this
.
hostUrl
+
val
)
:
[],
roomStatusList
:
item
.
roomStatusList
.
map
(
val
=>
{
return
{
...
val
,
m
:
val
.
endHoldTime
?
Number
(
moment
(
val
.
endHoldTime
).
format
(
"mm"
))
:
0
}
})
}
})
}
else
{
that
.
roomVoList
=
[]
}
uni
.
hideLoading
()
})
},
onGetSortDistance
(
i
=
0
){
if
(
i
>=
this
.
roomVoList
.
length
)
{
onGetSortDistance
(
i
=
0
)
{
if
(
i
>=
this
.
roomVoList
.
length
)
{
// this.$forceUpdate();
return
}
...
...
@@ -371,22 +382,22 @@
storeId
:
this
.
storeInfo
.
id
,
roomId
:
this
.
roomVoList
[
i
].
id
,
day
:
moment
().
format
(
"YYYY-MM-DD"
),
orderType
:
1
}).
then
(
res
=>
{
if
(
res
.
data
.
code
==
200
)
{
let
list
=
res
.
data
.
data
.
map
(
item
=>
{
orderType
:
1
}).
then
(
res
=>
{
if
(
res
.
data
.
code
==
200
)
{
let
list
=
res
.
data
.
data
.
map
(
item
=>
{
return
{
...
item
,
m
:
item
.
endHoldTime
?
Number
(
moment
(
item
.
endHoldTime
).
format
(
"mm"
)):
0
m
:
item
.
endHoldTime
?
Number
(
moment
(
item
.
endHoldTime
).
format
(
"mm"
))
:
0
}
});
this
.
roomVoList
=
this
.
roomVoList
.
map
((
item
,
k
)
=>
{
return
{
...
item
,
list
:
i
===
k
?
list
:
item
.
list
&&
item
.
list
.
length
?
item
.
list
:
[]
}
})
this
.
onGetSortDistance
(
++
i
)
this
.
roomVoList
=
this
.
roomVoList
.
map
((
item
,
k
)
=>
{
return
{
...
item
,
list
:
i
===
k
?
list
:
item
.
list
&&
item
.
list
.
length
?
item
.
list
:
[]
}
})
this
.
onGetSortDistance
(
++
i
)
}
})
},
...
...
@@ -396,10 +407,10 @@
})
},
onNavToOrder
(
item
)
{
if
(
item
.
isDirtyRoom
>=
1
)
{
if
(
item
.
isDirtyRoom
>=
1
)
{
uni
.
showToast
({
icon
:
"none"
,
title
:
'当前房间未保洁,无法预定,请选择其他房间'
icon
:
"none"
,
title
:
'当前房间未保洁,无法预定,请选择其他房间'
})
return
}
...
...
@@ -464,26 +475,26 @@
this
.
show
=
true
}
},
onClose
(){
onClose
()
{
this
.
$refs
.
popup
.
close
()
},
onNavToSet
(){
onNavToSet
()
{
uni
.
openSetting
({
scope
:
"scope.userLocation"
,
scope
:
"scope.userLocation"
,
complete
:
(
res
)
=>
{
if
(
res
.
authSetting
[
'scope.userLocation'
])
{
if
(
res
.
authSetting
[
'scope.userLocation'
])
{
this
.
onClose
();
this
.
onLoading
()
}
}
})
},
onPreview
(
val
){
onPreview
(
val
)
{
uni
.
previewImage
({
current
:
0
,
urls
:
val
,
complete
:
(
res
)
=>
{
console
.
log
(
res
,
"预览图片"
)
current
:
0
,
urls
:
val
,
complete
:
(
res
)
=>
{
console
.
log
(
res
,
"预览图片"
)
}
})
}
...
...
@@ -530,6 +541,7 @@
width
:
100%
;
min-height
:
280
upx
;
background-color
:
#E40583
;
image
{
display
:
block
;
width
:
100%
;
...
...
@@ -574,7 +586,7 @@
text
{
font-size
:
40
rpx
;
font-weight
:
5
00
;
font-weight
:
6
00
;
color
:
#3D3D3D
;
line-height
:
58
rpx
;
margin-left
:
158
rpx
;
...
...
@@ -582,7 +594,7 @@
}
.cu-btn
{
background
:
linear-gradient
(
to
right
,
rgba
(
250
,
219
,
73
,
1
),
rgba
(
250
,
219
,
75
,
1
),
rgba
(
255
,
167
,
81
,
1
));
background
:
linear-gradient
(
to
right
,
rgba
(
250
,
219
,
73
,
1
),
rgba
(
250
,
219
,
75
,
1
),
rgba
(
255
,
167
,
81
,
1
));
box-shadow
:
0
0
6px
rgba
(
0
,
0
,
0
,
0.3
);
color
:
#ffffff
;
font-size
:
32
upx
;
...
...
@@ -599,7 +611,7 @@
//
text-align
:
center
;
//
color
:
#3D3D3D
;
//
padding
:
0
;
//
height
:
56
rpx
!important
;
//
height
:
56
rpx
!important
;
//
font-size
:
28
rpx
!important
;
//
background-color
:
#ffffff
!important
;
//
color
:
#130F26
!important
;
...
...
@@ -616,6 +628,7 @@
width
:
100%
;
background
:
rgba
(
248
,
250
,
251
,
0.5
);
border-radius
:
0
0
29
rpx
29
rpx
;
.bg-img
{
width
:
100%
;
height
:
100%
;
...
...
@@ -633,20 +646,19 @@
.part-left
{
display
:
flex
;
margin-left
:
36
upx
;
justify-content
:
center
;
.store-name
{
display
:
flex
;
align-items
:
center
;
font-size
:
34
upx
;
font-weight
:
700
;
color
:
#3D3D3D
;
font-size
:
24
upx
;
margin-top
:
1%
;
}
.flex-row
{
display
:
flex
;
align-items
:
center
;
margin-bottom
:
5%
;
//
margin-top
:
5%
;
font-size
:
26
rpx
;
font-weight
:
400
;
color
:
#767475
;
...
...
@@ -656,7 +668,8 @@
.part-right
{
align-items
:
center
;
margin-right
:
12
upx
;
height
:
100%
;
height
:
100%
;
image
{
width
:
38px
;
height
:
38px
;
...
...
@@ -684,7 +697,7 @@
.banner2
{
width
:
674
upx
;
margin
:
0
auto
;
margin
:
0
auto
;
image
{
display
:
block
;
...
...
@@ -697,12 +710,13 @@
display
:
flex
;
align-items
:
center
;
width
:
100%
;
margin
:
0
0
24
upx
;
margin
:
0
0
24
upx
;
padding-bottom
:
24
upx
;
.title
{
width
:
94%
;
margin
:
12
upx
0
;
text
{
font-size
:
29
upx
;
font-weight
:
400
;
...
...
@@ -722,8 +736,10 @@
margin
:
0
0
20
upx
0
;
padding
:
0
12
upx
;
border
:
2
upx
solid
#DBA556
;
.part-top
{
position
:
relative
;
.part-top-content
{
.flex-between
{
padding
:
12
upx
4
upx
;
...
...
@@ -768,6 +784,7 @@
.part-bottom
{
border
:
6
upx
solid
#E40583
;
border-radius
:
0
0
36
upx
36
upx
;
.room-title
{
padding
:
20
upx
;
}
...
...
@@ -816,24 +833,28 @@
}
}
}
.location-box
{
.location-box
{
display
:
flex
;
flex-direction
:
column
;
width
:
100%
;
background-color
:
#f1f1f1
;
.content-box{
.content-box
{
display
:
flex
;
flex-direction
:
column
;
width
:
100%
;
border-radius
:
20
upx
20
upx
;
.title{
.title
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
padding
:
30
upx
0
;
border-bottom
:
1px
solid
#B70469
;
}
.content
{
.content
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
...
...
@@ -841,127 +862,147 @@
min-height
:
300
upx
;
}
}
.btn-box
{
.btn-box
{
display
:
flex
;
justify-content
:
space-between
;
width
:
64%
;
margin
:
0
auto
40
upx
;
.cu-btn{
.cu-btn
{
width
:
45%
;
}
}
}
//
陈晨增加样式
.titleStyle
{
padding
:
20
rpx
0
;
margin
:
0
!important
;
.text-title{
font-size
:
35
rpx
!important
;
font-weight
:
500
!important
;
}
}
.text-dw
{
font-size
:
36
rpx
;
margin-left
:
-4
rpx
;
margin-right
:
6
rpx
;
//
陈晨增加样式
.titleStyle
{
padding
:
20
rpx
0
;
margin
:
0
!important
;
.text-title
{
font-size
:
35
rpx
!important
;
font-weight
:
500
!important
;
}
}
.text-dw
{
font-size
:
36
rpx
;
margin-left
:
-4
rpx
;
margin-right
:
6
rpx
;
}
//
栏目上
.listStyle
{
.listStyle
{
width
:
100%
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
padding
:
20
upx
0
16
upx
;
//
容器
.part-top{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
width
:
240
rpx
;
//
height
:
280
upx
;
overflow
:
hidden
;
.room-img{
width
:
inherit
;
height
:
96%
;
border-radius
:
12
rpx
!important
;
.part-top
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
width
:
240
rpx
;
//
height
:
280
upx
;
overflow
:
hidden
;
.room-img
{
width
:
inherit
;
height
:
96%
;
border-radius
:
12
rpx
!important
;
}
}
.part-bottom
{
display
:
flex
;
flex
:
1
;
border
:
0
!important
;
border-radius
:
0
rpx
!important
;
padding-left
:
20
rpx
;
.room-title
{
padding
:
0
!important
;
display
:
flex
;
}
.price
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
text
{
color
:
#9e9e9e
;
}
}
}
.part-bottom
{
display
:
flex
;
flex
:
1
;
border
:
0
!important
;
border-radius
:
0
rpx
!important
;
padding-left
:
20
rpx
;
.room-title{
padding
:
0
!important
;
display
:
flex
;
}
.price
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
text{
color
:
#9e9e9e
;
}
}
//
标签
.facilitie-box
{
display
:
flex
;
flex-wrap
:
wrap
;
padding
:
0
;
align-items
:
center
;
min-height
:
88
upx
;
.bg-brown{
//
标签
.facilitie-box
{
display
:
flex
;
flex-wrap
:
wrap
;
padding
:
0
;
align-items
:
center
;
min-height
:
88
upx
;
.bg-brown
{
color
:
#c98d35
;
background-color
:
#f8eddd
;
margin
:
4
upx
;
padding
:
0
8
upx
;
height
:
36
upx
;
}
}
//
价格
.flex-priceBox
{
padding
:
0
6
rpx
;
text{
font-size
:
28
rpx
;
color
:
#757575
;
}
.text-pink
{
font-size
:
40
rpx
;
color
:
#e70486
;
}
}
}
}
.item-line
{
}
}
//
价格
.flex-priceBox
{
padding
:
0
6
rpx
;
text
{
font-size
:
28
rpx
;
color
:
#757575
;
}
.text-pink
{
font-size
:
40
rpx
;
color
:
#e70486
;
}
}
}
}
.item-line
{
width
:
100%
;
height
:
2
rpx
;
background
:
#F1E3CD
;
}
}
//
栏目下
.item-Go
{
.item-Go
{
display
:
flex
;
width
:
100%
;
width
:
100%
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
.flex-row{
display
:
flex
;
.flex-row
{
display
:
flex
;
flex
:
1
;
align-items
:
center
;
//
text
{
//
color
:
#9e9e9e
;
//
font-size
:
28
rpx
;
//
}
.flex-wrap
{
.flex-wrap
{
display
:
flex
;
flex
:
1
;
//
flex-wrap
:
wrap
;
flex-direction
:
column
;
}
//
.item
{
//
display
:
flex
;
//
justify-content
:
center
;
...
...
@@ -983,9 +1024,11 @@
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
>.flex-col{
>.flex-col
{
width
:
100%
;
}
.item
{
display
:
flex
;
flex-direction
:
row
;
...
...
@@ -995,9 +1038,9 @@
//
background
:
#FFFFFF
;
//
border
:
2
rpx
solid
#fc3f21
;
margin
:
0
1%
;
overflow
:
hidden
;
overflow
:
hidden
;
.part-1
{
.part-1
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
...
...
@@ -1005,12 +1048,14 @@
padding
:
4
upx
6
upx
;
background
:
#fc3f21
;
border-radius
:
8
upx
;
text{
text
{
font-size
:
24
upx
;
color
:
#ffffff
;
}
}
.part-2
{
.part-2
{
display
:
flex
;
flex
:
1
;
//
justify-content
:
center
;
...
...
@@ -1019,13 +1064,15 @@
padding
:
8
upx
;
//
border-right
:
2
upx
solid
#fc3f21
;
}
.part-3
{
.part-3
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
height
:
100%
;
padding
:
4
upx
8
upx
;
}
//
text
{
//
font-size
:
25
upx
;
//
color
:
#fc3f21
;
...
...
@@ -1034,13 +1081,15 @@
}
}
.confirm-box
{
.confirm-box
{
display
:
flex
;
width
:
100%
;
align-items
:
center
;
}
.confirm
{
.cu-btn
{
.cu-btn
{
padding
:
0
10
upx
0
14
upx
;
height
:
52
rpx
;
background
:
linear-gradient
(
97deg
,
#E5268B
,
#FD5661
);
...
...
@@ -1051,27 +1100,32 @@
opacity
:
0.95
;
border-radius
:
12
rpx
;
}
.text-lg
{
font-size
:
24
rpx
;
font-weight
:
bolder
;
font-size
:
24
rpx
;
font-weight
:
bolder
;
margin-bottom
:
4
upx
;
margin-right
:
4
upx
;
}
}
.list-point-box
{
.list-point-box
{
width
:
100%
;
margin-bottom
:
20
upx
;
.flex-col{
.flex-col
{
align-items
:
center
;
}
.box
{
.box
{
margin
:
0
2
upx
6
upx
;
width
:
10px
;
height
:
10px
;
border-radius
:
5px
;
}
.text-sm
{
.text-sm
{
font-size
:
20
upx
;
}
}
</
style
>
</
style
>
\ No newline at end of file
pages/orderResult/orderResult.vue
View file @
623687f3
...
...
@@ -36,19 +36,16 @@
<view
class=
"flex-1 flex-col"
>
<view
class=
"info"
>
<text
class=
"text-title text-bold"
>
预约包间:
</text>
<text
class=
"text-title "
>
{{
orderInfo
.
roomName
||
'-'
}}{{
orderInfo
.
roomTypeName
?
'【'
+
orderInfo
.
roomTypeName
+
'】'
:
''
}}
</text>
</view>
<view
class=
"info"
>
<text
class=
"text-title text-bold"
>
{{
orderInfo
.
orderType
==
1
?
'下单'
:
'续单'
}}
时间:
</text>
<text
class=
"text-title "
>
{{
orderInfo
.
updateTime
||
orderInfo
.
createTime
||
'-'
}}
</text>
<text
class=
"text-title text-bold text-lg"
>
{{
orderInfo
.
roomName
||
'-'
}}{{
orderInfo
.
roomTypeName
?
'【'
+
orderInfo
.
roomTypeName
+
'】'
:
''
}}
</text>
</view>
<view
class=
"info"
>
<text
class=
"text-title text-bold"
>
开始时间:
</text>
<text
class=
"text-title "
>
{{
orderInfo
.
preStartDate
||
'00:00'
}}
</text>
<text
class=
"text-title
text-bold text-lg
"
>
{{
orderInfo
.
preStartDate
||
'00:00'
}}
</text>
</view>
<view
class=
"info"
>
<text
class=
"text-title text-bold"
>
结束时间:
</text>
<text
class=
"text-title "
>
{{
orderInfo
.
preEndDate
||
'00:00'
}}
</text>
<text
class=
"text-title
text-bold text-lg
"
>
{{
orderInfo
.
preEndDate
||
'00:00'
}}
</text>
</view>
</view>
</view>
...
...
@@ -77,6 +74,10 @@
</view>
</view>
<view
class=
"flex-between"
>
<text
class=
"text-gray"
>
{{
orderInfo
.
orderType
==
1
?
'下单'
:
'续单'
}}
时间:
</text>
<text
class=
"text-title "
>
{{
orderInfo
.
updateTime
||
orderInfo
.
createTime
||
'-'
}}
</text>
</view>
<view
class=
"flex-between"
>
<text
class=
"text-gray"
>
支付时间
</text>
<text
class=
"text-title"
>
{{
orderInfo
.
payTime
||
'-'
}}
</text>
</view>
...
...
setting/license-plate-number/list.vue
View file @
623687f3
...
...
@@ -23,6 +23,11 @@
<button
class=
"cu-btn block bg-blue lg round "
@
tap=
"onShowKeyboard('xmKeyboard')"
>
新增
</button>
</view>
</view>
<view
class=
"foot-box"
v-else
>
<view
class=
"btn-box"
>
<button
class=
"cu-btn block bg-blue lg round "
@
tap=
"onDel"
>
删除
</button>
</view>
</view>
<uni-popup
ref=
"popupConfirm"
type=
"dialog"
>
...
...
@@ -73,6 +78,9 @@
this
.
deleteIndex
=
e
.
index
this
.
$refs
.
popupConfirm
.
open
();
},
onDel
(){
this
.
onClick
({
index
:
0
})
},
close
()
{
this
.
$refs
.
popupConfirm
.
close
()
},
...
...
@@ -102,10 +110,16 @@
this
.
$refs
.
xmKeyboard
.
toShow
()
},
onSave
(
e
)
{
console
.
log
(
e
)
let
obj
=
{
name
:
e
}
if
(
e
.
length
<
7
||
!
/
[
a-zA-Z
]
/
.
test
(
e
[
1
])){
uni
.
showToast
({
icon
:
"none"
,
title
:
"车牌号输入不正确"
})
return
}
plateNumberBind
({
id
:
this
.
userInfo
.
id
,
numberplate
:
e
...
...
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