Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
self-support
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
李俊赕
self-support
Commits
67336a61
Commit
67336a61
authored
Apr 17, 2021
by
李俊赕
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://git.banshouhui.com/lijundan/self-support
parents
86b1f947
35988be4
Changes
8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1003 additions
and
895 deletions
+1003
-895
agreement.vue
src/components/settle/agreement.vue
+59
-0
pages.json
src/pages.json
+16
-2
pay-ensure.vue
src/pages/settle/pay-ensure.vue
+325
-277
prompt.vue
src/pages/settle/prompt.vue
+11
-4
sign-contract.vue
src/pages/settle/sign-contract.vue
+592
-612
tips3@3x.png
src/static/settle/tips3@3x.png
+0
-0
top4@3x.png
src/static/settle/top4@3x.png
+0
-0
weixin@3x.png
src/static/settle/weixin@3x.png
+0
-0
No files found.
src/components/settle/agreement.vue
0 → 100644
View file @
67336a61
<
template
>
<view
class=
"content-view"
>
<view
class=
"content-list"
v-for=
"(item, index) in info"
:key=
"index"
>
<view
class=
"content-title"
>
{{
item
.
title
}}
</view>
<view
class=
"content-item"
v-for=
"(i, key) in item.content"
:key=
"key"
>
{{
i
}}
</view>
</view>
</view>
</
template
>
<
script
>
export
default
{
data
()
{
return
{}
},
computed
:
{
info
()
{
return
[{
title
:
'一、入驻条件'
,
content
:
[
'1.年龄在18-60周岁之间;'
,
'2.初中及以上学历;'
,
'3.能熟练使用智能手机;'
,
'4.与人交流时态度良好,沟通顺畅;'
]
},
{
title
:
'二、注意事项'
,
content
:
[
'1.平台会对每笔订单收取一定比例的服务费抽成;'
,
'2.若审核通过,平台工作人员将会电话联系您,并邀约参加师傅培训会,请您耐心等待;'
,
'3.开关插座、线路维修、空开漏保等品类的师傅需持有电工证;'
,
'4.家电清洗品类的师傅需持有专业高温清洗设备,并在每一笔清洗订单中上传设备照片(单独水枪类清洗设备不符合规定);'
,
'5.请如实填写自己擅长品类,如有核实师傅申请的维修品类和开通账号的维修品类不一致,将不给予接单资格;'
]
}]
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.content-view
{
padding
:
16rpx
30rpx
30rpx
30rpx
;
background-color
:
#F4F5F7
;
height
:
360rpx
;
overflow
:
scroll
;
.content-list
{
.content-title
{
font-size
:
28rpx
;
color
:
#333333
;
margin-top
:
14rpx
;
}
.content-item
{
font-size
:
24rpx
;
color
:
#666666
;
padding-top
:
14rpx
;
}
}
}
</
style
>
src/pages.json
View file @
67336a61
...
@@ -101,7 +101,9 @@
...
@@ -101,7 +101,9 @@
{
{
"path"
:
"pages/settle/pay-ensure"
,
"path"
:
"pages/settle/pay-ensure"
,
"style"
:
{
"style"
:
{
"navigationBarTitleText"
:
"缴纳设备押金"
"navigationBarTitleText"
:
"缴纳设备押金"
,
"navigationStyle"
:
"custom"
,
"disableScroll"
:
true
}
}
},
},
{
{
...
@@ -121,7 +123,9 @@
...
@@ -121,7 +123,9 @@
{
{
"path"
:
"pages/settle/sign-contract"
,
"path"
:
"pages/settle/sign-contract"
,
"style"
:
{
"style"
:
{
"navigationBarTitleText"
:
"签约页面"
"navigationBarTitleText"
:
"签约页面"
,
"navigationStyle"
:
"custom"
,
//
隐藏系统导航栏
"disableScroll"
:
true
}
}
},
},
{
{
...
@@ -242,6 +246,16 @@
...
@@ -242,6 +246,16 @@
"path"
:
"pages/settle/pay-ensure"
,
//启动页面,必选
"path"
:
"pages/settle/pay-ensure"
,
//启动页面,必选
"query"
:
""
//启动参数,在页面的onLoad函数里面得到
"query"
:
""
//启动参数,在页面的onLoad函数里面得到
},
},
{
"name"
:
"签约页面"
,
//模式名称
"path"
:
"pages/settle/sign-contract"
,
//启动页面,必选
"query"
:
""
//启动参数,在页面的onLoad函数里面得到
},
{
"name"
:
"缴纳保证金"
,
//模式名称
"path"
:
"pages/settle/pay-ensure"
,
//启动页面,必选
"query"
:
""
//启动参数,在页面的onLoad函数里面得到
},
{
{
"name"
:
"订单 - 完工配置"
,
//模式名称
"name"
:
"订单 - 完工配置"
,
//模式名称
"path"
:
"pages/order/complete"
,
//启动页面,必选
"path"
:
"pages/order/complete"
,
//启动页面,必选
...
...
src/pages/settle/pay-ensure.vue
View file @
67336a61
<
template
>
<
template
>
<view
class=
"content"
>
<view
class=
"content"
>
<Settle
:index=
"5"
>
<view
class=
"base-list"
>
<view
class=
"base-list"
>
<view
class=
"title"
>
充电桩安装需缴纳设备押金
</view>
<view
class=
"title"
>
充电桩安装需缴纳设备押金
</view>
<view
class=
"price"
><text>
¥
</text>
{{
settledInfo
.
record
.
deposit
}}
</view>
<view
class=
"price"
><text>
¥
</text>
{{
settledInfo
.
record
.
deposit
}}
</view>
<view
class=
"list"
>
<view
class=
"list"
>
<view
class=
"item u-flex u-row-between"
>
<view
class=
"item u-flex u-row-between"
>
<view
class=
"txt"
>
您已缴纳金额
</view>
<view
class=
"txt"
>
您已缴纳金额
</view>
<view
class=
"txt"
>
¥ 0.00
</view>
<view
class=
"txt-value"
>
¥ 0.00
</view>
</view>
</view>
<view
class=
"line-view"
></view>
<view
class=
"item u-flex u-row-between"
>
<view
class=
"item u-flex u-row-between"
>
<view
class=
"txt"
>
待缴纳金额
</view>
<view
class=
"txt"
>
待缴纳金额
</view>
<view
class=
"txt"
>
¥
{{
settledInfo
.
record
.
deposit
}}
</view>
<view
class=
"txt-value"
>
¥
{{
settledInfo
.
record
.
deposit
}}
</view>
</view>
</view>
</view>
</view>
<!--
<view
class=
"tips"
>
你已缴纳金额:1000.00元
</view>
<!--
<view
class=
"tips"
>
你已缴纳金额:1000.00元
</view>
<view
class=
"tips"
>
充电桩安装需缴纳保证金:1000元待缴金额:1000元
</view>
-->
<view
class=
"tips"
>
充电桩安装需缴纳保证金:1000元待缴金额:1000元
</view>
-->
</view>
</view>
<view
class=
"seat"
></view>
<template
v-slot:bottom
>
<view
class=
"btn-wrap flex-xc"
>
<view
class=
"btn-wrap flex-xc"
>
<button
class=
"btn-submit"
:disabled=
"saving"
@
click=
"paySubmit"
>
<button
class=
"btn-submit"
:disabled=
"saving"
@
click=
"paySubmit"
>
{{
saving
?
'支付中……'
:
'微信支付'
}}
<image
class=
"button-image"
mode=
"widthFix"
src=
"../../static/settle/weixin@3x.png"
></image>
<text>
{{
saving
?
'支付中……'
:
'微信支付'
}}
</text>
</button>
</button>
</view>
</view>
</
template
>
</Settle>
</view>
</view>
</template>
</template>
<
script
>
<
script
>
import
Settle
from
'@/components/settle/index.vue'
import
pingpp
from
'@/include/libs/pingpp.js'
import
pingpp
from
'@/include/libs/pingpp.js'
const
globalUrl
=
process
.
uniEnv
||
{}
const
globalUrl
=
process
.
uniEnv
||
{}
import
util
from
'@/utils/util.js'
import
util
from
'@/utils/util.js'
export
default
{
export
default
{
components
:
{
Settle
},
data
()
{
data
()
{
return
{
return
{
saving
:
false
,
saving
:
false
,
paySuccess
:
false
,
paySuccess
:
false
,
payResult
:{
payResult
:
{
oid
:
''
oid
:
''
},
isRefresh
:
false
,
settledInfo
:
{
record
:
{
deposit
:
''
}
},
},
isRefresh
:
false
,
settledInfo
:
null
,
}
}
},
},
onLoad
(
e
)
{
onLoad
(
e
)
{
},
},
onShow
()
{
onShow
()
{
if
(
!
this
.
settledInfo
){
if
(
!
this
.
settledInfo
.
record
.
deposit
)
{
this
.
getBaseInfo
()
this
.
getBaseInfo
()
}
}
},
},
computed
:
{},
computed
:
{},
watch
:
{
watch
:
{
isRefresh
(
val
)
{
isRefresh
(
val
)
{
this
.
getBaseInfo
()
this
.
getBaseInfo
()
}
}
},
},
...
@@ -59,42 +73,42 @@
...
@@ -59,42 +73,42 @@
},
},
methods
:
{
methods
:
{
successCallback
()
{
successCallback
()
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
'/pages/settle/prompt'
url
:
'/pages/settle/prompt'
})
})
},
},
async
getBaseInfo
()
{
async
getBaseInfo
()
{
const
app
=
getApp
()
const
app
=
getApp
()
const
callBack
=
(
vm
,
result
)
=>
{
const
callBack
=
(
vm
,
result
)
=>
{
vm
.
settledInfo
=
result
vm
.
settledInfo
=
result
}
}
let
settledInfo
=
app
.
globalData
.
settledInfo
let
settledInfo
=
app
.
globalData
.
settledInfo
if
(
settledInfo
){
if
(
settledInfo
)
{
callBack
(
this
,
settledInfo
)
callBack
(
this
,
settledInfo
)
return
return
}
}
await
app
.
getBaseInfo
(
this
,
callBack
)
await
app
.
getBaseInfo
(
this
,
callBack
)
},
},
async
pending
()
{
async
pending
()
{
// const timer = setTimeout(async ()=>{
// const timer = setTimeout(async ()=>{
// clearTimeout(timer)
// clearTimeout(timer)
const
params
=
{
const
params
=
{
...
this
.
payResult
...
this
.
payResult
}
}
const
res
=
await
this
.
$u
.
api
.
getSettleDepositResult
(
params
);
const
res
=
await
this
.
$u
.
api
.
getSettleDepositResult
(
params
);
if
(
res
.
status
!==
true
){
if
(
res
.
status
!==
true
)
{
this
.
saving
=
false
this
.
saving
=
false
return
return
}
}
uni
.
showToast
({
uni
.
showToast
({
title
:
'支付成功'
,
title
:
'支付成功'
,
})
})
let
timer
=
setTimeout
(()
=>
{
let
timer
=
setTimeout
(()
=>
{
clearTimeout
(
timer
)
clearTimeout
(
timer
)
this
.
successCallback
()
this
.
successCallback
()
},
3000
)
},
3000
)
},
},
getCode
:
async
function
()
{
getCode
:
async
function
()
{
let
that
=
this
let
that
=
this
...
@@ -127,33 +141,33 @@
...
@@ -127,33 +141,33 @@
const
self
=
this
const
self
=
this
this
.
saving
=
true
this
.
saving
=
true
uni
.
showLoading
({
uni
.
showLoading
({
title
:
'支付中……'
title
:
'支付中……'
})
})
// 提交支付订单
// 提交支付订单
const
code
=
await
this
.
getCode
()
const
code
=
await
this
.
getCode
()
const
params
=
{
const
params
=
{
oid
:
this
.
settledInfo
.
record
.
id
,
oid
:
this
.
settledInfo
.
record
.
id
,
type
:
'wx_lite'
,
type
:
'wx_lite'
,
openid
:
util
.
getOpenid
(),
openid
:
util
.
getOpenid
(),
code
:
code
code
:
code
// appid:'wxd1d6eede324b0465'
// appid:'wxd1d6eede324b0465'
}
}
const
response
=
await
this
.
$u
.
api
.
paySettleDeposit
(
params
)
const
response
=
await
this
.
$u
.
api
.
paySettleDeposit
(
params
)
if
(
response
.
status
!==
true
)
{
if
(
response
.
status
!==
true
)
{
uni
.
showToast
({
uni
.
showToast
({
title
:
response
.
message
,
title
:
response
.
message
,
icon
:
'none'
icon
:
'none'
})
})
return
return
}
}
let
timer
=
setTimeout
(
res
=>
{
let
timer
=
setTimeout
(
res
=>
{
clearTimeout
(
timer
)
clearTimeout
(
timer
)
uni
.
showModal
({
uni
.
showModal
({
title
:
'提示'
,
title
:
'提示'
,
content
:
'支付结果'
,
content
:
'支付结果'
,
confirmText
:
'成功'
,
confirmText
:
'成功'
,
cancelText
:
'失败'
,
cancelText
:
'失败'
,
success
:
function
(
res
)
{
success
:
function
(
res
)
{
if
(
res
.
confirm
)
{
if
(
res
.
confirm
)
{
// console.log(res.confirm,'res.confirm')
// console.log(res.confirm,'res.confirm')
self
.
pending
()
self
.
pending
()
...
@@ -163,7 +177,7 @@
...
@@ -163,7 +177,7 @@
}
}
}
}
});
});
},
1000
)
},
1000
)
const
{
const
{
charge
,
charge
,
...
@@ -177,7 +191,7 @@
...
@@ -177,7 +191,7 @@
// 支付成功的结果会在这里返回,其他的支付结果都会跳转到 extra 中对应的 URL。
// 支付成功的结果会在这里返回,其他的支付结果都会跳转到 extra 中对应的 URL。
uni
.
showToast
({
uni
.
showToast
({
title
:
'支付成功'
,
title
:
'支付成功'
,
icon
:
'none'
icon
:
'none'
})
})
}
else
if
(
result
==
"fail"
)
{
}
else
if
(
result
==
"fail"
)
{
// charge 不正确或者微信公众账号/QQ 公众号/支付宝口碑支付失败时会在此处返回
// charge 不正确或者微信公众账号/QQ 公众号/支付宝口碑支付失败时会在此处返回
...
@@ -186,7 +200,7 @@
...
@@ -186,7 +200,7 @@
// 微信公众账号、QQ 公众号、支付宝口碑支付取消支付
// 微信公众账号、QQ 公众号、支付宝口碑支付取消支付
uni
.
showToast
({
uni
.
showToast
({
title
:
'您已经取消了支付'
,
title
:
'您已经取消了支付'
,
icon
:
'none'
icon
:
'none'
})
})
}
}
});
});
...
@@ -195,45 +209,80 @@
...
@@ -195,45 +209,80 @@
}
}
</
script
>
</
script
>
<
style
lang=
"scss"
>
<
style
lang=
"scss"
scoped
>
.content
{
background-color
:
#F4F5F7
;
position
:
absolute
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
display
:
flex
;
flex-direction
:
column
;
}
.base-list
{
.base-list
{
background-color
:
#FFFFFF
;
border-radius
:
12rpx
;
padding
:
30rpx
;
min-height
:
160rpx
;
margin-bottom
:
188rpx
;
text-align
:
center
;
text-align
:
center
;
.txt
{
.txt
{
line-height
:
50rpx
;
line-height
:
50rpx
;
font-size
:
36rpx
;
font-size
:
36rpx
;
color
:
#333
;
color
:
#333
;
}
}
.title
{
margin-top
:
120rpx
;
.title
{
margin-top
:
80rpx
;
font-weight
:
bold
;
font-weight
:
bold
;
line-height
:
50rpx
;
line-height
:
50rpx
;
font-size
:
36rpx
;
font-size
:
40rpx
;
color
:
#333
;
color
:
#333
;
}
}
.price
{
margin-top
:
120rpx
;
.price
{
margin-top
:
100rpx
;
font-weight
:
bold
;
font-weight
:
bold
;
line-height
:
90rpx
;
line-height
:
90rpx
;
font-size
:
64rpx
;
font-size
:
64rpx
;
color
:
#333
;
color
:
#2272FF
;
text
{
font-size
:
32rpx
;
text
{
font-size
:
32rpx
;
}
}
}
}
.list
{
margin-top
:
200rpx
;
.list
{
padding
:
0
50rpx
;
margin-top
:
200rpx
;
.item
{
padding
:
0
50rpx
;
padding
:
28rpx
0
;
border-bottom
:
1rpx
solid
#FDFDFD
;
.line-view
{
background-color
:
#F4F5F7
;
height
:
2rpx
;
width
:
100%
;
}
.item
{
padding
:
28rpx
0
;
}
.txt
{
line-height
:
44rpx
;
font-size
:
28rpx
;
color
:
#666666
;
}
}
.txt
{
.txt-value
{
line-height
:
44rpx
;
line-height
:
44rpx
;
font-size
:
32rpx
;
font-size
:
28rpx
;
color
:
#333
;
color
:
#333
;
}
}
}
}
.tips
{
.tips
{
margin-top
:
20rpx
;
margin-top
:
20rpx
;
padding
:
0
30rpx
;
padding
:
0
30rpx
;
...
@@ -249,29 +298,28 @@
...
@@ -249,29 +298,28 @@
/*提交按钮*/
/*提交按钮*/
.btn-wrap
{
.btn-wrap
{
position
:
fixed
;
width
:
100%
;
// margin: px2rem(36);
display
:
flex
;
left
:
0
;
align-items
:
center
;
right
:
0
;
justify-content
:
center
;
bottom
:
0
;
padding
:
30rpx
0
;
.button-image
{
background
:
#f3f3f3
;
width
:
38rpx
;
padding-right
:
20rpx
;
}
.btn-submit
{
.btn-submit
{
width
:
600rpx
;
width
:
600rpx
;
border-radius
:
52rpx
;
// left: 5%;
// bottom: px2rem(36);
height
:
104rpx
;
height
:
104rpx
;
line-height
:
104rpx
;
line-height
:
104rpx
;
background
:
#2272ff
;
border-radius
:
52rpx
;
background
:
#2272FF
;
font-size
:
32rpx
;
font-size
:
32rpx
;
color
:
#fff
;
color
:
#fff
;
&
:disabled
{
&
[
disabled
]
{
border
:
2rpx
solid
#999
;
background-color
:
#D1D4D4
;
background-color
:
#f3f3f3
;
color
:
#FFFFFF
;
color
:
#999
;
}
}
}
}
}
}
...
...
src/pages/settle/prompt.vue
View file @
67336a61
<
template
>
<
template
>
<view
class=
"container u-row-between"
v-if=
"info"
>
<view
class=
"container u-row-between"
v-if=
"info"
>
<Settle
:index=
"
2
"
>
<Settle
:index=
"
pageIndex
"
>
<view
class=
"content-view"
>
<view
class=
"content-view"
>
<view
class=
"u-flex u-row-center"
>
<view
class=
"u-flex u-row-center"
>
<image
:class=
"['icon',
{active: status != 1}]"
<image
:class=
"['icon',
{active: status != 1}]"
...
@@ -32,6 +32,7 @@
...
@@ -32,6 +32,7 @@
data
()
{
data
()
{
return
{
return
{
pageIndex
:
2
,
settledInfo
:
null
,
settledInfo
:
null
,
promptList
:
[{
promptList
:
[{
status
:
1
,
status
:
1
,
...
@@ -93,9 +94,15 @@
...
@@ -93,9 +94,15 @@
}
}
},
},
onLoad
(
e
)
{
onLoad
(
e
)
{
if
(
e
)
{
if
(
e
.
pageIndex
)
{
this
.
pageIndex
=
e
.
pageIndex
;
}
}
// if(!this.settledInfo){
// if(!this.settledInfo){
// this.getBaseInfo()
// this.getBaseInfo()
// }
// }
},
},
onShow
()
{
onShow
()
{
if
(
!
this
.
settledInfo
)
{
if
(
!
this
.
settledInfo
)
{
...
...
src/pages/settle/sign-contract.vue
View file @
67336a61
This diff is collapsed.
Click to expand it.
src/static/settle/tips3@3x.png
0 → 100644
View file @
67336a61
2.2 KB
src/static/settle/top4@3x.png
View replaced file @
86b1f947
View file @
67336a61
577 KB
|
W:
|
H:
189 KB
|
W:
|
H:
2-up
Swipe
Onion skin
src/static/settle/weixin@3x.png
0 → 100644
View file @
67336a61
1.95 KB
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