Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
loan-manager-customer
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
zhanhai
loan-manager-customer
Commits
9e668103
Commit
9e668103
authored
Jul 13, 2022
by
刘雅文
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
需求
parent
06527d13
Changes
29
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
2144 additions
and
15825 deletions
+2144
-15825
.env.production
.env.production
+1
-1
README.md
README.md
+1
-1
package-lock.json
package-lock.json
+490
-15215
ByhService.vue
src/components/byh/ByhService.vue
+0
-2
ByhServiceDetail.vue
src/components/byh/ByhServiceDetail.vue
+3
-2
CreateRefund.vue
src/components/byh/CreateRefund.vue
+130
-0
RiskLevelList.vue
src/components/byh/RiskLevelList.vue
+4
-0
ServiceProblem.vue
src/components/byh/ServiceProblem.vue
+4
-1
AddQuestion.vue
src/components/byh/componments/AddQuestion.vue
+7
-2
AdvanceLoanAmt.vue
src/components/byh/componments/AdvanceLoanAmt.vue
+3
-3
ApplyInfo.vue
src/components/byh/componments/ApplyInfo.vue
+0
-1
BaseInfo.vue
src/components/byh/componments/BaseInfo.vue
+204
-47
BillList.vue
src/components/byh/componments/BillList.vue
+319
-175
DevicePayment.vue
src/components/byh/componments/DevicePayment.vue
+341
-0
FeedList.vue
src/components/byh/componments/FeedList.vue
+7
-4
LoanDetail copy.vue
src/components/byh/componments/LoanDetail copy.vue
+0
-165
LoanDetail.vue
src/components/byh/componments/LoanDetail.vue
+99
-38
LoanInfo.vue
src/components/byh/componments/LoanInfo.vue
+7
-7
Messages.vue
src/components/byh/componments/Messages.vue
+147
-0
OffineTransfer.vue
src/components/byh/componments/OffineTransfer.vue
+1
-1
OperateLog.vue
src/components/byh/componments/OperateLog.vue
+2
-0
ProtocolSettled.vue
src/components/byh/componments/ProtocolSettled.vue
+7
-1
ProtocolSettledOne.vue
src/components/byh/componments/ProtocolSettledOne.vue
+35
-8
RePayList.vue
src/components/byh/componments/RePayList.vue
+4
-3
ReliefList.vue
src/components/byh/componments/ReliefList.vue
+2
-2
ServiceRefund.vue
src/components/byh/componments/ServiceRefund.vue
+168
-0
index.js
src/router/index.js
+149
-141
routes.js
src/router/routes.js
+5
-1
ajax.js
src/utils/ajax.js
+4
-4
No files found.
.env.production
View file @
9e668103
NODE_ENV=production
NODE_ENV=production
VUE_APP_ENV=production
VUE_APP_ENV=production
VUE_APP_API=https://water.jqtianxia.com
VUE_APP_API=https://water.jqtianxia.com
\ No newline at end of file
README.md
View file @
9e668103
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
-
访问域名:https://customer.dingrongxd.com/
-
访问域名:https://customer.dingrongxd.com/
-
API接口地址:https://drwater.dingrongxd.com
-
API接口地址:https://drwater.dingrongxd.com
**测试部署**
**测试部署
(放到金钱下面)
**
-
bucket:customer-vue-test
-
bucket:customer-vue-test
-
访问域名:http://customertest.jqtianxia.cn/
-
访问域名:http://customertest.jqtianxia.cn/
-
API接口地址:http://47.99.245.36:8202
-
API接口地址:http://47.99.245.36:8202
...
...
package-lock.json
View file @
9e668103
This diff is collapsed.
Click to expand it.
src/components/byh/ByhService.vue
View file @
9e668103
...
@@ -313,8 +313,6 @@ export default {
...
@@ -313,8 +313,6 @@ export default {
if
(
this
.
searchInfo
.
productName
!=
''
)
{
if
(
this
.
searchInfo
.
productName
!=
''
)
{
return_hash
[
'productName'
]
=
this
.
searchInfo
.
productName
return_hash
[
'productName'
]
=
this
.
searchInfo
.
productName
}
}
return
return_hash
;
return
return_hash
;
},
},
...
...
src/components/byh/ByhServiceDetail.vue
View file @
9e668103
...
@@ -11,6 +11,7 @@
...
@@ -11,6 +11,7 @@
<el-tab-pane
name=
"FeedList"
label=
"反馈记录"
></el-tab-pane>
<el-tab-pane
name=
"FeedList"
label=
"反馈记录"
></el-tab-pane>
<el-tab-pane
name=
"UrgeList"
label=
"催收记录"
></el-tab-pane>
<el-tab-pane
name=
"UrgeList"
label=
"催收记录"
></el-tab-pane>
<el-tab-pane
name=
"OperateLog"
label=
"操作日志"
></el-tab-pane>
<el-tab-pane
name=
"OperateLog"
label=
"操作日志"
></el-tab-pane>
<el-tab-pane
name=
"Messages"
label=
"短信信息"
></el-tab-pane>
</el-tabs>
</el-tabs>
<div
class=
"box-right"
>
<div
class=
"box-right"
>
...
@@ -65,6 +66,7 @@ import OperateLog from "./componments/OperateLog";
...
@@ -65,6 +66,7 @@ import OperateLog from "./componments/OperateLog";
import
AddQuestion
from
"./componments/AddQuestion"
;
import
AddQuestion
from
"./componments/AddQuestion"
;
import
updateQueDialog
from
"./componments/UpdateQueDialog"
;
import
updateQueDialog
from
"./componments/UpdateQueDialog"
;
import
Messages
from
"./componments/Messages"
;
export
default
{
export
default
{
...
@@ -76,7 +78,7 @@ export default {
...
@@ -76,7 +78,7 @@ export default {
FeedList
,
FeedList
,
UrgeList
,
UrgeList
,
OperateLog
,
OperateLog
,
Messages
,
AddQuestion
,
AddQuestion
,
updateQueDialog
updateQueDialog
},
},
...
@@ -89,7 +91,6 @@ export default {
...
@@ -89,7 +91,6 @@ export default {
firstLoanNo
:
''
,
firstLoanNo
:
''
,
loan
:
{},
loan
:
{},
query
:
{},
query
:
{},
basicInfo
:
{},
basicInfo
:
{},
clientNos
:
""
,
clientNos
:
""
,
clientProducts
:
""
,
clientProducts
:
""
,
...
...
src/components/byh/CreateRefund.vue
0 → 100644
View file @
9e668103
<
template
>
<div
class=
"box"
>
<h3>
创建退款单:
</h3>
<el-form
:inline=
"false"
:model=
"loanInfo"
:rules=
"rules"
ref=
"loanInfo"
label-width=
"200px"
>
<el-form-item
label=
"借款编号:"
prop=
"loanNo"
>
<el-input
placeholder=
"请输入客户编号"
v-model=
"loanInfo.loanNo"
></el-input>
</el-form-item>
<el-form-item
label=
"退款金额:"
prop=
"refundAmt"
>
<el-input
placeholder=
"请输入退款金额"
v-model=
"loanInfo.refundAmt"
></el-input>
</el-form-item>
<el-form-item
label=
"备注信息:"
prop=
"memo"
>
<el-input
placeholder=
"请输入备注信息"
v-model=
"loanInfo.memo"
></el-input>
</el-form-item>
</el-form>
<el-button
class=
"btn"
type=
"primary"
@
click=
"trueSet('loanInfo')"
>
确定创建
</el-button
>
</div>
</
template
>
<
script
>
export
default
{
name
:
"CreateRefund"
,
data
()
{
return
{
loanInfo
:
{
loanNo
:
""
,
//借款编号
refundAmt
:
""
,
//退款金额
memo
:
""
,
//备注
creator
:
""
,
//创建人
},
creators
:
""
,
//创建人
rules
:
{
loanNo
:
[
{
required
:
true
,
message
:
"请输入借款编号"
,
trigger
:
"blur"
},
],
refundAmt
:
[
{
required
:
true
,
message
:
"请输入退款金额"
,
trigger
:
"blur"
},
],
memo
:
[
{
required
:
true
,
message
:
"填输入备注信息"
,
trigger
:
"blur"
},
],
},
};
},
mounted
()
{
//获取登录名
this
.
creators
=
localStorage
.
getItem
(
"loginName"
);
// console.log(this.creators,'445')
},
methods
:
{
open
()
{
this
.
$confirm
(
"此操作将为您创建退款单,是否继续?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(()
=>
{
// console.log(this.creators,this.loanInfo,'zhegeshi canshu')
if
(
this
.
creators
){
this
.
loanInfo
.
creator
=
this
.
creators
}
this
.
$$post
(
`/refund/createRefund`
,
this
.
loanInfo
).
then
((
res
)
=>
{
if
(
res
.
data
.
code
!=
200
)
{
this
.
$message
.
error
(
res
.
data
.
message
);
return
;
}
else
{
this
.
loanInfo
=
{};
this
.
$message
({
type
:
"success"
,
message
:
"创建成功!"
,
});
}
});
})
.
catch
(()
=>
{
this
.
$message
({
type
:
"info"
,
message
:
"已取消创建"
,
});
this
.
loanInfo
=
{};
});
},
//点击确定提交信息
trueSet
(
loanInfo
)
{
this
.
$refs
[
loanInfo
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
open
();
}
else
{
console
.
log
(
"提交失败!!!"
);
return
false
;
}
});
},
},
};
</
script
>
<
style
>
.box
{
padding
:
30px
;
}
h3
{
margin-left
:
50px
;
margin-bottom
:
30px
;
}
.el-input__inner
{
width
:
250px
;
}
.btn
{
margin-left
:
120px
;
}
</
style
>
\ No newline at end of file
src/components/byh/RiskLevelList.vue
View file @
9e668103
...
@@ -83,6 +83,10 @@ export default {
...
@@ -83,6 +83,10 @@ export default {
data
()
{
data
()
{
return
{
return
{
options
:
[
options
:
[
{
value
:
'R0'
,
label
:
'R0'
},
{
{
value
:
'R1'
,
value
:
'R1'
,
label
:
'R1'
label
:
'R1'
...
...
src/components/byh/ServiceProblem.vue
View file @
9e668103
...
@@ -77,8 +77,9 @@
...
@@ -77,8 +77,9 @@
<el-table-column
align=
"center"
prop=
"clientCell"
label=
"手机号"
></el-table-column>
<el-table-column
align=
"center"
prop=
"clientCell"
label=
"手机号"
></el-table-column>
<el-table-column
align=
"center"
prop=
"gmtCreated"
label=
"反馈时间"
:formatter=
"dateFormat"
></el-table-column>
<el-table-column
align=
"center"
prop=
"gmtCreated"
label=
"反馈时间"
:formatter=
"dateFormat"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedType"
label=
"反馈类型"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedType"
label=
"反馈类型"
></el-table-column>
<!--
<el-table-column prop="feedProduct" label="产品名称" :formatter="productNameFormat" ></el-table-column>
-->
<!--
<el-table-column align="center" prop="feedProduct" label="产品名称" :formatter="productNameFormat" ></el-table-column>
-->
<el-table-column
align=
"center"
prop=
"feedSource"
label=
"来源"
:formatter=
"feedSourceFormat"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedSource"
label=
"来源"
:formatter=
"feedSourceFormat"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedProductStr"
label=
"渠道来源"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedStatus"
label=
"解决状态"
></el-table-column>
<el-table-column
align=
"center"
prop=
"feedStatus"
label=
"解决状态"
></el-table-column>
<el-table-column
align=
"center"
label=
"操作"
>
<el-table-column
align=
"center"
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
...
@@ -175,8 +176,10 @@ export default {
...
@@ -175,8 +176,10 @@ export default {
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
$message
.
error
(
res
.
data
.
message
);
return
return
}
}
// console.log(res.data.result);
listsData
=
res
.
data
.
result
.
records
;
listsData
=
res
.
data
.
result
.
records
;
this
.
tablePlanRemindData
=
listsData
;
this
.
tablePlanRemindData
=
listsData
;
// console.log(this.tablePlanRemindData);
this
.
page
.
total
=
res
.
data
.
result
.
total
;
this
.
page
.
total
=
res
.
data
.
result
.
total
;
}).
catch
(
error
=>
{
}).
catch
(
error
=>
{
...
...
src/components/byh/componments/AddQuestion.vue
View file @
9e668103
...
@@ -101,6 +101,7 @@ export default {
...
@@ -101,6 +101,7 @@ export default {
feedContent
:
''
,
feedContent
:
''
,
clientNo
:
''
,
clientNo
:
''
,
creater
:
''
,
creater
:
''
,
loanNo
:
''
,
productName
:
''
,
productName
:
''
,
feedVoucher
:
[]
feedVoucher
:
[]
},
},
...
@@ -158,7 +159,8 @@ export default {
...
@@ -158,7 +159,8 @@ export default {
}
}
},
},
created
()
{
created
()
{
const
{
clientNo
,
feedNo
,
feedType
,
feedStatus
,
feedContent
,
feedVoucher
,
feedProduct
}
=
this
.
params
;
console
.
log
(
this
.
params
,
'888888888888'
);
const
{
clientNo
,
feedNo
,
feedType
,
feedStatus
,
feedContent
,
feedVoucher
,
feedProduct
,
loanNo
}
=
this
.
params
;
const
list
=
[];
const
list
=
[];
feedVoucher
.
forEach
(
item
=>
{
feedVoucher
.
forEach
(
item
=>
{
const
o
=
{};
const
o
=
{};
...
@@ -168,7 +170,7 @@ export default {
...
@@ -168,7 +170,7 @@ export default {
});
});
this
.
fileList
=
list
;
this
.
fileList
=
list
;
console
.
log
(
this
.
params
,
'内容'
);
//
console.log(this.params,'内容');
this
.
ruleForm
=
{
this
.
ruleForm
=
{
feedNo
,
feedNo
,
...
@@ -176,6 +178,7 @@ export default {
...
@@ -176,6 +178,7 @@ export default {
feedStatus
,
feedStatus
,
feedContent
,
feedContent
,
feedVoucher
,
feedVoucher
,
loanNo
,
clientNo
,
clientNo
,
productName
:
feedProduct
,
productName
:
feedProduct
,
creater
:
localStorage
.
getItem
(
"userName"
),
creater
:
localStorage
.
getItem
(
"userName"
),
...
@@ -249,6 +252,7 @@ export default {
...
@@ -249,6 +252,7 @@ export default {
feedType
:
this
.
ruleForm
.
feedType
,
feedType
:
this
.
ruleForm
.
feedType
,
feedSource
:
'CUSTOMER'
,
feedSource
:
'CUSTOMER'
,
feedStatus
:
this
.
ruleForm
.
feedStatus
,
feedStatus
:
this
.
ruleForm
.
feedStatus
,
loanNo
:
this
.
ruleForm
.
loanNo
,
feedContent
:
this
.
ruleForm
.
feedContent
,
feedContent
:
this
.
ruleForm
.
feedContent
,
clientNo
:
this
.
ruleForm
.
clientNo
,
clientNo
:
this
.
ruleForm
.
clientNo
,
productName
:
this
.
ruleForm
.
productName
,
productName
:
this
.
ruleForm
.
productName
,
...
@@ -276,6 +280,7 @@ export default {
...
@@ -276,6 +280,7 @@ export default {
feedStatus
:
this
.
ruleForm
.
feedStatus
,
feedStatus
:
this
.
ruleForm
.
feedStatus
,
feedContent
:
this
.
ruleForm
.
feedContent
,
feedContent
:
this
.
ruleForm
.
feedContent
,
clientNo
:
this
.
ruleForm
.
clientNo
,
clientNo
:
this
.
ruleForm
.
clientNo
,
loanNo
:
this
.
ruleForm
.
loanNo
,
productName
:
this
.
ruleForm
.
productName
,
productName
:
this
.
ruleForm
.
productName
,
feedVoucher
:
feedVoucher
feedVoucher
:
feedVoucher
})
})
...
...
src/components/byh/componments/AdvanceLoanAmt.vue
View file @
9e668103
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
<div
style=
"margin-left:50px"
>
<div
style=
"margin-left:50px"
>
<el-row
:gutter=
"20"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
本金:
{{
this
.
ruleForm
.
principl
eAmt
}}
</div>
<div
class=
"grid-content bg-purple"
>
本金:
{{
this
.
ruleForm
.
rais
eAmt
}}
</div>
</el-col>
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
起息日:
{{
this
.
ruleForm
.
startDate
|
dateFilter
}}
</div>
<div
class=
"grid-content bg-purple"
>
起息日:
{{
this
.
ruleForm
.
startDate
|
dateFilter
}}
</div>
...
@@ -76,7 +76,7 @@
...
@@ -76,7 +76,7 @@
</el-form-item>
</el-form-item>
<el-form-item
label=
"减免金额"
prop=
"derateAmt"
>
<el-form-item
label=
"减免金额"
prop=
"derateAmt"
>
<el-col
:span=
"20"
>
<el-col
:span=
"20"
>
<el-input
v-model=
"ruleForm.derateAmt"
placeholder=
"请输入
转账
金额"
disabled
></el-input>
<el-input
v-model=
"ruleForm.derateAmt"
placeholder=
"请输入
减免
金额"
disabled
></el-input>
</el-col>
</el-col>
</el-form-item>
</el-form-item>
<el-form-item
label=
"还款凭证"
prop=
"attach"
>
<el-form-item
label=
"还款凭证"
prop=
"attach"
>
...
@@ -109,7 +109,6 @@
...
@@ -109,7 +109,6 @@
<
script
>
<
script
>
import
*
as
moment
from
"moment"
;
import
*
as
moment
from
"moment"
;
export
default
{
export
default
{
name
:
"advanceLoanAmt"
,
name
:
"advanceLoanAmt"
,
props
:
{
props
:
{
...
@@ -152,6 +151,7 @@ export default {
...
@@ -152,6 +151,7 @@ export default {
attach
:
''
,
attach
:
''
,
bankAccount
:
''
,
bankAccount
:
''
,
bankOwner
:
''
,
bankOwner
:
''
,
raiseAmt
:
''
},
},
rules
:
{
rules
:
{
bankAccount
:
[{
required
:
true
,
message
:
'请输入还款银行账号'
,
trigger
:
'blur'
}],
bankAccount
:
[{
required
:
true
,
message
:
'请输入还款银行账号'
,
trigger
:
'blur'
}],
...
...
src/components/byh/componments/ApplyInfo.vue
View file @
9e668103
...
@@ -74,7 +74,6 @@ export default {
...
@@ -74,7 +74,6 @@ export default {
},
},
async
created
()
{
async
created
()
{
if
(
this
.
params
){
if
(
this
.
params
){
console
.
log
(
this
.
params
,
'哈哈'
);
const
{
applyVo
}
=
this
.
params
;
const
{
applyVo
}
=
this
.
params
;
this
.
loanModel
=
applyVo
;
this
.
loanModel
=
applyVo
;
this
.
productNameFormat
(
this
.
loanModel
.
productName
);
this
.
productNameFormat
(
this
.
loanModel
.
productName
);
...
...
src/components/byh/componments/BaseInfo.vue
View file @
9e668103
This diff is collapsed.
Click to expand it.
src/components/byh/componments/BillList.vue
View file @
9e668103
This diff is collapsed.
Click to expand it.
src/components/byh/componments/DevicePayment.vue
0 → 100644
View file @
9e668103
<
template
>
<el-dialog
:append-to-body=
"true"
class=
"client-data-dialog"
title=
"分笔结清扣款"
width=
"40%"
:visible
.
sync=
"visible"
:before-close=
"handleClose"
>
<div>
<div
style=
"margin-left: 50px"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
本金:
{{
this
.
ruleForm
.
raiseAmt
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
起息日:
{{
this
.
ruleForm
.
startDate
|
dateFilter
}}
</div>
</el-col>
<!--
<el-col
:span=
"6"
>
<div
class=
"grid-content bg-purple"
>
还款日:
{{
this
.
ruleForm
.
planAmt
}}
</div>
</el-col>
-->
</el-row>
<br
/>
<el-row
:gutter=
"20"
:center=
"true"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
占用天数:
{{
this
.
ruleForm
.
userDay
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
占用期数:
{{
this
.
ruleForm
.
userMonth
}}
</div>
</el-col>
</el-row>
<br
/>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
还款本金:
{{
this
.
ruleForm
.
principleAmt
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
利息:
{{
this
.
ruleForm
.
interestAmt
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
服务费:
{{
this
.
ruleForm
.
serviceAmt
}}
</div>
</el-col>
</el-row>
<br
/>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
违约金:
{{
this
.
ruleForm
.
breakAmt
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
退款金额:
{{
this
.
ruleForm
.
refundAmt
}}
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
罚息:
{{
this
.
ruleForm
.
overdueAmt
}}
</div>
</el-col>
</el-row>
<br
/>
<el-row
:gutter=
"20"
>
<el-col
:span=
"16"
>
<div
class=
"grid-content bg-purple"
>
总应还金额:
{{
this
.
ruleForm
.
settleAmt
}}
</div>
</el-col>
</el-row>
</div>
<br
/>
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"140px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"选择银行卡"
prop=
"bankAccount"
>
<el-select
clearable
v-model=
"ruleForm.bankAccount"
class=
"select-bank-card"
>
<el-option
v-for=
"item in this.cardList"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"自定义扣款金额"
prop=
"selfMoney"
>
<el-col
:span=
"12"
>
<el-input
v-model=
"selfMoney"
placeholder=
"请输入自定义金额"
clearable
></el-input>
</el-col>
</el-form-item>
</el-form>
</div>
<div
slot=
"footer"
align=
"center"
>
<el-button
@
click=
"handleClose"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"backedTransfer('ruleForm')"
>
确 定
</el-button
>
</div>
</el-dialog>
</
template
>
<
script
>
import
*
as
moment
from
"moment"
;
export
default
{
name
:
"devicePayment"
,
props
:
{
dialogVisible
:
{
type
:
Boolean
,
required
:
true
,
},
loanNo
:
{
type
:
String
,
},
clientNo
:
{
type
:
String
,
},
bizType
:
{
type
:
String
,
},
},
data
()
{
return
{
cardList
:
[],
visible
:
this
.
$props
.
dialogVisible
,
ruleForm
:
{
allAmt
:
""
,
backedAmt
:
""
,
loanNo
:
""
,
bizType
:
""
,
breakAmt
:
""
,
orderNO
:
""
,
clientNo
:
""
,
derateAmt
:
""
,
interestAmt
:
""
,
loanAmt
:
""
,
overdueAmt
:
""
,
principleAmt
:
""
,
serviceAmt
:
""
,
settleAmt
:
""
,
startDate
:
""
,
userDay
:
""
,
userMonth
:
""
,
memo
:
""
,
attach
:
""
,
bankAccount
:
""
,
bankOwner
:
""
,
backAmt
:
""
,
raiseAmt
:
''
//自定义金额
},
selfMoney
:
""
,
rules
:
{
bankAccount
:
[
{
required
:
true
,
message
:
"请选择银行卡"
,
trigger
:
"change"
,
},
],
// selfMoney: [
// {
// required: true,
// message: "请输入扣款金额",
// trigger: "blur",
// },
// ],
},
loginName
:
""
,
backedNo
:
""
,
};
},
filters
:
{
dateFilter
:
function
(
row
)
{
const
date
=
row
;
if
(
typeof
date
===
undefined
||
typeof
date
==
null
)
return
""
;
return
moment
(
date
).
format
(
"YYYY-MM-DD"
);
},
},
created
()
{
this
.
getMoney
();
// this.selfMoney=localStorage.getItem('selfMoney');
// console.log(this.selfMoney,'1');
// localStorage.removeItem('selfMoney');
// console.log(this.selfMoney,'2');
this
.
getData
();
this
.
getBankList
();
this
.
ruleForm
=
{
loanNo
:
this
.
loanNo
,
bizType
:
this
.
bizType
,
clientNo
:
this
.
clientNo
,
selfMoney
:
this
.
selfMoney
};
this
.
bizTypeStr
=
this
.
bizType
;
},
mounted
()
{
this
.
loginName
=
localStorage
.
getItem
(
"loginName"
);
},
methods
:
{
getData
()
{
// 查询当前的基础数据
this
.
$$get
(
"/back/countSettle?loanNo="
+
this
.
loanNo
)
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
!=
200
)
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
handleClose
();
}
else
{
this
.
ruleForm
=
res
.
data
.
result
;
}
})
.
catch
((
error
)
=>
{
this
.
$message
.
error
(
error
||
"网络异常,请稍后。。。"
);
});
},
getMoney
()
{
//获取挂账金额
this
.
$$get
(
`/back/getRestingOrderAmt?loanNo=`
+
this
.
loanNo
).
then
((
res
)
=>
{
if
(
res
.
data
.
code
!=
200
)
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
handleClose
();
}
else
{
this
.
selfMoney
=
res
.
data
.
result
;
}
});
},
getBankList
()
{
//获取银行卡列表
this
.
$$post
(
`/back/bankCardList`
,
{
clientNo
:
this
.
clientNo
,
bizType
:
this
.
bizType
,
loanNo
:
this
.
loanNo
,
})
.
then
((
res
)
=>
{
this
.
cardList
=
res
.
data
.
result
;
})
.
catch
((
error
)
=>
{
this
.
$message
.
error
(
error
||
"网络异常,请稍后。。。"
);
});
},
/** 提交点击 */
backedTransfer
()
{
// if (this.ruleForm.backAmt > this.selfMoney) {
// this.$message.error(
// "操作失败扣款金额已超出剩余应还款金额,请重新确认!"
// );
// this.selfMoney = "";
// return false;
// }
if
(
this
.
selfMoney
==
''
){
this
.
$message
.
error
(
'请输入扣款金额'
);
return
false
;
}
this
.
ruleForm
.
backAmt
=
this
.
selfMoney
;
this
.
$confirm
(
"是否确认分笔扣款?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"primary"
,
})
.
then
(()
=>
{
this
.
$$post
(
`/back/createBackedSettle`
,
this
.
buildParam
())
.
then
((
res
)
=>
{
// console.log(res, "确定按钮");
if
(
res
.
data
.
code
!=
200
)
{
this
.
$message
.
error
(
res
.
data
.
message
);
return
;
}
this
.
$message
({
message
:
"操作成功"
,
type
:
"success"
});
this
.
handleClose
();
this
.
$emit
(
"callback"
);
})
.
catch
((
err
)
=>
{
alert
(
"error!"
);
});
})
.
catch
(()
=>
{
this
.
$message
({
type
:
"info"
,
message
:
"已取消"
,
});
});
},
//参数
buildParam
()
{
return
{
loanNo
:
this
.
ruleForm
.
loanNo
,
bizType
:
this
.
bizTypeStr
,
backAmt
:
this
.
selfMoney
,
creator
:
this
.
loginName
,
bankAccount
:
this
.
ruleForm
.
bankAccount
,
periodNo
:
this
.
ruleForm
.
userMonth
,
rePayType
:
"BYSTEP"
,
restingOrderEnum
:
"YES"
,
};
},
/** 关闭处理 */
handleClose
()
{
this
.
visible
=
false
;
setTimeout
(()
=>
{
this
.
$emit
(
"update:dialogVisible"
,
false
);
},
300
);
},
},
};
</
script
>
<
style
scoped
>
</
style
>
src/components/byh/componments/FeedList.vue
View file @
9e668103
...
@@ -14,8 +14,9 @@
...
@@ -14,8 +14,9 @@
stripe
stripe
style=
"width: 100%;"
>
style=
"width: 100%;"
>
<el-table-column
prop=
"feedNo"
width=
"180"
align=
"center"
label=
"客服反馈编号"
></el-table-column>
<el-table-column
prop=
"feedNo"
width=
"180"
align=
"center"
label=
"客服反馈编号"
></el-table-column>
<el-table-column
prop=
"clientName"
align=
"center"
label=
"客户姓名"
></el-table-column>
<el-table-column
prop=
"feedProductStr"
align=
"center"
label=
"产品名称"
></el-table-column>
<el-table-column
prop=
"clientCell"
align=
"center"
label=
"客户手机号"
></el-table-column>
<!--
<el-table-column
prop=
"clientName"
align=
"center"
label=
"客户姓名"
></el-table-column>
-->
<!--
<el-table-column
prop=
"clientCell"
align=
"center"
label=
"客户手机号"
></el-table-column>
-->
<el-table-column
prop=
"feedType"
align=
"center"
label=
"反馈类型"
></el-table-column>
<el-table-column
prop=
"feedType"
align=
"center"
label=
"反馈类型"
></el-table-column>
<el-table-column
prop=
"feedContent"
align=
"center"
label=
"反馈内容"
></el-table-column>
<el-table-column
prop=
"feedContent"
align=
"center"
label=
"反馈内容"
></el-table-column>
<el-table-column
prop=
"feedVoucher"
width=
"180"
align=
"center"
label=
"相关凭证"
>
<el-table-column
prop=
"feedVoucher"
width=
"180"
align=
"center"
label=
"相关凭证"
>
...
@@ -121,10 +122,11 @@ export default {
...
@@ -121,10 +122,11 @@ export default {
},
},
async
created
()
{
async
created
()
{
const
params
=
this
.
params
;
const
params
=
this
.
params
;
console
.
log
(
this
.
params
,
'909090'
);
this
.
dialogTitle
=
'意见反馈'
this
.
dialogTitle
=
'意见反馈'
this
.
form
.
clientCell
=
params
.
phoneNo
;
this
.
form
.
clientCell
=
params
.
phoneNo
;
this
.
form
.
loanNo
=
params
.
loanNo
;
this
.
form
.
feedProduct
=
params
.
clientProductName
;
this
.
form
.
feedProduct
=
params
.
clientProductName
;
this
.
form
.
feedSource
=
'CUSTOMER'
;
this
.
form
.
feedSource
=
'CUSTOMER'
;
this
.
form
.
sort
=
'id desc'
;
this
.
form
.
sort
=
'id desc'
;
...
@@ -140,13 +142,14 @@ export default {
...
@@ -140,13 +142,14 @@ export default {
handleTabClick
()
{
handleTabClick
()
{
this
.
dialogTitle
=
'意见反馈'
;
this
.
dialogTitle
=
'意见反馈'
;
this
.
visible
=
true
;
this
.
visible
=
true
;
const
{
clientProductName
,
clientNo
}
=
this
.
params
;
const
{
clientProductName
,
clientNo
,
loanNo
}
=
this
.
params
;
this
.
dialogParams
=
{
this
.
dialogParams
=
{
feedType
:
''
,
feedType
:
''
,
feedStatus
:
''
,
feedStatus
:
''
,
feedContent
:
''
,
feedContent
:
''
,
feedVoucher
:[],
feedVoucher
:[],
clientNo
,
clientNo
,
loanNo
,
feedProduct
:
clientProductName
feedProduct
:
clientProductName
}
}
...
...
src/components/byh/componments/LoanDetail copy.vue
deleted
100644 → 0
View file @
06527d13
<
template
>
<el-drawer
:title=
"title"
size=
"70%"
:wrapperClosable=
"false"
:visible
.
sync=
"dialogVisible"
direction=
"rtl"
:before-close=
"handleClose"
>
<div
class=
"page"
>
<div
class=
"loan-detail"
>
<el-tabs
class=
"loan-tabs"
tab-position=
"left"
v-model=
"activeComponents"
@
tab-click=
"handleTabClick"
>
<el-tab-pane
name=
"ApplyInfo"
label=
"申请信息"
></el-tab-pane>
<el-tab-pane
v-if=
"$permissionUtils.rolePermission('customBoss')"
name=
"ContractList"
label=
"借款合同"
></el-tab-pane>
<el-tab-pane
name=
"BillList"
label=
"账单详情"
></el-tab-pane>
<el-tab-pane
name=
"RePayList"
label=
"还款情况"
></el-tab-pane>
<el-tab-pane
name=
"ReliefList"
label=
"减免记录"
></el-tab-pane>
</el-tabs>
<div
class=
"loan-detail-content"
>
<template
v-if=
"visible"
>
<component
@
handleClose=
"visible = false"
:is=
"activeComponents"
:params=
"items"
:title=
"dTitle"
/>
</
template
>
</div>
</div>
</div>
</el-drawer>
</template>
<
script
>
import
BlockHeader
from
"@/components/byh/componments/blockHeader"
;
import
ApplyInfo
from
"./ApplyInfo"
;
import
ContractList
from
"./ContractList"
;
import
RePayList
from
"./RePayList"
;
import
BillList
from
"./BillList"
;
import
ReliefList
from
"./ReliefList"
;
import
*
as
moment
from
"moment"
;
export
default
{
name
:
"AddUserServiceDialog"
,
components
:
{
BlockHeader
,
ApplyInfo
,
ContractList
,
RePayList
,
BillList
,
ReliefList
,
},
props
:
{
dialogVisible
:
{
type
:
Boolean
,
required
:
true
,
},
title
:
{
type
:
String
,
required
:
true
,
},
params
:
{
type
:
Object
,
required
:
true
,
},
},
data
()
{
return
{
visible
:
false
,
activeComponents
:
""
,
dTitle
:
""
,
active
:
""
,
items
:
{},
loan
:
{},
};
},
async
created
()
{
if
(
this
.
params
)
{
const
{
loanNo
}
=
this
.
params
;
this
.
items
=
this
.
params
;
await
this
.
initLoanInfo
(
loanNo
);
}
},
methods
:
{
headerStyle
()
{
return
"tableHeaderStyle"
;
},
//根据借款信息查借款所有信息
async
initLoanInfo
(
loanNo
)
{
const
res
=
await
this
.
$$get
(
"/detail/customer/"
+
loanNo
);
const
{
success
,
result
}
=
res
.
data
;
if
(
success
&&
result
!=
null
)
{
this
.
loan
=
result
;
this
.
handleTabClick
({
name
:
"ApplyInfo"
,
label
:
"申请信息"
,
});
}
},
/*日期*/
dateFormats
:
function
(
row
,
column
)
{
let
date
=
row
[
column
.
property
];
if
(
date
===
undefined
)
return
""
;
return
moment
(
date
).
format
(
"YYYY-MM-DD"
);
},
handleClose
()
{
this
.
$emit
(
"handleClose"
);
},
// 切换选项卡
handleTabClick
(
tab
)
{
this
.
activeComponents
=
tab
.
name
;
this
.
visible
=
true
;
this
.
dTitle
=
tab
.
label
;
this
.
items
=
{
...
this
.
loan
,
...
this
.
params
,
};
},
},
};
</
script
>
<
style
scoped
lang=
"less"
>
.page,
.loan-detail {
height: 100%;
overflow: auto;
}
.page {
padding-right: 0;
}
.loan-detail {
display: flex;
position: relative;
.loan-tabs {
position: sticky;
top: 0;
right: 0;
width: 100px;
}
.loan-detail-content {
width: calc(100% - 100px);
box-sizing: border-box;
padding-left: 20px;
} .loan-detail-content {
width: calc(100% - 100px);
box-sizing: border-box;
padding-left: 20px;
}
}
</
style
>
src/components/byh/componments/LoanDetail.vue
View file @
9e668103
...
@@ -2,35 +2,86 @@
...
@@ -2,35 +2,86 @@
<!-- 修改内容 -->
<!-- 修改内容 -->
<el-drawer
<el-drawer
:title=
"title"
:title=
"title"
size=
"
7
0%"
size=
"
8
0%"
:wrapperClosable=
"false"
:wrapperClosable=
"false"
:visible
.
sync=
"dialogVisible"
:visible
.
sync=
"dialogVisible"
direction=
"rtl"
direction=
"rtl"
:before-close=
"handleClose"
:before-close=
"handleClose"
>
>
<div
class=
"page"
>
<div
class=
"page"
>
<div
class=
"loan-detail"
>
<div
class=
"loan-detail"
>
<el-collapse
v-model=
"activeNames"
@
change=
"handleChange"
>
<el-collapse
v-model=
"activeNames"
@
change=
"handleChange"
>
<el-collapse-item
title=
"申请信息"
name=
"1"
>
<el-collapse-item
title=
"申请信息"
name=
"1"
>
<ApplyInfo
:params=
"items"
></ApplyInfo>
<!--
<ApplyInfo
:params=
"applyInfo"
></ApplyInfo>
-->
</el-collapse-item>
<div
class=
"page-com"
>
<el-collapse-item
title=
"借款合同"
name=
"2"
>
<!--
<block-header
:title=
"title"
></block-header>
-->
<ContractList
:params=
"items"
<table
class=
"table"
>
v-if=
"$permissionUtils.rolePermission('customBoss')"
<tr>
></ContractList>
<td>
申请日期:
</td>
</el-collapse-item>
<td>
{{
loanModel
.
gmtCreated
|
dateFilter
}}
</td>
<el-collapse-item
title=
"账单详情"
name=
"3"
>
<td>
放款日期:
</td>
<BillList
:params=
"items"
></BillList>
<td>
{{
loanModel
.
raiseDate
|
dateFilter
}}
</td>
</el-collapse-item>
<td>
项目名称:
</td>
<el-collapse-item
title=
"还款情况"
name=
"4"
>
<td>
{{
loanModel
.
productNameStr
}}
</td>
<RePayList
:params=
"items"
></RePayList>
<!--
<el-table-column
align=
"center"
prop=
"productName"
label=
"产品名称"
:formatter=
"productNameFormat"
></el-table-column>
-->
</el-collapse-item>
</tr>
<el-collapse-item
title=
"减免记录"
name=
"5"
>
<tr>
<ReliefList
:params=
"items"
></ReliefList>
<td>
总应还金额:
</td>
</el-collapse-item>
<td>
{{
loanModel
.
loanAmt
}}
</td>
</el-collapse>
<td>
申请期数:
</td>
<td>
{{
loanModel
.
loanLimit
}}
</td>
<td>
<span
v-if=
"loanModel.cardBankAccount"
>
放款银行卡(所属银行):
</span
>
<span
v-else
>
放款银行卡(所属银行)
</span>
</td>
<td>
<span
v-if=
"loanModel.cardBankAccount"
>
{{
loanModel
.
cardBankAccount
}}
(
{{
loanModel
.
cardBankCodeStr
}}
)
</span
>
<span
v-else
>
{{
loanModel
.
bankAccount
}}
</span>
</td>
</tr>
<tr>
<td>
本金:
</td>
<td>
{{
loanModel
.
raiseAmt
}}
</td>
<td>
总服务费:
</td>
<td>
{{
loanModel
.
serviceAmt
}}
</td>
<td>
总利息:
</td>
<td>
{{
loanModel
.
rateAmt
}}
</td>
</tr>
<tr>
<td>
总手续费:
</td>
<td
colspan=
"5"
>
{{
loanModel
.
accountAmt
}}
</td>
</tr>
</table>
</div>
</el-collapse-item>
<!-- 组件 -->
<el-collapse-item
title=
"借款合同"
name=
"2"
>
<ContractList
:params=
"applyInfo"
v-if=
"$permissionUtils.rolePermission('customBoss')"
></ContractList>
</el-collapse-item>
<el-collapse-item
title=
"账单详情"
name=
"3"
>
<BillList
:params=
"applyInfo"
></BillList>
</el-collapse-item>
<el-collapse-item
title=
"还款情况"
name=
"4"
>
<RePayList
:params=
"applyInfo"
></RePayList>
</el-collapse-item>
<el-collapse-item
title=
"减免记录"
name=
"5"
>
<ReliefList
:params=
"applyInfo"
></ReliefList>
</el-collapse-item>
<el-collapse-item
title=
"服务费退款记录"
name=
"6"
>
<ServiceRefund
:params=
"applyInfo"
></ServiceRefund>
</el-collapse-item>
</el-collapse>
</div>
</div>
</div>
</div>
</el-drawer>
</el-drawer>
</
template
>
</
template
>
...
@@ -41,6 +92,7 @@ import ContractList from "./ContractList";
...
@@ -41,6 +92,7 @@ import ContractList from "./ContractList";
import
RePayList
from
"./RePayList"
;
import
RePayList
from
"./RePayList"
;
import
BillList
from
"./BillList"
;
import
BillList
from
"./BillList"
;
import
ReliefList
from
"./ReliefList"
;
import
ReliefList
from
"./ReliefList"
;
import
ServiceRefund
from
"./ServiceRefund"
;
import
*
as
moment
from
"moment"
;
import
*
as
moment
from
"moment"
;
export
default
{
export
default
{
...
@@ -52,15 +104,16 @@ export default {
...
@@ -52,15 +104,16 @@ export default {
RePayList
,
RePayList
,
BillList
,
BillList
,
ReliefList
,
ReliefList
,
ServiceRefund
},
},
props
:
{
props
:
{
dialogVisible
:
{
dialogVisible
:
{
type
:
Boolean
,
type
:
Boolean
,
required
:
true
,
required
:
true
,
},
},
title
:{
title
:
{
type
:
String
,
type
:
String
,
required
:
true
,
required
:
true
,
},
},
params
:
{
params
:
{
type
:
Object
,
type
:
Object
,
...
@@ -72,19 +125,30 @@ export default {
...
@@ -72,19 +125,30 @@ export default {
visible
:
false
,
visible
:
false
,
active
:
""
,
active
:
""
,
items
:
{},
items
:
{},
loanModel
:
{},
applyInfo
:
{},
loan
:
{},
loan
:
{},
activeNames
:
[
"1"
],
activeNames
:
[
"1"
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
],
};
};
},
},
filters
:
{
dateFilter
:
function
(
row
)
{
const
exp
=
row
;
if
(
!
exp
||
typeof
exp
===
undefined
||
typeof
exp
===
null
)
{
return
""
;
}
return
moment
(
exp
).
format
(
"YYYY-MM-DD"
);
},
},
async
created
()
{
async
created
()
{
if
(
this
.
params
)
{
if
(
this
.
params
)
{
// console.log(this.params,'自营');
const
{
loanNo
}
=
this
.
params
;
const
{
loanNo
}
=
this
.
params
;
this
.
items
=
this
.
params
;
this
.
applyInfo
=
this
.
params
;
console
.
log
(
this
.
items
,
'111'
);
await
this
.
initLoanInfo
(
loanNo
);
await
this
.
initLoanInfo
(
loanNo
);
}
}
},
},
methods
:
{
methods
:
{
headerStyle
()
{
headerStyle
()
{
return
"tableHeaderStyle"
;
return
"tableHeaderStyle"
;
...
@@ -93,13 +157,10 @@ export default {
...
@@ -93,13 +157,10 @@ export default {
async
initLoanInfo
(
loanNo
)
{
async
initLoanInfo
(
loanNo
)
{
const
res
=
await
this
.
$$get
(
"/detail/customer/"
+
loanNo
);
const
res
=
await
this
.
$$get
(
"/detail/customer/"
+
loanNo
);
const
{
success
,
result
}
=
res
.
data
;
const
{
success
,
result
}
=
res
.
data
;
console
.
log
(
res
.
data
,
'222'
);
console
.
log
(
res
ult
,
"222"
);
if
(
success
&&
result
!=
null
)
{
if
(
success
&&
result
!=
null
)
{
this
.
loan
=
result
;
this
.
loan
=
result
;
this
.
handleChange
({
this
.
loanModel
=
result
.
applyVo
;
name
:
"ApplyInfo"
,
label
:
"申请信息"
,
});
}
}
},
},
/*日期*/
/*日期*/
...
@@ -113,8 +174,8 @@ export default {
...
@@ -113,8 +174,8 @@ export default {
},
},
// 切换选项卡
// 切换选项卡
handleChange
(
val
)
{
handleChange
(
val
)
{
console
.
log
(
val
,
'333'
);
console
.
log
(
val
);
this
.
items
=
{
this
.
applyInfo
=
{
...
this
.
loan
,
...
this
.
loan
,
...
this
.
params
,
...
this
.
params
,
};
};
...
@@ -140,7 +201,7 @@ export default {
...
@@ -140,7 +201,7 @@ export default {
position: relative;
position: relative;
.el-collapse-item {
.el-collapse-item {
width:100%;
width:
100%;
box-sizing: border-box;
box-sizing: border-box;
padding-left: 20px;
padding-left: 20px;
}
}
...
...
src/components/byh/componments/LoanInfo.vue
View file @
9e668103
...
@@ -12,8 +12,8 @@
...
@@ -12,8 +12,8 @@
<el-table-column
align=
"center"
prop=
"gmtCreated"
label=
"申请日期"
:formatter=
"dateFormats"
></el-table-column>
<el-table-column
align=
"center"
prop=
"gmtCreated"
label=
"申请日期"
:formatter=
"dateFormats"
></el-table-column>
<el-table-column
align=
"center"
prop=
"startDate"
label=
"放款日期"
:formatter=
"dateFormats"
></el-table-column>
<el-table-column
align=
"center"
prop=
"startDate"
label=
"放款日期"
:formatter=
"dateFormats"
></el-table-column>
<el-table-column
align=
"center"
prop=
"raiseAmt"
label=
"放款本金"
></el-table-column>
<el-table-column
align=
"center"
prop=
"raiseAmt"
label=
"放款本金"
></el-table-column>
<el-table-column
align=
"center"
prop=
"capitalCode"
label=
"放款资方"
<el-table-column
align=
"center"
prop=
"capitalCode
Str
"
label=
"放款资方"
:formatter=
"capitalCodeFormat"
></el-table-column>
></el-table-column>
<el-table-column
align=
"center"
prop=
"status"
label=
"借款单状态"
>
<el-table-column
align=
"center"
prop=
"status"
label=
"借款单状态"
>
<template
slot-scope=
"scope"
>
<template
slot-scope=
"scope"
>
<el-tag
type=
"success"
v-if=
"scope.row.status==='AUDITED'"
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
<el-tag
type=
"success"
v-if=
"scope.row.status==='AUDITED'"
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
...
@@ -25,7 +25,7 @@
...
@@ -25,7 +25,7 @@
<el-tag
type=
"warning"
v-else-if=
"scope.row.status==='SUBMITED'"
size=
"small"
>
<el-tag
type=
"warning"
v-else-if=
"scope.row.status==='SUBMITED'"
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
{{
loanStatusFormat
(
scope
.
row
)
}}
</el-tag>
</el-tag>
<el-tag
effect
=
"warning"
v-else-if=
"scope.row.status==='BACKING'"
size=
"small"
>
<el-tag
type
=
"warning"
v-else-if=
"scope.row.status==='BACKING'"
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
{{
loanStatusFormat
(
scope
.
row
)
}}
</el-tag>
</el-tag>
<el-tag
type=
"info"
v-else
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
</el-tag>
<el-tag
type=
"info"
v-else
size=
"small"
>
{{
loanStatusFormat
(
scope
.
row
)
}}
</el-tag>
...
@@ -100,7 +100,7 @@ export default {
...
@@ -100,7 +100,7 @@ export default {
}
}
},
},
async
created
()
{
async
created
()
{
console
.
log
(
this
.
params
,
999
);
//
console.log(this.params, 999);
const
{
clientNo
,
clientProductName
}
=
this
.
params
;
const
{
clientNo
,
clientProductName
}
=
this
.
params
;
const
res
=
await
this
.
$$post
(
'/loan/getLoanListByClientNo/'
,
{
productName
:
clientProductName
,
clientNo
:
clientNo
});
const
res
=
await
this
.
$$post
(
'/loan/getLoanListByClientNo/'
,
{
productName
:
clientProductName
,
clientNo
:
clientNo
});
const
{
success
,
result
}
=
res
.
data
;
const
{
success
,
result
}
=
res
.
data
;
...
@@ -124,12 +124,12 @@ export default {
...
@@ -124,12 +124,12 @@ export default {
return
this
.
$enumUtils
.
toMsg
(
'LoanStatuEnums'
,
status
);
return
this
.
$enumUtils
.
toMsg
(
'LoanStatuEnums'
,
status
);
},
},
capitalCodeFormat
:
function
(
row
,
column
)
{
capitalCodeFormat
:
function
(
row
,
column
)
{
let
capitalCode
=
row
[
'capitalCode
'
];
let
capitalCode
Str
=
row
[
'capitalCodeStr
'
];
return
this
.
$enumUtils
.
toMsg
(
'CapitalEnums'
,
capitalCode
);
return
this
.
$enumUtils
.
toMsg
(
'CapitalEnums'
,
capitalCode
Str
);
},
},
// 切换选项卡
// 切换选项卡
handleClick
(
row
)
{
handleClick
(
row
)
{
console
.
log
(
row
,
'一行信息'
);
//
console.log(row, '一行信息');
this
.
visible
=
true
;
this
.
visible
=
true
;
this
.
title
=
'借款详情'
;
this
.
title
=
'借款详情'
;
this
.
items
=
{
this
.
items
=
{
...
...
src/components/byh/componments/Messages.vue
0 → 100644
View file @
9e668103
<
template
>
<div
class=
"page-dialog"
>
<div
class=
"tables"
>
<block-header
:title=
"title"
></block-header>
<el-table
border
size=
"mini"
:highlight-current-row=
"true"
:header-row-class-name=
"headerStyle"
:data=
"data"
stripe
style=
"width: 100%"
:default-sort=
"
{ prop: 'sendTime', order: 'descending' }"
>
<el-table-column
align=
"center"
prop=
"bizNo"
width=
"160"
label=
"ID/编号"
></el-table-column>
<el-table-column
align=
"center"
prop=
"smsType"
label=
"短信类型"
></el-table-column>
<el-table-column
align=
"center"
prop=
"content"
width=
"350"
label=
"短信内容"
></el-table-column>
<el-table-column
align=
"center"
prop=
"sendStateStr"
label=
"发送结果"
></el-table-column>
<el-table-column
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
<el-table-column
align=
"center"
prop=
"sendTime"
width=
"150"
:formatter=
"dateFormat"
label=
"发送时间"
></el-table-column>
</el-table>
</div>
<div
class=
"pages"
>
<el-pagination
background
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
:current-page
.
sync=
"form.current"
:page-sizes=
"[10, 20, 50, 100]"
:page-size=
"form.size"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"form.total"
>
</el-pagination>
</div>
</div>
</
template
>
<
script
>
import
*
as
moment
from
"moment"
;
export
default
{
props
:
{
dialogVisible
:
{
type
:
Boolean
,
required
:
true
,
},
title
:
{
type
:
String
,
required
:
true
,
},
params
:
{
type
:
Object
,
required
:
true
,
},
},
data
()
{
return
{
form
:
{
current
:
1
,
size
:
10
,
total
:
1
,
cell
:
""
,
productName
:
""
},
data
:
[],
};
},
async
created
()
{
const
params
=
this
.
params
;
// console.log(params,'手机号');
this
.
form
.
cell
=
params
.
clientCell
;
this
.
form
.
productName
=
params
.
clientProductName
;
await
this
.
init
();
},
methods
:
{
headerStyle
()
{
return
"tableHeaderStyle"
;
},
async
init
()
{
const
res
=
await
this
.
$$post
(
"/detail/getSmsInfo"
,
this
.
form
);
const
{
success
,
result
}
=
res
.
data
;
if
(
success
&&
result
!==
null
)
{
this
.
data
=
result
.
data
;
this
.
form
.
total
=
result
.
total
;
}
},
/*日期*/
dateFormat
:
function
(
row
,
column
)
{
let
date
=
row
[
column
.
property
]
if
(
date
===
undefined
)
{
return
''
}
return
moment
(
date
).
format
(
"YYYY-MM-DD HH:mm:ss"
)
},
handleClose
()
{
this
.
$emit
(
"handleClose"
);
},
handleCurrentChange
(
e
)
{
this
.
form
.
current
=
e
;
this
.
init
();
},
handleSizeChange
(
e
)
{
this
.
form
.
size
=
e
this
.
form
.
current
=
1
;
this
.
init
();
},
},
};
</
script
>
<
style
>
.tables
{
margin-bottom
:
20px
;
}
.pages
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
}
</
style
>
\ No newline at end of file
src/components/byh/componments/OffineTransfer.vue
View file @
9e668103
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
:append-to-body=
"true"
:append-to-body=
"true"
class=
"client-data-dialog"
class=
"client-data-dialog"
title=
"创建转账还款单"
title=
"创建转账还款单"
width=
"
4
0%"
width=
"
6
0%"
:visible
.
sync=
"visible"
:visible
.
sync=
"visible"
:before-close=
"handleClose"
>
:before-close=
"handleClose"
>
...
...
src/components/byh/componments/OperateLog.vue
View file @
9e668103
...
@@ -65,7 +65,9 @@ export default {
...
@@ -65,7 +65,9 @@ export default {
},
},
async
created
()
{
async
created
()
{
const
params
=
this
.
params
;
const
params
=
this
.
params
;
// console.log(params,'params');
this
.
form
.
clientNo
=
params
.
clientNo
;
this
.
form
.
clientNo
=
params
.
clientNo
;
this
.
form
.
productName
=
params
.
clientProductName
;
await
this
.
init
()
await
this
.
init
()
},
},
methods
:
{
methods
:
{
...
...
src/components/byh/componments/ProtocolSettled.vue
View file @
9e668103
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
<div
style=
"margin-left:50px"
>
<div
style=
"margin-left:50px"
>
<el-row
:gutter=
"20"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
本金:
{{
this
.
ruleForm
.
principl
eAmt
}}
</div>
<div
class=
"grid-content bg-purple"
>
本金:
{{
this
.
ruleForm
.
rais
eAmt
}}
</div>
</el-col>
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
<div
class=
"grid-content bg-purple"
>
起息日:
{{
this
.
ruleForm
.
startDate
|
dateFilter
}}
</div>
<div
class=
"grid-content bg-purple"
>
起息日:
{{
this
.
ruleForm
.
startDate
|
dateFilter
}}
</div>
...
@@ -126,6 +126,7 @@ export default {
...
@@ -126,6 +126,7 @@ export default {
attach
:
''
,
attach
:
''
,
bankAccount
:
''
,
bankAccount
:
''
,
bankOwner
:
''
,
bankOwner
:
''
,
raiseAmt
:
''
,
},
},
bizTypeStr
:
''
,
bizTypeStr
:
''
,
rules
:
{
rules
:
{
...
@@ -157,6 +158,8 @@ export default {
...
@@ -157,6 +158,8 @@ export default {
loanNo
:
this
.
loanNo
,
loanNo
:
this
.
loanNo
,
bizType
:
this
.
bizType
,
bizType
:
this
.
bizType
,
clientNo
:
this
.
clientNo
,
clientNo
:
this
.
clientNo
,
periodNo
:
this
.
periodNo
,
};
};
this
.
bizTypeStr
=
this
.
bizType
;
this
.
bizTypeStr
=
this
.
bizType
;
...
@@ -167,6 +170,7 @@ export default {
...
@@ -167,6 +170,7 @@ export default {
this
.
handleClose
();
this
.
handleClose
();
}
else
{
}
else
{
this
.
ruleForm
=
res
.
data
.
result
;
this
.
ruleForm
=
res
.
data
.
result
;
console
.
log
(
this
.
ruleForm
,
'哈哈哈'
);
}
}
}).
catch
(
error
=>
{
}).
catch
(
error
=>
{
...
@@ -220,7 +224,9 @@ export default {
...
@@ -220,7 +224,9 @@ export default {
backAmt
:
this
.
ruleForm
.
settleAmt
,
backAmt
:
this
.
ruleForm
.
settleAmt
,
creator
:
localStorage
.
getItem
(
"userName"
),
creator
:
localStorage
.
getItem
(
"userName"
),
bankAccount
:
this
.
ruleForm
.
bankAccount
,
bankAccount
:
this
.
ruleForm
.
bankAccount
,
periodNo
:
this
.
ruleForm
.
periodNo
,
rePayType
:
'BYALL'
,
rePayType
:
'BYALL'
,
restingOrderEnum
:
'NO'
};
};
},
},
...
...
src/components/byh/componments/ProtocolSettledOne.vue
View file @
9e668103
...
@@ -25,12 +25,24 @@
...
@@ -25,12 +25,24 @@
<el-input
v-model=
"ruleForm.remainAmt"
placeholder=
"请输入转账金额"
disabled
></el-input>
<el-input
v-model=
"ruleForm.remainAmt"
placeholder=
"请输入转账金额"
disabled
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择银行卡"
prop=
"bankAccount"
>
<el-form-item
label=
"选择银行卡"
prop=
"bankAccount"
>
<el-select
clearable
v-model=
"ruleForm.bankAccount"
class=
"select-bank-card"
>
<el-select
clearable
v-model=
"ruleForm.bankAccount"
class=
"select-bank-card"
>
<el-option
<el-option
v-for=
"item in this.cardList"
v-for=
"item in this.cardList"
:key=
"item.value"
:key=
"item.value"
@
click
.
native=
"changeCard(item)"
:label=
"item.label"
:label=
"item.label"
:value=
"item.value"
></el-option>
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"选择支付渠道"
prop=
"paymentChannel"
>
<el-select
clearable
v-model=
"ruleForm.paymentChannel"
class=
"select-bank-card"
>
<el-option
v-for=
"item in this.channelList"
:key=
"item.payChannelApi"
:label=
"item.message"
:value=
"item.payChannelApi"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -67,6 +79,9 @@ export default {
...
@@ -67,6 +79,9 @@ export default {
planAmt
:
{
planAmt
:
{
type
:
Number
type
:
Number
},
},
loanSign
:{
type
:
String
}
},
},
data
()
{
data
()
{
...
@@ -75,7 +90,6 @@ export default {
...
@@ -75,7 +90,6 @@ export default {
submitLoading
:
false
submitLoading
:
false
},
},
visible
:
this
.
$props
.
dialogVisible
,
visible
:
this
.
$props
.
dialogVisible
,
ruleForm
:
{
ruleForm
:
{
periodNo
:
''
,
periodNo
:
''
,
orderNo
:
''
,
orderNo
:
''
,
...
@@ -89,16 +103,20 @@ export default {
...
@@ -89,16 +103,20 @@ export default {
attach
:
''
,
attach
:
''
,
planNo
:
''
,
planNo
:
''
,
bankAccount
:
''
,
bankAccount
:
''
,
paymentChannel
:
''
,
bankOwner
:
''
,
bankOwner
:
''
,
backedAmt
:
''
,
backedAmt
:
''
,
memo
:
''
,
memo
:
''
,
loanSign
:
""
,
},
},
rules
:
{
rules
:
{
bankAccount
:
[{
required
:
true
,
message
:
'支付银行卡不能为空'
,
trigger
:
'blur'
}],
bankAccount
:
[{
required
:
true
,
message
:
'支付银行卡不能为空'
,
trigger
:
'blur'
}],
// paymentChannel: [{required: true, message: '支付渠道不能为空', trigger: 'blur'}],
backAmt
:
[{
required
:
true
,
message
:
"扣款金额不能为空"
,
trigger
:
'blur'
}],
backAmt
:
[{
required
:
true
,
message
:
"扣款金额不能为空"
,
trigger
:
'blur'
}],
},
},
loginName
:
''
,
loginName
:
''
,
cardList
:
[],
cardList
:
[],
channelList
:[]
}
}
},
},
...
@@ -111,12 +129,14 @@ export default {
...
@@ -111,12 +129,14 @@ export default {
periodNo
:
this
.
periodNo
,
periodNo
:
this
.
periodNo
,
remainAmt
:
this
.
remainAmt
,
remainAmt
:
this
.
remainAmt
,
planAmt
:
this
.
planAmt
,
planAmt
:
this
.
planAmt
,
loanSign
:
this
.
loanSign
};
};
// console.log(this.$props,'hhhhhhhhhhh');
//获取银行卡列表
//获取银行卡列表
this
.
$$post
(
`/back/bankCardList`
,
{
this
.
$$post
(
`/back/bankCardList`
,
{
...
this
.
ruleForm
...
this
.
ruleForm
}).
then
(
res
=>
{
}).
then
(
res
=>
{
console
.
log
(
res
,
'银行卡'
);
this
.
cardList
=
res
.
data
.
result
;
this
.
cardList
=
res
.
data
.
result
;
}).
catch
(
error
=>
{
}).
catch
(
error
=>
{
this
.
$message
.
error
(
error
||
'网络异常,请稍后。。。'
);
this
.
$message
.
error
(
error
||
'网络异常,请稍后。。。'
);
...
@@ -146,10 +166,15 @@ export default {
...
@@ -146,10 +166,15 @@ export default {
}
}
})
})
},
},
//银行卡对应的支付渠道
refresh
(){
changeCard
(
val
){
console
.
log
(
val
.
payChannelApiVOS
,
'12131232132'
);
this
.
channelList
=
val
.
payChannelApiVOS
;
if
(
val
.
payChannelApiVOS
.
length
==
0
){
this
.
ruleForm
.
paymentChannel
=
""
;
}
},
},
//参数
//参数
buildParam
()
{
buildParam
()
{
return
{
return
{
...
@@ -158,8 +183,10 @@ export default {
...
@@ -158,8 +183,10 @@ export default {
creator
:
localStorage
.
getItem
(
"userName"
),
creator
:
localStorage
.
getItem
(
"userName"
),
bankAccount
:
this
.
ruleForm
.
bankAccount
,
bankAccount
:
this
.
ruleForm
.
bankAccount
,
backAmt
:
this
.
ruleForm
.
remainAmt
,
backAmt
:
this
.
ruleForm
.
remainAmt
,
periodNo
:
this
.
ruleForm
.
periodNo
,
rePayType
:
'BYONE'
,
rePayType
:
'BYONE'
,
periodNo
:
this
.
ruleForm
.
periodNo
,
restingOrderEnum
:
'NO'
,
payChannelApi
:
this
.
ruleForm
.
paymentChannel
};
};
},
},
...
...
src/components/byh/componments/RePayList.vue
View file @
9e668103
...
@@ -28,7 +28,7 @@
...
@@ -28,7 +28,7 @@
>
>
</el-table-column>
</el-table-column>
<el-table-column
align=
"center"
prop=
"creator"
label=
"创建人"
></el-table-column>
<el-table-column
align=
"center"
prop=
"creator"
label=
"创建人"
></el-table-column>
<el-table-column
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
<el-table-column
:show-overflow-tooltip=
"true"
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
</el-table>
</el-table>
</div>
</div>
<div
class=
"pages"
>
<div
class=
"pages"
>
...
@@ -91,7 +91,7 @@ export default {
...
@@ -91,7 +91,7 @@ export default {
async
created
()
{
async
created
()
{
if
(
this
.
params
){
if
(
this
.
params
){
const
params
=
this
.
params
;
const
params
=
this
.
params
;
console
.
log
(
params
,
'哈哈3'
)
//
console.log(params,'哈哈3')
this
.
form
.
bizNo
=
params
.
loanNo
;
this
.
form
.
bizNo
=
params
.
loanNo
;
await
this
.
init
()
await
this
.
init
()
}
}
...
@@ -112,8 +112,9 @@ export default {
...
@@ -112,8 +112,9 @@ export default {
const
res
=
await
this
.
$$post
(
'/back/detailPageList'
,
parB
);
const
res
=
await
this
.
$$post
(
'/back/detailPageList'
,
parB
);
const
{
success
,
result
}
=
res
.
data
;
const
{
success
,
result
}
=
res
.
data
;
if
(
success
&&
result
!==
null
)
{
if
(
success
&&
result
!==
null
)
{
const
{
data
,
total
}
=
result
const
{
data
,
total
}
=
result
;
this
.
data
=
data
;
this
.
data
=
data
;
// console.log(this.data[0].backedNo,'data');
this
.
form
.
total
=
total
;
this
.
form
.
total
=
total
;
}
}
},
},
...
...
src/components/byh/componments/ReliefList.vue
View file @
9e668103
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
>
>
</el-table-column>
</el-table-column>
<el-table-column
align=
"center"
prop=
"creator"
label=
"创建人"
></el-table-column>
<el-table-column
align=
"center"
prop=
"creator"
label=
"创建人"
></el-table-column>
<el-table-column
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
<el-table-column
:show-overflow-tooltip=
"true"
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
</el-table>
</el-table>
</div>
</div>
<div
class=
"pages"
>
<div
class=
"pages"
>
...
@@ -88,9 +88,9 @@ export default {
...
@@ -88,9 +88,9 @@ export default {
}
}
},
},
async
created
()
{
async
created
()
{
// console.log(this.params,'哈哈3')
if
(
this
.
params
){
if
(
this
.
params
){
const
params
=
this
.
params
;
const
params
=
this
.
params
;
console
.
log
(
params
,
'哈哈3'
)
this
.
form
.
bizNo
=
params
.
loanNo
;
this
.
form
.
bizNo
=
params
.
loanNo
;
await
this
.
init
()
await
this
.
init
()
}
}
...
...
src/components/byh/componments/ServiceRefund.vue
0 → 100644
View file @
9e668103
<
template
>
<div
class=
"page-com"
>
<div
class=
"tables"
>
<!--
<block-header
:title=
"title"
></block-header>
-->
<el-table
border
size=
"mini"
:highlight-current-row=
"true"
:header-row-class-name=
"headerStyle"
:data=
"data"
stripe
style=
"width: 100%;"
>
<el-table-column
align=
"center"
prop=
"loanNo"
label=
"借款编号"
></el-table-column>
<el-table-column
align=
"center"
prop=
"refundAmt"
label=
"退款金额"
></el-table-column>
<el-table-column
align=
"center"
prop=
"refundStatusDesc"
label=
"退款单状态"
></el-table-column>
<el-table-column
align=
"center"
prop=
"creator"
label=
"创建人"
></el-table-column>
<el-table-column
align=
"center"
prop=
"gmtCreated"
label=
"创建时间"
:formatter=
"dateFormat"
></el-table-column>
<el-table-column
align=
"center"
prop=
"gmtModified"
label=
"更新时间"
:formatter=
"dateFormat"
></el-table-column>
<el-table-column
:show-overflow-tooltip=
"true"
align=
"center"
prop=
"memo"
label=
"备注"
></el-table-column>
</el-table>
</div>
<div
class=
"pages"
>
<el-pagination
background
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
:current-page
.
sync=
"form.current"
:page-sizes=
"[10, 20, 50, 100]"
:page-size=
"form.size"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"form.total"
>
</el-pagination>
</div>
</div>
</
template
>
<
script
>
import
BlockHeader
from
"@/components/byh/componments/blockHeader"
;
import
*
as
moment
from
"moment"
;
export
default
{
name
:
'RiskInfo'
,
components
:
{
BlockHeader
},
props
:
{
title
:
{
type
:
String
,
required
:
false
,
},
params
:
{
type
:
Object
,
required
:
true
},
},
data
()
{
return
{
tableStatus
:
[
{
text
:
'成功'
,
value
:
"SUCCESS"
},
{
text
:
'审核中'
,
value
:
"SUBMITED"
},
{
text
:
'失败'
,
value
:
"FAIL"
}
],
form
:
{
total
:
1
,
current
:
1
,
size
:
10
,
// result:''
},
updateQueDialog
:
{
visible
:
false
,
feedNo
:
''
,
feedType
:
''
,
feedStatus
:
''
,
feedContent
:
''
,
clientNo
:
''
,
creater
:
''
,
finishContent
:
''
,
},
data
:
[],
backValue
:
null
}
},
async
created
()
{
if
(
this
.
params
){
const
params
=
this
.
params
;
// console.log(params,'params');
this
.
form
.
loanNo
=
params
.
loanNo
;
this
.
form
.
clientNo
=
params
.
clientNo
;
await
this
.
init
()
}
},
methods
:
{
headerStyle
()
{
return
"tableHeaderStyle"
;
},
async
init
()
{
const
parB
=
{
loanNo
:
this
.
form
.
loanNo
,
current
:
this
.
form
.
current
,
size
:
this
.
form
.
size
,
total
:
this
.
form
.
total
,
clientNo
:
this
.
form
.
clientNo
}
const
res
=
await
this
.
$$post
(
'/refund/selectRefund'
,
parB
);
const
{
success
,
result
}
=
res
.
data
;
// console.log(res.data,'返回的结果');
if
(
success
&&
result
!==
null
)
{
this
.
data
=
result
.
records
;
this
.
form
.
total
=
result
.
total
;
}
},
// 合并日期
dateCompare
:
function
(
row
,
column
)
{
let
date
=
row
[
column
.
property
]
if
(
date
===
undefined
)
{
return
''
}
return
moment
(
date
).
format
(
"YYYY-MM-DD "
)
+
row
.
backedTime
},
/*日期*/
dateFormat
:
function
(
row
,
column
)
{
let
date
=
row
[
column
.
property
]
if
(
date
===
undefined
)
{
return
''
}
return
moment
(
date
).
format
(
"YYYY-MM-DD HH:mm:ss"
)
},
/*日期*/
dateFormats
:
function
(
row
,
column
)
{
let
date
=
row
[
column
.
property
]
if
(
date
===
undefined
)
{
return
''
}
return
moment
(
date
).
format
(
"YYYY-MM-DD"
)
},
handleClose
()
{
this
.
$emit
(
"handleClose"
);
},
//客服状态
serviceFormat
:
function
(
row
,
column
)
{
let
status
=
row
[
'feedStatus'
];
return
this
.
$enumUtils
.
toMsg
(
'FeedStatus'
,
status
);
},
handleCurrentChange
(
e
)
{
this
.
form
.
current
=
e
;
this
.
init
();
},
handleSizeChange
(
e
)
{
this
.
form
.
size
=
e
this
.
form
.
current
=
1
;
this
.
init
();
},
}
}
</
script
>
<
style
>
.tables
{
margin-bottom
:
20px
;
}
.pages
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
}
</
style
>
src/router/index.js
View file @
9e668103
import
Vue
from
'vue'
import
Vue
from
'vue'
import
Router
from
'vue-router'
import
Router
from
'vue-router'
import
{
import
{
ByhService
,
ByhService
,
Controlswitch
,
Controlswitch
,
ByhServiceDetail
,
ByhServiceDetail
,
Login
,
Login
,
Index
,
Index
,
// Default,
// Default,
BankCardMaintenance
,
BankCardMaintenance
,
UserManagement
,
UserManagement
,
LendBankCardList
,
LendBankCardList
,
DutyBizGroupsListDialog
,
DutyBizGroupsListDialog
,
CustomerDistribution
,
CustomerDistribution
,
DistributionBatchDialog
,
DistributionBatchDialog
,
ByhPlanRemindDetails
,
ByhPlanRemindDetails
,
ByhPlanRemindDetailNew
,
ByhPlanRemindDetailNew
,
ByhLoanBackedDetails
,
ByhLoanBackedDetails
,
ByhLoanSnapList
,
ByhLoanSnapList
,
ServiceProblem
,
ServiceProblem
,
ClientManagerment
,
DerateCreate
ClientManagerment
,
DerateCreate
,
CreateRefund
}
from
'./routes'
}
from
'./routes'
Vue
.
use
(
Router
)
Vue
.
use
(
Router
)
export
default
new
Router
({
export
default
new
Router
({
mode
:
'hash'
,
mode
:
'hash'
,
// mode: 'history',
// mode: 'history',
routes
:
[
routes
:
[
{
path
:
'/'
,
redirect
:
'/login'
},
{
path
:
'/'
,
redirect
:
'/login'
},
{
path
:
'/login'
,
name
:
'Login'
,
meta
:
{
title
:
'登录'
,
filter
:
false
},
component
:
Login
},
{
path
:
'/login'
,
name
:
'Login'
,
meta
:
{
title
:
'登录'
,
filter
:
false
},
component
:
Login
},
{
{
path
:
'/index'
,
path
:
'/index'
,
name
:
'Index'
,
name
:
'Index'
,
component
:
Index
,
component
:
Index
,
meta
:
{
title
:
'首页'
},
meta
:
{
title
:
'首页'
},
children
:
[
children
:
[{
{
path
:
'/system/bankCardMaintenance'
,
path
:
'/system/bankCardMaintenance'
,
name
:
'BankCardMaintenance'
,
name
:
'BankCardMaintenance'
,
component
:
BankCardMaintenance
,
component
:
BankCardMaintenance
,
meta
:
{
title
:
'银行卡维护'
,
filter
:
true
}
meta
:
{
title
:
'银行卡维护'
,
filter
:
true
}
},
},
{
{
path
:
'/system/UserManagement'
,
path
:
'/system/UserManagement'
,
name
:
'UserManagement'
,
name
:
'UserManagement'
,
component
:
UserManagement
,
component
:
UserManagement
,
meta
:
{
title
:
'用户管理'
,
filter
:
true
}
meta
:
{
title
:
'用户管理'
,
filter
:
true
}
},
},
{
{
path
:
'/system/CustomerDistribution'
,
path
:
'/system/CustomerDistribution'
,
name
:
'CustomerDistribution'
,
name
:
'CustomerDistribution'
,
component
:
CustomerDistribution
,
component
:
CustomerDistribution
,
meta
:
{
title
:
'批次分配'
,
filter
:
true
}
meta
:
{
title
:
'批次分配'
,
filter
:
true
}
},
},
{
{
path
:
'/system/DistributionBatchDialog'
,
path
:
'/system/DistributionBatchDialog'
,
name
:
'DistributionBatchDialog'
,
name
:
'DistributionBatchDialog'
,
component
:
DistributionBatchDialog
,
component
:
DistributionBatchDialog
,
meta
:
{
title
:
'分配批次'
,
filter
:
true
}
meta
:
{
title
:
'分配批次'
,
filter
:
true
}
},
},
{
{
path
:
'/system/LendBankCardList'
,
path
:
'/system/LendBankCardList'
,
name
:
'LendBankCardList'
,
name
:
'LendBankCardList'
,
component
:
LendBankCardList
,
component
:
LendBankCardList
,
meta
:
{
title
:
'出借人管理'
,
filter
:
true
}
meta
:
{
title
:
'出借人管理'
,
filter
:
true
}
},
},
{
{
path
:
'/system/DutyBizGroupsListDialog'
,
path
:
'/system/DutyBizGroupsListDialog'
,
name
:
'DutyBizGroupsListDialog'
,
name
:
'DutyBizGroupsListDialog'
,
component
:
DutyBizGroupsListDialog
,
component
:
DutyBizGroupsListDialog
,
meta
:
{
title
:
'业务组列表'
,
filter
:
true
}
meta
:
{
title
:
'业务组列表'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhPlanRemindDetails'
,
path
:
'/byh/ByhPlanRemindDetails'
,
name
:
'ByhPlanRemindDetails'
,
name
:
'ByhPlanRemindDetails'
,
component
:
ByhPlanRemindDetails
,
component
:
ByhPlanRemindDetails
,
meta
:
{
title
:
'还款计划详情'
,
filter
:
true
}
meta
:
{
title
:
'还款计划详情'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhPlanRemindDetailNew'
,
path
:
'/byh/ByhPlanRemindDetailNew'
,
name
:
'ByhPlanRemindDetailNew'
,
name
:
'ByhPlanRemindDetailNew'
,
component
:
ByhPlanRemindDetailNew
,
component
:
ByhPlanRemindDetailNew
,
meta
:
{
title
:
'还款详情'
,
filter
:
true
}
meta
:
{
title
:
'还款详情'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhLoanBackedDetails'
,
path
:
'/byh/ByhLoanBackedDetails'
,
name
:
'ByhLoanBackedDetails'
,
name
:
'ByhLoanBackedDetails'
,
component
:
ByhLoanBackedDetails
,
component
:
ByhLoanBackedDetails
,
meta
:
{
title
:
'还款详情'
,
filter
:
true
}
meta
:
{
title
:
'还款详情'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhService'
,
path
:
'/byh/ByhService'
,
name
:
'ByhService'
,
name
:
'ByhService'
,
component
:
ByhService
,
component
:
ByhService
,
meta
:
{
title
:
'客服管理'
,
filter
:
true
}
meta
:
{
title
:
'客服管理'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/Controlswitch'
,
path
:
'/byh/Controlswitch'
,
name
:
'Controlswitch'
,
name
:
'Controlswitch'
,
component
:
Controlswitch
,
component
:
Controlswitch
,
meta
:
{
title
:
'亲家管理'
,
filter
:
true
}
meta
:
{
title
:
'亲家管理'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhServiceDetail'
,
path
:
'/byh/ByhServiceDetail'
,
name
:
'ByhServiceDetail'
,
name
:
'ByhServiceDetail'
,
component
:
ByhServiceDetail
,
component
:
ByhServiceDetail
,
meta
:
{
title
:
'客服详情'
,
filter
:
true
}
meta
:
{
title
:
'客服详情'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ServiceProblem'
,
path
:
'/byh/ServiceProblem'
,
name
:
'ServiceProblem'
,
name
:
'ServiceProblem'
,
component
:
ServiceProblem
,
component
:
ServiceProblem
,
meta
:
{
title
:
'意见反馈'
,
filter
:
true
}
meta
:
{
title
:
'意见反馈'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/ByhLoanSnapList'
,
path
:
'/byh/ByhLoanSnapList'
,
name
:
'ByhLoanSnapList'
,
name
:
'ByhLoanSnapList'
,
component
:
ByhLoanSnapList
,
component
:
ByhLoanSnapList
,
meta
:
{
meta
:
{
title
:
'临时放款列表'
,
title
:
'临时放款列表'
,
filter
:
true
filter
:
true
}
}
},
},
{
{
path
:
'/byh/ClientManagerment'
,
path
:
'/byh/ClientManagerment'
,
name
:
'ClientManagerment'
,
name
:
'ClientManagerment'
,
component
:
ClientManagerment
,
component
:
ClientManagerment
,
meta
:
{
meta
:
{
title
:
'客户管理'
,
title
:
'客户管理'
,
filter
:
true
filter
:
true
}
}
},
},
{
{
path
:
'/byh/DerateCreate'
,
path
:
'/byh/DerateCreate'
,
name
:
'DerateCreate'
,
name
:
'DerateCreate'
,
component
:
DerateCreate
,
component
:
DerateCreate
,
meta
:
{
title
:
'减免单管理'
,
filter
:
true
}
meta
:
{
title
:
'减免单管理'
,
filter
:
true
}
},
},
{
{
path
:
'/byh/RiskLevelList'
,
path
:
'/byh/RiskLevelList'
,
name
:
'RiskLevelList'
,
name
:
'RiskLevelList'
,
component
:
resolve
=>
require
([
'../components/byh/RiskLevelList.vue'
],
resolve
),
component
:
resolve
=>
require
([
'../components/byh/RiskLevelList.vue'
],
resolve
),
meta
:
{
title
:
'风险客户'
,
filter
:
true
}
meta
:
{
title
:
'风险客户'
,
filter
:
true
}
},
},
]
{
}
path
:
'/byh/CreateRefund'
,
]
name
:
'CreateRefund'
,
})
component
:
resolve
=>
require
([
'../components/byh/CreateRefund.vue'
],
resolve
),
meta
:
{
title
:
'创建退款单'
,
filter
:
true
}
},
]
}
]
})
\ No newline at end of file
src/router/routes.js
View file @
9e668103
...
@@ -27,6 +27,8 @@ export const ByhLoanBackedDetails = resolve => require(['../components/byh/ByhLo
...
@@ -27,6 +27,8 @@ export const ByhLoanBackedDetails = resolve => require(['../components/byh/ByhLo
export
const
ByhLoanSnapList
=
resolve
=>
require
([
'../components/byh/ByhLoanSnapList.vue'
],
resolve
)
export
const
ByhLoanSnapList
=
resolve
=>
require
([
'../components/byh/ByhLoanSnapList.vue'
],
resolve
)
export
const
Controlswitch
=
resolve
=>
require
([
'../components/byh/Controlswitch.vue'
],
resolve
)
export
const
Controlswitch
=
resolve
=>
require
([
'../components/byh/Controlswitch.vue'
],
resolve
)
export
const
DerateCreate
=
resolve
=>
require
([
'../components/byh/DerateCreate.vue'
],
resolve
)
export
const
DerateCreate
=
resolve
=>
require
([
'../components/byh/DerateCreate.vue'
],
resolve
)
//创建退款单
export
const
CreateRefund
=
resolve
=>
require
([
'../components/byh/CreateRefund.vue'
],
resolve
)
export
default
{
export
default
{
Login
,
// 登录
Login
,
// 登录
...
@@ -52,5 +54,7 @@ export default {
...
@@ -52,5 +54,7 @@ export default {
//客户管理
//客户管理
ClientManagerment
,
ClientManagerment
,
Controlswitch
,
Controlswitch
,
DerateCreate
DerateCreate
,
// 创建退款单
CreateRefund
}
}
src/utils/ajax.js
View file @
9e668103
...
@@ -8,15 +8,15 @@ import Cookies from 'js-cookie'
...
@@ -8,15 +8,15 @@ import Cookies from 'js-cookie'
/** 测试环境 */
/** 测试环境 */
axios
.
defaults
.
baseURL
=
process
.
env
.
VUE_APP_API
;
axios
.
defaults
.
baseURL
=
process
.
env
.
VUE_APP_API
;
/* 所有ajax请求拦截 */
/* 所有ajax请求拦截 */
axios
.
interceptors
.
request
.
use
(
function
(
req
)
{
axios
.
interceptors
.
request
.
use
(
function
(
req
)
{
const
token
=
Cookies
.
get
(
'x-auth-token'
)
const
token
=
Cookies
.
get
(
'x-auth-token'
)
if
(
token
)
{
if
(
token
)
{
req
.
headers
[
'X-Auth-Token'
]
=
token
req
.
headers
[
'X-Auth-Token'
]
=
token
// req.headers['token'] = localStorage.getItem("token_xxx")
// req.headers['token'] = localStorage.getItem("token_xxx")
}
}
// 在发送请求之前做些什么
// 在发送请求之前做些什么
return
req
return
req
},
function
(
error
)
{
},
function
(
error
)
{
// 对请求错误做些什么
// 对请求错误做些什么
return
Promise
.
reject
(
error
)
return
Promise
.
reject
(
error
)
})
})
...
@@ -138,4 +138,4 @@ const Ajax = {
...
@@ -138,4 +138,4 @@ const Ajax = {
}
}
}
}
export
default
Ajax
export
default
Ajax
\ 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