Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
b76e556b
提交
b76e556b
authored
2月 23, 2024
作者:
huyufan
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/v10.7_borrowing_and_repayment_20240118' into test
# Conflicts: # performance-web/src/main/java/com/clx/performance/controller/temp/TempBankController.java
上级
115096d2
9484140c
全部展开
显示空白字符变更
内嵌
并排
正在显示
29 个修改的文件
包含
243 行增加
和
56 行删除
+243
-56
PerformanceResultEnum.java
...java/com/clx/performance/enums/PerformanceResultEnum.java
+1
-0
OwnerLoanRecordEnum.java
...a/com/clx/performance/enums/loan/OwnerLoanRecordEnum.java
+1
-1
OwnerRepaymentParam.java
...erformance/param/pc/loan/carrier/OwnerRepaymentParam.java
+18
-0
PageCarrierOwnerLoanRecordParam.java
...aram/pc/loan/carrier/PageCarrierOwnerLoanRecordParam.java
+1
-1
PageOwnerLoanRecordOfOwner.java
...nce/param/pc/loan/carrier/PageOwnerLoanRecordOfOwner.java
+2
-1
CarrierOwnerOrderPaymentDetailVO.java
.../vo/pc/loan/carrier/CarrierOwnerOrderPaymentDetailVO.java
+1
-1
CarrierTransferPaymentDetailVO.java
...ce/vo/pc/loan/carrier/CarrierTransferPaymentDetailVO.java
+3
-0
ExportOwnerLoanRecordVO.java
...rformance/vo/pc/loan/carrier/ExportOwnerLoanRecordVO.java
+2
-2
OwnerLoanRecordVO.java
...clx/performance/vo/pc/loan/carrier/OwnerLoanRecordVO.java
+2
-2
OwnerOrderPaymentDetailVO.java
...rformance/vo/pc/loan/owner/OwnerOrderPaymentDetailVO.java
+3
-0
OwnerTransferPaymentDetailVO.java
...rmance/vo/pc/loan/owner/OwnerTransferPaymentDetailVO.java
+11
-0
RabbitBeanConfig.java
...ain/java/com/clx/performance/config/RabbitBeanConfig.java
+20
-0
RabbitKeyConstants.java
...java/com/clx/performance/constant/RabbitKeyConstants.java
+4
-0
CarrierOwnerLoanRecordController.java
...ler/pc/loan/carrier/CarrierOwnerLoanRecordController.java
+17
-1
OwnerLoanAccountController.java
.../controller/pc/loan/owner/OwnerLoanAccountController.java
+8
-0
OwnerRepaymentController.java
...ce/controller/pc/loan/owner/OwnerRepaymentController.java
+9
-0
TempBankController.java
...m/clx/performance/controller/temp/TempBankController.java
+4
-8
OwnerLoanRecordDaoImpl.java
...clx/performance/dao/impl/loan/OwnerLoanRecordDaoImpl.java
+1
-1
OwnerLoanPayNotifyListener.java
.../clx/performance/listener/OwnerLoanPayNotifyListener.java
+4
-0
OwnerLoanRecord.java
.../java/com/clx/performance/model/loan/OwnerLoanRecord.java
+30
-2
OwnerRepayment.java
...n/java/com/clx/performance/model/loan/OwnerRepayment.java
+4
-0
OwnerLoanAccountServiceImpl.java
...rmance/service/impl/loan/OwnerLoanAccountServiceImpl.java
+52
-26
OwnerLoanRecordServiceImpl.java
...ormance/service/impl/loan/OwnerLoanRecordServiceImpl.java
+0
-0
OwnerRepaymentServiceImpl.java
...formance/service/impl/loan/OwnerRepaymentServiceImpl.java
+29
-5
NbBankServiceImpl.java
...nce/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
+6
-3
OwnerLoanAccountService.java
...clx/performance/service/loan/OwnerLoanAccountService.java
+2
-1
OwnerLoanRecordService.java
.../clx/performance/service/loan/OwnerLoanRecordService.java
+6
-0
OwnerRepaymentService.java
...m/clx/performance/service/loan/OwnerRepaymentService.java
+1
-0
NbBankService.java
.../performance/service/thirdparty/nbbank/NbBankService.java
+1
-1
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/PerformanceResultEnum.java
浏览文件 @
b76e556b
...
...
@@ -138,6 +138,7 @@ public enum PerformanceResultEnum implements ResultEnum {
OWNER_LOAN_RECORD_PAY_STATUS_ERROR
(
1850
,
"状态已变更无法支付"
),
OWNER_LOAN_RECORD_CANCEL_STATUS_ERROR
(
1851
,
"状态已变更无法取消"
),
OWNER_LOAN_RECORD_PAY_WAIT_ERROR
(
1852
,
"当前借款单状态不是待付款"
),
;
private
final
int
code
;
...
...
performance-api/src/main/java/com/clx/performance/enums/loan/OwnerLoanRecordEnum.java
浏览文件 @
b76e556b
...
...
@@ -10,11 +10,11 @@ import java.util.Optional;
public
enum
OwnerLoanRecordEnum
{
;
//“待审批”,“审批通过”,“审批拒绝”,“付款中”,“付款成功”,“付款失败”
@Getter
@AllArgsConstructor
public
enum
Status
{
APPROVE_WAIT
(
10
,
"待审批"
),
PAY_WAIT
(
15
,
"待付款"
),
APPROVE_PASS
(
20
,
"审批通过"
),
APPROVE_REFUSE
(
30
,
"审批拒绝"
),
PAYING
(
40
,
"付款中"
),
...
...
performance-api/src/main/java/com/clx/performance/param/pc/loan/carrier/OwnerRepaymentParam.java
0 → 100644
浏览文件 @
b76e556b
package
com
.
clx
.
performance
.
param
.
pc
.
loan
.
carrier
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
@Getter
@Setter
public
class
OwnerRepaymentParam
{
@ApiModelProperty
(
"还款单号"
)
private
Long
repaymentNo
;
@ApiModelProperty
(
"支付通道:1订单支付 2转账支付"
)
private
Integer
payChannel
;
}
performance-api/src/main/java/com/clx/performance/param/pc/loan/carrier/PageCarrierOwnerLoanRecordParam.java
浏览文件 @
b76e556b
...
...
@@ -31,6 +31,6 @@ public class PageCarrierOwnerLoanRecordParam extends PageParam {
@ApiModelProperty
(
"借款类型 1:虚拟货币 2:资金"
)
private
Integer
loanType
;
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
Integer
status
;
}
performance-api/src/main/java/com/clx/performance/param/pc/loan/carrier/PageOwnerLoanRecordOfOwner.java
浏览文件 @
b76e556b
...
...
@@ -25,7 +25,7 @@ public class PageOwnerLoanRecordOfOwner extends PageParam {
@ApiModelProperty
(
value
=
"借款类型 1:虚拟货币 2:资金"
,
example
=
"1"
)
private
Integer
loanType
;
@ApiModelProperty
(
value
=
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
,
example
=
"1"
)
@ApiModelProperty
(
value
=
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
,
example
=
"1"
)
private
Integer
status
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/CarrierOwnerOrderPaymentDetailVO.java
浏览文件 @
b76e556b
...
...
@@ -43,7 +43,7 @@ public class CarrierOwnerOrderPaymentDetailVO {
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
Integer
status
;
@ApiModelProperty
(
"订单支付状态 10 待付款 40 付款中 50 付款成功 60 付款失败"
)
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/CarrierTransferPaymentDetailVO.java
浏览文件 @
b76e556b
...
...
@@ -59,5 +59,8 @@ public class CarrierTransferPaymentDetailVO {
@ApiModelProperty
(
"付款最后时间"
)
public
String
finalPaymentTime
;
@ApiModelProperty
(
"借款单号"
)
private
Long
loanNo
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/ExportOwnerLoanRecordVO.java
浏览文件 @
b76e556b
...
...
@@ -95,11 +95,11 @@ public class ExportOwnerLoanRecordVO {
private
String
payeeBankCode
;
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
Integer
status
;
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
String
statusMsg
;
public
String
getStatusMsg
(){
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/OwnerLoanRecordVO.java
浏览文件 @
b76e556b
...
...
@@ -91,11 +91,11 @@ public class OwnerLoanRecordVO {
private
String
payeeBankCode
;
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
Integer
status
;
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
String
statusMsg
;
public
String
getStatusMsg
(){
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/owner/OwnerOrderPaymentDetailVO.java
浏览文件 @
b76e556b
...
...
@@ -26,6 +26,9 @@ public class OwnerOrderPaymentDetailVO {
@ApiModelProperty
(
"还款单号"
)
private
Long
repaymentNo
;
@ApiModelProperty
(
"借款单号"
)
private
Long
loanNo
;
@ApiModelProperty
(
"付款方"
)
private
String
payment
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/owner/OwnerTransferPaymentDetailVO.java
浏览文件 @
b76e556b
...
...
@@ -22,6 +22,16 @@ import java.math.BigDecimal;
@Builder
public
class
OwnerTransferPaymentDetailVO
{
@ApiModelProperty
(
"还款单号"
)
private
Long
repaymentNo
;
@ApiModelProperty
(
"借款单号"
)
private
Long
loanNo
;
@ApiModelProperty
(
"收款户名"
)
private
String
payee
;
...
...
@@ -60,4 +70,5 @@ public class OwnerTransferPaymentDetailVO {
public
String
finalPaymentTime
;
}
performance-web/src/main/java/com/clx/performance/config/RabbitBeanConfig.java
浏览文件 @
b76e556b
...
...
@@ -200,4 +200,24 @@ public class RabbitBeanConfig {
public
Binding
ownerLoanBind
()
{
return
BindingBuilder
.
bind
(
ownerLoanQueue
()).
to
(
ownerLoanExchange
()).
with
(
RabbitKeyConstants
.
OWNER_LOAN_ROUTE_KEY
);
}
/**
* 货主还款队列
* @return
*/
@Bean
public
Queue
ownerRepaymentQueue
()
{
return
new
Queue
(
RabbitKeyConstants
.
OWNER_REPAYMENT_QUEUE
,
true
,
false
,
false
);
}
/**
* 货主还款bind
* @return
*/
@Bean
public
Binding
ownerRepaymentBind
()
{
return
BindingBuilder
.
bind
(
ownerLoanQueue
()).
to
(
ownerLoanExchange
()).
with
(
RabbitKeyConstants
.
OWNER_REPAYMENT_ROUTE_KEY
);
}
}
performance-web/src/main/java/com/clx/performance/constant/RabbitKeyConstants.java
浏览文件 @
b76e556b
...
...
@@ -93,4 +93,8 @@ public class RabbitKeyConstants {
public
static
final
String
OWNER_LOAN_ROUTE_KEY
=
"clx-performance.loan.route.key"
;
public
static
final
String
OWNER_LOAN_QUEUE
=
"clx-performance.loan.queue"
;
public
static
final
String
OWNER_REPAYMENT_QUEUE
=
"clx-performance.owner.repayment.queue"
;
public
static
final
String
OWNER_REPAYMENT_ROUTE_KEY
=
"clx-performance.owner.repayment.route.key"
;
}
performance-web/src/main/java/com/clx/performance/controller/pc/loan/carrier/CarrierOwnerLoanRecordController.java
浏览文件 @
b76e556b
...
...
@@ -41,13 +41,20 @@ public class CarrierOwnerLoanRecordController {
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
@ApiOperation
(
value
=
"借款审批"
,
notes
=
"<br>By:胡宇帆"
)
@ApiOperation
(
value
=
"借款审批
(虚拟币直接增加,资金需要跳收银台提交申请)
"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/ownerLoanRecordApprove"
)
public
Result
<
Object
>
ownerLoanRecordApprove
(
@RequestBody
@Validated
CarrierOwnerLoanRecordApproveParam
param
)
{
ownerLoanRecordService
.
ownerLoanRecordApprove
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"借款提交申请(调用宁波银行)"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/ownerLoanRecordSubmitNbBank"
)
public
Result
<
Object
>
ownerLoanRecordSubmitNbBank
(
@RequestBody
@Validated
CarrierOwnerLoanRecordApproveParam
param
)
{
ownerLoanRecordService
.
ownerLoanRecordSubmitNbBank
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"借款重新支付(只更改借款状态)"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/ownerLoanRecordRetryPay"
)
public
Result
<
Object
>
ownerLoanRecordRetryPay
(
@RequestParam
(
value
=
"loanNo"
)
@NotBlank
String
loanNo
)
{
...
...
@@ -132,5 +139,14 @@ public class CarrierOwnerLoanRecordController {
return
Result
.
ok
(
token
);
}
@ApiOperation
(
value
=
"订单支付短信"
,
notes
=
"<br>By:姜文业"
)
@GetMapping
(
"/sendOrderPaySms"
)
public
Result
<
String
>
sendOrderPaySms
(
@RequestParam
(
"mobile"
)
@NotBlank
(
message
=
"通知的手机号码不能为空"
)
String
mobile
,
@Param
(
"payee"
)
@NotBlank
(
message
=
"收款方不能为空"
)
String
payee
,
@Param
(
"payeeAccount"
)
@NotBlank
(
message
=
"收款账户不能为空"
)
String
payeeAccount
)
{
String
token
=
ownerLoanRecordService
.
sendOrderPaySms
(
mobile
,
payee
,
payeeAccount
);
return
Result
.
ok
(
token
);
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/loan/owner/OwnerLoanAccountController.java
浏览文件 @
b76e556b
package
com
.
clx
.
performance
.
controller
.
pc
.
loan
.
owner
;
import
com.clx.performance.param.pc.loan.carrier.OwnerRepaymentParam
;
import
com.clx.performance.param.pc.loan.owner.OwnerLoanRecordParam
;
import
com.clx.performance.service.loan.OwnerLoanAccountApproveService
;
import
com.clx.performance.service.loan.OwnerLoanAccountService
;
...
...
@@ -54,4 +55,11 @@ public class OwnerLoanAccountController {
OwnerAccountVO
ownerAccount
=
ownerLoanAccountService
.
getOwnerLoanAccount
();
return
Result
.
ok
(
ownerAccount
);
}
@ApiOperation
(
value
=
"货主还款"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/ownerRepayment"
)
public
Result
<
OwnerAccountVO
>
ownerRepayment
(
@RequestBody
OwnerRepaymentParam
param
)
{
ownerLoanAccountService
.
ownerRepayment
(
param
);
return
Result
.
ok
();
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/loan/owner/OwnerRepaymentController.java
浏览文件 @
b76e556b
...
...
@@ -87,6 +87,15 @@ public class OwnerRepaymentController {
return
Result
.
ok
(
token
);
}
@ApiOperation
(
value
=
"订单支付短信"
,
notes
=
"<br>By:姜文业"
)
@GetMapping
(
"/sendOrderPaySms"
)
public
Result
<
String
>
sendOrderPaySms
(
@RequestParam
(
"mobile"
)
@NotBlank
(
message
=
"通知的手机号码不能为空"
)
String
mobile
,
@Param
(
"payee"
)
@NotBlank
(
message
=
"收款方不能为空"
)
String
payee
,
@Param
(
"payeeAccount"
)
@NotBlank
(
message
=
"收款账户不能为空"
)
String
payeeAccount
)
{
String
token
=
ownerRepaymentService
.
sendOrderPaySms
(
mobile
,
payee
,
payeeAccount
);
return
Result
.
ok
(
token
);
}
}
performance-web/src/main/java/com/clx/performance/controller/temp/TempBankController.java
浏览文件 @
b76e556b
...
...
@@ -39,20 +39,16 @@ public class TempBankController {
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000076809", "黑玫瑰"));
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000075926", "客户客户"));
return
Result
.
ok
(
bankService
.
orderDirectPay
(
null
,
1
,
"313332082914"
,
"86031110000180611"
,
"槟榔王"
));
return
Result
.
ok
(
bankService
.
orderDirectPay
(
null
,
""
,
1
,
"313332082914"
,
"86031110000180611"
,
"槟榔王"
));
}
@ApiOperation
(
value
=
"订单支付1"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/orderDirectPay1"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
orderDirectPay1
(
String
payAcctNo
,
String
payAcctNm
)
{
return
Result
.
ok
(
bankService
.
orderDirectPay
(
null
,
1
,
"313332082914"
,
payAcctNo
,
payAcctNm
));
}
@ApiOperation
(
value
=
"订单支付2"
,
notes
=
"<br>By:艾庆国"
)
@RequestMapping
(
value
=
"/orderDirectPay2"
,
method
=
RequestMethod
.
POST
)
public
Result
<
NbBankOrderPayResultVO
>
orderDirectPay2
(
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
return
Result
.
ok
(
bankService
.
orderDirectPay
(
null
,
1
,
payAcctOpenBankId
,
payAcctNo
,
payAcctNm
));
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000076809", "黑玫瑰"));
// return Result.ok(bankService.orderDirectPay(null,2,"313332082914","86041110000075926", "客户客户"));
return
Result
.
ok
(
bankService
.
orderDirectPay
(
null
,
""
,
1
,
"313332082914"
,
payAcctNo
,
payAcctNm
));
}
@ApiOperation
(
value
=
"查询"
,
notes
=
"<br>By:艾庆国"
)
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/loan/OwnerLoanRecordDaoImpl.java
浏览文件 @
b76e556b
...
...
@@ -90,7 +90,7 @@ public class OwnerLoanRecordDaoImpl extends BaseDaoImpl<OwnerLoanRecordMapper, O
.
set
(
OwnerLoanRecord:
:
getMerchantRunningWaterNo
,
item
.
getMerchantRunningWaterNo
())
.
set
(
OwnerLoanRecord:
:
getRemittanceIdentificationCode
,
item
.
getRemittanceIdentificationCode
())
.
set
(
OwnerLoanRecord:
:
getLoanResidueBalance
,
item
.
getLoanResidueBalance
())
.
set
(
OwnerLoanRecord:
:
getRemittanceIdentificationCode
,
item
.
getRemittanceIdentificationCode
())
.
set
(
OwnerLoanRecord:
:
getLendingParty
,
item
.
getLendingParty
())
.
set
(
OwnerLoanRecord:
:
getLendingPartyAccount
,
item
.
getLendingPartyAccount
())
);
...
...
performance-web/src/main/java/com/clx/performance/listener/OwnerLoanPayNotifyListener.java
浏览文件 @
b76e556b
...
...
@@ -4,6 +4,7 @@ import cn.hutool.json.JSONUtil;
import
com.clx.performance.param.OwnerLoanPayNotifyMqParam
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.enums.nbbank.NbBankStatusEnum
;
import
com.clx.performance.service.loan.OwnerLoanAccountService
;
import
com.clx.performance.service.loan.OwnerLoanRecordService
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -22,6 +23,8 @@ public class OwnerLoanPayNotifyListener {
private
final
OwnerLoanRecordService
ownerLoanRecordService
;
private
final
OwnerLoanAccountService
ownerLoanAccountService
;
@RabbitListener
(
queues
=
RabbitKeyConstants
.
OWNER_LOAN_PAY_QUEUE
)
public
void
onMessage
(
String
message
)
{
log
.
info
(
"处理货主借款支付监听器执行,数据为{}"
,
message
);
...
...
@@ -30,6 +33,7 @@ public class OwnerLoanPayNotifyListener {
if
(
Objects
.
equals
(
param
.
getPayStatus
(),
NbBankStatusEnum
.
Status
.
SUCCESS
.
getCode
()))
{
// 支付成功
ownerLoanRecordService
.
paySuccess
(
param
.
getMerSeqNo
());
}
else
if
(
Objects
.
equals
(
param
.
getPayStatus
(),
NbBankStatusEnum
.
Status
.
FAIL
.
getCode
()))
{
// 支付失败
...
...
performance-web/src/main/java/com/clx/performance/model/loan/OwnerLoanRecord.java
浏览文件 @
b76e556b
...
...
@@ -68,6 +68,7 @@ public class OwnerLoanRecord implements HasKey<Integer> {
@ApiModelProperty
(
"借款剩余金额"
)
private
BigDecimal
loanResidueBalance
;
@TableField
(
"borrower_id"
)
@ApiModelProperty
(
"借出方Id"
)
private
Integer
borrowerId
;
...
...
@@ -76,10 +77,23 @@ public class OwnerLoanRecord implements HasKey<Integer> {
@ApiModelProperty
(
"借出方"
)
private
String
borrower
;
@ApiModelProperty
(
"借
款
方账户"
)
@ApiModelProperty
(
"借
出
方账户"
)
@TableField
(
"borrower_account"
)
private
String
borrowerAccount
;
@TableField
(
"borrower_bank"
)
@ApiModelProperty
(
"借出方银行"
)
private
String
borrowerBank
;
@TableField
(
"borrower_bank_code"
)
@ApiModelProperty
(
"借出方银行行号"
)
private
String
borrowerBankCode
;
@TableField
(
"borrower_open_bank"
)
@ApiModelProperty
(
"借出方开户行"
)
private
String
borrowerOpenBank
;
@TableField
(
"remittance_identification_code"
)
@ApiModelProperty
(
"汇款识别码"
)
private
String
remittanceIdentificationCode
;
...
...
@@ -93,6 +107,20 @@ public class OwnerLoanRecord implements HasKey<Integer> {
@ApiModelProperty
(
"借款方账户"
)
private
String
lendingPartyAccount
;
@TableField
(
"lending_party_bank"
)
@ApiModelProperty
(
"借款方银行"
)
private
String
lendingPartyBank
;
@TableField
(
"lending_party_bank_code"
)
@ApiModelProperty
(
"借款方银行行号"
)
private
String
lendingPartyBankCode
;
@TableField
(
"lending_party_open_bank"
)
@ApiModelProperty
(
"借款方开户行"
)
private
String
lendingPartyOpenBank
;
@TableField
(
"payee"
)
@ApiModelProperty
(
"收款方"
)
private
String
payee
;
...
...
@@ -110,7 +138,7 @@ public class OwnerLoanRecord implements HasKey<Integer> {
private
String
payeeBankCode
;
@TableField
(
"status"
)
@ApiModelProperty
(
"10 待审批 20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
@ApiModelProperty
(
"10 待审批
15 待付款
20 审批通过 30 审批拒绝 40 付款中 50 付款成功 60 付款失败 "
)
private
Integer
status
;
@TableField
(
"approve_time"
)
...
...
performance-web/src/main/java/com/clx/performance/model/loan/OwnerRepayment.java
浏览文件 @
b76e556b
...
...
@@ -94,6 +94,10 @@ public class OwnerRepayment implements HasKey<Integer> {
@ApiModelProperty
(
"借款单号"
)
private
Long
loanNo
;
@TableField
(
"loan_type"
)
@ApiModelProperty
(
"借款类型 1:虚拟货币 2:资金"
)
private
Long
loanType
;
@TableField
(
"status"
)
@ApiModelProperty
(
"10 待付款 40 付款中 50 付款成功 60 付款失败"
)
private
Integer
status
;
...
...
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerLoanAccountServiceImpl.java
浏览文件 @
b76e556b
...
...
@@ -5,26 +5,31 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.clx.performance.component.OrderChildLoanComponent
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.loan.OrderChildLoanRetryRecordDao
;
import
com.clx.performance.dao.loan.OwnerLoanAccountDao
;
import
com.clx.performance.dao.loan.*
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.dto.OwnerLoanMqDTO
;
import
com.clx.performance.enums.loan.BankTradeEnum
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementDriver
;
import
com.clx.performance.model.loan.OrderChildLoanRetryRecord
;
import
com.clx.performance.model.loan.OwnerLoanAccount
;
import
com.clx.performance.model.loan.*
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.param.pc.loan.carrier.OwnerRepaymentParam
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerLoanAccountParam
;
import
com.clx.performance.service.loan.OwnerLoanAccountService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankService
;
import
com.clx.performance.struct.loan.OwnerLoanAccountStruct
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierOwnerLoanAccountVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerAccountVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.convertor.aspect.UnitCovert
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.utils.TokenUtil
;
import
io.swagger.models.auth.In
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
...
...
@@ -34,6 +39,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
...
...
@@ -60,6 +66,14 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
private
final
RabbitTemplate
rabbitTemplate
;
private
final
OwnerRepaymentDao
ownerRepaymentDao
;
private
final
NbBankService
bankService
;
private
final
BankTradeDao
bankTradeDao
;
private
final
OwnerLoanRecordDao
ownerLoanRecordDao
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
openOwnerLoanAccount
(
Long
ownerUserNo
,
String
ownerUserName
,
String
mobile
)
{
...
...
@@ -99,30 +113,42 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
return
ownerAccountVO
;
}
/**
* 货主借款后执行阻塞流程的相关运单
*
* @param ownerUserNo
*/
@Override
public
void
orderChildLoanProcess
(
Long
ownerUserNo
)
{
List
<
OrderChildLoanRetryRecord
>
orderChildLoanRetryRecordList
=
orderChildLoanRetryRecordDao
.
selectListByIdAsc
();
for
(
OrderChildLoanRetryRecord
retryRecord
:
orderChildLoanRetryRecordList
)
{
//生成借款标识
SettlementDriverDetail
settlementDriverDetail
=
settlementDriverDetailDao
.
getEntityByKey
(
retryRecord
.
getSettlementDriverId
()).
get
();
SettlementOwnerDetail
settlementOwnerDetail
=
settlementOwnerDetailDao
.
getEntityByKey
(
retryRecord
.
getSettlementOwnerId
()).
get
();
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
settlementDriverDetail
.
getChildNo
()).
get
();
OwnerLoanMqDTO
dto
=
new
OwnerLoanMqDTO
();
dto
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
dto
.
setSettlementDriverDetail
(
settlementDriverDetail
);
dto
.
setOrderChild
(
orderChild
);
//货主借款监听器处理
Message
message
=
MessageBuilder
.
withBody
(
JSONUtil
.
parse
(
dto
).
toString
().
getBytes
()).
build
();
rabbitTemplate
.
send
(
RabbitKeyConstants
.
OWNER_LOAN_EXCHANGE
,
RabbitKeyConstants
.
OWNER_LOAN_ROUTE_KEY
,
message
);
orderChildLoanRetryRecordDao
.
deleteByKey
(
retryRecord
.
getId
());
public
void
ownerRepayment
(
OwnerRepaymentParam
param
)
{
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getOneByField
(
OwnerRepayment:
:
getRepaymentNo
,
param
.
getRepaymentNo
()).
get
();
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
ownerRepayment
.
getLoanNo
()).
get
();
BankTrade
bankTrade
=
new
BankTrade
();
if
(
OwnerLoanRecordEnum
.
PayChannel
.
ORDER_DIRECT_PAY
.
getCode
().
equals
(
param
.
getPayChannel
()))
{
// 订单支付
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderDirectPay
(
ownerRepayment
.
getRepaymentNo
(),
"还款单"
,
ownerRepayment
.
getRepaymentBalance
().
intValue
(),
ownerLoanRecord
.
getPayeeBankCode
(),
ownerLoanRecord
.
getPayeeAccount
(),
ownerLoanRecord
.
getPayee
());
ownerRepayment
.
setRunningWaterOpenNo
(
orderPayResultVO
.
getTransSeqNo
());
ownerRepayment
.
setMerchantRunningWaterNo
(
orderPayResultVO
.
getMerSeqNo
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_DIRECT_PAY
.
getCode
());
}
else
{
//TODO 是否转账是部分支付
// 转账支付
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderTransferPay
(
ownerLoanRecord
.
getLoanBalance
().
intValue
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_TRANSFER_PAY
.
getCode
());
}
ownerRepayment
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
());
// 更新还款支付信息
//ownerRepaymentDao.updatePay(ownerLoanRecord);
bankTrade
.
setRelationNo
(
ownerRepayment
.
getRepaymentNo
().
toString
());
bankTrade
.
setOrderType
(
BankTradeEnum
.
OrderType
.
OWNER_LOAN_RECORD
.
getCode
());
bankTrade
.
setAmount
(
ownerLoanRecord
.
getLoanBalance
());
bankTrade
.
setMerchantRunningWaterNo
(
ownerLoanRecord
.
getMerchantRunningWaterNo
());
bankTrade
.
setRunningWaterOpenNo
(
ownerLoanRecord
.
getRunningWaterOpenNo
());
bankTrade
.
setRemark
(
"还款单"
);
// 保存银行交易记录
bankTradeDao
.
saveEntity
(
bankTrade
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerLoanRecordServiceImpl.java
浏览文件 @
b76e556b
差异被折叠。
点击展开。
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerRepaymentServiceImpl.java
浏览文件 @
b76e556b
...
...
@@ -26,6 +26,7 @@ import com.clx.performance.vo.pc.loan.owner.ExportOwnerRepaymentVO;
import
com.clx.performance.vo.pc.loan.owner.OwnerCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerTransferPaymentDetailVO
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.pc.owner.OwnerBindCardVO
;
import
com.msl.common.result.Result
;
import
com.msl.common.utils.DateUtils
;
...
...
@@ -106,14 +107,14 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
PerformanceResultEnum
.
DATA_NOT_FIND
);
OwnerCashierInfoVO
vo
=
ownerRepaymentStruct
.
convertCashierInfo
(
ownerRepayment
);
Owner
BindCardVO
bindCard
=
ownerInfoService
.
getOwnerBindCard
(
ownerRepayment
.
getOwnerUserNo
());
String
ownerAccountBank
=
bindCard
.
getOwnerAccountBank
();
Owner
InfoFeignVO
ownerInfoFeignVO
=
ownerInfoService
.
getOwnerInfo
(
ownerRepayment
.
getOwnerUserNo
());
String
ownerAccountBank
=
ownerInfoFeignVO
.
getOwnerAccountBank
();
vo
.
setOrderPayWay
(
false
);
if
(
nbBankConfig
.
getOrderSupportBank
().
contains
(
ownerAccountBank
)){
vo
.
setOrderPayWay
(
true
);
}
vo
.
setBankName
(
ownerAccountBank
);
vo
.
setPayAccount
(
bindCard
.
getOwnerBankAccount
());
vo
.
setPayAccount
(
ownerInfoFeignVO
.
getOwnerBankAccount
());
return
vo
;
}
...
...
@@ -122,6 +123,10 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
OwnerOrderPaymentDetailVO
vo
=
ownerRepaymentStruct
.
convertOrderPaymentDetail
(
ownerRepayment
);
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
(
ClxPayeeConfig
.
XXH_ID
);
vo
.
setPayee
(
payeeMap
.
getName
());
vo
.
setPayeeAccount
(
payeeMap
.
getAccount
());
//计算倒计时时间,下单时间 + 30天 为截止时间
LocalDateTime
endTime
=
ownerRepayment
.
getCreateTime
().
plusDays
(
30
);
vo
.
setFinalPaymentTime
(
DateUtils
.
formatDateTime
(
endTime
).
get
());
...
...
@@ -137,7 +142,8 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
.
payeeAccount
(
payeeMap
.
getAccount
()).
payeeBank
(
payeeMap
.
getBank
()).
payeeBankNo
(
payeeMap
.
getBankNo
())
.
repaymentBalance
(
ownerRepayment
.
getRepaymentBalance
())
.
remittanceIdentificationCode
(
ownerRepayment
.
getRemittanceIdentificationCode
())
.
status
(
ownerRepayment
.
getStatus
()).
finalPaymentTime
(
ownerRepayment
.
getCloseOrderTime
()).
build
();
.
status
(
ownerRepayment
.
getStatus
()).
finalPaymentTime
(
ownerRepayment
.
getCloseOrderTime
())
.
repaymentNo
(
ownerRepayment
.
getRepaymentNo
()).
build
();
}
@Override
...
...
@@ -165,7 +171,6 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
AliSmsMessageReq
req
=
new
AliSmsMessageReq
();
req
.
setTemplateCode
(
messageConfig
.
getRepaymentTemplateCode
());
JSONObject
jsonObject
=
new
JSONObject
();
//随机生成4位数字
jsonObject
.
set
(
"repaymentNo"
,
repaymentNo
);
req
.
setChannelId
(
messageConfig
.
getChannelId
());
req
.
setAppId
(
messageConfig
.
getAppId
().
toString
());
...
...
@@ -176,4 +181,23 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
return
UUID
.
randomUUID
().
toString
();
}
@Override
public
String
sendOrderPaySms
(
String
mobile
,
String
payee
,
String
payeeAccount
)
{
AliSmsMessageReq
req
=
new
AliSmsMessageReq
();
req
.
setTemplateCode
(
messageConfig
.
getOrderPayTemplateCode
());
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
set
(
"companyName"
,
payee
);
jsonObject
.
set
(
"bankAccount"
,
payeeAccount
);
jsonObject
.
set
(
"bankName"
,
""
);
req
.
setChannelId
(
messageConfig
.
getChannelId
());
req
.
setAppId
(
messageConfig
.
getAppId
().
toString
());
req
.
setMobile
(
mobile
);
req
.
setContent
(
jsonObject
.
toString
());
req
.
setExpire
(
300L
);
clxMessageOpenapiFeign
.
sendAliSms
(
req
);
return
UUID
.
randomUUID
().
toString
();
}
}
performance-web/src/main/java/com/clx/performance/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
浏览文件 @
b76e556b
...
...
@@ -83,7 +83,7 @@ public class NbBankServiceImpl implements NbBankService {
* @param payAcctNm 付款户名
*/
@Override
public
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
Integer
amount
,
public
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
String
remark
,
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
String
merSeqNo
=
idGenerateSnowFlake
.
nextIdToString
(
1L
);
...
...
@@ -94,7 +94,7 @@ public class NbBankServiceImpl implements NbBankService {
String
transSeqNo
=
data
.
getString
(
"transSeqNo"
);
if
(
StringUtils
.
isBlank
(
transSeqNo
))
{
log
.
info
(
"宁波银行订单支付失败,
借款
单号{},返回结果:{}"
,
loanNo
,
data
);
log
.
info
(
"宁波银行订单支付失败,单号{},返回结果:{}"
,
loanNo
,
data
);
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
NB_BANK_ORDER_PAY_ERROR
);
}
NbBankOrderPayResultVO
result
=
new
NbBankOrderPayResultVO
();
...
...
@@ -242,10 +242,13 @@ public class NbBankServiceImpl implements NbBankService {
param
.
setPayStatus
(
transStatus
);
Message
message
=
MessageBuilder
.
withBody
(
JSONUtil
.
parse
(
param
).
toString
().
getBytes
()).
build
();
//执行解绑自有车辆处理逻辑,将绑定记录正常改为取消
if
(
"借款单"
.
equals
(
bankTrade
.
getRemark
()))
{
//执行借款支付成功通知
rabbitTemplate
.
send
(
RabbitKeyConstants
.
OWNER_LOAN_EXCHANGE
,
RabbitKeyConstants
.
OWNER_LOAN_PAY_ROUTE_KEY
,
message
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/loan/OwnerLoanAccountService.java
浏览文件 @
b76e556b
package
com
.
clx
.
performance
.
service
.
loan
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.loan.carrier.OwnerRepaymentParam
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerLoanAccountParam
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierOwnerLoanAccountVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerAccountVO
;
...
...
@@ -18,5 +19,5 @@ public interface OwnerLoanAccountService {
OwnerAccountVO
getOwnerLoanAccount
();
void
o
rderChildLoanProcess
(
Long
ownerUserNo
);
void
o
wnerRepayment
(
OwnerRepaymentParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/loan/OwnerLoanRecordService.java
浏览文件 @
b76e556b
...
...
@@ -51,4 +51,10 @@ public interface OwnerLoanRecordService {
void
ownerLoanRecordCancelPay
(
String
loanNo
);
String
sendLoanSms
(
String
mobile
,
Long
loanNo
);
String
sendOrderPaySms
(
String
mobile
,
String
payee
,
String
payeeAccount
);
void
ownerLoanRecordSubmitNbBank
(
CarrierOwnerLoanRecordApproveParam
param
);
void
orderChildLoanProcess
(
Long
ownerUserNo
);
}
performance-web/src/main/java/com/clx/performance/service/loan/OwnerRepaymentService.java
浏览文件 @
b76e556b
...
...
@@ -31,4 +31,5 @@ public interface OwnerRepaymentService {
String
savePaymentApplicationForm
(
ExportPaymentApplicationFormParam
param
);
String
sendPaymentSms
(
String
mobile
,
Long
repaymentNo
);
String
sendOrderPaySms
(
String
mobile
,
String
payee
,
String
payeeAccount
);
}
performance-web/src/main/java/com/clx/performance/service/thirdparty/nbbank/NbBankService.java
浏览文件 @
b76e556b
...
...
@@ -10,7 +10,7 @@ public interface NbBankService {
NbBankOrderPayResultVO
orderTransferPay
(
Integer
amount
);
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
Integer
amount
,
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
String
remark
,
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
);
NbBankOrderResultVO
getResult
(
String
merSeqNo
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论