Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
丽
丽人贷管理后台
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
百灵美选
丽人贷管理后台
Commits
1df60a86
Commit
1df60a86
authored
Jun 07, 2022
by
caimeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
6.7日上午提交
parent
e0b54889
Changes
11
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
660 additions
and
944 deletions
+660
-944
theme.config.js
src/config/default/theme.config.js
+1
-1
index.js
src/router/index.js
+26
-25
api.js
src/server/api.js
+52
-153
index.vue
src/vab/components/Avatar/index.vue
+3
-3
index.vue
src/vab/components/TabsBar/index.vue
+1
-1
order.vue
src/views/approval/order.vue
+14
-60
index.vue
src/views/index/index.vue
+16
-16
audit.vue
src/views/loan/audit.vue
+252
-0
detail.vue
src/views/loan/detail.vue
+49
-286
list.vue
src/views/loan/list.vue
+246
-173
order.vue
src/views/loan/order.vue
+0
-226
No files found.
src/config/default/theme.config.js
View file @
1df60a86
...
...
@@ -23,6 +23,6 @@ const theme = {
//是否显示通知组件
showNotice
:
false
,
//是否显示全屏组件
showFullScreen
:
fals
e
,
showFullScreen
:
tru
e
,
}
module
.
exports
=
theme
src/router/index.js
View file @
1df60a86
...
...
@@ -81,7 +81,7 @@ export const asyncRoutes = [
meta
:
{
title
:
'授信管理'
,
remixIcon
:
'home-4-line'
,
noKeepAlive
:
true
noKeepAlive
:
true
},
children
:
[
{
...
...
@@ -89,7 +89,7 @@ export const asyncRoutes = [
name
:
'CreditPre'
,
component
:
()
=>
import
(
'@/views/credit/pre'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'预授信审核'
}
},
...
...
@@ -98,7 +98,7 @@ export const asyncRoutes = [
name
:
'CreditList'
,
component
:
()
=>
import
(
'@/views/credit/list'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'授信审核'
}
},
...
...
@@ -107,16 +107,17 @@ export const asyncRoutes = [
name
:
'CreditOrder'
,
component
:
()
=>
import
(
'@/views/credit/order'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'我的审批'
}
},
hidden
:
true
},
{
path
:
'detail'
,
name
:
'CreditDetail'
,
component
:
()
=>
import
(
'@/views/credit/detail'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'授信详情'
,
remixIcon
:
'building-line'
,
tagHidden
:
true
...
...
@@ -129,7 +130,7 @@ export const asyncRoutes = [
name
:
'CreditPreDetail'
,
component
:
()
=>
import
(
'@/views/credit/pre-detail'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'预授信详情'
,
remixIcon
:
'building-line'
,
tagHidden
:
true
...
...
@@ -145,7 +146,7 @@ export const asyncRoutes = [
redirect
:
'/approval/order'
,
alwaysShow
:
true
,
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'审批管理'
,
remixIcon
:
'home-4-line'
},
...
...
@@ -155,7 +156,7 @@ export const asyncRoutes = [
name
:
'ApprovalList'
,
component
:
()
=>
import
(
'@/views/approval/order'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'我的订单'
,
remixIcon
:
'product-hunt-line'
}
...
...
@@ -174,7 +175,7 @@ export const asyncRoutes = [
name
:
'ApprovalDetail'
,
component
:
()
=>
import
(
'@/views/approval/detail'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'详情'
,
remixIcon
:
'product-hunt-line'
},
...
...
@@ -188,38 +189,38 @@ export const asyncRoutes = [
component
:
Layout
,
redirect
:
'/loan/list'
,
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'借款管理'
,
remixIcon
:
'home-4-line'
},
children
:
[
{
path
:
'list'
,
name
:
'loanList'
,
component
:
()
=>
import
(
'@/views/loan/list'
),
meta
:
{
noKeepAlive
:
true
,
title
:
'稽核审批'
,
remixIcon
:
'task-line'
}
},
{
path
:
'detail'
,
name
:
'loanDetail'
,
component
:
()
=>
import
(
'@/views/loan/detail'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'详情'
,
remixIcon
:
'task-line'
},
hidden
:
true
},
{
path
:
'
order
'
,
path
:
'
audit
'
,
name
:
'loanOrder'
,
component
:
()
=>
import
(
'@/views/loan/order'
),
component
:
()
=>
import
(
'@/views/loan/audit'
),
meta
:
{
noKeepAlive
:
true
,
title
:
'稽核审批'
,
remixIcon
:
'task-line'
}
},
{
path
:
'list'
,
name
:
'loanList'
,
component
:
()
=>
import
(
'@/views/loan/list'
),
meta
:
{
noKeepAlive
:
true
,
noKeepAlive
:
true
,
title
:
'放款确认'
,
remixIcon
:
'task-line'
}
...
...
src/server/api.js
View file @
1df60a86
...
...
@@ -42,159 +42,6 @@ export default {
params
})
},
// 商户列表
merchant_list
(
data
)
{
return
request
({
url
:
'/macy/selectMacyList'
,
method
:
'post'
,
data
})
},
// 商户新增
merchant_add
(
data
)
{
return
request
({
url
:
'/macy/createdMacy'
,
method
:
'post'
,
data
})
},
// 商户更新
merchant_update
(
data
)
{
return
request
({
url
:
'/macy/editMacy'
,
method
:
'post'
,
data
})
},
// 商户详情
merchant_view
(
params
)
{
return
request
({
url
:
'/macy/selectMacyByTenantNo'
,
method
:
'get'
,
params
})
},
// 产品列表
merchant_select
(
params
)
{
return
request
({
url
:
'/macy/selectList'
,
method
:
'get'
,
params
})
},
// 产品列表
prod_list
(
data
)
{
return
request
({
url
:
'/macy/selectProductPageList'
,
method
:
'post'
,
data
})
},
// 产品新增
prod_add
(
data
)
{
return
request
({
url
:
'/macy/createdProductInfo'
,
method
:
'post'
,
data
})
},
// 产品编辑
prod_update
(
data
)
{
return
request
({
url
:
'/macy/editProductInfo'
,
method
:
'post'
,
data
})
},
// 产品上下架
prod_switch_upDown
(
params
)
{
return
request
({
url
:
'/macy/editProductInfoByStatus'
,
method
:
'get'
,
params
})
},
// 产品查看
prod_view
(
params
)
{
return
request
({
url
:
'/macy/selectProductInfoByappNo'
,
method
:
'get'
,
params
})
},
// 申请列表
apply_list
(
data
)
{
return
request
({
url
:
'/zeus/pageQueryApply'
,
method
:
'post'
,
data
})
},
// 推送
apply_push
(
params
)
{
return
request
({
url
:
'/zeus/applyRetryPush'
,
method
:
'get'
,
params
})
},
// 公告列表
notice_list
(
data
)
{
return
request
({
url
:
'/smgw/getBackPageList'
,
method
:
'post'
,
data
})
},
// 公告发送
notice_add
(
data
)
{
return
request
({
url
:
'/smgw/sendZnx'
,
method
:
'post'
,
data
})
},
// 公告编辑
notice_detail
(
data
)
{
return
request
({
url
:
'/smgw/getNotice'
,
method
:
'post'
,
data
})
},
// 公告编辑
notice_edit
(
data
)
{
return
request
({
url
:
'/smgw/updateNotice'
,
method
:
'post'
,
data
})
},
// 回现APP设置
app_setting
(
params
)
{
return
request
({
url
:
'/manage/getList'
,
method
:
'get'
,
params
})
},
// 变更状态
app_setting_update
(
data
)
{
return
request
({
url
:
'/manage/update'
,
method
:
'post'
,
data
})
},
// 变更状态
dict
(
params
)
{
return
request
({
url
:
'/dictData/selectBydictType'
,
method
:
'get'
,
params
})
},
/** 授信管理接口 **/
// 预授信列表
...
...
@@ -295,6 +142,58 @@ export default {
method
:
'post'
,
data
})
},
// 借款管理接口
// 借款审批列表
loanAuditList
(
data
)
{
return
request
({
url
:
'/loan/auditAllotList'
,
method
:
'post'
,
data
})
},
// 借款详情
loanDetail
(
params
)
{
return
request
({
url
:
'/loan/auditDetail'
,
method
:
'get'
,
params
})
},
// 借款审核提交
loanAuditSubmit
(
data
)
{
return
request
({
url
:
'/loan/auditAllot'
,
method
:
'post'
,
data
})
},
// 放款确认列表
loanConfirmList
(
data
)
{
return
request
({
url
:
'/loan/loanConfirmList'
,
method
:
'post'
,
data
})
},
// 确认放款
loanConfirm
(
data
)
{
return
request
({
url
:
'/loan/confirmLoan'
,
method
:
'post'
,
data
})
},
// 取消放款
loanCancel
(
data
)
{
return
request
({
url
:
'/loan/cancelLoan'
,
method
:
'post'
,
data
})
}
}
src/vab/components/Avatar/index.vue
View file @
1df60a86
<
template
>
<el-dropdown
@
command=
"handleCommand"
>
<span
class=
"avatar-dropdown"
>
<
!--
<img
:src=
"avatar"
alt=
""
class=
"user-avatar"
/>
--
>
<
img
:src=
"avatar"
alt=
""
class=
"user-avatar"
/
>
<div
class=
"user-name"
>
{{
username
}}
<vab-remix-icon
icon-class=
"arrow-down-s-line"
/>
...
...
@@ -72,8 +72,8 @@
justify-items
:
center
;
.user-avatar
{
width
:
40
px
;
height
:
40
px
;
width
:
26
px
;
height
:
26
px
;
margin-left
:
15px
;
cursor
:
pointer
;
border-radius
:
50%
;
...
...
src/vab/components/TabsBar/index.vue
View file @
1df60a86
...
...
@@ -17,7 +17,7 @@
></el-tab-pane>
</el-tabs>
<el-dropdown
@
command=
"handleCommand"
>
<el-dropdown
v-if=
'false'
@
command=
"handleCommand"
>
<span
class=
"more"
>
{{
translateTitle
(
'更多'
)
}}
<vab-remix-icon
icon-class=
"arrow-down-s-line"
></vab-remix-icon>
...
...
src/views/approval/order.vue
View file @
1df60a86
...
...
@@ -86,63 +86,19 @@
:show-overflow-tooltip=
'!!item.overflow'
>
<template
#
default=
'
{ row }'>
<div
v-if=
"item.label==='LOGO'"
>
<el-image
style=
'width: 50px; height: 35px'
:src=
'row[item.prop]'
fit=
'fit'
/>
</div>
<div
v-else-if=
"item.label==='产品状态'"
>
<el-tag
v-if=
"row[item.prop] === '1'"
type=
'success'
size=
'mini'
>
启用
</el-tag>
<el-tag
v-else
type=
'info'
size=
'mini'
>
禁用
</el-tag>
</div>
<span
v-else
>
{{
row
[
item
.
prop
]
}}
</span>
<span>
{{
row
[
item
.
prop
]
}}
</span>
</
template
>
</el-table-column>
<el-table-column
width=
'210'
fixed=
'right'
align=
'center'
label=
'操作'
>
<
template
v-if=
'isOnLine'
>
<el-table-column
width=
'210'
fixed=
'right'
align=
'center'
label=
'操作'
>
<template
#
default=
'
{ row }'>
<el-button
size=
'mini'
type=
'danger'
@
click=
'handleView(row)'
>
审批
</el-button>
<el-button
size=
'mini'
type=
'success'
@
click=
'handleView(row)'
>
详情
</el-button>
<el-button
size=
'mini'
type=
'primary'
@
click=
'handleClick(row)'
>
转派
</el-button>
<el-button
size=
'mini'
type=
'danger'
@
click=
'handleView(row)'
>
审批
</el-button>
<el-button
size=
'mini'
type=
'success'
@
click=
'handleView(row)'
>
详情
</el-button>
<el-button
size=
'mini'
type=
'primary'
@
click=
'handleClick(row)'
>
转派
</el-button>
</
template
>
</el-table-column>
</template>
</el-table>
<!--分页-->
...
...
@@ -308,13 +264,11 @@
const
result
=
await
API
.
approveOnOff
({
userId
,
userDutyState
})
;
})
if
(
result
.
success
){
Vue
.
prototype
.
$baseMessage
(
'操作成功'
,
'success'
)
if
(
result
.
success
)
{
const
msg
=
userDutyState
===
'ONLINE'
?
'已上线'
:
'已下线'
Vue
.
prototype
.
$baseMessage
(
msg
,
'success'
)
}
}
...
...
src/views/index/index.vue
View file @
1df60a86
...
...
@@ -2,22 +2,22 @@
<div
class=
"index-container"
>
<el-row
:gutter=
"20"
>
<page-header></page-header>
<
el-col
:lg=
"6"
:md=
"12"
:sm=
"24"
:xl=
"6"
:xs=
"24"
>
<chart1></chart1
>
<
/el-col
>
<
el-col
:lg=
"6"
:md=
"12"
:sm=
"24"
:xl=
"6"
:xs=
"24"
>
<chart2></chart2
>
<
/el-col
>
<
el-col
:lg=
"12"
:md=
"24"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
<version-information></version-information
>
<
/el-col
>
<
icon-list></icon-list
>
<
el-col
:lg=
"12"
:md=
"12"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
<chart3></chart3
>
<
/el-col
>
<
el-col
:lg=
"12"
:md=
"12"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
<my-project></my-project
>
<
/el-col
>
<
!--
<el-col
:lg=
"6"
:md=
"12"
:sm=
"24"
:xl=
"6"
:xs=
"24"
>
--
>
<!--
<chart1></chart1>
--
>
<
!--
</el-col>
--
>
<
!--
<el-col
:lg=
"6"
:md=
"12"
:sm=
"24"
:xl=
"6"
:xs=
"24"
>
--
>
<!--
<chart2></chart2>
--
>
<
!--
</el-col>
--
>
<
!--
<el-col
:lg=
"12"
:md=
"24"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
--
>
<!--
<version-information></version-information>
--
>
<
!--
</el-col>
--
>
<
!--
<icon-list></icon-list>
--
>
<
!--
<el-col
:lg=
"12"
:md=
"12"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
--
>
<!--
<chart3></chart3>
--
>
<
!--
</el-col>
--
>
<
!--
<el-col
:lg=
"12"
:md=
"12"
:sm=
"24"
:xl=
"12"
:xs=
"24"
>
--
>
<!--
<my-project></my-project>
--
>
<
!--
</el-col>
--
>
</el-row>
</div>
</
template
>
...
...
src/views/loan/audit.vue
0 → 100644
View file @
1df60a86
<
template
>
<div
class=
'page-fence'
>
<!--搜索-->
<block-header
title=
'搜索'
/>
<div
class=
'search'
>
<el-form
ref=
'form'
label-suffix=
':'
:inline=
'true'
:model=
'queryForm'
class=
'form-inline'
>
<el-form-item
prop=
'loanNo'
label=
'借款编号'
>
<el-input
v-model=
'queryForm.loanNo'
clearable
placeholder=
'请输入借款编号'
/>
</el-form-item>
<el-form-item
prop=
'clientName'
label=
'客户姓名'
>
<el-input
v-model=
'queryForm.clientName'
clearable
placeholder=
'请输入客户姓名'
/>
</el-form-item>
<el-form-item
prop=
'mobile'
label=
'手机号码'
>
<el-input
v-model=
'queryForm.mobile'
clearable
placeholder=
'请输入客户手机号码'
/>
</el-form-item>
<el-form-item
prop=
'loanName'
label=
'项目名称'
>
<el-input
v-model=
'queryForm.loanName'
clearable
placeholder=
'请输入客户手机号码'
/>
</el-form-item>
<el-form-item
label=
'申请时间'
>
<el-date-picker
v-model=
'queryForm.time'
type=
'datetimerange'
:picker-options=
'pickerConfig'
:default-time=
"['00:00:00', '23:59:59']"
value-format=
'yyyy-MM-dd HH:mm:ss'
range-separator=
'至'
start-placeholder=
'开始时间'
end-placeholder=
'结束时间'
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
icon=
'el-icon-search'
type=
'primary'
@
click=
'onSearch'
>
搜 索
</el-button>
<el-button
icon=
'el-icon-delete'
type=
'default'
@
click=
"onReset('form')"
>
重 置
</el-button>
</el-form-item>
</el-form>
</div>
<!--表格-->
<block-header
title=
'借款列表'
/>
<el-table
ref=
'tableSort'
v-loading=
'listLoading'
border
:data=
'list'
style=
'width: 100%'
>
<el-table-column
v-for=
'(item, index) in finallyColumns'
:key=
'index'
align=
'center'
:label=
'item.label'
:sortable=
'item.sortable'
:width=
'item.width'
:fixed=
'!!item.fixed'
:show-overflow-tooltip=
'!!item.overflow'
>
<template
#
default=
'
{ row }'>
<span>
{{
row
[
item
.
prop
]
}}
</span>
</
template
>
</el-table-column>
<el-table-column
fixed=
'right'
align=
'center'
label=
'操作'
>
<
template
#
default=
'{ row }'
>
<el-button
type=
"text"
@
click=
"handleDetail(row)"
>
详情
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-pagination
:current-page=
'queryForm.current'
layout=
'total, prev, pager, next'
:page-size=
'queryForm.size'
:total=
'total'
background
@
current-change=
'handleCurrentChange'
/>
</div>
</template>
<
script
>
import
_
from
'lodash'
import
{
doDelete
,
getList
}
from
'@/api/table'
import
API
from
'@/server/api'
export
default
{
name
:
'LoanAudit'
,
data
()
{
return
{
checkList
:
[
'借款编号'
,
'项目名称'
,
'客户姓名'
,
'手机号码'
,
'借款金额'
,
'借款期数'
,
'BD姓名'
,
'商户区域'
,
'创建时间'
,
'借款状态'
,
'资金渠道'
],
columns
:
[
{
order
:
1
,
label
:
'借款编号'
,
prop
:
'loanNo'
},
{
order
:
2
,
label
:
'项目名称'
,
prop
:
'loanName'
},
{
order
:
3
,
label
:
'客户姓名'
,
prop
:
'realName'
},
{
order
:
4
,
label
:
'手机号码'
,
prop
:
'mobile'
},
{
order
:
5
,
label
:
'借款金额'
,
prop
:
'loanAmount'
},
{
order
:
6
,
label
:
'借款期数'
,
prop
:
'loanNum'
},
{
order
:
7
,
label
:
'BD姓名'
,
prop
:
'bdName'
},
{
order
:
8
,
label
:
'商户区域'
,
prop
:
'regionName'
},
{
order
:
9
,
label
:
'创建时间'
,
prop
:
'gmtCreated'
},
{
order
:
10
,
label
:
'借款状态'
,
prop
:
'loanStatus'
},
{
order
:
11
,
label
:
'资金渠道'
,
prop
:
'loanSign'
}
],
list
:
[],
listLoading
:
true
,
pickerConfig
:
this
.
datePickerOptions
,
total
:
1
,
queryForm
:
{
current
:
1
,
size
:
10
,
mobile
:
''
,
loanNo
:
''
,
loanName
:
''
,
clientName
:
''
,
time
:
''
,
startTime
:
''
,
endTime
:
''
,
userId
:
''
}
}
},
computed
:
{
finallyColumns
()
{
let
finallyArray
=
[]
this
.
checkList
.
forEach
((
checkItem
)
=>
{
finallyArray
.
push
(
this
.
columns
.
filter
((
item
)
=>
item
.
label
===
checkItem
)[
0
]
)
})
return
_
.
sortBy
(
finallyArray
,
(
item
)
=>
item
.
order
)
//return finallyArray
}
},
mounted
()
{
this
.
fetchData
()
},
methods
:
{
onSearch
()
{
const
{
time
}
=
this
.
queryForm
this
.
queryForm
.
current
=
1
if
(
time
)
{
this
.
queryForm
.
startTime
=
time
[
0
]
this
.
queryForm
.
endTime
=
time
[
1
]
}
else
{
this
.
queryForm
.
startTime
=
''
this
.
queryForm
.
endTime
=
''
}
this
.
fetchData
()
},
handleDetail
(
row
)
{
const
{
loanNo
}
=
row
this
.
$router
.
push
({
path
:
'/loan/detail'
,
query
:
{
loanNo
}
})
},
handleCurrentChange
(
val
)
{
this
.
queryForm
.
current
=
val
this
.
fetchData
()
},
async
fetchData
()
{
this
.
listLoading
=
true
const
form
=
this
.
queryForm
const
params
=
Object
.
assign
({},
form
)
delete
params
.
time
const
result
=
await
API
.
loanAuditList
({
...
params
})
const
{
records
,
total
}
=
result
.
result
this
.
list
=
records
this
.
total
=
total
this
.
listLoading
=
false
}
}
}
</
script
>
<
style
lang=
'scss'
scoped
>
.page-fence
{
::v-deep
{
i
{
cursor
:
pointer
;
}
}
box-sizing
:
border-box
;
padding
:
20px
;
}
</
style
>
<
style
lang=
'scss'
>
.custom-table-checkbox
{
.el-checkbox
{
display
:
block
!
important
;
margin
:
0
0
$base-padding
/
4
0
;
}
}
.action-bar
{
margin-bottom
:
15px
;
}
</
style
>
src/views/loan/detail.vue
View file @
1df60a86
This diff is collapsed.
Click to expand it.
src/views/loan/list.vue
View file @
1df60a86
This diff is collapsed.
Click to expand it.
src/views/loan/order.vue
deleted
100644 → 0
View file @
e0b54889
<
template
>
<div
class=
"page-fence"
>
<!--搜索-->
<div
class=
"search"
>
<el-form
label-suffix=
":"
:inline=
"true"
:model=
"queryForm"
class=
"form-inline"
>
<el-form-item
label=
"订单编号"
>
<el-input
v-model=
"queryForm.orderNo"
clearable
placeholder=
"请输入机构编号"
/>
</el-form-item>
<el-form-item
label=
"用户姓名"
>
<el-input
v-model=
"queryForm.tenantNo"
clearable
placeholder=
"请输入机构名称"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"onSubmit"
>
查询
</el-button>
</el-form-item>
</el-form>
</div>
<!--表格-->
<el-table
ref=
"tableSort"
v-loading=
"listLoading"
border
:data=
"list"
style=
"width: 100%"
>
<el-table-column
v-for=
"(item, index) in finallyColumns"
:key=
"index"
align=
"center"
:label=
"item.label"
:sortable=
"item.sortable"
:width=
"item.width"
:fixed=
"!!item.fixed"
:show-overflow-tooltip=
"!!item.overflow"
>
<template
#
default=
"
{ row }">
<div
v-if=
"item.label==='LOGO'"
>
<el-image
style=
"width: 50px; height: 35px"
:src=
"row[item.prop]"
fit=
"fit"
/>
</div>
<div
v-else-if=
"item.label==='产品状态'"
>
<span>
{{
row
[
item
.
prop
]
===
"1"
?
'启用'
:
'禁用'
}}
</span>
</div>
<span
v-else
>
{{
row
[
item
.
prop
]
}}
</span>
</
template
>
</el-table-column>
<el-table-column
fixed=
"right"
align=
"center"
label=
"操作"
>
<
template
#
default=
"{ row }"
>
<el-button
type=
"text"
@
click=
"handleView(row)"
>
推送
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-pagination
:current-page=
"queryForm.pageNo"
:layout=
"layout"
:page-size=
"queryForm.pageSize"
:total=
"total"
background
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
/>
</div>
</template>
<
script
>
import
_
from
"lodash"
;
import
{
doDelete
,
getList
}
from
"@/api/table"
;
import
API
from
"@/server/api"
;
export
default
{
name
:
"Fence"
,
data
()
{
return
{
checkList
:
[
"订单编号"
,
"进件时间"
,
"姓名"
,
"产品名称"
,
"申请状态"
,
"是否推送"
],
columns
:
[
{
order
:
1
,
label
:
"订单编号"
,
prop
:
"orderNo"
},
{
order
:
2
,
label
:
"进件时间"
,
prop
:
"gmtCreatedStr"
},
{
order
:
3
,
label
:
"姓名"
,
prop
:
"userName"
},
{
order
:
4
,
label
:
"产品名称"
,
prop
:
"appName"
},
{
order
:
5
,
label
:
"申请状态"
,
prop
:
"applyStatusStr"
},
{
order
:
6
,
label
:
"是否推送"
,
prop
:
"applyStatusStr"
}
],
list
:
[],
listLoading
:
true
,
layout
:
"total, sizes, prev, pager, next, jumper"
,
total
:
0
,
queryForm
:
{
current
:
1
,
size
:
10
,
orderNo
:
""
}
};
},
computed
:
{
finallyColumns
()
{
let
finallyArray
=
[];
this
.
checkList
.
forEach
((
checkItem
)
=>
{
finallyArray
.
push
(
this
.
columns
.
filter
((
item
)
=>
item
.
label
===
checkItem
)[
0
]
);
});
//return _.sortBy(finallyArray, (item) => item.order);
return
finallyArray
;
}
},
created
()
{
//防止三级以上路由时多次走created
if
(
this
.
$route
.
name
===
this
.
$options
.
name
)
this
.
fetchData
();
},
mounted
()
{
this
.
fetchData
();
},
methods
:
{
onSubmit
()
{
this
.
fetchData
();
},
handleView
(
row
)
{
const
{
appNo
}
=
row
;
this
.
$router
.
push
({
path
:
'/prod/edit'
,
query
:
{
appNo
}
})
},
handleSizeChange
(
val
)
{
this
.
queryForm
.
size
=
val
;
this
.
fetchData
();
},
handleCurrentChange
(
val
)
{
this
.
queryForm
.
current
=
val
;
this
.
fetchData
();
},
handleQuery
()
{
this
.
queryForm
.
current
=
1
;
this
.
fetchData
();
},
async
fetchData
()
{
this
.
listLoading
=
true
;
const
result
=
await
API
.
apply_list
(
this
.
queryForm
);
const
{
records
,
total
}
=
result
.
result
;
this
.
list
=
records
;
this
.
total
=
total
;
this
.
listLoading
=
false
;
}
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.page-fence
{
::v-deep
{
i
{
cursor
:
pointer
;
}
}
box-sizing
:
border-box
;
padding
:
20px
;
}
</
style
>
<
style
lang=
"scss"
>
.custom-table-checkbox
{
.el-checkbox
{
display
:
block
!
important
;
margin
:
0
0
$base-padding
/
4
0
;
}
}
.action-bar
{
margin-bottom
:
15px
;
}
</
style
>
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