Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zhichan
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
蒋勇
zhichan
Commits
6d3e1eb1
Commit
6d3e1eb1
authored
Feb 19, 2021
by
王昆
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
'个体户审核页面简单应用开发'
parent
64a6e6e3
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
677 additions
and
15 deletions
+677
-15
xgg-web/app/base/db/impl/bmmerchantcompanyDao.js
+33
-0
xgg-web/app/base/db/impl/bmuserbizDao.js
+57
-0
xgg-web/app/base/service/impl/bmuserbizSve.js
+41
-14
xgg-web/app/base/wxapplet/impl/xggApplet.js
+55
-0
xgg-web/app/config/environment.js
+3
-1
xgg-web/app/config/routes/web.js
+3
-0
xgg-web/app/front/entry/audit_page.ejs
+335
-0
xgg-web/app/front/entry/public/js/audit_page.js
+150
-0
No files found.
xgg-web/app/base/db/impl/bmmerchantcompanyDao.js
View file @
6d3e1eb1
...
@@ -19,5 +19,38 @@ class BMmerchantcompanyDao extends Dao{
...
@@ -19,5 +19,38 @@ class BMmerchantcompanyDao extends Dao{
return
list
;
return
list
;
}
}
async
findMapByIds
(
ids
)
{
let
result
=
{};
if
(
!
ids
||
ids
.
length
==
0
)
{
return
result
;
}
let
sql
=
"SELECT * FROM bm_merchant_company where id IN (:ids) "
;
let
list
=
await
this
.
customQuery
(
sql
,
{
ids
:
ids
});
if
(
!
list
||
list
.
length
==
0
)
{
return
result
;
}
for
(
let
item
of
list
)
{
result
[
item
.
id
]
=
item
;
}
return
result
;
}
async
setMerchantCompany
(
list
,
idField
)
{
if
(
!
list
||
list
.
length
==
0
)
{
return
;
}
let
ids
=
[];
for
(
let
item
of
list
)
{
ids
.
push
(
item
[
idField
]
||
0
);
}
let
map
=
await
this
.
findMapByIds
(
ids
);
for
(
let
item
of
list
)
{
item
.
merchantCompany
=
map
[(
item
.
id
||
0
)]
||
{};
}
}
}
}
module
.
exports
=
BMmerchantcompanyDao
;
module
.
exports
=
BMmerchantcompanyDao
;
xgg-web/app/base/db/impl/bmuserbizDao.js
View file @
6d3e1eb1
...
@@ -28,7 +28,64 @@ class BmuserbizDao extends Dao{
...
@@ -28,7 +28,64 @@ class BmuserbizDao extends Dao{
let
sql
=
`UPDATE
${
this
.
model
.
tableName
}
SET front_half_img = :front_half_img, declaration_file = :declaration_file, updated_at = NOW() WHERE idcard = :idcard`
;
let
sql
=
`UPDATE
${
this
.
model
.
tableName
}
SET front_half_img = :front_half_img, declaration_file = :declaration_file, updated_at = NOW() WHERE idcard = :idcard`
;
let
rs
=
await
this
.
customUpdate
(
sql
,
params
);
let
rs
=
await
this
.
customUpdate
(
sql
,
params
);
return
rs
;
return
rs
;
}
async
countByCondition
(
params
)
{
let
sql
=
[];
sql
.
push
(
"SELECT"
);
sql
.
push
(
"count(DISTINCT t1.id) as num"
);
sql
.
push
(
"FROM bm_user_biz t1"
);
sql
.
push
(
"INNER JOIN bm_order t2 ON t1.orderId = t2.id"
);
sql
.
push
(
"WHERE 1 = 1 "
);
this
.
setCondition
(
sql
,
params
);
let
list
=
await
this
.
customQuery
(
sql
.
join
(
" "
),
params
);
if
(
!
list
||
list
.
length
==
0
)
{
return
0
;
}
return
list
[
0
].
num
;
}
async
listByCondition
(
params
)
{
params
.
startRow
=
Number
(
params
.
startRow
||
0
);
params
.
pageSize
=
Number
(
params
.
pageSize
||
10
);
let
sql
=
[];
sql
.
push
(
"SELECT"
);
sql
.
push
(
"t1.*, "
);
sql
.
push
(
"t1.merchantId, t2.companyId, t2.orderNo, t2.audit_status"
);
sql
.
push
(
"FROM bm_user_biz t1"
);
sql
.
push
(
"INNER JOIN bm_order t2 ON t1.orderId = t2.id"
);
sql
.
push
(
"WHERE 1 = 1 "
);
this
.
setCondition
(
sql
,
params
);
sql
.
push
(
"ORDER BY t1.id DESC"
);
sql
.
push
(
"LIMIT :startRow, :pageSize"
);
return
await
this
.
customQuery
(
sql
.
join
(
" "
),
params
);
}
setCondition
(
sql
,
params
)
{
if
(
!
params
||
!
sql
)
{
return
;
}
if
(
params
.
hasOwnProperty
(
"audit_status"
))
{
sql
.
push
(
"AND t2.audit_status = :audit_status"
);
}
if
(
params
.
merchantId
)
{
sql
.
push
(
"AND t1.merchantId = :merchantId"
);
}
if
(
params
.
legalName
)
{
params
.
legalNameLike
=
`%
${
params
.
legalName
}
%`
;
sql
.
push
(
"AND t1.legal_name LIKE :legalNameLike"
);
}
if
(
params
.
legal_mobile
)
{
sql
.
push
(
"AND t1.legal_mobile = :legal_mobile"
);
}
if
(
params
.
idcard
)
{
sql
.
push
(
"AND t1.idcard = :idcard"
);
}
}
}
}
}
module
.
exports
=
BmuserbizDao
;
module
.
exports
=
BmuserbizDao
;
xgg-web/app/base/service/impl/bmuserbizSve.js
View file @
6d3e1eb1
const
system
=
require
(
"../../system"
);
const
system
=
require
(
"../../system"
);
const
ServiceBase
=
require
(
"../sve.base"
);
const
ServiceBase
=
require
(
"../sve.base"
);
const
md5
=
require
(
"md5"
);
const
md5
=
require
(
"md5"
);
class
BmuserbizService
extends
ServiceBase
{
constructor
(){
super
(
ServiceBase
.
getDaoName
(
BmuserbizService
));
//this.appDao=system.getObject("db.appDao");
this
.
restClient
=
system
.
getObject
(
"util.restClient"
);
class
BmuserbizService
extends
ServiceBase
{
constructor
()
{
super
(
ServiceBase
.
getDaoName
(
BmuserbizService
));
//this.appDao=system.getObject("db.appDao");
this
.
restClient
=
system
.
getObject
(
"util.restClient"
);
this
.
bmmerchantcompanyDao
=
system
.
getObject
(
"db.bmmerchantcompanyDao"
);
}
}
async
saveByStep
(
userbiz
)
{
async
saveByStep
(
userbiz
)
{
if
(
!
userbiz
||
!
userbiz
.
id
)
{
if
(
!
userbiz
||
!
userbiz
.
id
)
{
return
;
return
;
}
}
var
biz
=
await
this
.
findById
(
userbiz
.
id
);
var
biz
=
await
this
.
findById
(
userbiz
.
id
);
var
step
=
biz
.
step
;
var
step
=
biz
.
step
;
if
(
step
==
1
)
{
if
(
step
==
1
)
{
biz
.
idcard_front
=
userbiz
.
idcard_front
;
biz
.
idcard_front
=
userbiz
.
idcard_front
;
biz
.
idcard_back
=
userbiz
.
idcard_back
;
biz
.
idcard_back
=
userbiz
.
idcard_back
;
biz
.
idcard
=
userbiz
.
idcard
;
biz
.
idcard
=
userbiz
.
idcard
;
biz
.
realName
=
userbiz
.
realName
;
biz
.
realName
=
userbiz
.
realName
;
biz
.
step
=
2
;
biz
.
step
=
2
;
}
else
if
(
step
==
2
)
{
}
else
if
(
step
==
2
)
{
biz
.
bank_front
=
userbiz
.
bank_front
;
biz
.
bank_front
=
userbiz
.
bank_front
;
biz
.
bank_back
=
userbiz
.
bank_back
;
biz
.
bank_back
=
userbiz
.
bank_back
;
biz
.
bank
=
userbiz
.
bank
;
biz
.
bank
=
userbiz
.
bank
;
...
@@ -33,12 +35,12 @@ class BmuserbizService extends ServiceBase{
...
@@ -33,12 +35,12 @@ class BmuserbizService extends ServiceBase{
// if(stdout.code != 0) {
// if(stdout.code != 0) {
// return stdout.msg || "银行三要素(姓名、身份证、银行卡)验证失败"
// return stdout.msg || "银行三要素(姓名、身份证、银行卡)验证失败"
// }
// }
}
else
if
(
step
==
3
)
{
}
else
if
(
step
==
3
)
{
biz
.
person_img
=
userbiz
.
person_img
;
biz
.
person_img
=
userbiz
.
person_img
;
biz
.
legal_name
=
userbiz
.
legal_name
;
biz
.
legal_name
=
userbiz
.
legal_name
;
biz
.
legal_mobile
=
userbiz
.
legal_mobile
;
biz
.
legal_mobile
=
userbiz
.
legal_mobile
;
biz
.
step
=
4
;
biz
.
step
=
4
;
}
else
if
(
step
==
4
)
{
}
else
if
(
step
==
4
)
{
biz
.
companyNames
=
userbiz
.
companyNames
;
biz
.
companyNames
=
userbiz
.
companyNames
;
biz
.
businessScope
=
userbiz
.
businessScope
;
biz
.
businessScope
=
userbiz
.
businessScope
;
biz
.
step
=
5
;
biz
.
step
=
5
;
...
@@ -51,7 +53,7 @@ class BmuserbizService extends ServiceBase{
...
@@ -51,7 +53,7 @@ class BmuserbizService extends ServiceBase{
async
checkBank
(
biz
)
{
async
checkBank
(
biz
)
{
var
params
=
{
var
params
=
{
accNo
:
biz
.
bankno
,
accNo
:
biz
.
bankno
,
idName
:
biz
.
realName
,
idName
:
biz
.
realName
,
idNo
:
biz
.
idcard
,
idNo
:
biz
.
idcard
,
nonceStr
:
await
this
.
getUidStr
(
16
),
nonceStr
:
await
this
.
getUidStr
(
16
),
...
@@ -66,5 +68,30 @@ class BmuserbizService extends ServiceBase{
...
@@ -66,5 +68,30 @@ class BmuserbizService extends ServiceBase{
async
updateSupplement
(
params
)
{
async
updateSupplement
(
params
)
{
return
this
.
dao
.
updateSupplement
(
params
);
return
this
.
dao
.
updateSupplement
(
params
);
}
}
async
pageByCondition
(
params
)
{
let
currentPage
=
Number
(
params
.
currentPage
||
1
);
params
.
pageSize
=
Number
(
params
.
pageSize
||
10
);
params
.
startRow
=
(
currentPage
-
1
)
*
params
.
pageSize
;
var
page
=
{
count
:
0
,
rows
:
[]
};
page
.
count
=
await
this
.
dao
.
countByCondition
(
params
);
if
(
page
.
count
==
0
)
{
return
page
;
}
page
.
rows
=
await
this
.
dao
.
listByCondition
(
params
)
||
[];
if
(
page
.
rows
)
{
for
(
let
item
of
page
.
rows
)
{
this
.
handleDate
(
item
,
[
"created_at"
],
null
,
-
8
);
}
// await this.bmmerchantcompanyDao.setMerchantCompany(page.rows, "companyId");
}
return
page
;
}
}
}
module
.
exports
=
BmuserbizService
;
module
.
exports
=
BmuserbizService
;
xgg-web/app/base/wxapplet/impl/xggApplet.js
View file @
6d3e1eb1
...
@@ -346,6 +346,61 @@ class xggApplet extends AppletBase {
...
@@ -346,6 +346,61 @@ class xggApplet extends AppletBase {
}
}
}
}
async
toAuditOrders
(
gobj
,
pobj
,
req
)
{
pobj
=
pobj
.
search
||
{};
try
{
let
params
=
{
pageSize
:
pobj
.
pageSize
||
10
,
currentPage
:
pobj
.
currentPage
||
1
,
audit_status
:
0
,
merchantId
:
this
.
merchantId
,
legalName
:
this
.
trim
(
pobj
.
legalName
)
};
//0待审核 1审核通过
let
page
=
await
this
.
bmuserbizSve
.
pageByCondition
(
params
);
let
result
=
{
code
:
1
,
data
:
page
};
return
result
;
}
catch
(
e
)
{
console
.
log
(
e
.
stack
);
//日志记录
logCtl
.
error
({
optitle
:
"toAuditOrders, params ["
+
JSON
.
stringify
(
params
)
+
" ]"
,
op
:
"wxapplet/impl/xggApplet/toAuditOrders"
,
content
:
e
.
stack
,
clientIp
:
req
.
clientIp
});
return
{
code
:
-
200
,
msg
:
"error"
,
data
:
{},
stack
:
e
.
stack
};
}
}
/**
* 审核
* @param {*} gobj
* @param {*} pobj
* @param {*} req
* @param {*} loginUser
*/
async
auditBiz
(
gobj
,
pobj
,
req
,
loginUser
){
try
{
let
param
=
{
auditId
:
1
,
rejectReason
:
this
.
trim
(
pobj
.
auditReason
),
auditStatus
:
parseInt
(
pobj
.
auditStatus
),
id
:
this
.
trim
(
pobj
.
id
)
}
return
await
this
.
bmorderSve
.
audit
(
param
);
}
catch
(
error
)
{
console
.
log
(
error
);
return
system
.
getResult
(
null
,
error
);
}
}
/**
/**
* 审核
* 审核
* @param {*} gobj
* @param {*} gobj
...
...
xgg-web/app/config/environment.js
View file @
6d3e1eb1
...
@@ -58,7 +58,9 @@ module.exports = function (app) {
...
@@ -58,7 +58,9 @@ module.exports = function (app) {
res
.
header
(
'Access-Control-Allow-Headers'
,
'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
);
res
.
header
(
'Access-Control-Allow-Headers'
,
'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
);
res
.
header
(
'Access-Control-Allow-Methods'
,
'PUT, POST, GET, DELETE, OPTIONS'
);
res
.
header
(
'Access-Control-Allow-Methods'
,
'PUT, POST, GET, DELETE, OPTIONS'
);
// res.header('Access-Control-Allow-Credentials', 'true');
// res.header('Access-Control-Allow-Credentials', 'true');
if
(
req
.
method
==
'OPTIONS'
)
{
res
.
header
(
'content-type'
,
'text/html;charset=UTF-8'
);
if
(
req
.
method
==
'OPTIONS'
)
{
res
.
send
(
200
);
/让options请求快速返回/
res
.
send
(
200
);
/让options请求快速返回/
}
}
else
{
else
{
...
...
xgg-web/app/config/routes/web.js
View file @
6d3e1eb1
...
@@ -115,4 +115,7 @@ module.exports = function (app) {
...
@@ -115,4 +115,7 @@ module.exports = function (app) {
app
.
get
(
'/supplement_hc'
,
function
(
req
,
res
)
{
app
.
get
(
'/supplement_hc'
,
function
(
req
,
res
)
{
res
.
render
(
"supplement_hc"
,
{});
res
.
render
(
"supplement_hc"
,
{});
});
});
app
.
get
(
'/audit_page'
,
function
(
req
,
res
)
{
res
.
render
(
"audit_page"
,
{});
});
};
};
xgg-web/app/front/entry/audit_page.ejs
0 → 100644
View file @
6d3e1eb1
<!DOCTYPE html>
<html
lang=
"zh-CN"
>
<head>
<meta
charset=
"utf-8"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
"
>
<title
id=
" idtitle"
>
恒昌个体户材料审核
</title>
<link
rel=
"stylesheet"
href=
"/css/ele/chalk.css"
>
<link
rel=
"stylesheet"
href=
"/css/main.css"
>
<link
rel=
"stylesheet"
href=
"/css/fontawesome/css/font-awesome.min.css"
>
<link
rel=
"stylesheet"
href=
"/css/autocomplete.css"
>
<script
src=
"/js/vue/vue.min.js"
></script>
<script
src=
"/js/vue/vue-router.min.js"
></script>
<script
src=
"/js/vue/vuex.min.js"
></script>
<script
src=
"/js/ele/index.js"
></script>
<style>
body
{
padding
:
0px
;
margin
:
0px
;
}
#loading
{
background-color
:
#2c3e50
;
height
:
100%
;
width
:
100%
;
position
:
fixed
;
z-index
:
9999
;
margin-top
:
0px
;
top
:
0px
;
}
#loading-center
{
width
:
100%
;
height
:
100%
;
position
:
relative
;
}
#loading-center-absolute
{
position
:
absolute
;
left
:
50%
;
top
:
50%
;
height
:
50px
;
width
:
50px
;
margin-top
:
-25px
;
margin-left
:
-25px
;
-ms-transform
:
rotate
(
45deg
);
-webkit-transform
:
rotate
(
45deg
);
transform
:
rotate
(
45deg
);
-webkit-animation
:
loading-center-absolute
1.5s
infinite
;
animation
:
loading-center-absolute
1.5s
infinite
;
}
.object
{
width
:
25px
;
height
:
25px
;
background-color
:
#FFF
;
float
:
left
;
}
#object_one
{
-webkit-animation
:
object_one
1.5s
infinite
;
animation
:
object_one
1.5s
infinite
;
}
#object_two
{
-webkit-animation
:
object_two
1.5s
infinite
;
animation
:
object_two
1.5s
infinite
;
}
#object_three
{
-webkit-animation
:
object_three
1.5s
infinite
;
animation
:
object_three
1.5s
infinite
;
}
#object_four
{
-webkit-animation
:
object_four
1.5s
infinite
;
animation
:
object_four
1.5s
infinite
;
}
@-webkit-keyframes
loading-center-absolute
{
100
%
{
-webkit-transform
:
rotate
(
-45deg
);
}
}
@keyframes
loading-center-absolute
{
100
%
{
transform
:
rotate
(
-45deg
);
-webkit-transform
:
rotate
(
-45deg
);
}
}
@-webkit-keyframes
object_one
{
25
%
{
-webkit-transform
:
translate
(
0
,
-50px
)
rotate
(
-180deg
);
}
100
%
{
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@keyframes
object_one
{
25
%
{
transform
:
translate
(
0
,
-50px
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
-50px
)
rotate
(
-180deg
);
}
100
%
{
transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@-webkit-keyframes
object_two
{
25
%
{
-webkit-transform
:
translate
(
50px
,
0
)
rotate
(
-180deg
);
}
100
%
{
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@keyframes
object_two
{
25
%
{
transform
:
translate
(
50px
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
50px
,
0
)
rotate
(
-180deg
);
}
100
%
{
transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@-webkit-keyframes
object_three
{
25
%
{
-webkit-transform
:
translate
(
-50px
,
0
)
rotate
(
-180deg
);
}
100
%
{
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@keyframes
object_three
{
25
%
{
transform
:
translate
(
-50px
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
-50px
,
0
)
rotate
(
-180deg
);
}
100
%
{
transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@-webkit-keyframes
object_four
{
25
%
{
-webkit-transform
:
translate
(
0
,
50px
)
rotate
(
-180deg
);
}
100
%
{
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
@keyframes
object_four
{
25
%
{
transform
:
translate
(
0
,
50px
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
50px
)
rotate
(
-180deg
);
}
100
%
{
transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
-webkit-transform
:
translate
(
0
,
0
)
rotate
(
-180deg
);
}
}
</style>
</head>
<body
style=
"overflow: auto;"
>
<div
id=
"loading"
>
<div
id=
"loading-center"
>
<div
id=
"loading-center-absolute"
>
<div
class=
"object"
id=
"object_one"
></div>
<div
class=
"object"
id=
"object_two"
></div>
<div
class=
"object"
id=
"object_three"
></div>
<div
class=
"object"
id=
"object_four"
></div>
</div>
</div>
</div>
<div
id=
"app"
style=
"padding:20px;"
>
<div
style=
"height: auto;min-width: 1000px; max-width: 1500px;"
>
<el-card
style=
"background-color: #FFFFFF;padding:10px 10px 30px 10px;margin-top: 20px;"
>
<div
style=
"width:100%;line-height: 40px;"
>
<div
style=
"float:left;width: 300px;"
>
<span
style=
"font-size: 14px;color: 2F2F2F;"
>
姓名:
</span>
<el-input
v-model=
"search.legalName"
placeholder=
"姓名"
maxlength=
"100"
clearable
style=
"max-width:200px;height: 36px;"
></el-input>
</div>
<div
style=
"float:left;margin-top:5px;"
>
<el-button
@
click=
"resetSearch()"
style=
"float:right;width:68px;height:36px;background-color: #54C4A7;color: #FFFFFF;font-size: 14px;padding-top:10px;"
>
重置
</el-button>
<el-button
@
click=
"opSearch()"
style=
"float:right;width:68px;height:36px;background-color: #54C4A7;color: #FFFFFF;font-size: 14px;padding-top:10px;margin-right: 10px;"
>
搜索
</el-button>
</div>
</div>
</el-card>
<el-card
style=
"background-color: #FFFFFF;padding:10px 10px 30px 10px;margin-top: 20px;"
>
<div>
<div
style=
"line-height: 36px;padding-bottom: 20px;"
>
<span
style=
"float:left;color:#2F2F2F;font-size: 14px;"
>
共{{search.total}}条记录
</span>
</div>
<div>
<el-table
stripe
fix=
"true"
:data=
"search.list"
tooltip-effect=
"light"
style=
"min-width: 1000px;max-width: 1500px;margin-top: 23px;min-height: 500px;"
empty-text=
"暂无待审核材料"
header-cell-style=
"background-color: #F5F5F5;color: #2F2F2F;font-size: 14px;font-weight:400;"
row-style=
"height:50px;"
>
<el-table-column
prop=
"id"
label=
"序号"
:formatter=
"onColFormater"
width=
"80"
align=
"center"
></el-table-column>
<el-table-column
prop=
"legal_name"
label=
"姓名"
:formatter=
"onColFormater"
align=
"center"
></el-table-column>
<el-table-column
prop=
"legal_mobile"
label=
"手机号"
:formatter=
"onColFormater"
align=
"center"
></el-table-column>
<el-table-column
prop=
"idcard"
label=
"身份证"
:formatter=
"onColFormater"
align=
"center"
></el-table-column>
<el-table-column
label=
"操作"
align=
"center"
>
<template
slot-scope=
"scope"
>
<a
href=
"javascript:;"
@
click=
"openAudit(scope.row)"
style=
"text-decoration: none;color:#59C1A6;font-size: 14px;"
>
审核
</a>
</template>
</el-table-column>
</el-table>
<div
style=
"width:100%;text-align: center;margin-top: 20px"
>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"search.currentPage"
:page-sizes=
"[10, 20, 50, 100]"
:page-size=
"search.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"search.total"
>
</el-pagination>
</div>
</div>
</div>
</el-card>
<el-dialog
width=
"862px"
:visible
.
sync=
"showAudit"
>
<div
slot=
"title"
>
<span
style=
"margin-left:9px;margin-top:-3px;;width:72px; height:25px; font-size:18px; font-family:PingFangSC-Regular; font-weight:400; color:rgba(51,51,51,1); line-height:25px;"
>
个体户材料审核
</span>
</div>
<div
style=
"padding:0px;"
>
<el-card
style=
" line-height: 15px;"
>
<span
style=
"font-size:15px;color: #333333;font-weight:bold;margin-left: 7px;"
>
订单信息
</span>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
订单编号: {{auditItem.orderNo}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 5px;"
>
订单状态: {{auditItem.audit_status_name}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 5px;"
>
创建时间: {{auditItem.created_at}}
</div>
</el-card>
<el-card
style=
"line-height: 15px;margin-top: 15px;"
>
<span
style=
"font-size:15px;color: #333333;font-weight:bold;margin-left: 7px;"
>
公司信息
</span>
<!-- <div style="font-size:13px;margin-left: 40px;margin-top: 10px;">公司名称: {{auditItem.companyName}}(恒昌)</div>-->
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
个体户申请名称: {{auditItem.companyNames}}
</div>
</el-card>
<el-card
style=
"line-height: 15px;margin-top: 15px;"
>
<span
style=
"font-size:15px;color: #333333;font-weight:bold;margin-left: 7px;"
>
法人信息
</span>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
法人姓名: {{auditItem.legal_name}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
联系方式: {{auditItem.legal_mobile}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
身份证号: {{auditItem.idcard}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
身份证图:
<div
style=
"margin-left: 70px;"
>
<img
style=
"width: 80px;height:80px;cursor: pointer;"
:src=
"auditItem.idcard_front"
alt
@
click=
"topic_preview('idcard_front')"
/>
<img
style=
"width: 80px;height:80px;cursor: pointer;margin-left: 10px;"
:src=
"auditItem.idcard_back"
alt
@
click=
"topic_preview('idcard_back')"
/>
</div>
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
半身照:
<div
style=
"margin-left: 70px;"
>
<img
style=
"width: 80px;cursor: pointer;height:80px;"
:src=
"auditItem.front_half_img"
alt
@
click=
"topic_preview('front_half_img')"
/>
</div>
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
声明书:
<div
style=
"margin-left: 70px;"
>
<img
style=
"width: 80px;cursor: pointer;"
:src=
"auditItem.declaration_file"
alt
@
click=
"topic_preview('declaration_file')"
/>
</div>
</div>
</el-card>
<el-card
style=
"line-height: 15px;margin-top: 15px;"
>
<span
style=
"font-size:15px;color: #333333;font-weight:bold;margin-left: 7px;"
>
银行卡信息
</span>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
开 户 行: {{auditItem.bank}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
银行卡号: {{auditItem.bankno}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
预留手机号: {{auditItem.bankMobile}}
</div>
<div
style=
"font-size:13px;margin-left: 40px;margin-top: 10px;"
>
照片:
<div
style=
"margin-left: 70px;"
>
<img
style=
"width: 80px;height:80px;cursor: pointer;"
:src=
"auditItem.bank_back"
alt
@
click=
"topic_preview('bank_back')"
/>
<img
style=
"width: 80px;height:80px;cursor: pointer;margin-left: 10px;"
:src=
"auditItem.bank_front"
alt
@
click=
"topic_preview('bank_front')"
/>
</div>
</div>
</el-card>
<el-card
style=
"line-height: 15px;margin-top: 15px;"
>
<span
style=
"font-size:15px;color: #333333;font-weight:bold;margin-left: 7px;"
>
审核结果
</span>
<el-input
type=
"textarea"
:rows=
"3"
placeholder=
"输入审核内容"
style=
"padding: 5px;margin-top: 15px;"
v-model=
"auditReason"
>
</el-input>
<div
style=
"margin-left: 200px;margin-top: 10px;"
>
<el-button
:loading=
"auditLoading"
@
click=
"saveAudit('1')"
style=
"width:120px;height:36px; background:#54C4A7; border-radius:4px;color: #FFFFFF;font-size: 16px;padding-top: 10px;"
>
通过
</el-button>
<el-button
:loading=
"auditLoading"
@
click=
"saveAudit('2')"
style=
"width:120px;height:36px; background:#54C4A7; border-radius:4px;color: #FFFFFF;font-size: 16px;padding-top: 10px;"
>
驳回
</el-button>
</div>
</el-card>
</div>
</el-dialog>
</div>
<script
src=
"/js/vue/jquery.min.js"
></script>
<script
src=
"/js/vue/base64.js"
></script>
<script
src=
"/js/vue/axios.min.js"
></script>
<script
src=
"/js/audit_page.js"
></script>
</html>
xgg-web/app/front/entry/public/js/audit_page.js
0 → 100644
View file @
6d3e1eb1
var
app
=
new
Vue
({
el
:
"#app"
,
data
:
function
()
{
return
{
btnloading
:
false
,
uploadLoading
:
null
,
showAudit
:
false
,
auditLoading
:
false
,
search
:
{
list
:
[],
currentPage
:
1
,
pageSize
:
20
,
total
:
0
,
legalName
:
''
,
},
auditItem
:
{},
auditReason
:
""
,
}
},
created
:
function
()
{
},
mounted
:
function
()
{
$
(
"#loading"
).
fadeOut
();
this
.
opSearch
();
},
methods
:
{
postReq
(
path
,
data
)
{
return
axios
.
post
(
path
,
data
).
then
(
function
(
r
)
{
return
r
.
data
?
r
.
data
:
null
;
})
},
resetSearch
()
{
this
.
search
=
this
.
getEmptySearch
();
this
.
getList
();
},
getEmptySearch
()
{
return
{
list
:
[],
currentPage
:
1
,
pageSize
:
20
,
total
:
0
,
legalName
:
''
,
}
},
getParams
()
{
var
params
=
{};
for
(
var
f
in
this
.
search
)
{
if
(
f
==
"list"
)
{
continue
;
}
params
[
f
]
=
this
.
search
[
f
];
}
return
params
;
},
opSearch
()
{
this
.
search
.
currentPage
=
1
;
this
.
search
.
total
=
0
;
this
.
getList
();
},
getList
()
{
var
self
=
this
;
var
params
=
this
.
getParams
();
this
.
$root
.
postReq
(
"/applet/xggApplet/toAuditOrders"
,
{
search
:
params
}).
then
(
function
(
d
)
{
if
(
d
.
code
==
1
)
{
self
.
search
.
list
=
d
.
data
.
rows
||
[];
self
.
search
.
total
=
d
.
data
.
count
||
0
;
}
else
{
}
});
},
btnclick
(
pfm
,
code
)
{
},
openAudit
(
item
)
{
console
.
log
(
item
);
this
.
auditItem
=
item
;
if
(
item
.
audit_status
==
0
)
{
item
.
audit_status_name
=
"待审核"
;
}
else
if
(
item
.
audit_status
==
1
)
{
item
.
audit_status_name
=
"审核通过"
;
}
else
{
item
.
audit_status_name
=
"审核驳回"
;
}
if
(
item
.
companyId
==
1
)
{
item
.
companyName
=
"汇财"
}
else
if
(
item
.
companyId
==
2
)
{
item
.
companyName
=
"张舟怡帆---北京"
}
else
{
item
.
companyName
=
"网众共创---北京"
}
item
.
companyNames
=
item
.
companyNames
.
split
(
"#com#"
).
join
(
","
);
this
.
auditReason
=
""
;
this
.
auditLoading
=
false
;
this
.
showAudit
=
true
;
},
saveAudit
(
auditStatus
)
{
var
self
=
this
;
self
.
auditLoading
=
true
;
if
(
auditStatus
==
2
&&
(
!
this
.
auditReason
||
!
this
.
auditReason
.
trim
()))
{
self
.
auditLoading
=
false
;
self
.
$message
.
warning
(
"请输入驳回原因"
);
return
;
}
var
auditParam
=
{
auditStatus
:
auditStatus
,
auditReason
:
this
.
auditReason
,
id
:
this
.
auditItem
.
orderId
};
// 处理审核
self
.
$root
.
postReq
(
"/applet/xggApplet/auditBiz"
,
auditParam
).
then
(
function
(
d
){
console
.
log
(
d
);
if
(
d
.
code
==
1
)
{
self
.
showAudit
=
false
;
self
.
getList
();
self
.
$message
.
success
(
"审核成功"
);
self
.
auditItem
=
{};
}
else
{
self
.
$message
.
warning
(
d
.
msg
||
"审核成功, 请稍候重试"
);
}
self
.
auditLoading
=
false
;
});
},
topic_preview
(
filed
)
{
let
url
=
this
.
auditItem
[
filed
||
""
];
if
(
url
)
{
window
.
open
(
url
);
}
else
{
this
.
$message
.
warning
(
"未上传"
);
}
},
onColFormater
(
row
,
column
,
cellValue
,
index
)
{
return
cellValue
||
"---"
;
},
handleSizeChange
(
val
)
{
this
.
search
.
pageSize
=
val
;
this
.
resetSearch
();
},
handleCurrentChange
(
val
)
{
this
.
search
.
currentPage
=
val
;
this
.
getList
();
},
demofunction
()
{
},
},
});
\ No newline at end of file
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