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
9a662d55
authored
2024-02-20 17:14:40 +0800
by
杨炀
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
fixed: 36版本
1.小程序登录的时候如果手机号或者账号错误的时候,没提示 2.小程序在个人中心编辑的时候,不能保存
1 parent
d3376bed
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
410 additions
and
274 deletions
common/api.js
common/login.js
group/apply/applyList.vue
login/login.vue
myCenter/safe.vue
personalVip/monthFee.vue
common/api.js
View file @
9a662d5
...
...
@@ -10,7 +10,15 @@ export function active(data) {
method
:
'post'
,
params
:
data
})
}
export
function
commitPaymentVoucherYJ
(
data
)
{
return
request
({
url
:
'/person/paymentDocYj/commitPaymentVoucher'
,
method
:
'post'
,
params
:
data
})
}
export
function
editMyMemberCertifiedInfo
(
data
)
{
return
request
({
url
:
'/system/dept/editMyMemberCertifiedInfo'
,
...
...
common/login.js
View file @
9a662d5
...
...
@@ -70,7 +70,11 @@ function loginByPhone(phonenumber, code) {
url
:
'/userLoginByPhone'
,
method
:
'post'
,
params
:
data
}).
then
((
res
)
=>
{
}).
then
((
res
)
=>
{
uni
.
showToast
({
title
:
res
.
msg
,
icon
:
'none'
})
uni
.
setStorageSync
(
'token'
,
'Bearer '
+
res
.
data
.
token
)
}).
then
(
getInfo
)
}
...
...
group/apply/applyList.vue
View file @
9a662d5
<
template
>
<view>
<view
class=
"text-center whitebg"
v-if=
"userType=='2'"
>
<view
class=
"cardNav"
>
<view
class=
"active"
>
审核
</view>
<view
@
click=
"goMerge"
>
合并
</view>
<view
@
click=
"goMergeUp"
>
提交
</view>
</view>
</view>
<!-- 团队会员审核 -->
<uni-segmented-control
class=
"whitebg"
:current=
"current"
:values=
"navs"
@
clickItem=
"onClickItem"
styleType=
"text"
activeColor=
"#AD181F"
></uni-segmented-control>
<view
class=
"appList"
>
<view
class=
"vipData"
v-if=
"userType == '1'"
v-show=
"totalCost>0"
>
<view>
费用合计:
<text>
¥
{{
totalCost
.
toFixed
(
2
)
}}
</text>
</view>
</view>
<view>
<view
class=
"text-center whitebg"
v-if=
"userType=='2'"
>
<view
class=
"cardNav"
>
<view
class=
"active"
>
审核
</view>
<view
@
click=
"goMerge"
>
合并
</view>
<view
@
click=
"goMergeUp"
>
提交
</view>
</view>
</view>
<!-- 团队会员审核 -->
<uni-segmented-control
class=
"whitebg"
:current=
"current"
:values=
"navs"
@
clickItem=
"onClickItem"
styleType=
"text"
activeColor=
"#AD181F"
></uni-segmented-control>
<view
class=
"appList"
>
<view
class=
"vipData"
v-if=
"userType == '1'"
v-show=
"totalCost>0"
>
<view>
费用合计:
<text>
¥
{{
totalCost
.
toFixed
(
2
)
}}
</text>
</view>
</view>
<view
class=
"appItem"
v-for=
"(item,index) in list"
:key=
"index"
>
<view
class=
"status"
@
click=
"goDetail(item)"
>
<text
v-if=
"item.auditStatus == 0"
class=
"text-primary"
>
审核中
</text>
<text
v-if=
"item.auditStatus == 1"
class=
"text-success"
>
审核通过
</text>
<text
v-if=
"item.auditStatus == 2"
class=
"text-danger"
>
审核拒绝
</text>
<text
v-if=
"item.auditStatus == 3"
class=
"text-warning"
>
审核撤回
</text>
</view>
<view
class=
"date"
>
<uni-icons
type=
"calendar-filled"
size=
"16"
color=
"#AD181F"
></uni-icons>
{{
item
.
content
.
commitTime
}}
提交
</view>
<view
class=
"text-primary"
@
click=
"goDetail(item)"
v-if=
"item.content?.wfCode"
>
{{
item
.
content
?.
wfCode
}}
</view>
<view
class=
"name w100 mt0"
@
click=
"goDetail(item)"
>
<!--
<text
class=
"dot"
></text>
-->
{{
item
.
content
.
certName
}}
</view>
<view
class=
"flexbox"
@
click=
"goDetail(item)"
>
<view
v-if=
"userType == '3'"
>
所属省份
<view>
{{
item
.
content
.
province
}}
</view>
</view>
<view
v-if=
"userType == '2'"
>
所属一级
<view>
{{
item
.
content
.
firstDeptName
}}
</view>
</view>
<view
v-if=
"userType == '2'"
>
所属二级
<view>
{{
item
.
content
.
secondDeptName
}}
</view>
</view>
<view>
年限
<view>
{{
item
.
content
.
renewYear
}}
</view>
</view>
<view
v-if=
"deptType == 1"
>
会员/新会员
<view>
{{
item
.
content
.
allCount
}}
/
<text
class=
"text-danger"
>
{{
item
.
content
.
newCount
}}
</text>
</view>
</view>
<view
v-if=
"deptType == 1"
>
费用合计
<view>
¥
{{
(
item
?.
content
?.
allFee
*
1
).
toFixed
(
2
)
}}
</view>
</view>
</view>
<view
class=
"func"
v-if=
"(userType == '1'&&item.auditStatus == 0)"
>
<button
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
<!-- 中跆协 -->
<view
class=
"func"
v-if=
"(userType == '1'&&item.auditStatus == 1&&item.canTui==1)"
>
<button
@
click=
"sendBack(item)"
>
撤回
</button>
</view>
<!-- 市 -->
<view
class=
"func"
v-if=
"userType == '3'"
>
<button
@
click=
"goGroupInfo(item)"
>
机构资料
</button>
<button
v-if=
"item.auditStatus == 1&&item.isView==1&&item.content.allCount > 0"
@
click=
"sendBack(item)"
>
撤回
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
<!-- 省 -->
<view
class=
"func"
v-if=
"userType == '2'"
>
<button
@
click=
"goGroupInfo(item)"
>
机构资料
</button>
<button
v-if=
"item.auditStatus == 1"
@
click=
"sendBack(item)"
>
撤回
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
</view>
</view>
<view
class=
"appItem"
v-for=
"(item,index) in list"
:key=
"index"
>
<view
class=
"status"
@
click=
"goDetail(item)"
>
<text
v-if=
"item.auditStatus == 0"
class=
"text-primary"
>
审核中
</text>
<text
v-if=
"item.auditStatus == 1"
class=
"text-success"
>
审核通过
</text>
<text
v-if=
"item.auditStatus == 2"
class=
"text-danger"
>
审核拒绝
</text>
<text
v-if=
"item.auditStatus == 3"
class=
"text-warning"
>
审核撤回
</text>
</view>
<view
class=
"date"
>
<uni-icons
type=
"calendar-filled"
size=
"16"
color=
"#AD181F"
></uni-icons>
{{
item
.
content
.
commitTime
}}
提交
</view>
<view
class=
"text-primary"
@
click=
"goDetail(item)"
v-if=
"item.content?.wfCode"
>
{{
item
.
content
?.
wfCode
}}
</view>
<view
class=
"name w100 mt0"
@
click=
"goDetail(item)"
>
<!--
<text
class=
"dot"
></text>
-->
{{
item
.
content
.
certName
}}
</view>
<view
class=
"flexbox"
@
click=
"goDetail(item)"
>
<view
v-if=
"userType == '3'"
>
所属省份
<view>
{{
item
.
content
.
province
}}
</view>
</view>
<view
v-if=
"userType == '2'"
>
所属一级
<view>
{{
item
.
content
.
firstDeptName
}}
</view>
</view>
<view
v-if=
"userType == '2'"
>
所属二级
<view>
{{
item
.
content
.
secondDeptName
}}
</view>
</view>
<view
class=
"nodata"
v-if=
"list.length==0"
>
<image
mode=
"aspectFit"
src=
"/static/nodata.png"
></image>
<text>
暂无数据
</text>
</view>
<!--
<view
v-if=
"userType=='2'"
class=
"block-btn-box"
>
<view
v-if=
"deptType == 1"
>
会员/新会员/年限
<view>
{{
item
.
content
.
allCount
}}
/
<text
class=
"text-danger"
>
{{
item
.
content
.
newCount
}}
</text>
/
{{
item
.
content
.
renewYear
}}
</view>
</view>
<view
v-else
>
年限
<view>
{{
item
.
content
.
renewYear
}}
</view>
</view>
<view
v-if=
"deptType == 1"
>
费用合计
<view>
¥
{{
(
item
?.
content
?.
allFee
*
1
).
toFixed
(
2
)
}}
</view>
</view>
<view
v-if=
"deptType == 1"
@
click
.
stop=
"viewSettleFile(item.doc)"
>
缴费状态
<view>
<text
v-if=
"item.doc?.settleFlag==0"
class=
"text-warning"
>
已结算
</text>
<text
v-if=
"item.doc?.settleFlag==1&&item.doc.payFlag==0"
class=
"text-success"
>
已上传
</text>
<text
v-if=
"item.doc?.settleFlag==1&&item.doc.payFlag==1"
class=
"text-danger"
>
未上传
</text>
</view>
</view>
</view>
<view
class=
"func"
v-if=
"(userType == '1'&&item.auditStatus == 0)"
>
<button
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
<!-- 中跆协 -->
<view
class=
"func"
v-if=
"(userType == '1'&&item.auditStatus == 1&&item.canTui==1)"
>
<button
@
click=
"sendBack(item)"
>
撤回
</button>
</view>
<!-- 市 -->
<view
class=
"func"
v-if=
"userType == '3'"
>
<button
@
click=
"goGroupInfo(item)"
>
机构资料
</button>
<button
v-if=
"item.auditStatus == 1&&item.isView==1&&item.content.allCount > 0"
@
click=
"sendBack(item)"
>
撤回
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
<!-- 省 -->
<view
class=
"func"
v-if=
"userType == '2'"
>
<button
@
click=
"goGroupInfo(item)"
>
机构资料
</button>
<button
v-if=
"item.auditStatus == 1"
@
click=
"sendBack(item)"
>
撤回
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'0')"
>
拒绝
</button>
<button
v-if=
"item.auditStatus == 0"
@
click=
"audit(item.recordId,'1')"
>
同意
</button>
</view>
</view>
</view>
<view
class=
"nodata"
v-if=
"list.length==0"
>
<image
mode=
"aspectFit"
src=
"/static/nodata.png"
></image>
<text>
暂无数据
</text>
</view>
<!--
<view
v-if=
"userType=='2'"
class=
"block-btn-box"
>
<button
@
click=
"goMerge"
class=
"btn-red-kx"
>
前往合并 >
</button>
</view>
-->
</view>
</view>
</
template
>
<
script
setup
>
import
*
as
api
from
'@/common/api.js'
import
config
from
'@/config.js'
import
{
onMounted
,
ref
}
from
'vue'
import
{
onLoad
}
from
'@dcloudio/uni-app'
const
app
=
getApp
();
const
queryParams
=
ref
({
// pageNum: 1,
// pageSize: 10
auditStatus
:
'0'
})
const
navs
=
ref
([
'审核中'
,
'审核通过'
,
'审核拒绝'
,
'撤回'
])
const
current
=
ref
()
const
list
=
ref
([])
const
total
=
ref
(
0
)
const
deptType
=
ref
(
''
)
const
userType
=
ref
(
''
)
const
totalCost
=
ref
(
0
)
onLoad
(()
=>
{
if
(
app
.
globalData
.
isLogin
)
{
init
()
}
else
{
import
*
as
api
from
'@/common/api.js'
import
config
from
'@/config.js'
import
{
onMounted
,
ref
}
from
'vue'
import
{
onLoad
}
from
'@dcloudio/uni-app'
const
app
=
getApp
();
const
queryParams
=
ref
({
// pageNum: 1,
// pageSize: 10
auditStatus
:
'0'
})
const
navs
=
ref
([
'审核中'
,
'审核通过'
,
'审核拒绝'
,
'撤回'
])
const
current
=
ref
()
const
list
=
ref
([])
const
total
=
ref
(
0
)
const
deptType
=
ref
(
''
)
const
userType
=
ref
(
''
)
const
totalCost
=
ref
(
0
)
onLoad
(()
=>
{
if
(
app
.
globalData
.
isLogin
)
{
init
()
}
else
{
app
.
firstLoadCallback
=
()
=>
{
init
()
};
}
})
app
.
firstLoadCallback
=
()
=>
{
init
()
};
}
})
function
init
()
{
deptType
.
value
=
app
.
globalData
.
deptType
userType
.
value
=
app
.
globalData
.
userType
// console.log(userType.value)
getList
()
}
function
init
()
{
deptType
.
value
=
app
.
globalData
.
deptType
userType
.
value
=
app
.
globalData
.
userType
// console.log(userType.value)
getList
()
}
function
onClickItem
(
e
)
{
console
.
log
(
e
)
queryParams
.
value
.
auditStatus
=
e
.
currentIndex
getList
()
}
function
onClickItem
(
e
)
{
console
.
log
(
e
)
queryParams
.
value
.
auditStatus
=
e
.
currentIndex
getList
()
}
function
getList
()
{
uni
.
showLoading
({
title
:
'加载中'
})
if
(
deptType
.
value
==
2
||
deptType
.
value
==
3
)
{
// 省
queryParams
.
value
.
mergeFlag
=
0
}
else
if
(
deptType
.
value
==
1
)
{
queryParams
.
value
.
noEmpty
=
1
}
else
if
(
deptType
.
value
==
4
||
deptType
.
value
==
5
)
{
queryParams
.
value
.
noEmpty
=
1
}
totalCost
.
value
=
0
api
.
getGroupList
(
queryParams
.
value
).
then
(
res
=>
{
uni
.
hideLoading
()
list
.
value
=
res
.
rows
list
.
value
.
forEach
(
item
=>
{
item
.
content
=
JSON
.
parse
(
item
.
content
)
// item.doc = JSON.parse(item.doc)
totalCost
.
value
=
totalCost
.
value
+
(
item
.
content
.
allFee
*
1
)
})
total
.
value
=
res
.
total
})
}
function
getList
()
{
uni
.
showLoading
({
title
:
'加载中'
})
if
(
deptType
.
value
==
2
||
deptType
.
value
==
3
)
{
// 省
queryParams
.
value
.
mergeFlag
=
0
}
else
if
(
deptType
.
value
==
1
)
{
queryParams
.
value
.
noEmpty
=
1
}
else
if
(
deptType
.
value
==
4
||
deptType
.
value
==
5
)
{
queryParams
.
value
.
noEmpty
=
1
}
totalCost
.
value
=
0
api
.
getGroupList
(
queryParams
.
value
).
then
(
res
=>
{
uni
.
hideLoading
()
list
.
value
=
res
.
rows
list
.
value
.
forEach
(
item
=>
{
item
.
content
=
JSON
.
parse
(
item
.
content
)
if
(
item
.
doc
){
item
.
doc
=
JSON
.
parse
(
item
.
doc
)
}
totalCost
.
value
=
totalCost
.
value
+
(
item
.
content
.
allFee
*
1
)
})
total
.
value
=
res
.
total
})
}
function
audit
(
recordId
,
flag
)
{
if
(
flag
==
'0'
)
{
// 拒绝
// 弹出框填写理由
uni
.
showModal
({
title
:
'请输入拒绝理由'
,
editable
:
true
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
if
(
!
res
.
content
)
{
uni
.
showToast
({
title
:
'请输入拒绝理由'
,
icon
:
'none'
})
}
else
{
doApproval
(
recordId
,
flag
,
res
.
content
)
}
}
}
})
}
else
if
(
flag
==
'1'
)
{
// 二次确认
uni
.
showModal
({
title
:
'提示'
,
content
:
`确定审批通过吗`
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
doApproval
(
recordId
,
flag
)
}
}
})
}
}
function
audit
(
recordId
,
flag
)
{
if
(
flag
==
'0'
)
{
// 拒绝
// 弹出框填写理由
uni
.
showModal
({
title
:
'请输入拒绝理由'
,
editable
:
true
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
if
(
!
res
.
content
)
{
uni
.
showToast
({
title
:
'请输入拒绝理由'
,
icon
:
'none'
})
}
else
{
doApproval
(
recordId
,
flag
,
res
.
content
)
}
}
}
})
}
else
if
(
flag
==
'1'
)
{
// 二次确认
uni
.
showModal
({
title
:
'提示'
,
content
:
`确定审批通过吗`
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
doApproval
(
recordId
,
flag
)
}
}
})
}
}
function
doApproval
(
recordId
,
flag
,
reason
)
{
var
obj
=
{
flag
:
flag
,
reason
:
reason
||
''
,
recordIds
:
[]
}
obj
.
recordIds
.
push
(
recordId
)
console
.
log
(
obj
)
api
.
groupAudit
(
obj
).
then
((
res
)
=>
{
uni
.
showToast
({
title
:
'操作成功'
,
icon
:
'none'
})
getList
()
})
}
function
doApproval
(
recordId
,
flag
,
reason
)
{
var
obj
=
{
flag
:
flag
,
reason
:
reason
||
''
,
recordIds
:
[]
}
obj
.
recordIds
.
push
(
recordId
)
console
.
log
(
obj
)
api
.
groupAudit
(
obj
).
then
((
res
)
=>
{
uni
.
showToast
({
title
:
'操作成功'
,
icon
:
'none'
})
getList
()
})
}
function
goDetail
(
item
)
{
const
auditLog
=
encodeURIComponent
(
JSON
.
stringify
(
item
.
auditLog
))
const
form
=
encodeURIComponent
(
JSON
.
stringify
(
item
))
function
goDetail
(
item
)
{
const
auditLog
=
encodeURIComponent
(
JSON
.
stringify
(
item
.
auditLog
))
const
form
=
encodeURIComponent
(
JSON
.
stringify
(
item
))
if
(
userType
.
value
==
'1'
)
{
// 查看
let
path
=
`/group/apply/mergeUpDetail?form=
${
form
}
`
uni
.
navigateTo
({
url
:
path
});
}
else
if
(
userType
.
value
==
'2'
||
userType
.
value
==
'3'
)
{
// 审核记录
let
path
=
`/group/apply/record?certId=
${
item
.
content
.
certId
}
`
uni
.
navigateTo
({
url
:
path
});
}
}
if
(
userType
.
value
==
'1'
)
{
// 查看
let
path
=
`/group/apply/mergeUpDetail?form=
${
form
}
`
uni
.
navigateTo
({
url
:
path
});
}
else
if
(
userType
.
value
==
'2'
||
userType
.
value
==
'3'
)
{
// 审核记录
let
path
=
`/group/apply/record?certId=
${
item
.
content
.
certId
}
`
uni
.
navigateTo
({
url
:
path
});
}
}
function
goMerge
()
{
let
path
=
`/group/apply/merge`
uni
.
redirectTo
({
url
:
path
});
}
function
goMerge
()
{
let
path
=
`/group/apply/merge`
uni
.
redirectTo
({
url
:
path
});
}
function
goMergeUp
()
{
let
path
=
`/group/apply/mergeUp`
uni
.
redirectTo
({
url
:
path
});
}
function
goMergeUp
()
{
let
path
=
`/group/apply/mergeUp`
uni
.
redirectTo
({
url
:
path
});
}
function
sendBack
(
row
)
{
uni
.
showModal
({
title
:
'提示'
,
content
:
`确定撤回
${
row
.
content
.
certName
}
吗`
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
api
.
certifiedwithDraw
({
recordId
:
row
.
recordId
,
reason
:
row
.
reason
}).
then
(
res
=>
{
uni
.
showToast
({
title
:
'操作成功'
,
icon
:
'none'
})
getList
()
})
function
sendBack
(
row
)
{
uni
.
showModal
({
title
:
'提示'
,
content
:
`确定撤回
${
row
.
content
.
certName
}
吗`
,
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
api
.
certifiedwithDraw
({
recordId
:
row
.
recordId
,
reason
:
row
.
reason
}).
then
(
res
=>
{
uni
.
showToast
({
title
:
'操作成功'
,
icon
:
'none'
})
getList
()
})
}
}
})
}
}
}
})
}
function
goGroupInfo
(
row
){
uni
.
navigateTo
({
url
:
`/group/groupInfo?memId=
${
row
.
content
?.
memId
}
`
})
function
goGroupInfo
(
row
)
{
uni
.
navigateTo
({
url
:
`/group/groupInfo?memId=
${
row
.
content
?.
memId
}
`
})
}
function viewSettleFile(doc){
let url
if(doc.payEvidence){
url = JSON.parse(doc.payEvidence)[0].url || null
console.log(url)
if(url){showImg(url)}
}
}
function showImg(n) {
var str = ''
if(n.indexOf('http')==-1){
str = config.baseUrl_api + n
} else {
str = n
}
if (n.indexOf('png') > -1 || n.indexOf('jpg') > -1 || n.indexOf(
'jpeg') > -1) {
uni.previewImage({
urls: [str],
success: function(res) {
console.log('success', res)
},
fail: function(res) {
console.log('fail', res)
},
complete: function(res) {
console.log('complete', res)
}
})
} else {
goWebView(str)
}
}
function goWebView(url) {
url = url.replace("http://", "https://")
uni.showLoading({
title: '下载中'
});
uni.downloadFile({
url: url,
success: function(res) {
uni.hideLoading();
var filePath = res.tempFilePath;
uni.showLoading({
title: '正在打开'
});
uni.openDocument({
filePath: filePath,
showMenu: true,
success: function(res) {
uni.hideLoading();
},
fail: function(err) {
uni.hideLoading();
uni.showToast({
title: err,
icon: 'none',
duration: 2000
});
}
});
},
fail: function(error) {
uni.hideLoading();
uni.showToast({
title: `
下载失败
`,
icon: 'none',
duration: 2000
});
}
});
}
</
script
>
...
...
login/login.vue
View file @
9a662d5
...
...
@@ -163,14 +163,12 @@
return
}
pcLogin
(
form
.
value
)
.
then
((
res
)
=>
{
pcLogin
(
form
.
value
).
then
((
res
)
=>
{
app
.
globalData
.
isLogin
=
true
uni
.
redirectTo
({
url
:
'/pages/index/index'
})
})
.
catch
(
getCode
)
}
else
if
(
isActive
.
value
==
1
)
{
if
(
!
form2
.
value
.
telNo
)
{
uni
.
showToast
({
...
...
@@ -178,7 +176,16 @@
icon
:
'none'
})
return
}
}
var
pattern
=
/^1
[
3456789
]\d{9}
$/
;
if
(
!
pattern
.
test
(
form2
.
value
.
telNo
))
{
uni
.
showToast
({
title
:
'请输入正确的手机号'
,
duration
:
2000
,
icon
:
'none'
})
return
}
if
(
!
form2
.
value
.
code
)
{
uni
.
showToast
({
title
:
'短信验证码不能为空'
,
...
...
@@ -221,7 +228,16 @@
icon
:
'none'
})
return
}
}
var
pattern
=
/^1
[
3456789
]\d{9}
$/
;
if
(
!
pattern
.
test
(
form2
.
value
.
telNo
))
{
uni
.
showToast
({
title
:
'请输入正确的手机号'
,
duration
:
2000
,
icon
:
'none'
})
return
}
if
(
!
form2
.
value
.
captcha
)
{
uni
.
showToast
({
title
:
'图形验证码不能为空'
,
...
...
@@ -236,14 +252,17 @@
code
:
form2
.
value
.
captcha
}).
then
(
res
=>
{
uni
.
showToast
({
title
:
'短信验证码下发成功'
,
title
:
res
.
data
.
msg
,
icon
:
'none'
})
countDown
.
value
.
start
=
true
}).
catch
(
res
=>
{
console
.
log
(
res
.
data
.
msg
)
getCode
()
})
})
// .catch(res=>{
// uni.showModal({
// content:res.data.msg
// })
// getCode()
// })
}
function
timeup
()
{
...
...
myCenter/safe.vue
View file @
9a662d5
...
...
@@ -101,7 +101,7 @@ function submit(){
})
return
}
if
(
!
user
.
value
.
phone
N
umber
){
if
(
!
user
.
value
.
phone
n
umber
){
uni
.
showToast
({
icon
:
'none'
,
title
:
`请输入手机号码`
})
...
...
@@ -117,6 +117,7 @@ function submit(){
uni
.
showToast
({
icon
:
'none'
,
title
:
`修改成功`
})
edit
.
value
=
false
})
}
function
changeSex
(
e
){
...
...
personalVip/monthFee.vue
View file @
9a662d5
...
...
@@ -41,7 +41,7 @@
</view>
<view
class=
"func"
>
<button
@
click=
"handleUpdate(item)"
v-if=
"item.settleFlag != 0"
>
上传凭证
@
click=
"handleUpdate(item)"
v-if=
"item.settleFlag != 0"
>
确认并上传
</button>
<button
@
click=
"handleDownload(item)"
>
下载缴费通知单
</button>
</view>
...
...
@@ -62,7 +62,7 @@
<uni-forms-item
label=
"缴费凭证"
required
>
<uni-file-picker
limit=
"1"
file-mediatype=
"all"
file-extname=
"png,jpg,jpeg,pdf,zip"
@
select=
"selectFile"
@
select=
"selectFile"
v-model=
"form.payEvidenceObj"
@
progress=
"fileProgress"
@
delete=
"delSupplementFile(index)"
></uni-file-picker>
</uni-forms-item>
<uni-forms-item
label=
"备注"
>
...
...
@@ -118,6 +118,16 @@ function getList() {
function
handleUpdate
(
item
)
{
form
.
value
.
yjId
=
item
.
yjId
form
.
value
.
payTime
=
item
.
payTime
if
(
item
.
payEvidence
){
let
file
=
JSON
.
parse
(
item
.
payEvidence
)
console
.
log
(
file
)
form
.
value
.
payEvidenceObj
=
{
url
:
file
[
0
].
url
,
name
:
file
[
0
].
name
,
extname
:
'png'
}
}
UpPop
.
value
.
open
()
}
let
selectFileValue
=
{}
...
...
@@ -144,7 +154,11 @@ function delSupplementFile(index) {
}
function
uploadSure
(){
console
.
log
(
form
.
value
)
api
.
commitPaymentVoucher
(
form
.
value
).
then
(
res
=>
{
api
.
commitPaymentVoucherYJ
({
payTime
:
form
.
value
.
payTime
,
url
:
form
.
value
.
url
,
yjId
:
form
.
value
.
yjId
}).
then
(
res
=>
{
UpPop
.
value
.
close
()
form
.
value
=
{}
uni
.
showToast
({
...
...
@@ -224,6 +238,7 @@ function circulation(id) {
</
script
>
<
style
scoped
lang=
"scss"
>
:deep
(
.file-picker__progress
)
{
opacity
:
0
;}
.popBody
{
font-size
:
28
rpx
;
line-height
:
1.5
;
...
...
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