Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
J
jz_Travel
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhengke
jz_Travel
Commits
2c1b2b8a
Commit
2c1b2b8a
authored
Jul 09, 2025
by
youjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
6f17b259
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
218 additions
and
103 deletions
+218
-103
passengerInfo.vue
pages/teamLeader/components/passengerInfo.vue
+21
-21
itineraryDetails.vue
pages/teamLeader/itineraryDetails.vue
+10
-6
roomAllocation.vue
pages/teamLeader/roomAllocation.vue
+187
-76
No files found.
pages/teamLeader/components/passengerInfo.vue
View file @
2c1b2b8a
...
...
@@ -66,100 +66,100 @@
style=
"background: #ffff;"
>
<view
class=
"passCenterBox PA30"
>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
旅客
</view>
<view
class=
"passCenter-L fz24"
>
旅客
姓名
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
姓名
</view>
<text
class=
"ML10 color999"
>
()
</text>
<view
class=
"fz28"
>
{{
datas
.
GuestName
}}
</view>
<text
class=
"ML10 color999"
>
(
{{
datas
.
ESurName
}}{{
datas
.
EName
}}
)
</text>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
性别
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
Sex
==
2
?
'女'
:
'男'
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
出生日期
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
Birthday
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
年龄类型
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
PeopleType
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
出生地
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
BirthdayAddress
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
护照号
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
PassportNo
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
签发地
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
BirthdayAddress
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
签发日期
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
PassportIssued
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
护照有效期
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
PassportExpiry
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
客户手机
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
MobilePhone
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
身份证
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
IdCard
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
单价
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
UnitPrice
?
'¥'
+
datas
.
UnitPrice
:
''
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
业务员
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
CreateBy
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
方式
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
GroupTypeStr
}}
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
航位
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
经济舱(Y)
</view>
</view>
</view>
<view
class=
"passCenter row items-center"
>
<view
class=
"passCenter-L fz24"
>
签证类型
</view>
<view
class=
"passCenter-R row"
>
<view
class=
"fz28"
>
-
</view>
<view
class=
"fz28"
>
{{
datas
.
VisaType
}}
</view>
</view>
</view>
</view>
...
...
@@ -170,7 +170,7 @@
<
script
>
import
headers
from
"@/components/header/header"
;
export
default
{
props
:[
''
],
props
:[
'
datas
'
],
components
:
{
headers
},
...
...
@@ -183,9 +183,9 @@ export default {
}
},
watch
:
{
current
:{
datas
:{
handler
(
newVal
,
oldVal
){
this
.
newCurrent
=
newVal
},
immediate
:
true
,
},
...
...
pages/teamLeader/itineraryDetails.vue
View file @
2c1b2b8a
...
...
@@ -337,11 +337,13 @@
<
/view
>
<
/view
>
<
/template
>
<
view
class
=
"row
items-center
"
v
-
if
=
"x.canshi"
>
<
view
class
=
"row"
v
-
if
=
"x.canshi"
>
<
view
>
<
img
style
=
"width: 30rpx;height: 30rpx;"
/>
<
image
style
=
"width: 45rpx;height: 45rpx;display: block;"
mode
=
"aspectFill"
src
=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638876765053973357.png"
/>
<
/view
>
<
view
>
<
view
class
=
"PL20"
>
<
view
class
=
"row items-center PB20"
v
-
for
=
"item in x.canshi"
>
<
view
class
=
"fz34 fontBold MR20"
>
{{
`${item.childItem.timeStr
}
${item.childItem.dinnerTypeName
}
`
}}
...
...
@@ -350,11 +352,13 @@
<
/view
>
<
/view
>
<
/view
>
<
view
class
=
"row
items-center
"
v
-
if
=
"x.zhusu"
>
<
view
class
=
"row"
v
-
if
=
"x.zhusu"
>
<
view
>
<
img
style
=
"width: 30rpx;height: 30rpx;"
/>
<
image
style
=
"width: 45rpx;height: 45rpx;display: block;"
mode
=
"aspectFill"
src
=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638876765089861843.png"
/>
<
/view
>
<
view
>
<
view
class
=
"PL20"
>
<
view
class
=
"row items-center"
v
-
for
=
"item in x.zhusu"
>
<
view
class
=
"fz34 fontBold MR20"
>
住宿
...
...
pages/teamLeader/roomAllocation.vue
View file @
2c1b2b8a
...
...
@@ -3,13 +3,14 @@
.roomListBox
{
background
:
#f5f5f5
;
height
:
100vh
;
overflow
:
hidden
;
}
.roomHeader
{
background
:
linear-gradient
(
-30deg
,
#4779FF
,
#47A5FF
);
position
:
fixed
;
left
:
0
;
right
:
0
;
z-index
:
2
;
//
position: fixed;
//
left: 0;
//
right: 0;
//
z-index: 2;
}
.roomListCenter
{
background
:
#fff
;
...
...
@@ -27,7 +28,13 @@
background
:
#FD9700
;
}
.roomListCenter.active2
.roomListC-L-type
{
background
:
#FD9700
;
background
:
#8d5dfc
;
}
.roomListCenter.active3
.roomListC-L-type
{
background
:
#47A5FF
;
}
.roomListCenter.active4
.roomListC-L-type
{
background
:
#FF5858
;
}
.roomListC-box
{
background
:
#F8F8F8
;
...
...
@@ -70,93 +77,116 @@
.roomListC-info-L
view
:last-child
,
.roomListC-info-R
view
:last-child
{
font-weight
:
500
;
}
.roomHeaderTitle
view
{
color
:
#666
;
}
.roomHeaderTitle
view
.active
{
background
:
#fff
;
border-radius
:
50rpx
;
color
:
#0072FF
;
box-shadow
:
0rpx
1rpx
6rpx
0rpx
rgba
(
102
,
102
,
102
,
0
.4
);
}
</
style
>
<
template
>
<view
class=
"roomListBox"
>
<view
class=
"roomListBox
column
"
>
<view
class=
"roomHeader"
>
<headers
:title=
"pageTitle"
color=
"#fff"
></headers>
</view>
<scroll-view
scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
style=
"height: 100%;"
>
<view
class=
"PA30"
style=
"margin-top: 160rpx;"
>
<view
class=
"roomListCenter PX20 MT30"
>
<view
class=
"roomListC-header PY15 row justify-between items-center"
>
<view
class=
"roomListC-L row items-center fz24"
>
<view
class=
"roomListC-L-type"
>
单间
</view>
<view
class=
"fz28"
>
<text>
分房:
</text>
<text>
20
</text>
</view>
</view>
<view>
<text>
人数:
</text>
<text>
1
</text>
</view>
</view>
<view>
<view
class=
"roomListC-box PA20 MB20"
>
<view
class=
"roomListC-Title row justify-between"
@
click=
"showPassengerInfo"
>
<view
class=
"fz28 row"
>
<view>
姓名
</view>
<view
class=
"ML20 color999"
>
(jhggyookp[p[]])
</view>
<img
src=
""
style=
"width: 21rpx;height: 21rpx;"
/>
<view
v-if=
"dataList&&dataList.length>0"
class=
"PT20 row justify-between items-center roomHeaderTitle PX30 fz30"
>
<view
v-for=
"(item,index) in dataList"
class=
"PX40 PY10"
:class=
"[currentId==item.TCNUM?'active':'']"
@
click=
"newData(item)"
>
{{
item
.
TCNUM
}}
</view>
</view>
<scroll-view
class=
"flex1"
scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
style=
"overflow: hidden;"
>
<view
class=
"PA30"
>
<template
v-for=
"(item,index) in datas"
>
<view
class=
"roomListCenter PX20 MB30"
:class=
"[item.HouseType==2?'active1':item.HouseType==3?'active2':item.HouseType==4?'active3':item.HouseType==5?'active4':'']"
>
<view
class=
"roomListC-header PY15 row justify-between items-center"
>
<view
class=
"roomListC-L row items-center fz24"
>
<view
class=
"roomListC-L-type"
>
{{
getTypeStr
(
item
.
HouseType
)
}}
</view>
<view>
<u-icon
class=
""
name=
"arrow"
size=
"32"
color=
"#ccc"
></u-icon>
<view
class=
"fz28"
>
<text>
分房:
</text>
<text>
{{
item
.
HouseNo
}}
</text>
</view>
</view>
<view
class=
"roomListC-bind row fz20"
>
<
view>
未绑定
</view
>
<
view>
领队
</view
>
<view>
<
text>
人数:
</text
>
<
text>
{{
item
.
peopleNum
}}
</text
>
</view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
护照号
</view>
<view
class=
"flex1"
>
12121
</view>
</view>
<view>
<view
class=
"roomListC-box PA20 MB20"
v-for=
"(child,c) in item.list"
>
<view
class=
"roomListC-Title row justify-between"
@
click=
"showPassengerInfo(child)"
>
<view
class=
"fz28 row items-center"
>
<view>
{{
child
.
GuestName
}}
</view>
<view
class=
"ML20 color999 MR20"
>
(
{{
child
.
ESurName
}}{{
child
.
EName
}}
)
</view>
<img
v-if=
"child.Sex==2"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638875723517488195.png"
style=
"width: 35rpx;height: 35rpx;"
/>
<img
v-else
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Upload/Goods/638875723461863180.png"
style=
"width: 35rpx;height: 35rpx;"
/>
</view>
<view>
<u-icon
class=
""
name=
"arrow"
size=
"32"
color=
"#ccc"
></u-icon>
</view>
</view>
<view
class=
"roomListC-
info-R row
"
>
<view>
签发地
</view>
<view
class=
"flex1"
>
2121
</view>
<view
class=
"roomListC-
bind row fz20
"
>
<view>
{{
child
.
VisaType
}}
</view>
<view
v-if=
"child.IsLeaderOrder"
>
{{
child
.
GroupTypeStr
}}
</view>
</view>
</view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
客户手机
</view>
<view
class=
"flex1"
>
2121
</view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
护照号
</view>
<view
class=
"flex1"
>
{{
child
.
PassportNo
}}
</view>
</view>
<view
class=
"roomListC-info-R row"
>
<view>
签发地
</view>
<view
class=
"flex1"
>
{{
child
.
BirthdayAddress
}}
</view>
</view>
</view>
<view
class=
"roomListC-info-R row"
>
<view>
业务员
</view>
<view
class=
"flex1"
>
2121
</view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
客户手机
</view>
<view
class=
"flex1"
>
{{
child
.
MobilePhone
}}
</view>
</view>
<view
class=
"roomListC-info-R row"
>
<view>
业务员
</view>
<view
class=
"flex1"
>
{{
child
.
CreateBy
}}
</view>
</view>
</view>
</view
>
<view
class=
"roomListC-info
row"
>
<view
class=
"roomListC-info-L row"
>
<view>
出生日期
</view>
<
view
class=
"flex1"
>
2121
<
/view>
</view
>
<view
class=
"roomListC-info-R row"
>
<view>
单价
</view>
<
view
class=
"flex1"
>
¥
<
/view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L
row"
>
<view>
出生日期
</view
>
<view
class=
"flex1"
>
{{
child
.
Birthday
}}
</view>
</view>
<view
class=
"roomListC-info-R row"
>
<view>
单价
</view
>
<view
class=
"flex1"
>
¥
{{
child
.
UnitPrice
}}
</view>
</view>
</view>
<!--
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
备注
</view>
<view
class=
"flex1 colorE1432E"
>
{{
child
.
UnitPrice
}}
</view>
</view>
</view>
-->
</view>
<view
class=
"roomListC-info row"
>
<view
class=
"roomListC-info-L row"
>
<view>
备注
</view>
<view
class=
"flex1 colorE1432E"
>
21211
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</
template
>
</view>
</scroll-view>
<passengerInfo
v-if=
"showVisible"
@
close=
"showVisible=false"
></passengerInfo>
<passengerInfo
v-if=
"showVisible"
:datas=
"childDatas"
@
close=
"showVisible=false"
></passengerInfo>
</view>
</template>
...
...
@@ -171,11 +201,29 @@ export default {
data
()
{
return
{
pageTitle
:
'分房表'
,
showVisible
:
false
showVisible
:
false
,
msg
:{
TCIDList
:
''
},
currentId
:
''
,
currentIndex
:
0
,
dataList
:
[],
datas
:
[],
HouseTypeList
:[
{
name
:
'单间'
,
id
:
1
},
{
name
:
'双人间'
,
id
:
2
},
{
name
:
'大床房'
,
id
:
3
},
{
name
:
'三人间'
,
id
:
4
},
{
name
:
'拼凑双人间'
,
id
:
5
},
],
childDatas
:{}
}
},
onLoad
(
option
){
onLoad
(
options
){
if
(
options
.
TCIDs
){
this
.
msg
.
TCIDList
=
options
.
TCIDs
this
.
init
()
}
},
created
()
{
...
...
@@ -184,9 +232,72 @@ export default {
},
methods
:
{
showPassengerInfo
(){
getTypeStr
(
HouseType
){
let
findIndex
=
this
.
HouseTypeList
.
findIndex
((
item
)
=>
{
return
item
.
id
==
HouseType
})
if
(
findIndex
!=-
1
){
return
this
.
HouseTypeList
[
findIndex
].
name
}
},
newData
(
item
){
this
.
currentId
=
item
.
TCNUM
this
.
datas
=
[]
item
.
result
.
forEach
(
x
=>
{
let
obj
=
{
HouseType
:
0
,
HouseNo
:
1
,
peopleNum
:
0
,
list
:
[],
}
obj
.
HouseType
=
x
[
0
].
HouseType
obj
.
HouseNo
=
x
[
0
].
HouseNo
obj
.
peopleNum
=
x
.
length
x
.
forEach
(
y
=>
{
obj
.
list
.
push
(
y
)
})
this
.
datas
.
push
(
obj
)
});
},
showPassengerInfo
(
child
){
this
.
showVisible
=
true
}
this
.
childDatas
=
child
},
init
()
{
uni
.
showLoading
()
this
.
apipost
(
"sellorder_get_GetGuestListForHouse"
,
this
.
msg
,
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
hideLoading
()
this
.
dataList
=
res
.
data
;
this
.
currentId
=
res
.
data
[
0
].
TCNUM
this
.
datas
=
[]
res
.
data
[
0
].
result
.
forEach
(
x
=>
{
let
obj
=
{
HouseType
:
0
,
HouseNo
:
1
,
peopleNum
:
0
,
list
:
[],
}
obj
.
HouseType
=
x
[
0
].
HouseType
obj
.
HouseNo
=
x
[
0
].
HouseNo
obj
.
peopleNum
=
x
.
length
x
.
forEach
(
y
=>
{
obj
.
list
.
push
(
y
)
})
this
.
datas
.
push
(
obj
)
});
console
.
log
(
this
.
datas
,
'----------44'
)
}
},
(
failed
)
=>
{
uni
.
hideLoading
()
uni
.
showToast
({
title
:
failed
.
message
,
icon
:
"none"
,
});
},
(
error
)
=>
{
uni
.
hideLoading
()
})
},
},
}
</
script
>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment