Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
million
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
viitto
million
Commits
0074de44
Commit
0074de44
authored
Mar 08, 2023
by
沈良进
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
个人中心页面开发
parent
f53c40bd
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
126 additions
and
41 deletions
+126
-41
add.png
src/assets/img/add.png
+0
-0
address-add.png
src/assets/img/address-add.png
+0
-0
base-switch.vue
src/components/base-switch.vue
+1
-1
hor-big-one.vue
src/components/navs/hor-big-one.vue
+1
-1
app.scss
src/css/app.scss
+3
-0
setAddress.vue
src/pages/usercenter/setAddress.vue
+16
-6
setUserInfo.vue
src/pages/usercenter/setUserInfo.vue
+6
-0
setUsersList.vue
src/pages/usercenter/setUsersList.vue
+99
-33
No files found.
src/assets/img/add.png
0 → 100644
View file @
0074de44
2.13 KB
src/assets/img/address-add.png
0 → 100644
View file @
0074de44
2.06 KB
src/components/base-switch.vue
View file @
0074de44
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
left
:
0px
;
left
:
0px
;
}
}
.wrapper
input
:checked
+
label
{
.wrapper
input
:checked
+
label
{
background
:
green
;
background
:
#66D344
;
}
}
.wrapper
input
:checked
+
label
::before
{
.wrapper
input
:checked
+
label
::before
{
left
:
calc
(
100%
);
left
:
calc
(
100%
);
...
...
src/components/navs/hor-big-one.vue
View file @
0074de44
...
@@ -266,7 +266,7 @@ color: #EE4454;
...
@@ -266,7 +266,7 @@ color: #EE4454;
</q-btn>
</q-btn>
<q-btn
label=
"帮助中心"
flat
></q-btn>
<q-btn
label=
"帮助中心"
flat
></q-btn>
<q-btn
v-if=
"LoginUser.id <= 0"
label=
"注册"
flat
></q-btn>
<q-btn
v-if=
"LoginUser.id <= 0"
label=
"注册"
flat
></q-btn>
<
template
v-if=
"LoginUser.
id > 0
"
>
<
template
v-if=
"LoginUser.
token
"
>
<q-btn-dropdown
<q-btn-dropdown
style=
"color: #444; font-weight: bold"
style=
"color: #444; font-weight: bold"
class=
"q-ml-lg"
class=
"q-ml-lg"
...
...
src/css/app.scss
View file @
0074de44
...
@@ -99,6 +99,9 @@
...
@@ -99,6 +99,9 @@
.f20
{
.f20
{
font-size
:
20px
;
font-size
:
20px
;
}
}
.f22
{
font-size
:
22px
;
}
.f26
{
.f26
{
font-size
:
26px
;
font-size
:
26px
;
}
}
...
...
src/pages/usercenter/setAddress.vue
View file @
0074de44
...
@@ -98,14 +98,13 @@
...
@@ -98,14 +98,13 @@
color=
"blue"
color=
"blue"
unelevated
unelevated
outline
outline
@
click=
"isShowDialog = true"
@
click=
"addAddress"
label=
"添加郵寄地址"
><img
class=
"q-mr-sm"
style=
"width: 28px;"
src=
"../../assets/img/address-add.png"
/>
添加郵寄地址
</q-btn>
></q-btn>
</div>
</div>
</div>
</div>
<q-dialog
content-style=
"width: 900px"
v-model=
"isShowDialog"
>
<q-dialog
content-style=
"width: 900px"
v-model=
"isShowDialog"
>
<div
class=
"bg-white dialog-box"
style=
"width: 800px; padding: 20px"
>
<div
class=
"bg-white dialog-box"
style=
"width: 800px; padding: 20px"
>
<div
>
添加
邮寄地址
</div>
<div
class=
"f22 bold"
>
{{
form
.
Id
?
'编辑'
:
'添加'
}}
邮寄地址
</div>
<form
@
submit
.
prevent
.
stop=
"submit"
class=
"q-gutter-md"
>
<form
@
submit
.
prevent
.
stop=
"submit"
class=
"q-gutter-md"
>
<div>
<div>
<div
class=
"row"
>
<div
class=
"row"
>
...
@@ -126,6 +125,8 @@
...
@@ -126,6 +125,8 @@
<div
class=
"title"
>
選擇手機區號
</div>
<div
class=
"title"
>
選擇手機區號
</div>
<q-select
<q-select
ref=
"AreaCode"
ref=
"AreaCode"
emit-value
map-options
square
square
outlined
outlined
option-value=
"ID"
option-value=
"ID"
...
@@ -154,6 +155,8 @@
...
@@ -154,6 +155,8 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
國家/地區
</div>
<div
class=
"title"
>
國家/地區
</div>
<q-select
<q-select
emit-value
map-options
ref=
"CountryId"
ref=
"CountryId"
square
square
outlined
outlined
...
@@ -244,6 +247,12 @@ export default {
...
@@ -244,6 +247,12 @@ export default {
this
.
getCountryInfo
();
this
.
getCountryInfo
();
},
},
methods
:
{
methods
:
{
addAddress
()
{
this
.
isShowDialog
=
true
this
.
form
=
{
Name
:
""
,
Mobile
:
""
,}
},
getCountryInfo
()
{
getCountryInfo
()
{
this
.
apipost
(
this
.
apipost
(
"GetCountryInfo_post"
,
"GetCountryInfo_post"
,
...
@@ -322,6 +331,7 @@ export default {
...
@@ -322,6 +331,7 @@ export default {
editUser
(
item
)
{
editUser
(
item
)
{
console
.
log
(
"editUser"
,
item
);
console
.
log
(
"editUser"
,
item
);
this
.
form
=
{...
item
};
this
.
form
=
{...
item
};
this
.
form
.
AreaCode
=
Number
(
this
.
form
.
AreaCode
)
this
.
form
.
IsDefault
=
this
.
form
.
IsDefault
===
1
this
.
form
.
IsDefault
=
this
.
form
.
IsDefault
===
1
this
.
isShowDialog
=
true
;
this
.
isShowDialog
=
true
;
},
},
...
@@ -355,8 +365,8 @@ export default {
...
@@ -355,8 +365,8 @@ export default {
},
},
submitUserInfo
()
{
submitUserInfo
()
{
let
params
=
{
...
this
.
form
};
let
params
=
{
...
this
.
form
};
params
.
AreaCode
=
params
.
AreaCode
.
ID
;
//
params.AreaCode = params.AreaCode.ID;
params
.
CountryId
=
params
.
CountryId
.
ID
;
//
params.CountryId = params.CountryId.ID;
params
.
IsDefault
=
params
.
IsDefault
?
1
:
2
;
params
.
IsDefault
=
params
.
IsDefault
?
1
:
2
;
this
.
apipost
(
this
.
apipost
(
"b2c_post_SetMailingAddressInfo"
,
"b2c_post_SetMailingAddressInfo"
,
...
...
src/pages/usercenter/setUserInfo.vue
View file @
0074de44
...
@@ -93,6 +93,8 @@
...
@@ -93,6 +93,8 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
居住國家/地區
</div>
<div
class=
"title"
>
居住國家/地區
</div>
<q-select
<q-select
emit-value
map-options
ref=
"Country"
ref=
"Country"
square
square
outlined
outlined
...
@@ -108,6 +110,8 @@
...
@@ -108,6 +110,8 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
稱謂
</div>
<div
class=
"title"
>
稱謂
</div>
<q-select
<q-select
emit-value
map-options
ref=
"Appellation"
ref=
"Appellation"
square
square
outlined
outlined
...
@@ -126,6 +130,8 @@
...
@@ -126,6 +130,8 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
國家/地區代碼
</div>
<div
class=
"title"
>
國家/地區代碼
</div>
<q-select
<q-select
emit-value
map-options
ref=
"PhoneCountry"
ref=
"PhoneCountry"
square
square
outlined
outlined
...
...
src/pages/usercenter/setUsersList.vue
View file @
0074de44
...
@@ -8,8 +8,7 @@
...
@@ -8,8 +8,7 @@
width
:
900px
;
width
:
900px
;
}
}
.title
{
.title
{
margin-top
:
20px
;
margin
:
20px
10px
10px
10px
;
margin-bottom
:
10px
;
}
}
.card
{
.card
{
margin
:
10px
;
margin
:
10px
;
...
@@ -75,6 +74,12 @@
...
@@ -75,6 +74,12 @@
background-color
:
$primary
;
background-color
:
$primary
;
margin
:
-8px
auto
0
auto
;
margin
:
-8px
auto
0
auto
;
}
}
.card-info
{
height
:
20px
;
padding
:
0
4px
;
background
:
#DDDDDD
;
border-radius
:
8px
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"content q-ma-lg bg-white"
>
<div
class=
"content q-ma-lg bg-white"
>
...
@@ -98,17 +103,32 @@
...
@@ -98,17 +103,32 @@
</div>
</div>
</div>
</div>
</div>
</div>
<q-btn
<div
class=
"q-pa-sm full-width"
>
<q-btn
class=
"full-width"
color=
"primary"
color=
"primary"
unelevated
unelevated
outline
outline
@
click=
"isShowDialog = true"
@
click=
"addUser"
label=
"添加出行人"
><img
class=
"q-mr-sm"
style=
"width: 28px;"
src=
"../../assets/img/add.png"
/>
添加出行人
</q-btn>
></q-btn>
</div>
<div
class=
"mt flex justify-end"
>
<q-pagination
v-model=
"current"
:max=
"pageCount"
direction-links
color=
"primary"
active-color=
"primary"
:max-pages=
"5"
@
input=
"pageChange"
/>
</div>
<q-dialog
content-style=
"width: 900px"
v-model=
"isShowDialog"
>
<q-dialog
content-style=
"width: 900px"
v-model=
"isShowDialog"
>
<div
class=
"bg-white dialog-box"
style=
"width: 800px; padding: 20px"
>
<div
class=
"bg-white dialog-box"
style=
"width: 800px; padding: 20px"
>
<div
>
添加邮寄地址
</div>
<div
class=
"f22 bold"
>
{{
form
.
Id
?
'编辑'
:
'新增'
}}
出行人信息
</div>
<form
@
submit
.
prevent
.
stop=
"submit"
class=
"q-gutter-md"
>
<form
@
submit
.
prevent
.
stop=
"submit"
class=
"q-gutter-md"
>
<div>
<div>
<div
class=
"row"
>
<div
class=
"row"
>
...
@@ -164,43 +184,53 @@
...
@@ -164,43 +184,53 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
國家/地區代碼
</div>
<div
class=
"title"
>
國家/地區代碼
</div>
<q-select
<q-select
ref=
"PhoneCountry"
emit-value
map-options
ref=
"AreaCode"
square
square
outlined
outlined
option-value=
"ID"
option-value=
"ID"
option-label=
"PhoneCode"
option-label=
"PhoneCode"
class=
"form-item"
class=
"form-item"
v-model=
"form.
PhoneCountry
"
v-model=
"form.
AreaCode
"
:options=
"phoneCountList"
:options=
"phoneCountList"
placeholder=
"
Filled
"
placeholder=
"
请选择國家/地區代碼
"
:rules=
"[(val) => Boolean(val) || '请选择國家/地區代碼']"
:rules=
"[(val) => Boolean(val) || '请选择國家/地區代碼']"
/>
/>
</div>
</div>
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
電話(首次需驗證)
</div>
<div
class=
"title"
>
手機號
</div>
<q-input
<q-input
ref=
"Mobile"
ref=
"Mobile"
class=
"form-item"
class=
"form-item"
placeholder=
"
電話(首次需驗證)
"
placeholder=
"
手機號
"
v-model=
"form.Mobile"
v-model=
"form.Mobile"
outlined
outlined
:rules=
"[(val) => !!val || '请输入
電話(首次需驗證)
']"
:rules=
"[(val) => !!val || '请输入
手機號
']"
></q-input>
></q-input>
</div>
</div>
</div>
</div>
<div
<div
v-for=
"(item, index) in form.CardList"
v-for=
"(item, index) in form.CardList"
:key=
"item.id"
:key=
"item.id"
>
<div
class=
"flex justify-between ml mr q-mt-lg"
style=
"margin-bottom: -10px"
><span
class=
"card-info"
>
证件信息#
{{
index
+
1
}}
</span>
<div
v-if=
"index > 0"
@
click=
"deleteCardItem(item)"
>
<i
class=
"iconfont iconline"
></i>
<i
class=
"iconfont icondelete"
></i>
</div>
</div>
<div
class=
"row"
class=
"row"
>
>
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title"
>
证件类型
</div>
<div
class=
"title"
>
证件类型
</div>
<q-select
<q-select
emit-value
map-options
ref=
"card"
ref=
"card"
square
square
outlined
outlined
option-value=
"I
D
"
option-value=
"I
d
"
option-label=
"Name"
option-label=
"Name"
class=
"form-item"
class=
"form-item"
v-model=
"item.Type"
v-model=
"item.Type"
...
@@ -212,25 +242,23 @@
...
@@ -212,25 +242,23 @@
<div
class=
"col"
>
<div
class=
"col"
>
<div
class=
"title flex justify-between items-center"
>
<div
class=
"title flex justify-between items-center"
>
<div>
证件号码
</div>
<div>
证件号码
</div>
<div
v-if=
"index > 0"
@
click=
"deleteCardItem(item)"
>
删除
</div>
</div>
</div>
<q-input
<q-input
class=
"form-item"
class=
"form-item"
placeholder=
"
電話(首次需驗證)
"
placeholder=
"
证件号码
"
v-model=
"item.CardNo"
v-model=
"item.CardNo"
outlined
outlined
:rules=
"[(val) => !!val || '请输入
電話(首次需驗證)
']"
:rules=
"[(val) => !!val || '请输入
证件号码
']"
></q-input>
></q-input>
</div>
</div>
</div>
</div>
</div>
<q-btn
<q-btn
class=
"ml"
color=
"primary"
color=
"primary"
@
click=
"addCard"
@
click=
"addCard"
unelevated
unelevated
outline
outline
label=
"新增证件"
><img
class=
"q-mr-sm"
style=
"width: 28px;"
src=
"../../assets/img/add.png"
/>
新增证件
</q-btn>
/>
<div
class=
"mt flex flex-center"
>
<div>
<q-btn
color=
"primary"
type=
"submit"
unelevated
label=
"保存"
/>
<q-btn
color=
"primary"
type=
"submit"
unelevated
label=
"保存"
/>
</div>
</div>
</div>
</div>
...
@@ -243,6 +271,8 @@
...
@@ -243,6 +271,8 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
current
:
1
,
pageCount
:
0
,
isShowDialog
:
false
,
isShowDialog
:
false
,
selectedKey
:
"全部"
,
selectedKey
:
"全部"
,
form
:
{
form
:
{
...
@@ -270,6 +300,22 @@ export default {
...
@@ -270,6 +300,22 @@ export default {
this
.
getCardTypeList
();
this
.
getCardTypeList
();
},
},
methods
:
{
methods
:
{
pageChange
(
value
)
{
console
.
log
(
'pageChange'
,
value
)
this
.
current
=
value
this
.
getUsersList
()
},
addUser
()
{
this
.
isShowDialog
=
true
this
.
form
=
{
SurName
:
""
,
Name
:
""
,
EnName
:
""
,
EnSurName
:
""
,
Mobile
:
""
,
CardList
:
[],}
this
.
addCard
()
},
getCardTypeList
()
{
getCardTypeList
()
{
this
.
apipost
(
this
.
apipost
(
"b2c_post_GetTripCardEnumList"
,
"b2c_post_GetTripCardEnumList"
,
...
@@ -277,6 +323,8 @@ export default {
...
@@ -277,6 +323,8 @@ export default {
(
res
)
=>
{
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
cardList
=
res
.
data
.
data
;
this
.
cardList
=
res
.
data
.
data
;
this
.
cardList
.
forEach
(
item
=>
item
.
Id
=
Number
(
item
.
Id
));
console
.
log
(
'this.cardList'
,
this
.
cardList
)
}
else
{
}
else
{
// this.$notify(res.data.message);
// this.$notify(res.data.message);
this
.
$q
.
notify
({
this
.
$q
.
notify
({
...
@@ -298,7 +346,7 @@ export default {
...
@@ -298,7 +346,7 @@ export default {
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
{
phoneCountList
,
countList
}
=
res
.
data
.
data
;
const
{
phoneCountList
,
countList
}
=
res
.
data
.
data
;
this
.
countList
=
countList
;
this
.
countList
=
countList
;
this
.
phoneCountList
=
phoneCountList
;
this
.
phoneCountList
=
phoneCountList
}
else
{
}
else
{
// this.$notify(res.data.message);
// this.$notify(res.data.message);
this
.
$q
.
notify
({
this
.
$q
.
notify
({
...
@@ -319,6 +367,7 @@ export default {
...
@@ -319,6 +367,7 @@ export default {
this
.
id
++
;
this
.
id
++
;
this
.
form
.
CardList
.
push
({
this
.
form
.
CardList
.
push
({
id
:
this
.
id
,
id
:
this
.
id
,
Type
:
''
,
});
});
},
},
deleteCardItem
(
card
)
{
deleteCardItem
(
card
)
{
...
@@ -333,6 +382,7 @@ export default {
...
@@ -333,6 +382,7 @@ export default {
"EnName"
,
"EnName"
,
"EnSurName"
,
"EnSurName"
,
"Mobile"
,
"Mobile"
,
"AreaCode"
,
];
];
verifyArr
.
forEach
((
item
)
=>
{
verifyArr
.
forEach
((
item
)
=>
{
console
.
log
(
"this.$refs[item]"
,
this
,
item
,
this
.
$refs
[
item
]);
console
.
log
(
"this.$refs[item]"
,
this
,
item
,
this
.
$refs
[
item
]);
...
@@ -349,16 +399,31 @@ export default {
...
@@ -349,16 +399,31 @@ export default {
if
(
this
.
formHasError
)
{
if
(
this
.
formHasError
)
{
return
;
return
;
}
}
for
(
let
i
=
0
;
i
<
this
.
form
.
CardList
.
length
;
i
++
)
{
let
item
=
this
.
form
.
CardList
[
i
]
if
(
!
item
.
Type
||
!
item
.
CardNo
)
{
// this.$notify(res.data.message);
this
.
$q
.
notify
({
type
:
"negative"
,
message
:
'证件信息不完善,请补充'
,
position
:
"top"
,
timeout
:
2000
,
// 以毫秒为单位; 0意味着没有超时
});
return
}
}
this
.
submitUserInfo
();
this
.
submitUserInfo
();
},
},
getUsersList
()
{
getUsersList
()
{
this
.
apipost
(
this
.
apipost
(
"b2c_post_GetTripGuestPageList"
,
"b2c_post_GetTripGuestPageList"
,
{
pageIndex
:
1
,
pageSize
:
2
0
},
{
pageIndex
:
this
.
current
,
pageSize
:
1
0
},
(
res
)
=>
{
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
const
{
count
,
pageData
}
=
res
.
data
.
data
;
const
{
count
,
pageData
,
pageCount
}
=
res
.
data
.
data
;
this
.
count
=
count
;
this
.
count
=
count
;
this
.
pageCount
=
pageCount
this
.
pageData
=
pageData
;
this
.
pageData
=
pageData
;
}
else
{
}
else
{
// this.$notify(res.data.message);
// this.$notify(res.data.message);
...
@@ -375,7 +440,8 @@ export default {
...
@@ -375,7 +440,8 @@ export default {
},
},
editUser
(
item
)
{
editUser
(
item
)
{
console
.
log
(
'editUser'
,
item
)
console
.
log
(
'editUser'
,
item
)
this
.
form
=
item
this
.
form
=
{...
item
}
this
.
form
.
AreaCode
=
Number
(
this
.
form
.
AreaCode
)
this
.
isShowDialog
=
true
this
.
isShowDialog
=
true
},
},
deleteUser
(
item
)
{
deleteUser
(
item
)
{
...
@@ -392,6 +458,7 @@ export default {
...
@@ -392,6 +458,7 @@ export default {
position
:
"top"
,
position
:
"top"
,
timeout
:
2000
,
// 以毫秒为单位; 0意味着没有超时
timeout
:
2000
,
// 以毫秒为单位; 0意味着没有超时
});
});
this
.
current
=
1
this
.
getUsersList
();
this
.
getUsersList
();
}
else
{
}
else
{
// this.$notify(res.data.message);
// this.$notify(res.data.message);
...
@@ -408,10 +475,9 @@ export default {
...
@@ -408,10 +475,9 @@ export default {
},
},
submitUserInfo
()
{
submitUserInfo
()
{
let
params
=
{
...
this
.
form
};
let
params
=
{
...
this
.
form
};
params
.
PhoneCountry
=
params
.
PhoneCountry
.
ID
;
// params.CardList.forEach(item => {
params
.
CardList
.
forEach
(
item
=>
{
// item.Type = item.Type.Id
item
.
Type
=
item
.
Type
.
Id
// })
})
this
.
apipost
(
this
.
apipost
(
"b2c_post_SetTripGuestInfo"
,
"b2c_post_SetTripGuestInfo"
,
params
,
params
,
...
...
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