Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
boyueCEnd
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
游洁
boyueCEnd
Commits
d14c800e
Commit
d14c800e
authored
Dec 01, 2025
by
youjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
旅客
parent
27d283fa
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
41 additions
and
132 deletions
+41
-132
zh-CN.ts
src/i18n/locales/zh-CN.ts
+1
-0
index.ts
src/router/index.ts
+0
-5
commonPassengerInfo.vue
src/views/personalCenter/commonPassengerInfo.vue
+0
-90
basicInfor.vue
...ws/personalCenter/components/accountCenter/basicInfor.vue
+6
-3
passengerList.vue
...personalCenter/components/accountCenter/passengerList.vue
+34
-29
index.vue
src/views/personalCenter/index.vue
+0
-5
No files found.
src/i18n/locales/zh-CN.ts
View file @
d14c800e
...
@@ -216,6 +216,7 @@ export default {
...
@@ -216,6 +216,7 @@ export default {
editPassenger
:
'修改旅客'
,
editPassenger
:
'修改旅客'
,
deleteSuccess
:
'删除成功'
,
deleteSuccess
:
'删除成功'
,
idCard
:
'身份证号'
,
idCard
:
'身份证号'
,
placeholderIdCard
:
'请输入身份证号'
,
},
},
// HTTP 错误状态码
// HTTP 错误状态码
httpError
:
{
httpError
:
{
...
...
src/router/index.ts
View file @
d14c800e
...
@@ -43,11 +43,6 @@ const router = createRouter({
...
@@ -43,11 +43,6 @@ const router = createRouter({
meta
:
{
title
:
"page.accountCenter"
},
meta
:
{
title
:
"page.accountCenter"
},
component
:
()
=>
import
(
'../views/personalCenter/accountCenter.vue'
)
component
:
()
=>
import
(
'../views/personalCenter/accountCenter.vue'
)
},
},
{
path
:
'/commonPassengerInfo'
,
//常用旅客信息
meta
:
{
title
:
"page.commonPassengerInfo"
},
component
:
()
=>
import
(
'../views/personalCenter/commonPassengerInfo.vue'
)
},
{
{
path
:
'/distributionCenter'
,
//分销中心
path
:
'/distributionCenter'
,
//分销中心
meta
:
{
title
:
"page.distributionCenter"
},
meta
:
{
title
:
"page.distributionCenter"
},
...
...
src/views/personalCenter/commonPassengerInfo.vue
deleted
100644 → 0
View file @
27d283fa
<
template
>
<div
class=
"w-[977px] h-full flex flex-col flex-shrink-0 overflow-hidden"
>
常用旅客信息
</div>
</
template
>
<
script
setup
lang=
"ts"
>
import
{
ref
}
from
'vue'
import
{
useI18n
}
from
'vue-i18n'
import
{
useUserStore
}
from
'@/stores/user'
import
{
useSystemConfigStore
}
from
'@/stores/index'
// 引入订单状态枚举
import
OrderStatusEnum
from
'@/utils/orderStautsEnum'
const
{
t
}
=
useI18n
()
const
userStore
=
useUserStore
()
const
systemConfigStore
=
useSystemConfigStore
()
const
orderList
=
ref
<
any
>
([])
const
currentStatus
=
ref
(
0
)
orderList
.
value
.
push
({
value
:
0
,
lable
:
t
(
'personal.orderStatus.ALL'
),
})
orderList
.
value
.
push
({
value
:
OrderStatusEnum
.
UN_PAY
.
value
,
lable
:
OrderStatusEnum
.
UN_PAY
.
desc
,
})
orderList
.
value
.
push
({
value
:
OrderStatusEnum
.
PAYED
.
value
,
lable
:
OrderStatusEnum
.
PAYED
.
desc
,
})
orderList
.
value
.
push
({
value
:
OrderStatusEnum
.
FINISH
.
value
,
lable
:
OrderStatusEnum
.
FINISH
.
desc
,
})
orderList
.
value
.
push
({
value
:
OrderStatusEnum
.
CANCEL
.
value
,
lable
:
OrderStatusEnum
.
CANCEL
.
desc
,
})
const
queryParams
=
ref
<
any
>
({
pageIndex
:
1
,
pageSize
:
10
,
orderStatus
:
currentStatus
.
value
,
})
const
dataList
=
ref
<
any
>
([])
const
loding
=
ref
(
false
)
const
noMoreData
=
ref
(
false
)
const
scrollContainer
=
ref
<
any
>
(
null
)
const
scrollThreshold
=
0
// 阈值,距离底部多少距离时触发加载
const
changeStatus
=
(
key
:
number
)
=>
{
currentStatus
.
value
=
key
}
const
loadData
=
async
()
=>
{
}
// 处理 div 滚动事件(核心修改)
const
handleDivScroll
=
(
e
:
any
)
=>
{
if
(
loding
.
value
||
noMoreData
.
value
)
return
;
const
container
=
e
.
target
;
if
(
!
container
)
return
;
// 计算滚动位置(兼容不同浏览器)
const
scrollTop
=
container
.
scrollTop
;
const
clientHeight
=
container
.
clientHeight
;
const
scrollHeight
=
container
.
scrollHeight
;
// 触底条件:滚动距离 + 可见高度 ≥ 总高度 - 阈值
if
(
scrollTop
+
clientHeight
>=
scrollHeight
-
scrollThreshold
)
{
noMoreData
.
value
=
false
queryParams
.
value
.
pageIndex
++
loadData
();
// 加载下一页
}
}
</
script
>
<
style
scoped
lang=
"scss"
>
.myOrderData
{
background
:
#FBFBFA
;
}
.myOrder-text-l
{
color
:
rgb
(
var
(
--
gray-7
));
}
:deep
(
.arco-scrollbar-track-direction-vertical
)
{
display
:
none
;
}
.myOrder-time
{
color
:
rgb
(
var
(
--
gray-6
));
}
</
style
>
\ No newline at end of file
src/views/personalCenter/components/accountCenter/basicInfor.vue
View file @
d14c800e
...
@@ -36,7 +36,8 @@
...
@@ -36,7 +36,8 @@
<a-form-item
:label=
"t('personal.firstName')"
field=
"name"
required
>
<a-form-item
:label=
"t('personal.firstName')"
field=
"name"
required
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.name"
v-model=
"formData.name"
size=
"large"
>
size=
"large"
:placeholder=
"t('personal.placeholderFirstName')"
>
</a-input>
</a-input>
</a-form-item>
</a-form-item>
</a-col>
</a-col>
...
@@ -44,7 +45,8 @@
...
@@ -44,7 +45,8 @@
<a-form-item
:label=
"t('personal.lastName')"
field=
"surName"
required
>
<a-form-item
:label=
"t('personal.lastName')"
field=
"surName"
required
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.surName"
v-model=
"formData.surName"
size=
"large"
>
size=
"large"
:placeholder=
"t('personal.placeholderLastName')"
>
<
template
#
suffix
>
<
template
#
suffix
>
</
template
>
</
template
>
...
@@ -56,7 +58,7 @@
...
@@ -56,7 +58,7 @@
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.sex"
v-model=
"formData.sex"
size=
"large"
size=
"large"
:placeholder=
"t('personal.
gen
der')"
>
:placeholder=
"t('personal.
placehol
der')"
>
<a-option
v-for=
"item of genderOptions"
:value=
"item.value"
:label=
"item.label"
/>
<a-option
v-for=
"item of genderOptions"
:value=
"item.value"
:label=
"item.label"
/>
</a-select>
</a-select>
</a-form-item>
</a-form-item>
...
@@ -91,6 +93,7 @@
...
@@ -91,6 +93,7 @@
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.phoneCode"
v-model=
"formData.phoneCode"
size=
"large"
size=
"large"
:placeholder=
"t('personal.placeholder')"
allow-search
>
allow-search
>
<a-option
v-for=
"item of AreaCodeList"
:value=
"item.phoneCode"
:label=
"item.phoneCode"
>
<a-option
v-for=
"item of AreaCodeList"
:value=
"item.phoneCode"
:label=
"item.phoneCode"
>
<span>
{{ item.name }}
</span>
<span>
{{ item.name }}
</span>
...
...
src/views/personalCenter/components/accountCenter/passengerList.vue
View file @
d14c800e
...
@@ -3,30 +3,30 @@
...
@@ -3,30 +3,30 @@
<div
v-if=
"!showType"
>
<div
v-if=
"!showType"
>
<div>
<div>
<div
class=
"accountCenter rounded-[14px]
<div
class=
"accountCenter rounded-[14px]
border-[1px] mb-[28px] flex items-center
border-[1px] mb-[28px] flex items-center
justify-between py-[30px] pl-[43px] pr-[35px]"
justify-between py-[30px] pl-[43px] pr-[35px]"
v-for=
"(item,index) in dataList"
>
v-for=
"(item,index) in dataList"
>
<div
class=
"w-[100px]"
>
<div
class=
"w-[100px]"
>
{{
item
.
name
}}
{{
item
.
name
}}
</div>
<div
class=
"w-[100px]"
>
{{
item
.
surName
}}
</div>
<div
class=
"w-[50px]"
>
{{
item
.
sex
===
1
?
t
(
'ORDER.GENDER_MALE'
)
:
t
(
'ORDER.GENDER_FEMALE'
)
}}
</div>
<div
class=
"w-[200px]"
>
{{
item
.
email
}}
</div>
<div
class=
"w-[150px]"
>
{{
item
.
phoneCode
}}{{
item
.
phone
}}
</div>
<div
class=
"flex items-center justify-between"
>
<div
class=
"w-[16px] h-[16px] editIcon"
@
click=
"clickItem(item,2)"
>
</div>
<div
class=
"w-[14px] h-[16px] deleteIcon ml-[17px]"
@
click=
"clickItem(item)"
>
</div>
</div>
</div>
</div>
<div
class=
"w-[100px]"
>
{{
item
.
surName
}}
</div>
<div
class=
"w-[50px]"
>
{{
item
.
sex
===
1
?
t
(
'ORDER.GENDER_MALE'
)
:
t
(
'ORDER.GENDER_FEMALE'
)
}}
</div>
<div
class=
"w-[200px]"
>
{{
item
.
email
}}
</div>
<div
class=
"w-[150px]"
>
{{
item
.
phoneCode
}}{{
item
.
phone
}}
</div>
<div
class=
"flex items-center justify-between"
>
<div
class=
"w-[16px] h-[16px] editIcon"
@
click=
"clickItem(item,2)"
>
</div>
<div
class=
"w-[14px] h-[16px] deleteIcon ml-[17px]"
@
click=
"clickItem(item)"
>
</div>
</div>
</div>
</div>
</div>
<div
class=
"rounded-[8px] addGuestButton py-[10px] text-center text-base cursor-pointer"
@
click=
"showType = 1"
>
{{
t
(
'personal.addPassenger'
)
}}
</div>
<div
class=
"rounded-[8px] addGuestButton py-[10px] text-center text-base cursor-pointer"
@
click=
"showType = 1"
>
{{
t
(
'personal.addPassenger'
)
}}
</div>
</div>
</div>
...
@@ -40,7 +40,8 @@
...
@@ -40,7 +40,8 @@
<a-form-item
:label=
"t('personal.firstName')"
field=
"name"
required
>
<a-form-item
:label=
"t('personal.firstName')"
field=
"name"
required
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.name"
v-model=
"formData.name"
size=
"large"
>
size=
"large"
:placeholder=
"t('personal.placeholderFirstName')"
>
</a-input>
</a-input>
</a-form-item>
</a-form-item>
</a-col>
</a-col>
...
@@ -48,7 +49,8 @@
...
@@ -48,7 +49,8 @@
<a-form-item
:label=
"t('personal.lastName')"
field=
"surName"
required
>
<a-form-item
:label=
"t('personal.lastName')"
field=
"surName"
required
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.surName"
v-model=
"formData.surName"
size=
"large"
>
size=
"large"
:placeholder=
"t('personal.placeholderLastName')"
>
<template
#
suffix
>
<template
#
suffix
>
</
template
>
</
template
>
...
@@ -60,7 +62,7 @@
...
@@ -60,7 +62,7 @@
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.sex"
v-model=
"formData.sex"
size=
"large"
size=
"large"
:placeholder=
"t('personal.
gen
der')"
>
:placeholder=
"t('personal.
placehol
der')"
>
<a-option
v-for=
"item of genderOptions"
:value=
"item.value"
:label=
"item.label"
/>
<a-option
v-for=
"item of genderOptions"
:value=
"item.value"
:label=
"item.label"
/>
</a-select>
</a-select>
</a-form-item>
</a-form-item>
...
@@ -93,7 +95,8 @@
...
@@ -93,7 +95,8 @@
<a-form-item
:label=
"t('personal.idCard')"
field=
"surName"
required
>
<a-form-item
:label=
"t('personal.idCard')"
field=
"surName"
required
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.idCard"
v-model=
"formData.idCard"
size=
"large"
>
size=
"large"
:placeholder=
"t('personal.placeholderIdCard')"
>
<
template
#
suffix
>
<
template
#
suffix
>
</
template
>
</
template
>
...
@@ -105,7 +108,8 @@
...
@@ -105,7 +108,8 @@
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
<a-select
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.phoneCode"
v-model=
"formData.phoneCode"
size=
"large"
size=
"large"
allow-search
>
allow-search
:placeholder=
"t('personal.placeholder')"
>
<a-option
v-for=
"item of AreaCodeList"
:value=
"item.phoneCode"
:label=
"item.phoneCode"
>
<a-option
v-for=
"item of AreaCodeList"
:value=
"item.phoneCode"
:label=
"item.phoneCode"
>
<span>
{{ item.name }}
</span>
<span>
{{ item.name }}
</span>
<span>
{{ item.phoneCode }}
</span>
<span>
{{ item.phoneCode }}
</span>
...
@@ -125,7 +129,8 @@
...
@@ -125,7 +129,8 @@
<a-form-item
:label=
"t('login.emailLogin')"
field=
""
>
<a-form-item
:label=
"t('login.emailLogin')"
field=
""
>
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
<a-input
class=
"formData-input !w-[289px] mr-[30px]"
v-model=
"formData.email"
v-model=
"formData.email"
size=
"large"
>
size=
"large"
:placeholder=
"t('login.emailRequiredReset')"
>
<
template
#
suffix
>
<
template
#
suffix
>
</
template
>
</
template
>
...
...
src/views/personalCenter/index.vue
View file @
d14c800e
...
@@ -58,11 +58,6 @@ const menuList = ref([
...
@@ -58,11 +58,6 @@ const menuList = ref([
path
:
'/accountCenter'
,
path
:
'/accountCenter'
,
key
:
'accountCenter'
,
key
:
'accountCenter'
,
},
},
{
name
:
t
(
'personal.menu.commonPassengerInfo'
),
path
:
'/commonPassengerInfo'
,
key
:
'commonPassengerInfo'
,
},
{
{
name
:
t
(
'personal.menu.distributionCenter'
),
name
:
t
(
'personal.menu.distributionCenter'
),
path
:
'/distributionCenter'
,
path
:
'/distributionCenter'
,
...
...
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