Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
杨炀
/
ztx_wx_gzt
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
3dd81aba
authored
2026-03-23 18:04:14 +0800
by
lttnew
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
接口修改
1 parent
58412f8a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
154 additions
and
128 deletions
common/api.js
group/pay.vue
myCenter/chooseExaminer.vue
myCenter/goPay.vue
myCenter/payOrder.vue
myCenter/sucPay.vue
personalVip/addVip.vue
personalVip/payment.vue
personalVip/renew.vue
personalVip/vipList.vue
common/api.js
View file @
3dd81ab
...
...
@@ -747,7 +747,7 @@ export function delPayment(payIds) {
}
export
function
paymentDel
(
payIds
)
{
return
request
({
url
:
`/person/paymentRange/
${
payIds
}
`
,
url
:
`/person/paymentRange
New
/
${
payIds
}
`
,
method
:
'DELETE'
})
}
...
...
@@ -1303,7 +1303,14 @@ export function certifiedNew(params) {
// 模拟回调
export
function
callBack2
(
orderId
)
{
return
request
({
url
:
`/system/certifiedNew/callBack2/
${
orderId
}
`
url
:
`/system/certifiedNew/callBack2/
${
orderId
}
`
,
method
:
'get'
,
})
}
export
function
pcallBack2
(
orderId
)
{
return
request
({
url
:
`/person/paymentRangeNew/callBack2/
${
orderId
}
`
,
method
:
'get'
,
})
}
// 优惠政策回显
...
...
group/pay.vue
View file @
3dd81ab
<
template
>
<
template
>
<view>
<!-- 会员认证 -->
<view
class=
"searchbar"
>
...
...
@@ -6,96 +6,96 @@
v-model=
"queryParams.rangeName"
placeholder=
"缴费名称"
@
blur=
"getList"
@
clear=
"getList"
>
</uni-easyinput>
<view
class=
"invertedbtn-red"
v-if=
"userType=='2'"
@
click=
"goAddPay"
>
+ 新建缴费
</view>
</view>
<view
class=
"appList"
>
<view
class=
"appItem"
v-for=
"(item,index) in list"
:key=
"index"
>
<view
class=
"status"
@
click=
"goDetail(item)"
>
</view>
<view
class=
"appList"
>
<view
class=
"appItem"
v-for=
"(item,index) in list"
:key=
"index"
>
<view
class=
"status"
@
click=
"goDetail(item)"
>
<text
v-if=
"item?.content?.status==0"
class=
"text-primary"
>
待提交
</text>
<text
v-if=
"item?.content?.status==1"
class=
"text-primary"
>
审核中
</text>
<text
v-if=
"item?.content?.status==2"
class=
"text-success"
>
审核通过
</text>
<text
v-if=
"item?.content?.status==3"
class=
"text-danger"
>
审核拒绝
</text>
<text
v-if=
"item?.content?.status==4"
class=
"text-warning"
>
已撤回
</text>
<text
v-if=
"item?.content?.status==1"
class=
"text-primary"
>
审核中
</text>
<text
v-if=
"item?.content?.status==2"
class=
"text-success"
>
审核通过
</text>
<text
v-if=
"item?.content?.status==3"
class=
"text-danger"
>
审核拒绝
</text>
<text
v-if=
"item?.content?.status==4"
class=
"text-warning"
>
已撤回
</text>
</view>
<view
class=
"date"
>
{{
item
?.
content
?.
commitTime
}}
提交
</view>
<view
class=
"text-primary"
v-if=
"item.wfCode"
>
{{
item
.
wfCode
}}
</view>
<view
class=
"text-primary"
v-if=
"item.wfCode"
>
{{
item
.
wfCode
}}
</view>
<view
class=
"name mt0"
@
click=
"goDetail(item)"
>
{{
item
.
rangeName
}}
</view>
<view
class=
"flexbox"
@
click=
"goDetail(item)"
>
<view>
会员合计
<view>
{{
item
.
allCount
}}
</view>
</view>
<view
v-if=
"userType!='2'"
>
续费年限
<view>
{{
item
.
content
?.
renewYear
}}
</view>
</view>
<view
:class=
"userType=='2'?'w50':''"
>
年限合计
<view>
{{
item
.
totalRenewYear
}}
</view>
</view>
</view>
<view
class=
"func"
v-if=
"item.content?.status==0||item.content?.status==3||item.content?.status==4"
>
<view
class=
"flexbox"
@
click=
"goDetail(item)"
>
<view>
会员合计
<view>
{{
item
.
allCount
}}
</view>
</view>
<view
v-if=
"userType!='2'"
>
续费年限
<view>
{{
item
.
content
?.
renewYear
}}
</view>
</view>
<view
:class=
"userType=='2'?'w50':''"
>
年限合计
<view>
{{
item
.
totalRenewYear
}}
</view>
</view>
</view>
<view
class=
"func"
v-if=
"item.content?.status==0||item.content?.status==3||item.content?.status==4"
>
<button
@
click=
"handleDelete(item)"
>
删除
</button>
<button
@
click=
"handleUpdate(item)"
>
编辑
</button>
<button
@
click=
"commitFN(item)"
>
提交审核
</button>
</view>
</view>
</view>
<view
class=
"nodata"
v-if=
"list.length==0"
>
<image
mode=
"aspectFit"
src=
"/static/nodata.png"
></image>
<text>
暂无数据
</text>
</view>
</view>
</
template
>
<
script
setup
>
import
*
as
api
from
'@/common/api.js'
import
config
from
'@/config.js'
import
{
onMounted
,
ref
}
from
'vue'
import
{
onLoad
,
onShow
}
from
'@dcloudio/uni-app'
const
app
=
getApp
();
</view>
</view>
</view>
<view
class=
"nodata"
v-if=
"list.length==0"
>
<image
mode=
"aspectFit"
src=
"/static/nodata.png"
></image>
<text>
暂无数据
</text>
</view>
</view>
</
template
>
<
script
setup
>
import
*
as
api
from
'@/common/api.js'
import
config
from
'@/config.js'
import
{
onMounted
,
ref
}
from
'vue'
import
{
onLoad
,
onShow
}
from
'@dcloudio/uni-app'
const
app
=
getApp
();
const
list
=
ref
([])
const
queryParams
=
ref
({})
const
userType
=
ref
(
''
)
const
queryParams
=
ref
({})
const
userType
=
ref
(
''
)
const
UpPop
=
ref
(
null
)
const
form
=
ref
({
docId
:
''
,
payTime
:
''
,
url
:
''
,
remark
:
''
})
onShow
(()
=>
{
if
(
app
.
globalData
.
isLogin
)
{
init
()
}
else
{
app
.
firstLoadCallback
=
()
=>
{
init
()
};
}
})
function
init
()
{
userType
.
value
=
app
.
globalData
.
userType
getList
()
}
function
getList
()
{
})
onShow
(()
=>
{
if
(
app
.
globalData
.
isLogin
)
{
init
()
}
else
{
app
.
firstLoadCallback
=
()
=>
{
init
()
};
}
})
function
init
()
{
userType
.
value
=
app
.
globalData
.
userType
getList
()
}
function
getList
()
{
api
.
getPayList
(
queryParams
.
value
).
then
(
res
=>
{
for
(
const
item
of
res
.
rows
)
{
item
.
content
=
null
if
(
item
.
certList
?.
length
>
0
)
{
item
.
content
=
item
.
certList
[
0
]
}
}
list
.
value
=
res
.
rows
})
}
}
list
.
value
=
res
.
rows
})
}
function
commitFN
(
row
)
{
uni
.
showModal
({
title
:
'提示'
,
...
...
@@ -109,16 +109,16 @@
})
}
})
}
function
goDetail
(
item
)
{
}
function
goDetail
(
item
)
{
//详情
const
form
=
encodeURIComponent
(
JSON
.
stringify
(
item
))
// 查看
let
path
=
`/group/payDetail?&form=
${
form
}
`
uni
.
navigateTo
({
url
:
path
});
});
}
function
goAddPay
(){
...
...
@@ -147,9 +147,9 @@
url
:
path
});
}
</
script
>
</
script
>
<
style
scoped
lang=
"scss"
>
.searchbar
{
display
:
flex
;
...
...
@@ -174,15 +174,15 @@
font-size
:
30
rpx
;
padding
:
10
rpx
20
rpx
;
}
}
.popBody
{
font-size
:
28
rpx
;
line-height
:
1.5
;
overflow
:
auto
;
padding
:
30
rpx
;
.btn-red
{
margin
:
50
rpx
0
30
rpx
;
}
}
}
.popBody
{
font-size
:
28
rpx
;
line-height
:
1.5
;
overflow
:
auto
;
padding
:
30
rpx
;
.btn-red
{
margin
:
50
rpx
0
30
rpx
;
}
}
</
style
>
\ No newline at end of file
...
...
myCenter/chooseExaminer.vue
View file @
3dd81ab
...
...
@@ -195,10 +195,11 @@ async function confirmAddExpireExaminer() {
.search-buttons
{
display
:
flex
;
justify-content
:
space-between
;
margin-top
:
10
rpx
;
margin-top
:
30
rpx
;
margin-left
:
80px
;
}
.search-btn
,
.reset-btn
{
width
:
2
0
0
rpx
;
width
:
2
2
0
rpx
;
height
:
70
rpx
;
line-height
:
70
rpx
;
border-radius
:
8
rpx
;
...
...
myCenter/goPay.vue
View file @
3dd81ab
<
template
>
<view
class=
"container"
>
<!-- 主内容区域 -->
<view
class=
"content"
>
<!-- 缴费年限 + 费用卡片 -->
<view
class=
"card"
>
<!-- 缴费年限 -->
<view
class=
"yearRow"
>
<view
class=
"label"
>
缴费年限
</view>
<view
class=
"control"
>
...
...
@@ -112,9 +109,9 @@ const handelPay = async () => {
})
}
else
{
if
(
data
.
orderId
)
{
a
wait
callBack2
(
data
.
orderId
)
a
pi
.
callBack2
(
data
.
orderId
)
uni
.
navigateTo
({
url
:
`/myCenter/
go
Pay`
url
:
`/myCenter/
suc
Pay`
})
}
...
...
myCenter/payOrder.vue
View file @
3dd81ab
...
...
@@ -93,18 +93,18 @@ async function handlePay() {
payLoading
.
value
=
true
const
res
=
await
api
.
goPay
(
rangeId
.
value
)
// 订单ID存在则调用回调接口
if
(
res
.
data
?.
orderId
)
{
await
api
.
callBack2
(
res
.
data
.
orderId
)
api
.
pcallBack2
(
res
.
data
.
orderId
)
uni
.
navigateTo
({
url
:
`/myCenter/sucPay?rangeId=
${
rangeId
.
value
}
from=payOrder`
})
}
// 跳转到支付成功页
uni
.
navigateTo
({
url
:
`/pages/payOk/payOk?rangeId=
${
rangeId
.
value
}
`
})
}
catch
(
err
)
{
cons
ole
.
error
(
'支付失败:'
,
err
)
uni
.
showToast
({
title
:
err
.
data
.
m
sg
,
icon
:
'none'
})
cons
t
errMsg
=
err
?.
data
?.
msg
||
err
?.
message
||
'支付失败,请稍后重试'
uni
.
showToast
({
title
:
err
M
sg
,
icon
:
'none'
})
}
finally
{
payLoading
.
value
=
false
}
...
...
myCenter/sucPay.vue
View file @
3dd81ab
...
...
@@ -41,23 +41,30 @@
<!-- 确定按钮(渐变+动效) -->
<view
class=
"confirm-btn-area"
>
<button
class=
"confirm-btn"
@
click=
"
handleConfirm
"
>
确定
</button>
<button
class=
"confirm-btn"
@
click=
"
goBack
"
>
确定
</button>
</view>
</view>
</
template
>
<
script
setup
>
import
{
onLoad
}
from
'@dcloudio/uni-app'
const
goBack
=
()
=>
{
const
pages
=
getCurrentPages
()
const
currentPage
=
pages
[
pages
.
length
-
1
]
const
{
from
}
=
currentPage
.
options
||
{}
// 确定按钮点击事件
const
handleConfirm
=
()
=>
{
uni
.
navigateBack
({
delta
:
1
})
// 也可跳转首页:uni.redirectTo({ url: '/pages/index/index' })
let
delta
=
1
if
(
from
===
'payOrder'
)
{
delta
=
2
// 来自添加会员 / 订单页 → 返回 2 级
}
else
{
delta
=
3
}
uni
.
navigateBack
({
delta
})
}
onLoad
((
option
)
=>
{
// 可接收订单参数动态渲染,示例:
// if (option.amount) { /* 赋值给金额变量 */ }
})
</
script
>
...
...
personalVip/addVip.vue
View file @
3dd81ab
...
...
@@ -67,11 +67,7 @@
<image
mode=
"aspectFill"
v-if=
"baseFormData.photo2"
style=
"height:200rpx;width:200rpx;"
:src=
"config.baseUrl_api + baseFormData.photo2"
/>
</uni-forms-item>
</view>
</uni-forms>
</view>
<view
class=
"agreeline"
>
<image
@
click=
"changeAgree(agree)"
v-if=
"agree"
...
...
@@ -84,7 +80,7 @@
<view
class=
"fixedBottom"
><button
class=
"btn-red"
@
click=
"goSubmit"
>
确 定
</button></view>
<!-- 会员须知 -->
<uni-popup
ref=
"popup"
type=
"bottom"
background-color=
"#fff"
animation
>
<uni-popup
ref=
"popup"
type=
"bottom"
background-color=
"#fff"
animation
:disable-scroll=
"true"
:mask-click=
"false"
>
<view
class=
"tt"
>
入会须知
</view>
<view
class=
"popBody"
>
_
{{
baseFormData
.
name
}}
_欢迎您申请成为中国跆拳道协会(以下简称中国跆协)会员,请确保本次申请是经过您本人或监护人授权同意后的自愿行为,请您务必仔细阅读本入会须知。
...
...
@@ -106,7 +102,7 @@
</view>
</uni-popup>
<uni-popup
ref=
"infoConfirm"
type=
"center"
>
<uni-popup
ref=
"infoConfirm"
type=
"center"
:disable-scroll=
"true"
:mask-click=
"false"
>
<view
class=
"tt"
>
确认信息
</view>
<view
class=
"popBody"
>
<view>
...
...
@@ -504,7 +500,6 @@
const
time
=
new
Date
().
valueOf
()
+
''
baseFormData
.
value
.
t
=
time
+
Math
.
floor
(
Math
.
random
()
*
10
)
baseFormData
.
value
.
signT
=
aes2
.
AESEncrypt
(
baseFormData
.
value
.
idcType
+
time
)
console
.
log
(
baseFormData
.
value
)
api
.
addPersonToMyDept
(
baseFormData
.
value
).
then
(
Response
=>
{
if
(
Response
.
data
==
0
)
{
let
msg
=
'该成员,实名认证未通过,注册失败!'
...
...
@@ -573,6 +568,7 @@
align-items
:
center
!important
;
justify-content
:
flex-end
!important
;
text-align
:
right
!important
;
flex-wrap
:
nowrap
!important
;
}
/* 输入框内容右对齐 */
...
...
@@ -587,18 +583,24 @@
/* 文本内容右对齐 */
.uni-forms-item
.uni-forms-item__content
text
,
.uni-forms-item
.uni-forms-item__content
>
text
{
text-align
:
right
!important
;
width
:
100%
;
display
:
block
;
display
:
inline-block
!important
;
white-space
:
nowrap
!important
;
}
/* 覆盖原有样式 */
:deep
(
.uni-forms-item__content
)
{
justify-content
:
flex-end
!important
;
}
</
style
>
<
style
lang=
"scss"
scoped
>
:deep
(
.uni-popup__mask
)
{
overflow
:
hidden
!important
;
position
:
fixed
!important
;
top
:
0
;
left
:
0
;
right
:
0
;
bottom
:
0
;
}
:deep
(
.uni-popup
)
{
overflow
:
hidden
!important
;
}
:deep
(
.segmented-control
)
{
height
:
100
rpx
;
}
...
...
@@ -617,6 +619,8 @@
.popBody
{
font-size
:
28
rpx
;
line-height
:
1.5
;
height
:
70vh
;
overflow-y
:
auto
;
font-family
:
华文仿宋
;
height
:
80vh
;
overflow
:
auto
;
...
...
@@ -632,6 +636,7 @@
box-sizing
:
border-box
;
display
:
flex
;
font-size
:
30
rpx
;
text
{
color
:
#014A9F
;
...
...
@@ -671,4 +676,13 @@
:deep
(
.item-text-overflow
)
{
text-align
:
left
;
}
:deep
(
.fixUniFormItemStyle
.uni-data-picker__input-box
)
{
justify-content
:
flex-start
!important
;
text-align
:
left
!important
;
}
/* 让地区选择器的文本左对齐 */
:deep
(
.fixUniFormItemStyle
.uni-data-picker__text
)
{
text-align
:
left
!important
;
}
</
style
>
\ No newline at end of file
...
...
personalVip/payment.vue
View file @
3dd81ab
This diff is collapsed.
Click to expand it.
personalVip/renew.vue
View file @
3dd81ab
...
...
@@ -266,7 +266,7 @@
}
.vipData
{
padding
:
10
rpx
20
rpx
;
padding
:
10
rpx
20
rpx
5
rpx
;
font-size
:
28
rpx
;
color
:
#666
;
view
{
margin-bottom
:
10
rpx
;
}
...
...
personalVip/vipList.vue
View file @
3dd81ab
...
...
@@ -200,7 +200,7 @@
.icon
{
width
:
40
rpx
;
height
:
40
rpx
;
margin
-right
:
20
rpx
;
margin
:
0
20
rpx
;
}
.photobox
{
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
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 post a comment