Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
newydyl1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
qd01
newydyl1
Commits
de634f20
Commit
de634f20
authored
Feb 17, 2025
by
zhangsan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
5b004ee6
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
53 additions
and
21 deletions
+53
-21
App.vue
src/pages/user/bankCard/App.vue
+21
-6
App.vue
src/pages/user/bindBankCard/App.vue
+30
-13
App.vue
src/pages/user/resetPayPass/App.vue
+2
-2
No files found.
src/pages/user/bankCard/App.vue
View file @
de634f20
...
...
@@ -20,12 +20,16 @@ async function getUserInfo() {
const
res
=
await
request
.
get
(
'
/system/user/
'
)
userInfo
.
value
=
res
.
data
}
const
isEdit
=
ref
(
false
)
const
cardinfo
=
ref
([])
function
getCardList
()
{
request
.
get
(
'
/ops/bankcard/list?cardtype=2
'
).
then
((
res
)
=>
{
if
(
res
.
rows
?.
length
)
{
cardinfo
.
value
=
JSON
.
parse
(
JSON
.
stringify
(
res
.
rows
[
0
]))
formData
.
value
=
JSON
.
parse
(
JSON
.
stringify
(
res
.
rows
[
0
]))
if
(
cardinfo
.
value
.
yjxm
){
isEdit
.
value
=
true
}
}
})
}
...
...
@@ -91,9 +95,11 @@ const handleSubmit = useDebounceFn(async () => {
},
2000
)
return
false
}
if
(
cardinfo
.
value
.
yjxm
)
{
showFailToast
(
'
银行卡正在制作当中,3天后可邮寄到货
'
)
return
false
if
(
isEdit
.
value
){
if
(
cardinfo
.
value
.
yjxm
)
{
showFailToast
(
'
银行卡正在制作当中,3天后可邮寄到货
'
)
return
false
}
}
await
handleBankCardDelivery
()
},
500
)
...
...
@@ -109,7 +115,7 @@ const handleSubmit = useDebounceFn(async () => {
</div>
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.yjxm"
type=
"text"
placeholder=
"请输入收件人姓名"
>
<input
v-model=
"formData.yjxm"
:disabled=
"isEdit"
type=
"text"
placeholder=
"请输入收件人姓名"
>
</div>
</div>
...
...
@@ -119,7 +125,7 @@ const handleSubmit = useDebounceFn(async () => {
</div>
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.bankPhone"
type=
"tel"
placeholder=
"请输入联系电话"
>
<input
v-model=
"formData.bankPhone"
:disabled=
"isEdit"
type=
"tel"
placeholder=
"请输入联系电话"
>
</div>
</div>
...
...
@@ -130,7 +136,7 @@ const handleSubmit = useDebounceFn(async () => {
<div
class=
"warpinput bankAddress"
>
<div
style=
"display: flex;align-items: center;"
>
<textarea
v-model=
"formData.bankAddress"
placeholder=
"请输入详细收件地址"
v-model=
"formData.bankAddress"
:disabled=
"isEdit"
placeholder=
"请输入详细收件地址"
rows=
"3"
/>
</div>
...
...
@@ -144,6 +150,12 @@ const handleSubmit = useDebounceFn(async () => {
<div
@
click=
"handleSubmit"
v-ripple
class=
"buynow"
>
邮寄银行卡
</div>
<div
v-if=
"cardinfo.yjxm && isEdit"
@
click=
"isEdit = false"
v-ripple
class=
"buynow buynow1"
>
修改邮寄地址
</div>
<div
v-if=
"cardinfo.yjxm && !isEdit"
@
click=
"handleSubmit"
v-ripple
class=
"buynow buynow1"
>
提交邮寄地址
</div>
</div>
</div>
</
template
>
...
...
@@ -234,6 +246,9 @@ const handleSubmit = useDebounceFn(async () => {
text-align
:
center
;
line-height
:
46px
;
}
.buynow1
{
margin-top
:
10px
;
}
}
}
</
style
>
src/pages/user/bindBankCard/App.vue
View file @
de634f20
<
script
setup
lang=
"ts"
>
import
request
from
'
@/utils/request
'
import
{
useDebounceFn
}
from
'
@vueuse/core
'
import
{
re
active
,
re
f
}
from
'
vue
'
import
{
ref
}
from
'
vue
'
import
{
showFailToast
,
showSuccessToast
}
from
'
vant
'
import
AppHeader
from
'
@/components/AppHeader.vue
'
const
navigateTo
=
(
path
:
string
)
=>
{
...
...
@@ -92,12 +92,16 @@ async function handleBindBankCard() {
}
try
{
loading
.
value
=
true
const
res
=
await
request
.
post
(
'
/ops/bankcard/add
'
,
{
let
data
=
{
name
:
formData
.
value
.
name
,
bankName
:
formData
.
value
.
bankName
,
bankNum
:
formData
.
value
.
bankNum
.
replace
(
/
\s
/g
,
''
),
// extend3: encrypt(formData.extend3)
})
}
let
url
=
bankInfo
.
value
.
bankId
?
'
/ops/bankcard/edit
'
:
'
/ops/bankcard/add
'
bankInfo
.
value
.
bankId
?
data
.
bankId
=
bankInfo
.
value
.
bankId
:
null
const
res
=
await
request
.
post
(
url
,
data
)
if
(
res
.
code
===
200
)
{
showSuccessToast
(
'
银行卡绑定成功
'
)
...
...
@@ -120,14 +124,18 @@ async function handleBindBankCard() {
// 表单提交(带防抖)
const
handleSubmit
=
useDebounceFn
(
async
()
=>
{
if
(
formData
.
value
.
bankId
)
{
showFailToast
(
'
您已绑定银行卡
'
)
return
if
(
isEdit
.
value
){
formData
.
value
.
extend3
=
''
isEdit
.
value
=
false
return
}
}
if
(
!
validateForm
())
return
await
handleBindBankCard
()
},
500
)
const
bankInfo
=
ref
({})
const
isEdit
=
ref
(
false
)
function
getBankList
()
{
request
.
get
(
'
/ops/bankcard/list?cardtype=1
'
,
{}).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
...
...
@@ -135,23 +143,29 @@ function getBankList() {
const
bankList
=
res
.
rows
?.
map
(
v
=>
Object
.
assign
({},
v
,
{
switch
:
false
}),
)
formData
.
value
=
bankList
[
0
]
let
bank
=
bankList
[
0
]
bank
.
extend3
=
''
formData
.
value
=
bank
bankInfo
.
value
=
bank
isEdit
.
value
=
true
}
}
})
}
getBankList
()
</
script
>
<
template
>
<AppHeader
title=
"绑定银行卡"
/>
<div
class=
"auth-container"
>
<div
class=
"label"
>
真实姓名
真实姓名
</div>
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.name"
type=
"text"
autoComplete=
"off"
placeholder=
"请填写您的真实姓名"
>
<input
v-model=
"formData.name"
:disabled=
"isEdit"
type=
"text"
autoComplete=
"off"
placeholder=
"请填写您的真实姓名"
>
</div>
</div>
...
...
@@ -160,7 +174,7 @@ getBankList()
</div>
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.bankName"
type=
"text"
autoComplete=
"off"
placeholder=
"请选择您的开户银行"
>
<input
v-model=
"formData.bankName"
:disabled=
"isEdit"
type=
"text"
autoComplete=
"off"
placeholder=
"请选择您的开户银行"
>
</div>
<van-icon
name=
"arrow"
/>
</div>
...
...
@@ -171,7 +185,7 @@ getBankList()
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.bankNum"
type=
"text"
autoComplete=
"off"
placeholder=
"请填写您的银行卡号"
maxlength=
"23"
v-model=
"formData.bankNum"
:disabled=
"isEdit"
type=
"text"
autoComplete=
"off"
placeholder=
"请填写您的银行卡号"
maxlength=
"23"
@
input=
"handleCardInput"
>
</div>
...
...
@@ -183,7 +197,7 @@ getBankList()
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
v-model=
"formData.extend3"
type=
"password"
autoComplete=
"off"
placeholder=
"请输入您的交易密码"
v-model=
"formData.extend3"
:disabled=
"isEdit"
type=
"password"
autoComplete=
"off"
placeholder=
"请输入您的交易密码"
maxlength=
"6"
>
</div>
...
...
@@ -194,7 +208,10 @@ getBankList()
<div>
* 为了您的资金安全,请务必填写真实信息
</div>
</div>
<div
@
click=
"() => handleSubmit()"
v-ripple
class=
"buynow"
>
{{
!
formData
.
bankId
?
'
确定绑定
'
:
'
绑定成功
'
}}
{{
!
formData
.
bankId
?
'
确定绑定
'
:
'
修改绑定
'
}}
</div>
<div
v-if=
"bankInfo.bankId && !isEdit"
@
click=
"handleSubmit"
v-ripple
class=
"buynow"
>
提交资料
</div>
</div>
</
template
>
...
...
src/pages/user/resetPayPass/App.vue
View file @
de634f20
<
template
>
<AppHeader
title=
"修改交易密码"
/>
<div
class=
"auth-container"
>
<div
class=
"label"
>
原
密码
</div>
<div
class=
"label"
>
登录
密码
</div>
<div
class=
"warpinput"
>
<div
style=
"display: flex;align-items: center;"
>
<input
type=
"password"
maxlength=
"6"
v-model=
"formData.oldPassword"
placeholder=
"请输入原
交易
密码"
/>
<input
type=
"password"
maxlength=
"6"
v-model=
"formData.oldPassword"
placeholder=
"请输入原
登录
密码"
/>
</div>
</div>
...
...
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