Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
4d517c35
提交
4d517c35
authored
2月 22, 2024
作者:
liuhaiquan
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/v10.7_borrowing_and_repayment_20240118' into test
上级
12fc56a0
1a36cec6
显示空白字符变更
内嵌
并排
正在显示
57 个修改的文件
包含
890 行增加
和
203 行删除
+890
-203
PerformanceResultEnum.java
...java/com/clx/performance/enums/PerformanceResultEnum.java
+1
-0
BankTradeEnum.java
...in/java/com/clx/performance/enums/loan/BankTradeEnum.java
+1
-1
OwnerLoanRecordEnum.java
...a/com/clx/performance/enums/loan/OwnerLoanRecordEnum.java
+19
-0
OwnerLoanPayNotifyMqParam.java
.../com/clx/performance/param/OwnerLoanPayNotifyMqParam.java
+18
-0
OwnerBindCardParam.java
...java/com/clx/performance/param/pc/OwnerBindCardParam.java
+3
-0
PageCarrierOwnerRepaymentParam.java
...param/pc/loan/carrier/PageCarrierOwnerRepaymentParam.java
+5
-0
OwnerLoanRecordParam.java
...performance/param/pc/loan/owner/OwnerLoanRecordParam.java
+12
-6
CarrierOwnerOrderPaymentDetailVO.java
.../vo/pc/loan/carrier/CarrierOwnerOrderPaymentDetailVO.java
+8
-8
ExportOwnerLoanRecordVO.java
...rformance/vo/pc/loan/carrier/ExportOwnerLoanRecordVO.java
+2
-2
OwnerLoanRecordVO.java
...clx/performance/vo/pc/loan/carrier/OwnerLoanRecordVO.java
+3
-4
BorrowerSelectVO.java
...om/clx/performance/vo/pc/loan/owner/BorrowerSelectVO.java
+3
-0
OwnerPageSettlementOwnerVO.java
...rmance/vo/pc/owner/settle/OwnerPageSettlementOwnerVO.java
+3
-0
OrderChildLoanComponent.java
...om/clx/performance/component/OrderChildLoanComponent.java
+33
-5
RabbitBeanConfig.java
...ain/java/com/clx/performance/config/RabbitBeanConfig.java
+38
-4
ClxPayeeConfig.java
.../java/com/clx/performance/config/loan/ClxPayeeConfig.java
+6
-5
NbBankConfig.java
.../java/com/clx/performance/config/nbbank/NbBankConfig.java
+1
-0
RabbitKeyConstants.java
...java/com/clx/performance/constant/RabbitKeyConstants.java
+10
-0
CarrierOwnerLoanRecordController.java
...ler/pc/loan/carrier/CarrierOwnerLoanRecordController.java
+33
-18
CarrierOwnerRepaymentController.java
...ller/pc/loan/carrier/CarrierOwnerRepaymentController.java
+9
-4
OwnerSettlementOwnerController.java
...e/controller/pc/owner/OwnerSettlementOwnerController.java
+1
-2
BankTradeDaoImpl.java
...a/com/clx/performance/dao/impl/loan/BankTradeDaoImpl.java
+11
-0
OrderChildLoanRetryRecordDaoImpl.java
...mance/dao/impl/loan/OrderChildLoanRetryRecordDaoImpl.java
+23
-0
OwnerLoanRecordDaoImpl.java
...clx/performance/dao/impl/loan/OwnerLoanRecordDaoImpl.java
+5
-6
OwnerRepaymentDaoImpl.java
.../clx/performance/dao/impl/loan/OwnerRepaymentDaoImpl.java
+3
-0
SettlementDriverDetailDaoImpl.java
...rmance/dao/impl/settle/SettlementDriverDetailDaoImpl.java
+1
-0
SettlementOwnerDetailDaoImpl.java
...ormance/dao/impl/settle/SettlementOwnerDetailDaoImpl.java
+1
-0
BankTradeDao.java
.../main/java/com/clx/performance/dao/loan/BankTradeDao.java
+3
-0
OrderChildLoanRetryRecordDao.java
...lx/performance/dao/loan/OrderChildLoanRetryRecordDao.java
+17
-0
OwnerLoanRecordDao.java
...java/com/clx/performance/dao/loan/OwnerLoanRecordDao.java
+2
-2
SettlementDriverDetailDao.java
...clx/performance/dao/settle/SettlementDriverDetailDao.java
+1
-0
SettlementOwnerDetailDao.java
.../clx/performance/dao/settle/SettlementOwnerDetailDao.java
+1
-0
OwnerLoanMqDTO.java
...src/main/java/com/clx/performance/dto/OwnerLoanMqDTO.java
+16
-0
SettlementListener.java
...in/java/com/clx/performance/event/SettlementListener.java
+41
-0
SettlementUpdateEvent.java
...java/com/clx/performance/event/SettlementUpdateEvent.java
+45
-0
OwnerInfoService.java
...a/com/clx/performance/extranal/user/OwnerInfoService.java
+4
-0
OwnerInfoServiceImpl.java
.../performance/extranal/user/impl/OwnerInfoServiceImpl.java
+8
-0
OrderChildSyncTransportListener.java
...performance/listener/OrderChildSyncTransportListener.java
+15
-26
OwnerLoanListener.java
.../java/com/clx/performance/listener/OwnerLoanListener.java
+64
-0
OwnerLoanPayNotifyListener.java
.../clx/performance/listener/OwnerLoanPayNotifyListener.java
+39
-0
OrderChildLoanRetryRecordMapper.java
...formance/mapper/loan/OrderChildLoanRetryRecordMapper.java
+12
-0
OwnerBindCardRecord.java
...n/java/com/clx/performance/model/OwnerBindCardRecord.java
+5
-0
BankTrade.java
...c/main/java/com/clx/performance/model/loan/BankTrade.java
+1
-0
OrderChildLoanRetryRecord.java
...clx/performance/model/loan/OrderChildLoanRetryRecord.java
+51
-0
OwnerLoanRecord.java
.../java/com/clx/performance/model/loan/OwnerLoanRecord.java
+4
-7
OwnerAccountServiceImpl.java
...clx/performance/service/impl/OwnerAccountServiceImpl.java
+3
-1
OwnerLoanAccountServiceImpl.java
...rmance/service/impl/loan/OwnerLoanAccountServiceImpl.java
+56
-1
OwnerLoanRecordServiceImpl.java
...ormance/service/impl/loan/OwnerLoanRecordServiceImpl.java
+161
-64
OwnerRepaymentServiceImpl.java
...formance/service/impl/loan/OwnerRepaymentServiceImpl.java
+41
-3
SettlementDriverDetailServiceImpl.java
...ervice/impl/settle/SettlementDriverDetailServiceImpl.java
+1
-1
SettlementOwnerDetailServiceImpl.java
...service/impl/settle/SettlementOwnerDetailServiceImpl.java
+11
-8
NbBankServiceImpl.java
...nce/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
+19
-17
OwnerLoanAccountService.java
...clx/performance/service/loan/OwnerLoanAccountService.java
+2
-0
OwnerLoanRecordService.java
.../clx/performance/service/loan/OwnerLoanRecordService.java
+8
-4
OwnerRepaymentService.java
...m/clx/performance/service/loan/OwnerRepaymentService.java
+2
-0
BorrowerSqlProvider.java
...clx/performance/sqlProvider/loan/BorrowerSqlProvider.java
+1
-1
OwnerLoanRecordSqlProvider.java
...formance/sqlProvider/loan/OwnerLoanRecordSqlProvider.java
+1
-1
OwnerLoanRecordStruct.java
...om/clx/performance/struct/loan/OwnerLoanRecordStruct.java
+2
-2
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/PerformanceResultEnum.java
浏览文件 @
4d517c35
...
@@ -137,6 +137,7 @@ public enum PerformanceResultEnum implements ResultEnum {
...
@@ -137,6 +137,7 @@ public enum PerformanceResultEnum implements ResultEnum {
OWNER_LOAN_RECORD_PAY_STATUS_ERROR
(
1850
,
"状态已变更无法支付"
),
OWNER_LOAN_RECORD_PAY_STATUS_ERROR
(
1850
,
"状态已变更无法支付"
),
OWNER_LOAN_RECORD_CANCEL_STATUS_ERROR
(
1851
,
"状态已变更无法取消"
),
;
;
private
final
int
code
;
private
final
int
code
;
...
...
performance-api/src/main/java/com/clx/performance/enums/loan/BankTradeEnum.java
浏览文件 @
4d517c35
...
@@ -13,7 +13,7 @@ public enum BankTradeEnum {
...
@@ -13,7 +13,7 @@ public enum BankTradeEnum {
@Getter
@Getter
@AllArgsConstructor
@AllArgsConstructor
public
enum
TradeType
{
public
enum
TradeType
{
ORDER_DIRECT_PAY
(
1
,
"订单支付"
),
ORDER_DIRECT_PAY
(
3
,
"订单支付"
),
ORDER_TRANSFER_PAY
(
2
,
"转账支付"
),
ORDER_TRANSFER_PAY
(
2
,
"转账支付"
),
;
;
...
...
performance-api/src/main/java/com/clx/performance/enums/loan/OwnerLoanRecordEnum.java
浏览文件 @
4d517c35
...
@@ -54,6 +54,25 @@ public enum OwnerLoanRecordEnum {
...
@@ -54,6 +54,25 @@ public enum OwnerLoanRecordEnum {
}
}
}
}
@Getter
@AllArgsConstructor
public
enum
LoanFlag
{
NO_LOAN
(
0
,
"未借款"
),
LOAN
(
2
,
"已借款"
),
RE_PAY
(
3
,
"已还款"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
LoanFlag
>
getByCode
(
Integer
code
)
{
return
Arrays
.
stream
(
values
()).
filter
(
e
->
Objects
.
equals
(
e
.
code
,
code
)).
findFirst
();
}
public
static
String
getMsgByCode
(
Integer
code
)
{
return
getByCode
(
code
).
map
(
LoanFlag:
:
getMsg
).
orElse
(
null
);
}
}
@Getter
@Getter
@AllArgsConstructor
@AllArgsConstructor
...
...
performance-api/src/main/java/com/clx/performance/param/OwnerLoanPayNotifyMqParam.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
param
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotNull
;
@Data
public
class
OwnerLoanPayNotifyMqParam
{
@NotNull
(
message
=
"流水号不能为空"
)
@ApiModelProperty
(
"流水号"
)
private
String
merSeqNo
;
@ApiModelProperty
(
"支付状态"
)
private
Integer
payStatus
;
}
performance-api/src/main/java/com/clx/performance/param/pc/OwnerBindCardParam.java
浏览文件 @
4d517c35
...
@@ -20,6 +20,9 @@ public class OwnerBindCardParam {
...
@@ -20,6 +20,9 @@ public class OwnerBindCardParam {
@ApiModelProperty
(
value
=
"开户行"
)
@ApiModelProperty
(
value
=
"开户行"
)
private
String
ownerOpenBank
;
private
String
ownerOpenBank
;
@ApiModelProperty
(
value
=
"开户行号"
)
private
String
ownerOpenBankNumber
;
@ApiModelProperty
(
value
=
"户名"
)
@ApiModelProperty
(
value
=
"户名"
)
private
String
ownerAccountName
;
private
String
ownerAccountName
;
...
...
performance-api/src/main/java/com/clx/performance/param/pc/loan/carrier/PageCarrierOwnerRepaymentParam.java
浏览文件 @
4d517c35
...
@@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty;
...
@@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
import
java.util.List
;
/**
/**
* @ClassName PageCarrierOwnerRepaymentParam
* @ClassName PageCarrierOwnerRepaymentParam
* @Description
* @Description
...
@@ -38,4 +40,7 @@ public class PageCarrierOwnerRepaymentParam extends PageParam {
...
@@ -38,4 +40,7 @@ public class PageCarrierOwnerRepaymentParam extends PageParam {
@ApiModelProperty
(
"10 未逾期 20 已逾期"
)
@ApiModelProperty
(
"10 未逾期 20 已逾期"
)
private
Integer
beOverdue
;
private
Integer
beOverdue
;
@ApiModelProperty
(
"10 待付款 40 付款中 50 付款成功 60 付款失败"
)
private
List
<
Integer
>
inStatusList
;
}
}
performance-api/src/main/java/com/clx/performance/param/pc/loan/owner/OwnerLoanRecordParam.java
浏览文件 @
4d517c35
...
@@ -22,8 +22,13 @@ public class OwnerLoanRecordParam {
...
@@ -22,8 +22,13 @@ public class OwnerLoanRecordParam {
@MoneyInConvert
@MoneyInConvert
private
BigDecimal
loanBalance
;
private
BigDecimal
loanBalance
;
@ApiModelProperty
(
value
=
"借款方"
,
example
=
"伟华煤炭运销公司"
)
@ApiModelProperty
(
value
=
"借出方ID"
,
example
=
"伟华煤炭运销公司"
)
@NotBlank
(
message
=
"借款方不能为空"
)
@NotNull
(
message
=
"借出方ID不能为空"
)
private
Integer
borrowerId
;
@ApiModelProperty
(
value
=
"借出方"
,
example
=
"诚联信网络科技有限公司"
)
@NotBlank
(
message
=
"借出方不能为空"
)
private
String
borrower
;
private
String
borrower
;
@ApiModelProperty
(
value
=
"收款方"
)
@ApiModelProperty
(
value
=
"收款方"
)
...
@@ -32,12 +37,13 @@ public class OwnerLoanRecordParam {
...
@@ -32,12 +37,13 @@ public class OwnerLoanRecordParam {
@ApiModelProperty
(
value
=
"收款方账户"
)
@ApiModelProperty
(
value
=
"收款方账户"
)
private
String
payeeAccount
;
private
String
payeeAccount
;
@ApiModelProperty
(
value
=
"借出方"
,
example
=
"诚联信网络科技有限公司"
)
@NotBlank
(
message
=
"借出方不能为空"
)
@ApiModelProperty
(
value
=
"借款方"
,
example
=
"伟华煤炭运销公司"
)
@NotBlank
(
message
=
"借款方不能为空"
)
private
String
lendingParty
;
private
String
lendingParty
;
@ApiModelProperty
(
value
=
"借
出
方账户"
,
example
=
"诚联信银行账户"
)
@ApiModelProperty
(
value
=
"借
款
方账户"
,
example
=
"诚联信银行账户"
)
@NotBlank
(
message
=
"借
出
方不能为空"
)
@NotBlank
(
message
=
"借
款
方不能为空"
)
private
String
lendingPartyAccount
;
private
String
lendingPartyAccount
;
@ApiModelProperty
(
value
=
"借出时效(天)"
,
example
=
"2"
)
@ApiModelProperty
(
value
=
"借出时效(天)"
,
example
=
"2"
)
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/OwnerOrderPaymentDetailVO.java
→
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/
Carrier
OwnerOrderPaymentDetailVO.java
浏览文件 @
4d517c35
...
@@ -20,22 +20,22 @@ import java.math.BigDecimal;
...
@@ -20,22 +20,22 @@ import java.math.BigDecimal;
@NoArgsConstructor
@NoArgsConstructor
@AllArgsConstructor
@AllArgsConstructor
@Builder
@Builder
public
class
OwnerOrderPaymentDetailVO
{
public
class
Carrier
OwnerOrderPaymentDetailVO
{
@ApiModelProperty
(
"借款单号"
)
@ApiModelProperty
(
"借款单号"
)
private
Long
loanNo
;
private
Long
loanNo
;
@ApiModelProperty
(
"付款方"
)
@ApiModelProperty
(
"付款方
(借款记录中的借出方为现在的付款方)
"
)
private
String
lendingParty
;
private
String
payer
;
@ApiModelProperty
(
"付款账户"
)
@ApiModelProperty
(
"付款账户
(借款记录中的借出方账户为现在的付款方账户)
"
)
private
String
lendingParty
Account
;
private
String
payer
Account
;
@ApiModelProperty
(
"收款方
"
)
@ApiModelProperty
(
value
=
"收款方"
,
example
=
"馨祥和
"
)
private
String
borrower
;
private
String
payee
;
@ApiModelProperty
(
"收款账户"
)
@ApiModelProperty
(
"收款账户"
)
private
String
borrower
Account
;
private
String
payee
Account
;
@MoneyOutConvert
@MoneyOutConvert
@ApiModelProperty
(
"订单金额"
)
@ApiModelProperty
(
"订单金额"
)
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/ExportOwnerLoanRecordVO.java
浏览文件 @
4d517c35
...
@@ -72,11 +72,11 @@ public class ExportOwnerLoanRecordVO {
...
@@ -72,11 +72,11 @@ public class ExportOwnerLoanRecordVO {
private
String
borrower
;
private
String
borrower
;
@ApiModelProperty
(
"借
出
方"
)
@ApiModelProperty
(
"借
款
方"
)
private
String
lendingParty
;
private
String
lendingParty
;
@ApiModelProperty
(
"借
出
方账户"
)
@ApiModelProperty
(
"借
款
方账户"
)
private
String
lendingPartyAccount
;
private
String
lendingPartyAccount
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/carrier/OwnerLoanRecordVO.java
浏览文件 @
4d517c35
...
@@ -66,14 +66,13 @@ public class OwnerLoanRecordVO {
...
@@ -66,14 +66,13 @@ public class OwnerLoanRecordVO {
@ApiModelProperty
(
"借款方"
)
@ApiModelProperty
(
"借款方"
)
private
String
borrower
;
private
String
borrower
;
@ApiModelProperty
(
"借出方ID"
)
private
String
lendingPartyId
;
@ApiModelProperty
(
"借出方"
)
@ApiModelProperty
(
"借款方"
)
private
String
lendingParty
;
private
String
lendingParty
;
@ApiModelProperty
(
"借
出
方账户"
)
@ApiModelProperty
(
"借
款
方账户"
)
private
String
lendingPartyAccount
;
private
String
lendingPartyAccount
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/loan/owner/BorrowerSelectVO.java
浏览文件 @
4d517c35
...
@@ -16,6 +16,9 @@ import lombok.Setter;
...
@@ -16,6 +16,9 @@ import lombok.Setter;
@Setter
@Setter
public
class
BorrowerSelectVO
{
public
class
BorrowerSelectVO
{
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"借出方"
)
@ApiModelProperty
(
"借出方"
)
private
String
name
;
private
String
name
;
...
...
performance-api/src/main/java/com/clx/performance/vo/pc/owner/settle/OwnerPageSettlementOwnerVO.java
浏览文件 @
4d517c35
...
@@ -43,6 +43,9 @@ public class OwnerPageSettlementOwnerVO {
...
@@ -43,6 +43,9 @@ public class OwnerPageSettlementOwnerVO {
@ApiModelProperty
(
value
=
"货损金额"
)
@ApiModelProperty
(
value
=
"货损金额"
)
private
BigDecimal
lossFreight
;
private
BigDecimal
lossFreight
;
@MoneyOutConvert
@MoneyOutConvert
@ApiModelProperty
(
value
=
"借款金额"
)
private
BigDecimal
loanFreight
;
@MoneyOutConvert
@ApiModelProperty
(
value
=
"结算金额"
)
@ApiModelProperty
(
value
=
"结算金额"
)
private
BigDecimal
settlementFreight
;
private
BigDecimal
settlementFreight
;
@MoneyOutConvert
@MoneyOutConvert
...
...
performance-web/src/main/java/com/clx/performance/component/OrderChildLoanComponent.java
浏览文件 @
4d517c35
...
@@ -20,6 +20,7 @@ import com.clx.performance.enums.loan.OwnerLoanAccountRunningWaterRecordEnum;
...
@@ -20,6 +20,7 @@ import com.clx.performance.enums.loan.OwnerLoanAccountRunningWaterRecordEnum;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.enums.settle.SettlementWayEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OwnerRunningWaterRecord
;
import
com.clx.performance.model.OwnerRunningWaterRecord
;
...
@@ -43,6 +44,7 @@ import java.math.BigDecimal;
...
@@ -43,6 +44,7 @@ import java.math.BigDecimal;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.LinkedList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
@Component
@Component
...
@@ -170,8 +172,16 @@ public class OrderChildLoanComponent {
...
@@ -170,8 +172,16 @@ public class OrderChildLoanComponent {
* @param settlementOwnerDetail
* @param settlementOwnerDetail
*/
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
childLoanConfirmAfterProcess
(
SettlementDriverDetail
settlementDriverDetail
,
SettlementOwnerDetail
settlementOwnerDetail
)
{
public
void
childLoanConfirmAfterProcess
(
SettlementDriverDetail
settlementDriverDetail
,
SettlementOwnerDetail
settlementOwnerDetail
,
OrderChild
orderChild
)
{
log
.
info
(
"1.运单确认收货后借款相关处理执行"
);
log
.
info
(
"1.运单确认收货后借款相关处理执行"
);
OwnerQuotationDetailVO
quotationDetailVO
=
orderFeign
.
getQuotationByOrderNo
(
settlementDriverDetail
.
getOrderNo
()).
getData
();
BigDecimal
freightFreezeRate
=
quotationDetailVO
.
getFreightFreezeRate
();
if
(
freightFreezeRate
.
compareTo
(
BigDecimal
.
ONE
)
==
0
)
{
//百分百预付不需要考虑借款账户
log
.
info
(
"1.1百分百预付不需要考虑借款账户"
);
return
;
}
if
(
SettlementOwnerEnum
.
InvoiceType
.
ORDINARY
.
getCode
().
equals
(
settlementDriverDetail
.
getInvoiceType
()))
{
if
(
SettlementOwnerEnum
.
InvoiceType
.
ORDINARY
.
getCode
().
equals
(
settlementDriverDetail
.
getInvoiceType
()))
{
log
.
info
(
"2.当前不是网运单,不需要处理借款标识"
);
log
.
info
(
"2.当前不是网运单,不需要处理借款标识"
);
return
;
return
;
...
@@ -182,10 +192,15 @@ public class OrderChildLoanComponent {
...
@@ -182,10 +192,15 @@ public class OrderChildLoanComponent {
return
;
return
;
}
}
String
childNo
=
settlementDriverDetail
.
getChildNo
();
String
childNo
=
settlementDriverDetail
.
getChildNo
();
List
<
OwnerLoanAccountRunningWaterRecord
>
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
List
<
OwnerLoanAccountRunningWaterRecord
>
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
(
childNo
,
OwnerLoanAccountRunningWaterRecordEnum
.
RunWaterType
.
APPROVE_FROZEN
.
getCode
());
(
childNo
,
OwnerLoanAccountRunningWaterRecordEnum
.
RunWaterType
.
APPROVE_FROZEN
.
getCode
());
settlementDriverDetail
.
setLoanFlag
(
1
);
//已借款
settlementDriverDetail
.
setLoanFlag
(
OwnerLoanRecordEnum
.
LoanFlag
.
LOAN
.
getCode
());
// 抵扣金额
settlementOwnerDetail
.
setLoanFreight
(
settlementFreightCalc
(
orderChild
.
getSettlementWay
(),
settlementOwnerDetail
));
settlementOwnerDetail
.
setLoanFreight
(
settlementOwnerDetail
.
getSettlementFreight
());
settlementOwnerDetail
.
setLoanFreight
(
settlementOwnerDetail
.
getSettlementFreight
());
log
.
info
(
"4.查询当前运单号:{}, 当前货主,{}, 此运单借款冻结记录:{}"
,
childNo
,
settlementOwnerDetail
.
getOwnerUserNo
(),
JSONUtil
.
parse
(
runningWaterRecordList
));
log
.
info
(
"4.查询当前运单号:{}, 当前货主,{}, 此运单借款冻结记录:{}"
,
childNo
,
settlementOwnerDetail
.
getOwnerUserNo
(),
JSONUtil
.
parse
(
runningWaterRecordList
));
...
@@ -198,7 +213,7 @@ public class OrderChildLoanComponent {
...
@@ -198,7 +213,7 @@ public class OrderChildLoanComponent {
param
.
setChildNo
(
childNo
);
param
.
setChildNo
(
childNo
);
param
.
setSettlementDriverDetail
(
settlementDriverDetail
);
param
.
setSettlementDriverDetail
(
settlementDriverDetail
);
param
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
param
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
//扣钱,获取锁,此处有可能钱不够,抛异常,
走网络货运重试
//扣钱,获取锁,此处有可能钱不够,抛异常,
getLoanBalanceLock
(
param
);
getLoanBalanceLock
(
param
);
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
...
@@ -237,7 +252,7 @@ public class OrderChildLoanComponent {
...
@@ -237,7 +252,7 @@ public class OrderChildLoanComponent {
param
.
setChildNo
(
childNo
);
param
.
setChildNo
(
childNo
);
param
.
setSettlementDriverDetail
(
settlementDriverDetail
);
param
.
setSettlementDriverDetail
(
settlementDriverDetail
);
param
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
param
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
//扣钱,获取锁,此处有可能钱不够,抛异常,
走网络货运重试
//扣钱,获取锁,此处有可能钱不够,抛异常,
getLoanBalanceLock
(
param
);
getLoanBalanceLock
(
param
);
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
runningWaterRecordList
=
ownerLoanAccountRunningWaterRecordDao
.
getListByOrderNoAndRunningWaterType
...
@@ -372,7 +387,7 @@ public class OrderChildLoanComponent {
...
@@ -372,7 +387,7 @@ public class OrderChildLoanComponent {
try
{
try
{
lock
=
redissonClient
.
getLock
(
RedissonConstants
.
ORDER_CHILD_LOAN_OWNER_USERID_LOCK
+
dto
.
getOwnerUserNo
());
lock
=
redissonClient
.
getLock
(
RedissonConstants
.
ORDER_CHILD_LOAN_OWNER_USERID_LOCK
+
dto
.
getOwnerUserNo
());
boolean
flag
=
lock
.
tryLock
(
15
,
30
,
TimeUnit
.
SECONDS
);
boolean
flag
=
lock
.
tryLock
(
3
,
5
,
TimeUnit
.
SECONDS
);
if
(!
flag
)
{
if
(!
flag
)
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
GET_LOAN_RECORD
);
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
GET_LOAN_RECORD
);
}
}
...
@@ -386,4 +401,17 @@ public class OrderChildLoanComponent {
...
@@ -386,4 +401,17 @@ public class OrderChildLoanComponent {
}
}
}
}
}
}
/**
* 结算金额
*/
private
BigDecimal
settlementFreightCalc
(
Integer
settlementWay
,
SettlementOwnerDetail
settlementOwnerDetail
)
{
if
(
Objects
.
equals
(
settlementWay
,
SettlementWayEnum
.
WayType
.
LOAD
.
getCode
()))
{
//订单结算方式为“装车净重”时,结算金额=实际净重*平台运费报价-预付运费-货损金额。
return
settlementOwnerDetail
.
getWeight
().
multiply
(
settlementOwnerDetail
.
getFreightPrice
())
.
subtract
(
settlementOwnerDetail
.
getPrepayFreight
()).
subtract
(
settlementOwnerDetail
.
getLossFreight
());
}
else
{
//订单结算方式为“卸车净重”时,结算金额=实际净重*平台运费报价-预付运费
return
settlementOwnerDetail
.
getWeight
().
multiply
(
settlementOwnerDetail
.
getFreightPrice
()).
subtract
(
settlementOwnerDetail
.
getPrepayFreight
());
}
}
}
}
performance-web/src/main/java/com/clx/performance/config/RabbitBeanConfig.java
浏览文件 @
4d517c35
...
@@ -67,7 +67,6 @@ public class RabbitBeanConfig {
...
@@ -67,7 +67,6 @@ public class RabbitBeanConfig {
/**
/**
* 处理延迟消息货单挂单
* 处理延迟消息货单挂单
* @return
*/
*/
@Bean
@Bean
public
Queue
orderGoodsOnDeadQueue
()
{
public
Queue
orderGoodsOnDeadQueue
()
{
...
@@ -93,7 +92,6 @@ public class RabbitBeanConfig {
...
@@ -93,7 +92,6 @@ public class RabbitBeanConfig {
/**
/**
* 订单取消队列
* 订单取消队列
* @return
*/
*/
@Bean
@Bean
public
Queue
orderCancelQueue
()
{
public
Queue
orderCancelQueue
()
{
...
@@ -118,7 +116,6 @@ public class RabbitBeanConfig {
...
@@ -118,7 +116,6 @@ public class RabbitBeanConfig {
/**
/**
* 运单同步网络货运队列
* 运单同步网络货运队列
* @return
*/
*/
@Bean
@Bean
public
Queue
orderChildSyncTransportQueue
()
{
public
Queue
orderChildSyncTransportQueue
()
{
...
@@ -143,7 +140,6 @@ public class RabbitBeanConfig {
...
@@ -143,7 +140,6 @@ public class RabbitBeanConfig {
/**
/**
* 处理延迟消息orderGoodsTruckBind
* 处理延迟消息orderGoodsTruckBind
* @return
*/
*/
@Bean
@Bean
public
Queue
orderGoodsTruckBindQueue
()
{
public
Queue
orderGoodsTruckBindQueue
()
{
...
@@ -166,4 +162,42 @@ public class RabbitBeanConfig {
...
@@ -166,4 +162,42 @@ public class RabbitBeanConfig {
public
Binding
orderGoodsTruckBindBindingDelayedExchange
(
@Qualifier
(
"orderGoodsTruckBindQueue"
)
Queue
queue
,
@Qualifier
(
"orderGoodsTruckBindExchange"
)
CustomExchange
customExchange
)
{
public
Binding
orderGoodsTruckBindBindingDelayedExchange
(
@Qualifier
(
"orderGoodsTruckBindQueue"
)
Queue
queue
,
@Qualifier
(
"orderGoodsTruckBindExchange"
)
CustomExchange
customExchange
)
{
return
BindingBuilder
.
bind
(
queue
).
to
(
customExchange
).
with
(
RabbitKeyConstants
.
ORDER_TRUCK_BIND_LAZY_ROUTE_KEY
).
noargs
();
return
BindingBuilder
.
bind
(
queue
).
to
(
customExchange
).
with
(
RabbitKeyConstants
.
ORDER_TRUCK_BIND_LAZY_ROUTE_KEY
).
noargs
();
}
}
/**
* 货主借款支付处理
*/
@Bean
public
Queue
ownerLoanPayQueue
()
{
return
new
Queue
(
RabbitKeyConstants
.
OWNER_LOAN_PAY_QUEUE
,
true
,
false
,
false
);
}
/**
* 货主借款支付处理
**/
@Bean
public
DirectExchange
ownerLoanExchange
()
{
return
new
DirectExchange
(
RabbitKeyConstants
.
OWNER_LOAN_EXCHANGE
);
}
/**
* 货主借款支付处理
*/
@Bean
public
Binding
ownerLoanPayBind
()
{
return
BindingBuilder
.
bind
(
ownerLoanPayQueue
()).
to
(
ownerLoanExchange
()).
with
(
RabbitKeyConstants
.
OWNER_LOAN_PAY_ROUTE_KEY
);
}
/**
* 货主借款队列
* @return
*/
@Bean
public
Queue
ownerLoanQueue
()
{
return
new
Queue
(
RabbitKeyConstants
.
OWNER_LOAN_QUEUE
,
true
,
false
,
false
);
}
@Bean
public
Binding
ownerLoanBind
()
{
return
BindingBuilder
.
bind
(
ownerLoanQueue
()).
to
(
ownerLoanExchange
()).
with
(
RabbitKeyConstants
.
OWNER_LOAN_ROUTE_KEY
);
}
}
}
performance-web/src/main/java/com/clx/performance/config/loan/ClxPayeeConfig.java
浏览文件 @
4d517c35
...
@@ -26,18 +26,19 @@ public class ClxPayeeConfig {
...
@@ -26,18 +26,19 @@ public class ClxPayeeConfig {
public
static
final
String
XXH_ID
=
"1"
;
public
static
final
String
XXH_ID
=
"1"
;
// 这里的名字要和yml中的对应字段名称一致
private
static
Map
<
String
,
PayeeConfig
>
payeeMap
=
new
TreeMap
<>();
private
static
Map
<
String
,
PayeeConfig
>
payeeMap
=
new
TreeMap
<>();
public
static
List
<
PayeeConfig
>
payeeList
=
new
ArrayList
<>();
// 这里的名字要和yml中的对应字段名称一致
public
static
List
<
PayeeConfig
>
payee
=
new
ArrayList
<>();
// 注意此处的 static 关键字
// 注意此处的 static 关键字
public
static
PayeeConfig
getPayee
Map
(
String
id
)
{
public
static
PayeeConfig
getPayee
(
String
id
)
{
return
payeeMap
.
get
(
id
);
return
payeeMap
.
get
(
id
);
}
}
public
void
setPayee
Map
(
List
<
PayeeConfig
>
payeeConfigs
)
{
public
void
setPayee
(
List
<
PayeeConfig
>
payeeConfigs
)
{
payee
List
=
payeeConfigs
;
payee
=
payeeConfigs
;
payeeMap
=
payeeConfigs
.
stream
().
collect
(
Collectors
.
toMap
(
PayeeConfig:
:
getId
,
value
->
value
));
payeeMap
=
payeeConfigs
.
stream
().
collect
(
Collectors
.
toMap
(
PayeeConfig:
:
getId
,
value
->
value
));
}
}
...
...
performance-web/src/main/java/com/clx/performance/config/nbbank/NbBankConfig.java
浏览文件 @
4d517c35
...
@@ -16,5 +16,6 @@ public class NbBankConfig {
...
@@ -16,5 +16,6 @@ public class NbBankConfig {
private
String
configFilePath
;
private
String
configFilePath
;
private
String
publicKeyPath
;
private
String
publicKeyPath
;
private
String
privateKeyPath
;
private
String
privateKeyPath
;
private
String
orderSupportBank
;
}
}
performance-web/src/main/java/com/clx/performance/constant/RabbitKeyConstants.java
浏览文件 @
4d517c35
...
@@ -83,4 +83,14 @@ public class RabbitKeyConstants {
...
@@ -83,4 +83,14 @@ public class RabbitKeyConstants {
public
static
final
String
ORDER_TRUCK_BIND_LAZY_QUEUE
=
"clx-order.truck.bind.lazy.queue"
;
public
static
final
String
ORDER_TRUCK_BIND_LAZY_QUEUE
=
"clx-order.truck.bind.lazy.queue"
;
public
static
final
String
ORDER_TRUCK_BIND_LAZY_ROUTE_KEY
=
"clx-order.truck.bind.lazy.route.key"
;
public
static
final
String
ORDER_TRUCK_BIND_LAZY_ROUTE_KEY
=
"clx-order.truck.bind.lazy.route.key"
;
public
static
final
String
OWNER_LOAN_EXCHANGE
=
"clx-performance.loan.exchange"
;
public
static
final
String
OWNER_LOAN_PAY_ROUTE_KEY
=
"clx-performance.loan.pay.route.key"
;
public
static
final
String
OWNER_LOAN_PAY_QUEUE
=
"clx-performance.loan.pay.queue"
;
public
static
final
String
OWNER_LOAN_ROUTE_KEY
=
"clx-performance.loan.route.key"
;
public
static
final
String
OWNER_LOAN_QUEUE
=
"clx-performance.loan.queue"
;
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/loan/carrier/CarrierOwnerLoanRecordController.java
浏览文件 @
4d517c35
...
@@ -5,7 +5,7 @@ import com.clx.performance.param.pc.loan.carrier.*;
...
@@ -5,7 +5,7 @@ import com.clx.performance.param.pc.loan.carrier.*;
import
com.clx.performance.param.pc.loan.owner.ExportPaymentApplicationFormParam
;
import
com.clx.performance.param.pc.loan.owner.ExportPaymentApplicationFormParam
;
import
com.clx.performance.service.loan.OwnerLoanRecordService
;
import
com.clx.performance.service.loan.OwnerLoanRecordService
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.
Carrier
OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.base.PageData
;
...
@@ -19,6 +19,7 @@ import org.apache.ibatis.annotations.Param;
...
@@ -19,6 +19,7 @@ import org.apache.ibatis.annotations.Param;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
@Slf4j
@Slf4j
...
@@ -47,6 +48,20 @@ public class CarrierOwnerLoanRecordController {
...
@@ -47,6 +48,20 @@ public class CarrierOwnerLoanRecordController {
return
Result
.
ok
();
return
Result
.
ok
();
}
}
@ApiOperation
(
value
=
"借款重新支付(只更改借款状态)"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/ownerLoanRecordRetryPay"
)
public
Result
<
Object
>
ownerLoanRecordRetryPay
(
@RequestParam
(
value
=
"loanNo"
)
@NotBlank
String
loanNo
)
{
ownerLoanRecordService
.
ownerLoanRecordRetryPay
(
loanNo
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"取消支付"
,
notes
=
"<br>By:胡宇帆"
)
@GetMapping
(
"/ownerLoanRecordCancelPay"
)
public
Result
<
Object
>
ownerLoanRecordCancelPay
(
@RequestParam
(
value
=
"loanNo"
)
@NotBlank
String
loanNo
)
{
ownerLoanRecordService
.
ownerLoanRecordCancelPay
(
loanNo
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"分页搜索货主借款列表"
,
notes
=
"<br>By:艾庆国"
)
@ApiOperation
(
value
=
"分页搜索货主借款列表"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/pageOwnerLoanRecordOfOwner"
)
@PostMapping
(
"/pageOwnerLoanRecordOfOwner"
)
@UnitCovert
(
param
=
false
)
@UnitCovert
(
param
=
false
)
...
@@ -58,7 +73,7 @@ public class CarrierOwnerLoanRecordController {
...
@@ -58,7 +73,7 @@ public class CarrierOwnerLoanRecordController {
@ApiOperation
(
value
=
"收银台信息"
,
notes
=
"<br>By:刘海泉"
)
@ApiOperation
(
value
=
"收银台信息"
,
notes
=
"<br>By:刘海泉"
)
@GetMapping
(
"/getCashierInfo"
)
@GetMapping
(
"/getCashierInfo"
)
@UnitCovert
(
param
=
false
)
@UnitCovert
(
param
=
false
)
public
Result
<
CarrierCashierInfoVO
>
getCashierInfo
(
@Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
public
Result
<
CarrierCashierInfoVO
>
getCashierInfo
(
@
Request
Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
CarrierCashierInfoVO
vo
=
ownerLoanRecordService
.
getCashierInfo
(
id
);
CarrierCashierInfoVO
vo
=
ownerLoanRecordService
.
getCashierInfo
(
id
);
return
Result
.
ok
(
vo
);
return
Result
.
ok
(
vo
);
}
}
...
@@ -67,15 +82,15 @@ public class CarrierOwnerLoanRecordController {
...
@@ -67,15 +82,15 @@ public class CarrierOwnerLoanRecordController {
@ApiOperation
(
value
=
"订单支付详情"
,
notes
=
"<br>By:刘海泉"
)
@ApiOperation
(
value
=
"订单支付详情"
,
notes
=
"<br>By:刘海泉"
)
@GetMapping
(
"/getOrderPaymentDetail"
)
@GetMapping
(
"/getOrderPaymentDetail"
)
@UnitCovert
(
param
=
false
)
@UnitCovert
(
param
=
false
)
public
Result
<
OwnerOrderPaymentDetailVO
>
getOrderPaymentDetail
(
@Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
public
Result
<
Carrier
OwnerOrderPaymentDetailVO
>
getOrderPaymentDetail
(
@Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
OwnerOrderPaymentDetailVO
vo
=
ownerLoanRecordService
.
getOrderPaymentDetail
(
id
);
Carrier
OwnerOrderPaymentDetailVO
vo
=
ownerLoanRecordService
.
getOrderPaymentDetail
(
id
);
return
Result
.
ok
(
vo
);
return
Result
.
ok
(
vo
);
}
}
@ApiOperation
(
value
=
"转账支付详情"
,
notes
=
"<br>By:刘海泉"
)
@ApiOperation
(
value
=
"转账支付详情"
,
notes
=
"<br>By:刘海泉"
)
@GetMapping
(
"/getTransferPaymentDetail"
)
@GetMapping
(
"/getTransferPaymentDetail"
)
@UnitCovert
(
param
=
false
)
@UnitCovert
(
param
=
false
)
public
Result
<
CarrierTransferPaymentDetailVO
>
getTransferPaymentDetail
(
@Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
public
Result
<
CarrierTransferPaymentDetailVO
>
getTransferPaymentDetail
(
@
Request
Param
(
"id"
)
@NotNull
(
message
=
"id不能为空"
)
Integer
id
)
{
CarrierTransferPaymentDetailVO
vo
=
ownerLoanRecordService
.
getTransferPaymentDetail
(
id
);
CarrierTransferPaymentDetailVO
vo
=
ownerLoanRecordService
.
getTransferPaymentDetail
(
id
);
return
Result
.
ok
(
vo
);
return
Result
.
ok
(
vo
);
}
}
...
@@ -88,19 +103,19 @@ public class CarrierOwnerLoanRecordController {
...
@@ -88,19 +103,19 @@ public class CarrierOwnerLoanRecordController {
return
Result
.
ok
(
url
);
return
Result
.
ok
(
url
);
}
}
@ApiOperation
(
value
=
"借款支付"
,
notes
=
"<br>By:艾庆国"
)
//
@ApiOperation(value = "借款支付",notes = "<br>By:艾庆国")
@PostMapping
(
"/updateOwnerLoanRecordPay"
)
//
@PostMapping("/updateOwnerLoanRecordPay")
public
Result
<
Object
>
updateOwnerLoanRecordPay
(
@RequestBody
@Validated
CarrierOwnerLoanRecordPayParam
param
)
{
//
public Result<Object> updateOwnerLoanRecordPay(@RequestBody @Validated CarrierOwnerLoanRecordPayParam param) {
ownerLoanRecordService
.
updateOwnerLoanRecordPay
(
param
);
//
ownerLoanRecordService.updateOwnerLoanRecordPay(param);
return
Result
.
ok
();
//
return Result.ok();
}
//
}
@ApiOperation
(
value
=
"借款重新支付"
,
notes
=
"<br>By:艾庆国"
)
//
@ApiOperation(value = "借款重新支付",notes = "<br>By:艾庆国")
@PostMapping
(
"/updateOwnerLoanRecordRepay"
)
//
@PostMapping("/updateOwnerLoanRecordRepay")
public
Result
<
Object
>
updateOwnerLoanRecordRepay
(
@RequestBody
@Validated
CarrierOwnerLoanRecordRepayParam
param
)
{
//
public Result<Object> updateOwnerLoanRecordRepay(@RequestBody @Validated CarrierOwnerLoanRecordRepayParam param) {
ownerLoanRecordService
.
updateOwnerLoanRecordRepay
(
param
);
//
ownerLoanRecordService.updateOwnerLoanRecordRepay(param);
return
Result
.
ok
();
//
return Result.ok();
}
//
}
@ApiOperation
(
value
=
"借款支付取消"
,
notes
=
"<br>By:艾庆国"
)
@ApiOperation
(
value
=
"借款支付取消"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/updateOwnerLoanRecordPayCancel"
)
@PostMapping
(
"/updateOwnerLoanRecordPayCancel"
)
...
...
performance-web/src/main/java/com/clx/performance/controller/pc/loan/carrier/CarrierOwnerRepaymentController.java
浏览文件 @
4d517c35
...
@@ -13,10 +13,7 @@ import io.swagger.annotations.ApiOperation;
...
@@ -13,10 +13,7 @@ import io.swagger.annotations.ApiOperation;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@Slf4j
@Slf4j
...
@@ -46,4 +43,12 @@ public class CarrierOwnerRepaymentController {
...
@@ -46,4 +43,12 @@ public class CarrierOwnerRepaymentController {
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
}
@ApiOperation
(
value
=
"逾期且未还款的记录"
,
notes
=
"<br>By:jiwngwenye"
)
@GetMapping
(
"/ownerRepaymentOverdueList"
)
@UnitCovert
(
param
=
false
)
public
Result
<
PageData
<
OwnerRepaymentVO
>>
ownerRepaymentOverdueList
()
{
IPage
<
OwnerRepaymentVO
>
page
=
ownerRepaymentService
.
ownerRepaymentOverdueList
();
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/owner/OwnerSettlementOwnerController.java
浏览文件 @
4d517c35
...
@@ -99,8 +99,7 @@ public class OwnerSettlementOwnerController {
...
@@ -99,8 +99,7 @@ public class OwnerSettlementOwnerController {
@ApiOperation
(
value
=
"导出结算运单明细"
)
@ApiOperation
(
value
=
"导出结算运单明细"
)
@PostMapping
(
"/exportOwnerSettlementOrderDetail"
)
@PostMapping
(
"/exportOwnerSettlementOrderDetail"
)
public
Result
exportOwnerSettlementOrderDetail
(
@RequestBody
@Validated
PageOwnerSettlementOwnerDetailParam
param
,
HttpServletResponse
response
)
throws
Exception
{
public
Result
<
Object
>
exportOwnerSettlementOrderDetail
(
@RequestBody
@Validated
PageOwnerSettlementOwnerDetailParam
param
,
HttpServletResponse
response
)
throws
Exception
{
SXSSFWorkbook
workbook
=
settlementOwnerDetailService
.
exportOwnerSettlementOrderDetail
(
param
);
SXSSFWorkbook
workbook
=
settlementOwnerDetailService
.
exportOwnerSettlementOrderDetail
(
param
);
response
.
setHeader
(
HttpHeaders
.
CONTENT_TYPE
,
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
);
response
.
setHeader
(
HttpHeaders
.
CONTENT_TYPE
,
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
);
workbook
.
write
(
response
.
getOutputStream
());
workbook
.
write
(
response
.
getOutputStream
());
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/loan/BankTradeDaoImpl.java
浏览文件 @
4d517c35
...
@@ -30,8 +30,19 @@ public class BankTradeDaoImpl extends BaseDaoImpl<BankTradeMapper, BankTrade, In
...
@@ -30,8 +30,19 @@ public class BankTradeDaoImpl extends BaseDaoImpl<BankTradeMapper, BankTrade, In
return
Optional
.
of
(
merchantRunningWaterNo
)
return
Optional
.
of
(
merchantRunningWaterNo
)
.
map
(
item
->
lQrWrapper
()
.
map
(
item
->
lQrWrapper
()
.
eq
(
BankTrade:
:
getMerchantRunningWaterNo
,
item
)
.
eq
(
BankTrade:
:
getMerchantRunningWaterNo
,
item
)
.
orderByDesc
(
BankTrade:
:
getId
)
.
last
(
"limit 1"
)
.
last
(
"limit 1"
)
)
)
.
map
(
super
::
getOne
);
.
map
(
super
::
getOne
);
}
}
@Override
public
Optional
<
BankTrade
>
selectByRelationNo
(
String
relationNo
)
{
return
Optional
.
of
(
relationNo
)
.
map
(
item
->
lQrWrapper
()
.
eq
(
BankTrade:
:
getRelationNo
,
item
)
.
orderByDesc
(
BankTrade:
:
getId
)
.
last
(
"limit 1"
)
)
.
map
(
super
::
getOne
);
}
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/loan/OrderChildLoanRetryRecordDaoImpl.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
dao
.
impl
.
loan
;
import
com.clx.performance.dao.loan.OrderChildLoanRetryRecordDao
;
import
com.clx.performance.mapper.loan.OrderChildLoanRetryRecordMapper
;
import
com.clx.performance.model.loan.OrderChildLoanRetryRecord
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
/**
* @author kavin
* Date 2024-02-21
* Time 19:58
*/
@Repository
public
class
OrderChildLoanRetryRecordDaoImpl
extends
BaseDaoImpl
<
OrderChildLoanRetryRecordMapper
,
OrderChildLoanRetryRecord
,
Integer
>
implements
OrderChildLoanRetryRecordDao
{
@Override
public
List
<
OrderChildLoanRetryRecord
>
selectListByIdAsc
()
{
return
baseMapper
.
selectList
(
lQrWrapper
().
orderByAsc
(
OrderChildLoanRetryRecord:
:
getId
));
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/loan/OwnerLoanRecordDaoImpl.java
浏览文件 @
4d517c35
...
@@ -96,14 +96,13 @@ public class OwnerLoanRecordDaoImpl extends BaseDaoImpl<OwnerLoanRecordMapper, O
...
@@ -96,14 +96,13 @@ public class OwnerLoanRecordDaoImpl extends BaseDaoImpl<OwnerLoanRecordMapper, O
);
);
}
}
@Override
public
boolean
updatePaySuccess
(
OwnerLoanRecord
item
)
{
return
false
;
}
@Override
@Override
public
boolean
updatePayFail
(
OwnerLoanRecord
item
)
{
public
boolean
updateStatusById
(
OwnerLoanRecord
item
)
{
return
false
;
return
update
(
lUdWrapper
()
.
eq
(
OwnerLoanRecord:
:
getId
,
item
.
getId
())
.
set
(
OwnerLoanRecord:
:
getStatus
,
item
.
getStatus
())
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/loan/OwnerRepaymentDaoImpl.java
浏览文件 @
4d517c35
...
@@ -46,6 +46,9 @@ public class OwnerRepaymentDaoImpl extends BaseDaoImpl<OwnerRepaymentMapper, Own
...
@@ -46,6 +46,9 @@ public class OwnerRepaymentDaoImpl extends BaseDaoImpl<OwnerRepaymentMapper, Own
if
(
Objects
.
nonNull
(
param
.
getBeOverdue
())){
if
(
Objects
.
nonNull
(
param
.
getBeOverdue
())){
query
.
like
(
OwnerRepayment
::
getBeOverdue
,
param
.
getBeOverdue
());
query
.
like
(
OwnerRepayment
::
getBeOverdue
,
param
.
getBeOverdue
());
}
}
if
(
Objects
.
nonNull
(
param
.
getInStatusList
())){
query
.
in
(
OwnerRepayment
::
getStatus
,
param
.
getInStatusList
());
}
query
.
orderByDesc
(
OwnerRepayment
::
getCreateTime
);
query
.
orderByDesc
(
OwnerRepayment
::
getCreateTime
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/dao/impl/settle/SettlementDriverDetailDaoImpl.java
浏览文件 @
4d517c35
...
@@ -80,4 +80,5 @@ public class SettlementDriverDetailDaoImpl extends BaseDaoImpl<SettlementDriverD
...
@@ -80,4 +80,5 @@ public class SettlementDriverDetailDaoImpl extends BaseDaoImpl<SettlementDriverD
public
List
<
SettlementDriverDetail
>
findByDriverSettlementIds
(
List
<
Integer
>
ids
)
{
public
List
<
SettlementDriverDetail
>
findByDriverSettlementIds
(
List
<
Integer
>
ids
)
{
return
baseMapper
.
findByDriverSettlementIds
(
ids
);
return
baseMapper
.
findByDriverSettlementIds
(
ids
);
}
}
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/settle/SettlementOwnerDetailDaoImpl.java
浏览文件 @
4d517c35
...
@@ -154,4 +154,5 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
...
@@ -154,4 +154,5 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
.
set
(
SettlementOwnerDetail
::
getSettlementNo
,
settlementNo
)
.
set
(
SettlementOwnerDetail
::
getSettlementNo
,
settlementNo
)
);
);
}
}
}
}
performance-web/src/main/java/com/clx/performance/dao/loan/BankTradeDao.java
浏览文件 @
4d517c35
...
@@ -18,4 +18,7 @@ public interface BankTradeDao extends BaseDao<BankTradeMapper, BankTrade, Intege
...
@@ -18,4 +18,7 @@ public interface BankTradeDao extends BaseDao<BankTradeMapper, BankTrade, Intege
Optional
<
BankTrade
>
selectByMerchantRunningWaterNo
(
String
merchantRunningWaterNo
);
Optional
<
BankTrade
>
selectByMerchantRunningWaterNo
(
String
merchantRunningWaterNo
);
Optional
<
BankTrade
>
selectByRelationNo
(
String
relationNo
);
}
}
performance-web/src/main/java/com/clx/performance/dao/loan/OrderChildLoanRetryRecordDao.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
dao
.
loan
;
import
com.clx.performance.mapper.loan.OrderChildLoanRetryRecordMapper
;
import
com.clx.performance.model.loan.OrderChildLoanRetryRecord
;
import
com.msl.common.dao.BaseDao
;
import
java.util.List
;
/**
* @author kavin
* Date 2024-02-21
* Time 19:58
*/
public
interface
OrderChildLoanRetryRecordDao
extends
BaseDao
<
OrderChildLoanRetryRecordMapper
,
OrderChildLoanRetryRecord
,
Integer
>
{
List
<
OrderChildLoanRetryRecord
>
selectListByIdAsc
();
}
performance-web/src/main/java/com/clx/performance/dao/loan/OwnerLoanRecordDao.java
浏览文件 @
4d517c35
...
@@ -27,7 +27,7 @@ public interface OwnerLoanRecordDao extends BaseDao<OwnerLoanRecordMapper, Owner
...
@@ -27,7 +27,7 @@ public interface OwnerLoanRecordDao extends BaseDao<OwnerLoanRecordMapper, Owner
Optional
<
OwnerLoanRecord
>
selectByMerchantRunningWaterNo
(
String
merchantRunningWaterNo
);
Optional
<
OwnerLoanRecord
>
selectByMerchantRunningWaterNo
(
String
merchantRunningWaterNo
);
boolean
updatePay
(
OwnerLoanRecord
item
);
boolean
updatePay
(
OwnerLoanRecord
item
);
boolean
updatePaySuccess
(
OwnerLoanRecord
item
);
boolean
update
PayFail
(
OwnerLoanRecord
item
);
boolean
update
StatusById
(
OwnerLoanRecord
item
);
}
}
performance-web/src/main/java/com/clx/performance/dao/settle/SettlementDriverDetailDao.java
浏览文件 @
4d517c35
...
@@ -30,4 +30,5 @@ public interface SettlementDriverDetailDao extends BaseDao<SettlementDriverDetai
...
@@ -30,4 +30,5 @@ public interface SettlementDriverDetailDao extends BaseDao<SettlementDriverDetai
List
<
SettlementDriverDetail
>
listUnPay
(
LocalDateTime
beginTime
);
List
<
SettlementDriverDetail
>
listUnPay
(
LocalDateTime
beginTime
);
List
<
SettlementDriverDetail
>
findByDriverSettlementIds
(
List
<
Integer
>
ids
);
List
<
SettlementDriverDetail
>
findByDriverSettlementIds
(
List
<
Integer
>
ids
);
}
}
performance-web/src/main/java/com/clx/performance/dao/settle/SettlementOwnerDetailDao.java
浏览文件 @
4d517c35
...
@@ -46,4 +46,5 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM
...
@@ -46,4 +46,5 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM
List
<
SettlementOwnerDetail
>
selectListByOrderNo
(
String
orderNo
);
List
<
SettlementOwnerDetail
>
selectListByOrderNo
(
String
orderNo
);
void
updateSettlementMerge
(
String
settlementNo
,
List
<
String
>
settlementNos
);
void
updateSettlementMerge
(
String
settlementNo
,
List
<
String
>
settlementNos
);
}
}
performance-web/src/main/java/com/clx/performance/dto/OwnerLoanMqDTO.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
dto
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
lombok.Data
;
@Data
public
class
OwnerLoanMqDTO
{
private
SettlementOwnerDetail
settlementOwnerDetail
;
private
SettlementDriverDetail
settlementDriverDetail
;
private
OrderChild
orderChild
;
}
performance-web/src/main/java/com/clx/performance/event/SettlementListener.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
event
;
import
cn.hutool.json.JSONUtil
;
import
com.clx.performance.dao.loan.OrderChildLoanRetryRecordDao
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.model.loan.OrderChildLoanRetryRecord
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.context.event.EventListener
;
import
org.springframework.stereotype.Component
;
@Component
@Slf4j
@AllArgsConstructor
public
class
SettlementListener
{
private
final
SettlementOwnerDetailDao
settlementOwnerDetailDao
;
private
final
SettlementDriverDetailDao
settlementDriverDetailDao
;
private
final
OrderChildLoanRetryRecordDao
orderChildLoanRetryRecordDao
;
@EventListener
(
classes
=
{
SettlementUpdateEvent
.
class
})
public
void
listen
(
SettlementUpdateEvent
event
)
{
SettlementOwnerDetail
settlementOwnerDetail
=
event
.
getSettlementOwnerDetail
();
SettlementDriverDetail
settlementDriverDetail
=
event
.
getSettlementDriverDetail
();
log
.
info
(
"当前货主结算信息{},车主结算信息:{}"
,
JSONUtil
.
parse
(
settlementOwnerDetail
),
JSONUtil
.
parse
(
settlementDriverDetail
));
settlementOwnerDetailDao
.
updateInvoiceType
(
settlementOwnerDetail
);
settlementDriverDetailDao
.
updateInvoiceTypeAndPrepayFreightFlag
(
settlementDriverDetail
);
OrderChildLoanRetryRecord
entity
=
new
OrderChildLoanRetryRecord
();
entity
.
setSettlementOwnerId
(
settlementOwnerDetail
.
getId
());
entity
.
setSettlementDriverId
(
settlementDriverDetail
.
getId
());
// 保存重试记录
orderChildLoanRetryRecordDao
.
saveEntity
(
entity
);
}
}
performance-web/src/main/java/com/clx/performance/event/SettlementUpdateEvent.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
event
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
org.springframework.context.ApplicationEvent
;
public
class
SettlementUpdateEvent
extends
ApplicationEvent
{
private
SettlementDriverDetail
settlementDriverDetail
;
private
SettlementOwnerDetail
settlementOwnerDetail
;
/**
* Create a new {@code ApplicationEvent}.
*
* @param source the object on which the event initially occurred or with
* which the event is associated (never {@code null})
*/
public
SettlementUpdateEvent
(
Object
source
)
{
super
(
source
);
}
public
SettlementUpdateEvent
(
Object
source
,
SettlementDriverDetail
settlementDriverDetail
,
SettlementOwnerDetail
settlementOwnerDetail
)
{
super
(
source
);
this
.
settlementDriverDetail
=
settlementDriverDetail
;
this
.
settlementOwnerDetail
=
settlementOwnerDetail
;
}
public
SettlementDriverDetail
getSettlementDriverDetail
()
{
return
settlementDriverDetail
;
}
public
void
setSettlementDriverDetail
(
SettlementDriverDetail
settlementDriverDetail
)
{
this
.
settlementDriverDetail
=
settlementDriverDetail
;
}
public
SettlementOwnerDetail
getSettlementOwnerDetail
()
{
return
settlementOwnerDetail
;
}
public
void
setSettlementOwnerDetail
(
SettlementOwnerDetail
settlementOwnerDetail
)
{
this
.
settlementOwnerDetail
=
settlementOwnerDetail
;
}
}
performance-web/src/main/java/com/clx/performance/extranal/user/OwnerInfoService.java
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
extranal
.
user
;
package
com
.
clx
.
performance
.
extranal
.
user
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.pc.owner.OwnerBindCardVO
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
...
@@ -9,4 +10,7 @@ public interface OwnerInfoService {
...
@@ -9,4 +10,7 @@ public interface OwnerInfoService {
OwnerInfoFeignVO
getOwnerInfo
(
@RequestParam
(
"userNo"
)
Long
userNo
);
OwnerInfoFeignVO
getOwnerInfo
(
@RequestParam
(
"userNo"
)
Long
userNo
);
OwnerBindCardVO
getOwnerBindCard
(
Long
userNo
);
}
}
performance-web/src/main/java/com/clx/performance/extranal/user/impl/OwnerInfoServiceImpl.java
浏览文件 @
4d517c35
...
@@ -3,6 +3,7 @@ package com.clx.performance.extranal.user.impl;
...
@@ -3,6 +3,7 @@ package com.clx.performance.extranal.user.impl;
import
com.clx.performance.extranal.user.OwnerInfoService
;
import
com.clx.performance.extranal.user.OwnerInfoService
;
import
com.clx.user.feign.OwnerInfoFeign
;
import
com.clx.user.feign.OwnerInfoFeign
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.pc.owner.OwnerBindCardVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.base.Optional
;
import
com.msl.common.enums.ResultCodeEnum
;
import
com.msl.common.enums.ResultCodeEnum
;
import
com.msl.common.result.Result
;
import
com.msl.common.result.Result
;
...
@@ -23,4 +24,11 @@ public class OwnerInfoServiceImpl implements OwnerInfoService {
...
@@ -23,4 +24,11 @@ public class OwnerInfoServiceImpl implements OwnerInfoService {
.
filter
(
Result:
:
succeed
).
map
(
Result:
:
getData
).
orElseThrow
(
ResultCodeEnum
.
FAIL
,
"未查询到对应的货主信息"
);
.
filter
(
Result:
:
succeed
).
map
(
Result:
:
getData
).
orElseThrow
(
ResultCodeEnum
.
FAIL
,
"未查询到对应的货主信息"
);
}
}
@Override
public
OwnerBindCardVO
getOwnerBindCard
(
Long
userNo
)
{
return
Optional
.
ofNullable
(
ownerInfoFeign
.
getOwnerInfoVO
(
userNo
))
.
filter
(
Result:
:
succeed
).
map
(
Result:
:
getData
).
orElseThrow
(
ResultCodeEnum
.
FAIL
,
"未查询到对应的货主绑卡信息"
);
}
}
}
performance-web/src/main/java/com/clx/performance/listener/OrderChildSyncTransportListener.java
浏览文件 @
4d517c35
...
@@ -12,6 +12,7 @@ import com.clx.performance.dao.OwnerRunningWaterRecordDao;
...
@@ -12,6 +12,7 @@ import com.clx.performance.dao.OwnerRunningWaterRecordDao;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.dto.OrderChildSyncDTO
;
import
com.clx.performance.dto.OrderChildSyncDTO
;
import
com.clx.performance.dto.OwnerLoanMqDTO
;
import
com.clx.performance.enums.*
;
import
com.clx.performance.enums.*
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
...
@@ -29,7 +30,10 @@ import com.msl.common.dto.HttpDTO;
...
@@ -29,7 +30,10 @@ import com.msl.common.dto.HttpDTO;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.exception.ExceptionUtils
;
import
org.apache.commons.lang3.exception.ExceptionUtils
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.core.MessageBuilder
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
...
@@ -64,9 +68,7 @@ public class OrderChildSyncTransportListener {
...
@@ -64,9 +68,7 @@ public class OrderChildSyncTransportListener {
private
final
OrderChildSyncTransportInvoiceRecordDao
orderChildSyncTransportInvoiceRecordDao
;
private
final
OrderChildSyncTransportInvoiceRecordDao
orderChildSyncTransportInvoiceRecordDao
;
private
final
SettlementMqService
settlementMqService
;
private
final
RabbitTemplate
rabbitTemplate
;
private
final
OrderChildLoanComponent
orderChildLoanComponent
;
@RabbitListener
(
queues
=
RabbitKeyConstants
.
ORDER_CHILD_SYNC_TRANSPORT_QUEUE
)
@RabbitListener
(
queues
=
RabbitKeyConstants
.
ORDER_CHILD_SYNC_TRANSPORT_QUEUE
)
public
void
onMessage
(
String
message
)
{
public
void
onMessage
(
String
message
)
{
...
@@ -164,8 +166,6 @@ public class OrderChildSyncTransportListener {
...
@@ -164,8 +166,6 @@ public class OrderChildSyncTransportListener {
settlementOwnerDetail
.
setPrepayFreight
(
BigDecimal
.
ZERO
);
settlementOwnerDetail
.
setPrepayFreight
(
BigDecimal
.
ZERO
);
settlementOwnerDetail
.
setFinalPaymentStatus
(
SettlementOwnerDetailEnum
.
FinalPaymentStatus
.
NO
.
getCode
());
settlementOwnerDetail
.
setFinalPaymentStatus
(
SettlementOwnerDetailEnum
.
FinalPaymentStatus
.
NO
.
getCode
());
}
}
// 结算金额
settlementOwnerDetail
.
setSettlementFreight
(
settlementFreightCalc
(
orderChild
.
getSettlementWay
(),
settlementOwnerDetail
));
if
(
SettlementOwnerEnum
.
InvoiceType
.
ORDINARY
.
getCode
().
equals
(
invoiceType
))
{
if
(
SettlementOwnerEnum
.
InvoiceType
.
ORDINARY
.
getCode
().
equals
(
invoiceType
))
{
if
(
settlementOwnerDetail
.
getSettlementFreight
().
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
if
(
settlementOwnerDetail
.
getSettlementFreight
().
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
...
@@ -179,16 +179,15 @@ public class OrderChildSyncTransportListener {
...
@@ -179,16 +179,15 @@ public class OrderChildSyncTransportListener {
settlementOwnerDetail
.
setInvoiceType
(
invoiceType
);
settlementOwnerDetail
.
setInvoiceType
(
invoiceType
);
settlementDriverDetail
.
setInvoiceType
(
invoiceType
);
settlementDriverDetail
.
setInvoiceType
(
invoiceType
);
//生成借款标识
//货主借款监听器处理
orderChildLoanComponent
.
childLoanConfirmAfterProcess
(
settlementDriverDetail
,
settlementOwnerDetail
);
OwnerLoanMqDTO
dto
=
new
OwnerLoanMqDTO
();
dto
.
setSettlementOwnerDetail
(
settlementOwnerDetail
);
log
.
info
(
"当前货主结算信息{},车主结算信息:{}"
,
JSONUtil
.
parse
(
settlementOwnerDetail
),
JSONUtil
.
parse
(
settlementDriverDetail
));
dto
.
setSettlementDriverDetail
(
settlementDriverDetail
);
settlementOwnerDetailDao
.
updateInvoiceType
(
settlementOwnerDetail
);
dto
.
setOrderChild
(
orderChild
);
settlementDriverDetailDao
.
updateInvoiceTypeAndPrepayFreightFlag
(
settlementDriverDetail
);
Message
message
=
MessageBuilder
.
withBody
(
JSONUtil
.
parse
(
dto
).
toString
().
getBytes
()).
build
();
rabbitTemplate
.
send
(
// 发送mq 通过开票标识
RabbitKeyConstants
.
OWNER_LOAN_EXCHANGE
,
RabbitKeyConstants
.
OWNER_LOAN_ROUTE_KEY
,
message
settlementMqService
.
invoiceTypeSync
(
orderChild
.
getChildNo
(),
invoiceType
);
);
}
}
private
void
generateTakeOutRunningWatter
(
OrderChild
orderChild
,
BigDecimal
ans
,
SettlementOwnerDetail
settlementOwnerDetail
,
SettlementDriverDetail
settlementDriverDetail
)
{
private
void
generateTakeOutRunningWatter
(
OrderChild
orderChild
,
BigDecimal
ans
,
SettlementOwnerDetail
settlementOwnerDetail
,
SettlementDriverDetail
settlementDriverDetail
)
{
OwnerAccount
account
=
null
;
OwnerAccount
account
=
null
;
...
@@ -252,17 +251,7 @@ public class OrderChildSyncTransportListener {
...
@@ -252,17 +251,7 @@ public class OrderChildSyncTransportListener {
}
}
}
}
/**
* 结算金额
*/
private
BigDecimal
settlementFreightCalc
(
Integer
settlementWay
,
SettlementOwnerDetail
settlementOwnerDetail
)
{
if
(
Objects
.
equals
(
settlementWay
,
SettlementWayEnum
.
WayType
.
LOAD
.
getCode
()))
{
//订单结算方式为“装车净重”时,结算金额=实际净重*平台运费报价-预付运费-货损金额。
return
settlementOwnerDetail
.
getWeight
().
multiply
(
settlementOwnerDetail
.
getFreightPrice
())
.
subtract
(
settlementOwnerDetail
.
getPrepayFreight
()).
subtract
(
settlementOwnerDetail
.
getLossFreight
());
}
else
{
//订单结算方式为“卸车净重”时,结算金额=实际净重*平台运费报价-预付运费
return
settlementOwnerDetail
.
getWeight
().
multiply
(
settlementOwnerDetail
.
getFreightPrice
()).
subtract
(
settlementOwnerDetail
.
getPrepayFreight
());
}
}
/**
/**
* 开票金额
* 开票金额
...
...
performance-web/src/main/java/com/clx/performance/listener/OwnerLoanListener.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
listener
;
import
cn.hutool.json.JSONUtil
;
import
com.clx.performance.component.OrderChildLoanComponent
;
import
com.clx.performance.constant.RabbitKeyConstants
;
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.OwnerLoanRecordEnum
;
import
com.clx.performance.event.SettlementUpdateEvent
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.service.settle.SettlementMqService
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.context.ApplicationEventPublisher
;
import
org.springframework.stereotype.Component
;
/**
* 处理货主借款监听器
*/
@Slf4j
@Component
@AllArgsConstructor
public
class
OwnerLoanListener
{
private
final
OrderChildLoanComponent
orderChildLoanComponent
;
private
final
SettlementMqService
settlementMqService
;
private
final
ApplicationEventPublisher
applicationEventPublisher
;
private
final
SettlementOwnerDetailDao
settlementOwnerDetailDao
;
private
final
SettlementDriverDetailDao
settlementDriverDetailDao
;
@RabbitListener
(
queues
=
RabbitKeyConstants
.
OWNER_LOAN_QUEUE
)
public
void
onMessage
(
String
message
)
{
log
.
info
(
"处理货主借款监听器执行,数据为{}"
,
message
);
OwnerLoanMqDTO
param
=
JSONUtil
.
toBean
(
message
,
OwnerLoanMqDTO
.
class
);
SettlementOwnerDetail
settlementOwnerDetail
=
param
.
getSettlementOwnerDetail
();
SettlementDriverDetail
settlementDriverDetail
=
param
.
getSettlementDriverDetail
();
OrderChild
orderChild
=
param
.
getOrderChild
();
try
{
//生成借款标识
orderChildLoanComponent
.
childLoanConfirmAfterProcess
(
settlementDriverDetail
,
settlementOwnerDetail
,
orderChild
);
}
catch
(
Exception
e
)
{
log
.
error
(
"处理货主借款监听器执行异常,数据为{}"
,
message
,
e
);
//未借款
settlementDriverDetail
.
setLoanFlag
(
OwnerLoanRecordEnum
.
LoanFlag
.
NO_LOAN
.
getCode
());
applicationEventPublisher
.
publishEvent
(
new
SettlementUpdateEvent
(
this
,
settlementDriverDetail
,
settlementOwnerDetail
));
throw
e
;
}
settlementOwnerDetailDao
.
updateInvoiceType
(
settlementOwnerDetail
);
settlementDriverDetailDao
.
updateInvoiceTypeAndPrepayFreightFlag
(
settlementDriverDetail
);
// 发送mq 通过开票标识
settlementMqService
.
invoiceTypeSync
(
settlementDriverDetail
.
getChildNo
(),
settlementDriverDetail
.
getInvoiceType
());
}
}
performance-web/src/main/java/com/clx/performance/listener/OwnerLoanPayNotifyListener.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
listener
;
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.OwnerLoanRecordService
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.stereotype.Component
;
import
java.util.Objects
;
/**
* 处理货主借款支付监听器
*/
@Slf4j
@Component
@AllArgsConstructor
public
class
OwnerLoanPayNotifyListener
{
private
final
OwnerLoanRecordService
ownerLoanRecordService
;
@RabbitListener
(
queues
=
RabbitKeyConstants
.
OWNER_LOAN_PAY_QUEUE
)
public
void
onMessage
(
String
message
)
{
log
.
info
(
"处理货主借款支付监听器执行,数据为{}"
,
message
);
OwnerLoanPayNotifyMqParam
param
=
JSONUtil
.
toBean
(
message
,
OwnerLoanPayNotifyMqParam
.
class
);
if
(
Objects
.
equals
(
param
.
getPayStatus
(),
NbBankStatusEnum
.
Status
.
SUCCESS
.
getCode
()))
{
// 支付成功
ownerLoanRecordService
.
paySuccess
(
param
.
getMerSeqNo
());
}
else
if
(
Objects
.
equals
(
param
.
getPayStatus
(),
NbBankStatusEnum
.
Status
.
FAIL
.
getCode
()))
{
// 支付失败
ownerLoanRecordService
.
payFail
(
param
.
getMerSeqNo
());
}
}
}
performance-web/src/main/java/com/clx/performance/mapper/loan/OrderChildLoanRetryRecordMapper.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
mapper
.
loan
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.clx.performance.model.loan.OrderChildLoanRetryRecord
;
/**
* @author kavin
* Date 2024-02-21
* Time 19:58
*/
public
interface
OrderChildLoanRetryRecordMapper
extends
BaseMapper
<
OrderChildLoanRetryRecord
>
{
}
performance-web/src/main/java/com/clx/performance/model/OwnerBindCardRecord.java
浏览文件 @
4d517c35
...
@@ -58,6 +58,11 @@ public class OwnerBindCardRecord implements HasKey<Integer> {
...
@@ -58,6 +58,11 @@ public class OwnerBindCardRecord implements HasKey<Integer> {
*/
*/
@TableField
(
"open_account_bank"
)
@TableField
(
"open_account_bank"
)
private
String
openAccountBank
;
private
String
openAccountBank
;
/**
* 开户行号
*/
@TableField
(
"open_account_bank_number"
)
private
String
openAccountBankNumber
;
/**
/**
* 户名
* 户名
*/
*/
...
...
performance-web/src/main/java/com/clx/performance/model/loan/BankTrade.java
浏览文件 @
4d517c35
...
@@ -36,6 +36,7 @@ public class BankTrade implements HasKey<Integer> {
...
@@ -36,6 +36,7 @@ public class BankTrade implements HasKey<Integer> {
private
String
remark
;
//备注
private
String
remark
;
//备注
private
LocalDateTime
createTime
;
//创建时间
private
LocalDateTime
createTime
;
//创建时间
private
LocalDateTime
modifiedTime
;
//修改时间
private
LocalDateTime
modifiedTime
;
//修改时间
private
String
relationNo
;
@KeyColumn
(
"id"
)
@KeyColumn
(
"id"
)
@Override
@Override
...
...
performance-web/src/main/java/com/clx/performance/model/loan/OrderChildLoanRetryRecord.java
0 → 100644
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
model
.
loan
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.experimental.Accessors
;
import
java.time.LocalDateTime
;
/**
* @author kavin
* Date 2024-02-21
* Time 19:58
*/
@Getter
@Setter
@Accessors
(
chain
=
true
)
@TableName
(
"order_child_loan_retry_record"
)
public
class
OrderChildLoanRetryRecord
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@TableField
(
"settlement_driver_id"
)
@ApiModelProperty
(
"车主计费主键"
)
private
Integer
settlementDriverId
;
@TableField
(
"settlement_owner_id"
)
@ApiModelProperty
(
"货主计费主键"
)
private
Integer
settlementOwnerId
;
@TableField
(
"create_time"
)
@ApiModelProperty
(
"创建时间"
)
private
LocalDateTime
createTime
;
@TableField
(
"modified_time"
)
@ApiModelProperty
(
"修改时间"
)
private
LocalDateTime
modifiedTime
;
@Override
@KeyColumn
(
"id"
)
public
Integer
gainKey
()
{
return
this
.
id
;
}
}
performance-web/src/main/java/com/clx/performance/model/loan/OwnerLoanRecord.java
浏览文件 @
4d517c35
...
@@ -69,11 +69,11 @@ public class OwnerLoanRecord implements HasKey<Integer> {
...
@@ -69,11 +69,11 @@ public class OwnerLoanRecord implements HasKey<Integer> {
private
BigDecimal
loanResidueBalance
;
private
BigDecimal
loanResidueBalance
;
@TableField
(
"borrower_id"
)
@TableField
(
"borrower_id"
)
@ApiModelProperty
(
"借
款
方Id"
)
@ApiModelProperty
(
"借
出
方Id"
)
private
Integer
borrowerId
;
private
Integer
borrowerId
;
@TableField
(
"borrower"
)
@TableField
(
"borrower"
)
@ApiModelProperty
(
"借
款
方"
)
@ApiModelProperty
(
"借
出
方"
)
private
String
borrower
;
private
String
borrower
;
@ApiModelProperty
(
"借款方账户"
)
@ApiModelProperty
(
"借款方账户"
)
...
@@ -84,16 +84,13 @@ public class OwnerLoanRecord implements HasKey<Integer> {
...
@@ -84,16 +84,13 @@ public class OwnerLoanRecord implements HasKey<Integer> {
@ApiModelProperty
(
"汇款识别码"
)
@ApiModelProperty
(
"汇款识别码"
)
private
String
remittanceIdentificationCode
;
private
String
remittanceIdentificationCode
;
@TableField
(
"lending_party_id"
)
@ApiModelProperty
(
"借出方ID"
)
private
String
lendingPartyId
;
@TableField
(
"lending_party"
)
@TableField
(
"lending_party"
)
@ApiModelProperty
(
"借
出
方"
)
@ApiModelProperty
(
"借
款
方"
)
private
String
lendingParty
;
private
String
lendingParty
;
@TableField
(
"lending_party_account"
)
@TableField
(
"lending_party_account"
)
@ApiModelProperty
(
"借
出
方账户"
)
@ApiModelProperty
(
"借
款
方账户"
)
private
String
lendingPartyAccount
;
private
String
lendingPartyAccount
;
@TableField
(
"payee"
)
@TableField
(
"payee"
)
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OwnerAccountServiceImpl.java
浏览文件 @
4d517c35
...
@@ -689,6 +689,7 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
...
@@ -689,6 +689,7 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
feignParam
.
setOwnerAccountName
(
param
.
getOwnerAccountName
());
feignParam
.
setOwnerAccountName
(
param
.
getOwnerAccountName
());
feignParam
.
setOwnerBankAccount
(
param
.
getOwnerBankAccount
());
feignParam
.
setOwnerBankAccount
(
param
.
getOwnerBankAccount
());
feignParam
.
setOwnerOpenBank
(
param
.
getOwnerOpenBank
());
feignParam
.
setOwnerOpenBank
(
param
.
getOwnerOpenBank
());
feignParam
.
setOwnerOpenBankNumber
(
param
.
getOwnerOpenBankNumber
());
ownerInfoFeign
.
bindOwnerBindCard
(
feignParam
);
ownerInfoFeign
.
bindOwnerBindCard
(
feignParam
);
OwnerBindCardRecord
record
=
new
OwnerBindCardRecord
();
OwnerBindCardRecord
record
=
new
OwnerBindCardRecord
();
...
@@ -696,7 +697,8 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
...
@@ -696,7 +697,8 @@ public class OwnerAccountServiceImpl implements OwnerAccountService {
record
.
setOwnerUserName
(
loginUserInfo
.
getUserName
());
record
.
setOwnerUserName
(
loginUserInfo
.
getUserName
());
record
.
setCreateItem
(
"绑定银行卡"
);
record
.
setCreateItem
(
"绑定银行卡"
);
record
.
setOwnerBank
(
param
.
getOwnerAccountBank
());
record
.
setOwnerBank
(
param
.
getOwnerAccountBank
());
record
.
setOpenAccountBank
(
param
.
getOwnerAccountBank
());
record
.
setOpenAccountBank
(
param
.
getOwnerOpenBank
());
record
.
setOpenAccountBankNumber
(
param
.
getOwnerOpenBankNumber
());
record
.
setAccountBankName
(
param
.
getOwnerAccountName
());
record
.
setAccountBankName
(
param
.
getOwnerAccountName
());
record
.
setBankCardNumber
(
param
.
getOwnerBankAccount
());
record
.
setBankCardNumber
(
param
.
getOwnerBankAccount
());
record
.
setCreateBy
(
loginUserInfo
.
getUserName
());
record
.
setCreateBy
(
loginUserInfo
.
getUserName
());
...
...
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerLoanAccountServiceImpl.java
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
service
.
impl
.
loan
;
package
com
.
clx
.
performance
.
service
.
impl
.
loan
;
import
cn.hutool.json.JSONUtil
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
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.OwnerLoanAccountDao
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.dto.OwnerLoanMqDTO
;
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.OwnerLoanAccount
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerLoanAccountParam
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerLoanAccountParam
;
import
com.clx.performance.service.loan.OwnerLoanAccountService
;
import
com.clx.performance.service.loan.OwnerLoanAccountService
;
import
com.clx.performance.struct.loan.OwnerLoanAccountStruct
;
import
com.clx.performance.struct.loan.OwnerLoanAccountStruct
;
...
@@ -14,10 +27,14 @@ import com.msl.user.data.UserSessionData;
...
@@ -14,10 +27,14 @@ import com.msl.user.data.UserSessionData;
import
com.msl.user.utils.TokenUtil
;
import
com.msl.user.utils.TokenUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.core.MessageBuilder
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
/**
* @author kavin
* @author kavin
...
@@ -33,6 +50,16 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
...
@@ -33,6 +50,16 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
private
final
OwnerLoanAccountStruct
ownerLoanAccountStruct
;
private
final
OwnerLoanAccountStruct
ownerLoanAccountStruct
;
private
final
OrderChildDao
orderChildDao
;
private
final
SettlementDriverDetailDao
settlementDriverDetailDao
;
private
final
SettlementOwnerDetailDao
settlementOwnerDetailDao
;
private
final
OrderChildLoanRetryRecordDao
orderChildLoanRetryRecordDao
;
private
final
RabbitTemplate
rabbitTemplate
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
@Override
public
void
openOwnerLoanAccount
(
Long
ownerUserNo
,
String
ownerUserName
,
String
mobile
)
{
public
void
openOwnerLoanAccount
(
Long
ownerUserNo
,
String
ownerUserName
,
String
mobile
)
{
...
@@ -63,7 +90,7 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
...
@@ -63,7 +90,7 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
Optional
<
OwnerLoanAccount
>
optional
=
ownerLoanAccountDao
.
getOneByField
(
OwnerLoanAccount:
:
getOwnerUserNo
,
Optional
<
OwnerLoanAccount
>
optional
=
ownerLoanAccountDao
.
getOneByField
(
OwnerLoanAccount:
:
getOwnerUserNo
,
loginUserInfo
.
getUserNo
());
loginUserInfo
.
getUserNo
());
if
(!
optional
.
isPresent
())
{
if
(!
optional
.
isPresent
())
{
return
OwnerAccountVO
.
builder
().
openAccount
(
0
).
build
();
return
OwnerAccountVO
.
builder
().
openAccount
(
0
).
build
();
}
}
OwnerLoanAccount
ownerLoanAccount
=
optional
.
get
();
OwnerLoanAccount
ownerLoanAccount
=
optional
.
get
();
...
@@ -71,4 +98,32 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
...
@@ -71,4 +98,32 @@ public class OwnerLoanAccountServiceImpl implements OwnerLoanAccountService {
ownerAccountVO
.
setOpenAccount
(
1
);
ownerAccountVO
.
setOpenAccount
(
1
);
return
ownerAccountVO
;
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
());
}
}
}
}
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerLoanRecordServiceImpl.java
浏览文件 @
4d517c35
...
@@ -5,9 +5,11 @@ import com.alibaba.fastjson.JSON;
...
@@ -5,9 +5,11 @@ import com.alibaba.fastjson.JSON;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.TypeReference
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.order.enums.DeleteStatusEnum
;
import
com.clx.performance.component.IdGenerateSnowFlake
;
import
com.clx.performance.component.IdGenerateSnowFlake
;
import
com.clx.performance.config.loan.ClxPayeeConfig
;
import
com.clx.performance.config.loan.ClxPayeeConfig
;
import
com.clx.performance.config.loan.PaymentFromConfig
;
import
com.clx.performance.config.loan.PaymentFromConfig
;
import
com.clx.performance.config.nbbank.NbBankConfig
;
import
com.clx.performance.dao.OwnerBindCardRecordDao
;
import
com.clx.performance.dao.OwnerBindCardRecordDao
;
import
com.clx.performance.dao.loan.BorrowerDao
;
import
com.clx.performance.dao.loan.BorrowerDao
;
import
com.clx.performance.dao.loan.OwnerLoanAccountDao
;
import
com.clx.performance.dao.loan.OwnerLoanAccountDao
;
...
@@ -22,6 +24,7 @@ import com.clx.performance.enums.loan.BankTradeEnum;
...
@@ -22,6 +24,7 @@ import com.clx.performance.enums.loan.BankTradeEnum;
import
com.clx.performance.enums.loan.OwnerLoanAccountRunningWaterRecordEnum
;
import
com.clx.performance.enums.loan.OwnerLoanAccountRunningWaterRecordEnum
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.enums.nbbank.NbBankStatusEnum
;
import
com.clx.performance.model.OwnerBindCardRecord
;
import
com.clx.performance.model.OwnerBindCardRecord
;
import
com.clx.performance.model.loan.*
;
import
com.clx.performance.model.loan.*
;
import
com.clx.performance.param.pc.loan.carrier.*
;
import
com.clx.performance.param.pc.loan.carrier.*
;
...
@@ -35,6 +38,7 @@ import com.clx.performance.vo.pc.loan.owner.BorrowerSelectVO;
...
@@ -35,6 +38,7 @@ import com.clx.performance.vo.pc.loan.owner.BorrowerSelectVO;
import
com.clx.performance.vo.pc.loan.owner.OwnerLoanRecordDetail
;
import
com.clx.performance.vo.pc.loan.owner.OwnerLoanRecordDetail
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
import
com.clx.user.feign.OwnerFeign
;
import
com.clx.user.feign.OwnerFeign
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.clx.user.vo.feign.OwnerInfoFeignVO
;
import
com.msl.common.base.Optional
;
import
com.msl.common.base.Optional
;
...
@@ -50,17 +54,12 @@ import com.msl.user.data.UserSessionData;
...
@@ -50,17 +54,12 @@ import com.msl.user.data.UserSessionData;
import
com.msl.user.utils.TokenUtil
;
import
com.msl.user.utils.TokenUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.exception.ExceptionUtils
;
import
org.springframework.jdbc.datasource.DataSourceTransactionManager
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.TransactionDefinition
;
import
org.springframework.transaction.TransactionStatus
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.*
;
import
java.util.function.Consumer
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -99,6 +98,8 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -99,6 +98,8 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
private
final
ContractEvidenceFeign
contractEvidenceFeign
;
private
final
ContractEvidenceFeign
contractEvidenceFeign
;
private
final
ContractTemplateFeign
contractTemplateFeign
;
private
final
ContractTemplateFeign
contractTemplateFeign
;
private
final
PaymentFromConfig
paymentFromConfig
;
private
final
PaymentFromConfig
paymentFromConfig
;
private
final
NbBankConfig
nbBankConfig
;
private
final
ClxPayeeConfig
clxPayeeConfig
;
@Override
@Override
public
IPage
<
OwnerLoanRecordVO
>
pageOwnerLoanRecord
(
PageCarrierOwnerLoanRecordParam
param
)
{
public
IPage
<
OwnerLoanRecordVO
>
pageOwnerLoanRecord
(
PageCarrierOwnerLoanRecordParam
param
)
{
...
@@ -127,9 +128,13 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -127,9 +128,13 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
entity
.
setOwnerUserName
(
loginUserInfo
.
getUserName
());
entity
.
setOwnerUserName
(
loginUserInfo
.
getUserName
());
entity
.
setMobile
(
loginUserInfo
.
getUserMobile
());
entity
.
setMobile
(
loginUserInfo
.
getUserMobile
());
entity
.
setLoanBalance
(
param
.
getLoanBalance
());
entity
.
setLoanBalance
(
param
.
getLoanBalance
());
entity
.
setBorrowerId
(
param
.
getBorrowerId
());
entity
.
setBorrower
(
param
.
getBorrower
());
entity
.
setBorrower
(
param
.
getBorrower
());
entity
.
setBorrowerAccount
(
ownerBindCardRecord
.
getBankCardNumber
());
entity
.
setLendingParty
(
param
.
getLendingParty
());
entity
.
setLendingParty
(
param
.
getLendingParty
());
entity
.
setLendingPartyAccount
(
ownerBindCardRecord
.
getBankCardNumber
());
entity
.
setPayee
(
param
.
getPayee
());
entity
.
setPayee
(
param
.
getPayee
());
entity
.
setPayeeAccount
(
param
.
getPayeeAccount
());
entity
.
setPayeeAccount
(
param
.
getPayeeAccount
());
entity
.
setCreateBy
(
loginUserInfo
.
getUserName
());
entity
.
setCreateBy
(
loginUserInfo
.
getUserName
());
...
@@ -151,6 +156,44 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -151,6 +156,44 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
ownerLoanRecord
.
setLoanType
(
param
.
getLoanType
());
ownerLoanRecord
.
setLoanType
(
param
.
getLoanType
());
if
(
OwnerLoanRecordEnum
.
LoanType
.
FUND
.
getCode
().
equals
(
param
.
getLoanType
()))
{
if
(
OwnerLoanRecordEnum
.
LoanType
.
FUND
.
getCode
().
equals
(
param
.
getLoanType
()))
{
//ownerLoanRecord.setStatus()
fundPayProcess
(
param
,
ownerLoanRecord
,
borrower
);
}
else
{
// 虚拟币 直接增加 更改状态审批通过
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_PASS
.
getCode
());
while
(
true
)
{
OwnerLoanAccount
ownerLoanAccount
=
ownerLoanAccountDao
.
getOneByField
(
OwnerLoanAccount:
:
getOwnerUserNo
,
ownerLoanRecord
.
getOwnerUserNo
()).
get
();
OwnerLoanAccount
entity
=
new
OwnerLoanAccount
();
entity
.
setId
(
ownerLoanAccount
.
getId
());
entity
.
setFundingAccountBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingUsableBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyAccountBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setVirtuallyFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyUsableBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setModifiedTime
(
ownerLoanAccount
.
getModifiedTime
());
Integer
flag
=
ownerLoanAccountDao
.
updateAccountCAS
(
entity
,
LocalDateTime
.
now
(),
true
);
if
(
flag
==
1
)
{
//生成借款流水
initOwnerLoanRunningWaterRecord
(
ownerLoanRecord
);
//生成还款记录
initOwnerRepayment
(
ownerLoanRecord
);
break
;
}
}
}
}
else
{
//拒绝
ownerLoanRecord
.
setLoanType
(
param
.
getLoanType
());
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_REFUSE
.
getCode
());
}
//更新借款记录
ownerLoanRecordDao
.
updateEntityByKey
(
ownerLoanRecord
);
}
private
void
fundPayProcess
(
CarrierOwnerLoanRecordApproveParam
param
,
OwnerLoanRecord
ownerLoanRecord
,
Borrower
borrower
)
{
//资金
//资金
BankTrade
bankTrade
=
new
BankTrade
();
BankTrade
bankTrade
=
new
BankTrade
();
if
(
OwnerLoanRecordEnum
.
PayChannel
.
ORDER_DIRECT_PAY
.
getCode
().
equals
(
param
.
getPayChannel
()))
{
if
(
OwnerLoanRecordEnum
.
PayChannel
.
ORDER_DIRECT_PAY
.
getCode
().
equals
(
param
.
getPayChannel
()))
{
...
@@ -166,8 +209,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -166,8 +209,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
ownerLoanRecord
.
setLendingPartyAccount
(
borrower
.
getBankCardNo
());
ownerLoanRecord
.
setLendingPartyAccount
(
borrower
.
getBankCardNo
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_DIRECT_PAY
.
getCode
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_DIRECT_PAY
.
getCode
());
}
}
else
{
else
{
// 转账支付
// 转账支付
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderTransferPay
(
ownerLoanRecord
.
getLoanBalance
().
intValue
());
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderTransferPay
(
ownerLoanRecord
.
getLoanBalance
().
intValue
());
ownerLoanRecord
.
setRunningWaterOpenNo
(
orderPayResultVO
.
getTransSeqNo
());
ownerLoanRecord
.
setRunningWaterOpenNo
(
orderPayResultVO
.
getTransSeqNo
());
...
@@ -181,6 +223,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -181,6 +223,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
// 更新借款支付信息
// 更新借款支付信息
ownerLoanRecordDao
.
updatePay
(
ownerLoanRecord
);
ownerLoanRecordDao
.
updatePay
(
ownerLoanRecord
);
bankTrade
.
setRelationNo
(
ownerLoanRecord
.
getLoanNo
().
toString
());
bankTrade
.
setOrderType
(
BankTradeEnum
.
OrderType
.
OWNER_LOAN_RECORD
.
getCode
());
bankTrade
.
setOrderType
(
BankTradeEnum
.
OrderType
.
OWNER_LOAN_RECORD
.
getCode
());
bankTrade
.
setAmount
(
ownerLoanRecord
.
getLoanBalance
());
bankTrade
.
setAmount
(
ownerLoanRecord
.
getLoanBalance
());
bankTrade
.
setMerchantRunningWaterNo
(
ownerLoanRecord
.
getMerchantRunningWaterNo
());
bankTrade
.
setMerchantRunningWaterNo
(
ownerLoanRecord
.
getMerchantRunningWaterNo
());
...
@@ -188,39 +231,6 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -188,39 +231,6 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
// 保存银行交易记录
// 保存银行交易记录
bankTradeDao
.
saveEntity
(
bankTrade
);
bankTradeDao
.
saveEntity
(
bankTrade
);
}
else
{
// 虚拟币 直接增加 更改状态审批通过
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_PASS
.
getCode
());
while
(
true
)
{
OwnerLoanAccount
ownerLoanAccount
=
ownerLoanAccountDao
.
getOneByField
(
OwnerLoanAccount:
:
getOwnerUserNo
,
ownerLoanRecord
.
getOwnerUserNo
()).
get
();
OwnerLoanAccount
entity
=
new
OwnerLoanAccount
();
entity
.
setId
(
ownerLoanAccount
.
getId
());
entity
.
setFundingAccountBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingUsableBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyAccountBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setVirtuallyFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyUsableBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setModifiedTime
(
ownerLoanAccount
.
getModifiedTime
());
Integer
flag
=
ownerLoanAccountDao
.
updateAccountCAS
(
entity
,
LocalDateTime
.
now
(),
true
);
if
(
flag
==
1
)
{
//生成借款流水
initOwnerLoanRunningWaterRecord
(
ownerLoanRecord
);
//生成还款记录
initOwnerRepayment
(
ownerLoanRecord
);
break
;
}
}
}
}
else
{
//拒绝
ownerLoanRecord
.
setLoanType
(
param
.
getLoanType
());
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_REFUSE
.
getCode
());
}
//更新借款记录
ownerLoanRecordDao
.
updateEntityByKey
(
ownerLoanRecord
);
}
}
...
@@ -267,13 +277,15 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -267,13 +277,15 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
ownerRepayment
.
setCreateBy
(
ownerLoanRecord
.
getOwnerUserName
());
ownerRepayment
.
setCreateBy
(
ownerLoanRecord
.
getOwnerUserName
());
ownerRepayment
.
setRepaymentBalance
(
ownerLoanRecord
.
getLoanBalance
());
ownerRepayment
.
setRepaymentBalance
(
ownerLoanRecord
.
getLoanBalance
());
ownerRepayment
.
setRepaymentNo
(
idGenerateSnowFlake
.
nextId
(
2L
));
ownerRepayment
.
setRepaymentNo
(
idGenerateSnowFlake
.
nextId
(
2L
));
ownerRepayment
.
setPayment
(
ownerLoanRecord
.
getBorrower
());
ownerRepayment
.
setPaymentAccount
(
ownerLoanRecord
.
getBorrowerAccount
());
OwnerInfoFeignVO
ownerInfoFeignVO
=
ownerFeign
.
getOwnerInfo
(
ownerLoanRecord
.
getOwnerUserNo
()).
getData
();
log
.
info
(
"生成还款记录,查询到用户信息:{}"
,
JSONUtil
.
parse
(
ownerInfoFeignVO
));
ownerRepayment
.
setPayment
(
ownerInfoFeignVO
.
getCompanyName
());
ownerRepayment
.
setPaymentAccount
(
ownerInfoFeignVO
.
getOwnerBankAccount
());
ownerRepayment
.
setPayee
(
ownerRepayment
.
getPayee
());
ownerRepayment
.
setPayee
(
ownerRepayment
.
getPayee
());
ownerRepayment
.
setPayeeAccount
(
ownerLoanRecord
.
getPayeeAccount
());
ownerRepayment
.
setPayeeAccount
(
ownerLoanRecord
.
getPayeeAccount
());
ownerRepayment
.
setPayChannel
(
OwnerRePaymentEnum
.
Channel
.
ORDER
.
getCode
());
ownerRepayment
.
setPayChannel
(
ownerLoanRecord
.
getPayChannel
());
ownerRepayment
.
setRunningWaterOpenNo
(
ownerLoanRecord
.
getRunningWaterOpenNo
());
ownerRepayment
.
setMerchantRunningWaterNo
(
ownerLoanRecord
.
getMerchantRunningWaterNo
());
ownerRepayment
.
setBeOverdue
(
OwnerRePaymentEnum
.
BeOverdue
.
NO
.
getCode
());
ownerRepayment
.
setBeOverdue
(
OwnerRePaymentEnum
.
BeOverdue
.
NO
.
getCode
());
ownerRepayment
.
setCreateBy
(
"系统"
);
ownerRepayment
.
setCreateBy
(
"系统"
);
ownerRepayment
.
setStatus
(
OwnerRePaymentEnum
.
Status
.
PAY_WAIT
.
getCode
());
ownerRepayment
.
setStatus
(
OwnerRePaymentEnum
.
Status
.
PAY_WAIT
.
getCode
());
...
@@ -286,6 +298,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -286,6 +298,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
Map
<
String
,
BorrowerSelectVO
>
map
=
new
TreeMap
<>();
Map
<
String
,
BorrowerSelectVO
>
map
=
new
TreeMap
<>();
for
(
BorrowerSelectVO
item
:
borrowerList
)
{
for
(
BorrowerSelectVO
item
:
borrowerList
)
{
if
(
map
.
containsKey
(
item
.
getName
()))
{
if
(
map
.
containsKey
(
item
.
getName
()))
{
//选择虚拟货币的借出方,虚拟货币的借出方时效较短,优先级高。
if
(
Objects
.
equals
(
item
.
getType
(),
OwnerLoanRecordEnum
.
LoanType
.
VIRTUAL_CURRENCY
.
getCode
()))
{
if
(
Objects
.
equals
(
item
.
getType
(),
OwnerLoanRecordEnum
.
LoanType
.
VIRTUAL_CURRENCY
.
getCode
()))
{
map
.
put
(
item
.
getName
(),
item
);
map
.
put
(
item
.
getName
(),
item
);
}
}
...
@@ -304,7 +317,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -304,7 +317,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
detail
.
setCompanyName
(
ownerInfoFeignVO
.
getCompanyName
());
detail
.
setCompanyName
(
ownerInfoFeignVO
.
getCompanyName
());
//收款方
//收款方
List
<
PayeeVO
>
payeeList
=
ClxPayeeConfig
.
payee
List
.
stream
().
map
(
List
<
PayeeVO
>
payeeList
=
ClxPayeeConfig
.
payee
.
stream
().
map
(
item
->
PayeeVO
.
builder
().
name
(
item
.
getName
()).
account
(
item
.
getAccount
()).
id
(
item
.
getId
()).
build
()
item
->
PayeeVO
.
builder
().
name
(
item
.
getName
()).
account
(
item
.
getAccount
()).
id
(
item
.
getId
()).
build
()
).
collect
(
Collectors
.
toList
());
).
collect
(
Collectors
.
toList
());
detail
.
setPayeeList
(
payeeList
);
detail
.
setPayeeList
(
payeeList
);
...
@@ -318,19 +331,35 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -318,19 +331,35 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
PerformanceResultEnum
.
DATA_NOT_FIND
);
CarrierCashierInfoVO
vo
=
ownerLoanRecordStruct
.
convertCashierInfo
(
ownerLoanRecord
);
CarrierCashierInfoVO
vo
=
ownerLoanRecordStruct
.
convertCashierInfo
(
ownerLoanRecord
);
//TODO 设置支付方式和付款账户和银行名称 ,宇帆提供
Borrower
borrower
=
borrowerDao
.
getEntityByKey
(
ownerLoanRecord
.
getBorrowerId
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(
Objects
.
equals
(
borrower
.
getDeleteStatus
(),
DeleteStatusEnum
.
NO
.
getCode
()))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
}
vo
.
setOrderPayWay
(
false
);
String
bankName
=
borrower
.
getBankName
();
if
(
nbBankConfig
.
getOrderSupportBank
().
contains
(
bankName
))
{
vo
.
setOrderPayWay
(
true
);
}
vo
.
setBankName
(
bankName
);
vo
.
setPayAccount
(
borrower
.
getBankCardNo
());
return
vo
;
return
vo
;
}
}
@Override
@Override
public
OwnerOrderPaymentDetailVO
getOrderPaymentDetail
(
Integer
id
)
{
public
Carrier
OwnerOrderPaymentDetailVO
getOrderPaymentDetail
(
Integer
id
)
{
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
PerformanceResultEnum
.
DATA_NOT_FIND
);
OwnerOrderPaymentDetailVO
vo
=
ownerLoanRecordStruct
.
convertOrderPaymentDetail
(
ownerLoanRecord
);
CarrierOwnerOrderPaymentDetailVO
vo
=
ownerLoanRecordStruct
.
convertOrderPaymentDetail
(
ownerLoanRecord
);
vo
.
setPayer
(
ownerLoanRecord
.
getBorrower
());
vo
.
setPayerAccount
(
ownerLoanRecord
.
getPayeeAccount
());
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
(
ClxPayeeConfig
.
XXH_ID
);
vo
.
setPayee
(
payeeMap
.
getName
());
vo
.
setPayeeAccount
(
payeeMap
.
getAccount
());
//计算倒计时时间,下单时间 + 30天 为截止时间
//计算倒计时时间,下单时间 + 30天 为截止时间
LocalDateTime
endTime
=
ownerLoanRecord
.
getCreateTime
().
plusDays
(
30
);
LocalDateTime
endTime
=
ownerLoanRecord
.
getCreateTime
().
plusDays
(
30
);
vo
.
setFinalPaymentTime
(
DateUtils
.
formatDateTime
(
endTime
).
get
());
vo
.
setFinalPaymentTime
(
DateUtils
.
formatDateTime
(
endTime
).
get
());
vo
.
setLoanNo
(
ownerLoanRecord
.
getLoanNo
());
return
vo
;
return
vo
;
}
}
...
@@ -338,7 +367,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -338,7 +367,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
public
CarrierTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
)
{
public
CarrierTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
)
{
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
PerformanceResultEnum
.
DATA_NOT_FIND
);
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
Map
(
ClxPayeeConfig
.
XXH_ID
);
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
(
ClxPayeeConfig
.
XXH_ID
);
return
CarrierTransferPaymentDetailVO
.
builder
().
payee
(
payeeMap
.
getName
())
return
CarrierTransferPaymentDetailVO
.
builder
().
payee
(
payeeMap
.
getName
())
.
payeeAccount
(
payeeMap
.
getAccount
()).
payeeBank
(
payeeMap
.
getBank
()).
payeeBankNo
(
payeeMap
.
getBankNo
())
.
payeeAccount
(
payeeMap
.
getAccount
()).
payeeBank
(
payeeMap
.
getBank
()).
payeeBankNo
(
payeeMap
.
getBankNo
())
.
loanBalance
(
ownerLoanRecord
.
getLoanBalance
())
.
loanBalance
(
ownerLoanRecord
.
getLoanBalance
())
...
@@ -422,7 +451,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -422,7 +451,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
param
.
getLoanNo
())
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
param
.
getLoanNo
())
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(!
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAY_FAIL
.
getCode
())){
if
(!
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAY_FAIL
.
getCode
()))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
OWNER_LOAN_RECORD_PAY_STATUS_ERROR
);
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
OWNER_LOAN_RECORD_PAY_STATUS_ERROR
);
}
}
...
@@ -447,8 +476,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -447,8 +476,7 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
ownerLoanRecord
.
setLendingPartyAccount
(
borrower
.
getBankCardNo
());
ownerLoanRecord
.
setLendingPartyAccount
(
borrower
.
getBankCardNo
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_DIRECT_PAY
.
getCode
());
bankTrade
.
setTradeType
(
BankTradeEnum
.
TradeType
.
ORDER_DIRECT_PAY
.
getCode
());
}
}
else
{
else
{
//资金 TODO 调宁波银企直连的产品,从诚联信账户中给鑫祥和执行转账
//资金 TODO 调宁波银企直连的产品,从诚联信账户中给鑫祥和执行转账
// 转账支付
// 转账支付
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderTransferPay
(
ownerLoanRecord
.
getLoanBalance
().
intValue
());
NbBankOrderPayResultVO
orderPayResultVO
=
bankService
.
orderTransferPay
(
ownerLoanRecord
.
getLoanBalance
().
intValue
());
...
@@ -485,36 +513,105 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
...
@@ -485,36 +513,105 @@ public class OwnerLoanRecordServiceImpl implements OwnerLoanRecordService {
@Override
@Override
public
void
payFail
(
String
loanNo
){
@Transactional
(
rollbackFor
=
Exception
.
class
)
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
loanNo
)
public
void
payFail
(
String
merSeqNo
)
{
BankTrade
bankTrade
=
bankTradeDao
.
selectByMerchantRunningWaterNo
(
merSeqNo
).
get
();
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
bankTrade
.
getRelationNo
())
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
())){
if
(
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
()))
{
log
.
info
(
"借款单非支付中状态, loanNo:{}"
,
loanNo
);
log
.
info
(
"借款单非支付中状态, loanNo:{}"
,
bankTrade
.
getRelationNo
()
);
return
;
return
;
}
}
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
PAY_FAIL
.
getCode
());
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
PAY_FAIL
.
getCode
());
ownerLoanRecordDao
.
update
PaySuccess
(
ownerLoanRecord
);
ownerLoanRecordDao
.
update
StatusById
(
ownerLoanRecord
);
}
}
@Override
@Override
public
void
paySuccess
(
String
loanNo
){
@Transactional
(
rollbackFor
=
Exception
.
class
)
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
loanNo
)
public
void
paySuccess
(
String
merSeqNo
)
{
BankTrade
bankTrade
=
bankTradeDao
.
selectByMerchantRunningWaterNo
(
merSeqNo
).
get
();
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
bankTrade
.
getRelationNo
())
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
())){
if
(
Objects
.
equals
(
ownerLoanRecord
.
getStatus
(),
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
()))
{
log
.
info
(
"借款单非支付中状态, loanNo:{}"
,
loanNo
);
log
.
info
(
"借款单非支付中状态, loanNo:{}"
,
bankTrade
.
getRelationNo
()
);
return
;
return
;
}
}
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
PAY_SUCCESS
.
getCode
());
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
PAY_SUCCESS
.
getCode
());
while
(
true
)
{
OwnerLoanAccount
ownerLoanAccount
=
ownerLoanAccountDao
.
getOneByField
(
OwnerLoanAccount:
:
getOwnerUserNo
,
ownerLoanRecord
.
getOwnerUserNo
()).
get
();
OwnerLoanAccount
entity
=
new
OwnerLoanAccount
();
entity
.
setId
(
ownerLoanAccount
.
getId
());
entity
.
setFundingAccountBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setFundingUsableBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyAccountBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setVirtuallyFrozenBalance
(
BigDecimal
.
ZERO
);
entity
.
setVirtuallyUsableBalance
(
ownerLoanRecord
.
getLoanBalance
());
entity
.
setModifiedTime
(
ownerLoanAccount
.
getModifiedTime
());
Integer
flag
=
ownerLoanAccountDao
.
updateAccountCAS
(
entity
,
LocalDateTime
.
now
(),
true
);
if
(
flag
==
1
)
{
//生成借款流水
initOwnerLoanRunningWaterRecord
(
ownerLoanRecord
);
//生成还款记录
initOwnerRepayment
(
ownerLoanRecord
);
ownerLoanRecordDao
.
updateStatusById
(
ownerLoanRecord
);
break
;
}
}
}
@Override
public
void
ownerLoanRecordRetryPay
(
String
loanNo
)
{
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
loanNo
)
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_WAIT
.
getCode
());
// 更新借款信息
ownerLoanRecordDao
.
updateStatusById
(
ownerLoanRecord
);
}
ownerLoanRecordDao
.
updatePaySuccess
(
ownerLoanRecord
);
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerLoanRecordCancelPay
(
String
loanNo
)
{
OwnerLoanRecord
ownerLoanRecord
=
ownerLoanRecordDao
.
getOneByField
(
OwnerLoanRecord:
:
getLoanNo
,
loanNo
)
.
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(!
ownerLoanRecord
.
getStatus
().
equals
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_WAIT
.
getCode
())
&&
!
ownerLoanRecord
.
getStatus
().
equals
(
OwnerLoanRecordEnum
.
Status
.
PAYING
.
getCode
())
)
{
log
.
info
(
"借款记录状态异常,不能取消"
);
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
OWNER_LOAN_RECORD_CANCEL_STATUS_ERROR
);
}
}
NbBankOrderResultVO
result
=
bankService
.
getResult
(
loanNo
);
Integer
status
=
result
.
getStatus
();
if
(!
NbBankStatusEnum
.
Status
.
INIT
.
getCode
().
equals
(
status
)
&&
!
NbBankStatusEnum
.
Status
.
FAIL
.
getCode
().
equals
(
status
)
&&
!
NbBankStatusEnum
.
Status
.
NOT_FOUND
.
getCode
().
equals
(
status
)
)
{
log
.
info
(
"宁波银行响应当前业务,不能取消{}"
,
JSONUtil
.
parse
(
result
));
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
OWNER_LOAN_RECORD_CANCEL_STATUS_ERROR
);
}
log
.
info
(
"借款记录取消,更新状态为待审批"
);
ownerLoanRecord
.
setStatus
(
OwnerLoanRecordEnum
.
Status
.
APPROVE_WAIT
.
getCode
());
ownerLoanRecordDao
.
updateStatusById
(
ownerLoanRecord
);
BankTrade
bankTrade
=
bankTradeDao
.
selectByRelationNo
(
loanNo
).
get
();
Integer
tradeType
=
bankTrade
.
getTradeType
();
// 调用宁波退款
bankService
.
refund
(
tradeType
,
bankTrade
.
getMerchantRunningWaterNo
(),
Integer
.
valueOf
(
ownerLoanRecord
.
getLoanBalance
().
movePointRight
(
2
).
toString
()),
bankTrade
.
getRunningWaterOpenNo
());
}
public
void
generateFrozenOwnerLoanRunningWater
(
OwnerLoanRecord
ownerLoanRecord
,
String
childNo
,
BigDecimal
orderChildPrice
)
{
public
void
generateFrozenOwnerLoanRunningWater
(
OwnerLoanRecord
ownerLoanRecord
,
String
childNo
,
BigDecimal
orderChildPrice
)
{
log
.
info
(
"13.生成借款冻结流水"
);
log
.
info
(
"13.生成借款冻结流水"
);
OwnerLoanAccount
update
=
new
OwnerLoanAccount
();
OwnerLoanAccount
update
=
new
OwnerLoanAccount
();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/loan/OwnerRepaymentServiceImpl.java
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
service
.
impl
.
loan
;
package
com
.
clx
.
performance
.
service
.
impl
.
loan
;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.TypeReference
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.config.loan.ClxPayeeConfig
;
import
com.clx.performance.config.loan.ClxPayeeConfig
;
import
com.clx.performance.config.loan.PaymentFromConfig
;
import
com.clx.performance.config.loan.PaymentFromConfig
;
import
com.clx.performance.config.nbbank.NbBankConfig
;
import
com.clx.performance.dao.loan.OwnerRepaymentDao
;
import
com.clx.performance.dao.loan.OwnerRepaymentDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.enums.loan.OwnerRePaymentEnum
;
import
com.clx.performance.extranal.user.impl.OwnerInfoServiceImpl
;
import
com.clx.performance.model.loan.OwnerRepayment
;
import
com.clx.performance.model.loan.OwnerRepayment
;
import
com.clx.performance.param.pc.loan.carrier.PageCarrierOwnerRepaymentParam
;
import
com.clx.performance.param.pc.loan.carrier.PageCarrierOwnerRepaymentParam
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerRepaymentOfOwner
;
import
com.clx.performance.param.pc.loan.carrier.PageOwnerRepaymentOfOwner
;
...
@@ -21,17 +22,21 @@ import com.clx.performance.vo.pc.loan.owner.ExportOwnerRepaymentVO;
...
@@ -21,17 +22,21 @@ 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.OwnerCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerTransferPaymentDetailVO
;
import
com.clx.user.vo.pc.owner.OwnerBindCardVO
;
import
com.msl.common.result.Result
;
import
com.msl.common.result.Result
;
import
com.msl.common.utils.DateUtils
;
import
com.msl.common.utils.DateUtils
;
import
com.msl.document.api.feign.ContractEvidenceFeign
;
import
com.msl.document.api.feign.ContractEvidenceFeign
;
import
com.msl.document.api.feign.ContractTemplateFeign
;
import
com.msl.document.api.feign.ContractTemplateFeign
;
import
com.msl.document.api.param.GenerateContractParam
;
import
com.msl.document.api.param.GenerateContractParam
;
import
com.msl.document.api.vo.ContractEvidenceRecordVo
;
import
com.msl.document.api.vo.ContractEvidenceRecordVo
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.utils.TokenUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Objects
;
...
@@ -51,6 +56,9 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
...
@@ -51,6 +56,9 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
private
final
ContractEvidenceFeign
contractEvidenceFeign
;
private
final
ContractEvidenceFeign
contractEvidenceFeign
;
private
final
ContractTemplateFeign
contractTemplateFeign
;
private
final
ContractTemplateFeign
contractTemplateFeign
;
private
final
PaymentFromConfig
paymentFromConfig
;
private
final
PaymentFromConfig
paymentFromConfig
;
private
final
OwnerInfoServiceImpl
ownerInfoService
;
private
final
NbBankConfig
nbBankConfig
;
@Override
@Override
public
IPage
<
OwnerRepaymentVO
>
pageOwnerRepayment
(
PageCarrierOwnerRepaymentParam
param
)
{
public
IPage
<
OwnerRepaymentVO
>
pageOwnerRepayment
(
PageCarrierOwnerRepaymentParam
param
)
{
IPage
<
OwnerRepayment
>
page
=
ownerRepaymentDao
.
pageOwnerRepayment
(
param
);
IPage
<
OwnerRepayment
>
page
=
ownerRepaymentDao
.
pageOwnerRepayment
(
param
);
...
@@ -62,6 +70,28 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
...
@@ -62,6 +70,28 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
return
returnPage
;
return
returnPage
;
}
}
@Override
public
IPage
<
OwnerRepaymentVO
>
ownerRepaymentOverdueList
()
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
PageCarrierOwnerRepaymentParam
param
=
new
PageCarrierOwnerRepaymentParam
();
param
.
setOwnerUserNo
(
String
.
valueOf
(
loginUserInfo
.
getUserNo
()));
List
<
Integer
>
inStatusList
=
new
ArrayList
<>();
inStatusList
.
add
(
OwnerRePaymentEnum
.
Status
.
PAYING
.
getCode
());
inStatusList
.
add
(
OwnerRePaymentEnum
.
Status
.
PAY_WAIT
.
getCode
());
inStatusList
.
add
(
OwnerRePaymentEnum
.
Status
.
PAY_FAIL
.
getCode
());
param
.
setInStatusList
(
inStatusList
);
param
.
setBeOverdue
(
OwnerRePaymentEnum
.
BeOverdue
.
YES
.
getCode
());
IPage
<
OwnerRepayment
>
page
=
ownerRepaymentDao
.
pageOwnerRepayment
(
param
);
List
<
OwnerRepaymentVO
>
records
=
ownerRepaymentStruct
.
convertList
(
page
.
getRecords
());
IPage
<
OwnerRepaymentVO
>
returnPage
=
new
Page
<>();
returnPage
.
setPages
(
page
.
getPages
());
returnPage
.
setTotal
(
page
.
getTotal
());
returnPage
.
setRecords
(
records
);
return
returnPage
;
}
@Override
@Override
public
IPage
<
OwnerRepaymentVO
>
pageOwnerRepaymentOfOwner
(
PageOwnerRepaymentOfOwner
param
)
{
public
IPage
<
OwnerRepaymentVO
>
pageOwnerRepaymentOfOwner
(
PageOwnerRepaymentOfOwner
param
)
{
return
ownerRepaymentDao
.
pageByParam
(
param
);
return
ownerRepaymentDao
.
pageByParam
(
param
);
...
@@ -72,7 +102,15 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
...
@@ -72,7 +102,15 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getEntityByKey
(
id
).
orElseThrow
(
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
PerformanceResultEnum
.
DATA_NOT_FIND
);
OwnerCashierInfoVO
vo
=
ownerRepaymentStruct
.
convertCashierInfo
(
ownerRepayment
);
OwnerCashierInfoVO
vo
=
ownerRepaymentStruct
.
convertCashierInfo
(
ownerRepayment
);
//TODO 设置支付方式和付款账户和银行名称 ,宇帆提供
OwnerBindCardVO
bindCard
=
ownerInfoService
.
getOwnerBindCard
(
ownerRepayment
.
getOwnerUserNo
());
String
ownerAccountBank
=
bindCard
.
getOwnerAccountBank
();
vo
.
setOrderPayWay
(
false
);
if
(
nbBankConfig
.
getOrderSupportBank
().
contains
(
ownerAccountBank
)){
vo
.
setOrderPayWay
(
true
);
}
vo
.
setBankName
(
ownerAccountBank
);
vo
.
setPayAccount
(
bindCard
.
getOwnerBankAccount
());
return
vo
;
return
vo
;
}
}
...
@@ -91,7 +129,7 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
...
@@ -91,7 +129,7 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
public
OwnerTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
)
{
public
OwnerTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
)
{
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getEntityByKey
(
id
).
orElseThrow
(
OwnerRepayment
ownerRepayment
=
ownerRepaymentDao
.
getEntityByKey
(
id
).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
PerformanceResultEnum
.
DATA_NOT_FIND
);
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
Map
(
ClxPayeeConfig
.
XXH_ID
);
ClxPayeeConfig
.
PayeeConfig
payeeMap
=
ClxPayeeConfig
.
getPayee
(
ClxPayeeConfig
.
XXH_ID
);
return
OwnerTransferPaymentDetailVO
.
builder
().
payee
(
payeeMap
.
getName
())
return
OwnerTransferPaymentDetailVO
.
builder
().
payee
(
payeeMap
.
getName
())
.
payeeAccount
(
payeeMap
.
getAccount
()).
payeeBank
(
payeeMap
.
getBank
()).
payeeBankNo
(
payeeMap
.
getBankNo
())
.
payeeAccount
(
payeeMap
.
getAccount
()).
payeeBank
(
payeeMap
.
getBank
()).
payeeBankNo
(
payeeMap
.
getBankNo
())
.
repaymentBalance
(
ownerRepayment
.
getRepaymentBalance
())
.
repaymentBalance
(
ownerRepayment
.
getRepaymentBalance
())
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementDriverDetailServiceImpl.java
浏览文件 @
4d517c35
...
@@ -3,6 +3,7 @@ package com.clx.performance.service.impl.settle;
...
@@ -3,6 +3,7 @@ package com.clx.performance.service.impl.settle;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
...
@@ -58,7 +59,6 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
...
@@ -58,7 +59,6 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
// 预付运费
// 预付运费
settlementDriverDetail
.
setPrepayFreight
(
BigDecimal
.
ZERO
);
settlementDriverDetail
.
setPrepayFreight
(
BigDecimal
.
ZERO
);
// 结算金额
// 结算金额
settlementDriverDetail
.
setSettlementFreight
(
settlementFreightCalc
(
settlementDriverDetail
.
getFreight
(),
settlementDriverDetail
.
getLossFreight
()));
settlementDriverDetail
.
setSettlementFreight
(
settlementFreightCalc
(
settlementDriverDetail
.
getFreight
(),
settlementDriverDetail
.
getLossFreight
()));
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementOwnerDetailServiceImpl.java
浏览文件 @
4d517c35
...
@@ -199,14 +199,16 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
...
@@ -199,14 +199,16 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
fieldList
.
add
(
new
ExcelField
(
10
,
"货损金额"
,
"lossFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
10
,
"货损金额"
,
"lossFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
11
,
"预付运费金额"
,
"prepayFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
11
,
"预付运费金额"
,
"prepayFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
12
,
"结算金额"
,
"settlementFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
12
,
"结算金额"
,
"settlementFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
13
,
"开票金额"
,
"invoiceFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
13
,
"借款抵扣金额"
,
"loanFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
14
,
"开票标识"
,
"invoiceType"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
15
,
"订单编号"
,
"orderNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
14
,
"开票金额"
,
"invoiceFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
16
,
"结算单号"
,
"settlementNo"
,
15000
));
fieldList
.
add
(
new
ExcelField
(
15
,
"开票标识"
,
"invoiceType"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
17
,
"结算子单号"
,
"settlementSubNo"
,
15000
));
fieldList
.
add
(
new
ExcelField
(
16
,
"订单编号"
,
"orderNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
18
,
"创建时间"
,
"createTime"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
17
,
"结算单号"
,
"settlementNo"
,
15000
));
fieldList
.
add
(
new
ExcelField
(
19
,
"是否已付尾款"
,
"finalPaymentStatus"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
18
,
"结算子单号"
,
"settlementSubNo"
,
15000
));
fieldList
.
add
(
new
ExcelField
(
20
,
"是否已开票"
,
"invoiceStatus"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
19
,
"创建时间"
,
"createTime"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
20
,
"是否已付尾款"
,
"finalPaymentStatus"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
21
,
"是否已开票"
,
"invoiceStatus"
,
5000
));
// 组装数据
// 组装数据
List
<
List
<
ExcelData
>>
dataList
=
new
ArrayList
<>();
List
<
List
<
ExcelData
>>
dataList
=
new
ArrayList
<>();
...
@@ -230,6 +232,7 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
...
@@ -230,6 +232,7 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
rowData
.
add
(
new
ExcelData
(
dto
.
getLossFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getPrepayFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getPrepayFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getLoanFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceFreight
().
movePointLeft
(
2
)));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceTypeMsg
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceTypeMsg
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getOrderNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getOrderNo
()));
...
...
performance-web/src/main/java/com/clx/performance/service/impl/thirdparty/nbbank/NbBankServiceImpl.java
浏览文件 @
4d517c35
package
com
.
clx
.
performance
.
service
.
impl
.
thirdparty
.
nbbank
;
package
com
.
clx
.
performance
.
service
.
impl
.
thirdparty
.
nbbank
;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.clx.performance.param.OwnerLoanPayNotifyMqParam
;
import
com.clx.performance.component.IdGenerateSnowFlake
;
import
com.clx.performance.component.IdGenerateSnowFlake
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dao.loan.BankTradeDao
;
import
com.clx.performance.dao.loan.BankTradeDao
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.loan.BankTradeEnum
;
import
com.clx.performance.enums.loan.BankTradeEnum
;
import
com.clx.performance.enums.nbbank.NbBankStatusEnum
;
import
com.clx.performance.enums.nbbank.NbBankStatusEnum
;
import
com.clx.performance.model.loan.BankTrade
;
import
com.clx.performance.model.loan.BankTrade
;
import
com.clx.performance.service.loan.OwnerLoanRecordService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankThirdpartyService
;
import
com.clx.performance.service.thirdparty.nbbank.NbBankThirdpartyService
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.utils.SpringContextUtils
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderPayResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
import
com.clx.performance.vo.pc.nbbank.NbBankOrderResultVO
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.msl.common.exception.ServiceSystemException
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.core.MessageBuilder
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -39,6 +43,9 @@ public class NbBankServiceImpl implements NbBankService {
...
@@ -39,6 +43,9 @@ public class NbBankServiceImpl implements NbBankService {
@Autowired
@Autowired
private
IdGenerateSnowFlake
idGenerateSnowFlake
;
private
IdGenerateSnowFlake
idGenerateSnowFlake
;
@Autowired
private
RabbitTemplate
rabbitTemplate
;
/**
/**
* 转账支付
* 转账支付
...
@@ -78,7 +85,7 @@ public class NbBankServiceImpl implements NbBankService {
...
@@ -78,7 +85,7 @@ public class NbBankServiceImpl implements NbBankService {
@Override
@Override
public
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
Integer
amount
,
public
NbBankOrderPayResultVO
orderDirectPay
(
Long
loanNo
,
Integer
amount
,
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
String
payAcctOpenBankId
,
String
payAcctNo
,
String
payAcctNm
)
{
String
merSeqNo
=
String
.
valueOf
(
loanNo
);
String
merSeqNo
=
idGenerateSnowFlake
.
nextIdToString
(
1L
);
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
String
merDtTm
=
LocalDateTimeUtils
.
formatTime
();
String
closeDtTm
=
LocalDateTimeUtils
.
formatTime
(
LocalDateTimeUtils
.
parseTime
(
merDtTm
).
plusDays
(
30
));
String
closeDtTm
=
LocalDateTimeUtils
.
formatTime
(
LocalDateTimeUtils
.
parseTime
(
merDtTm
).
plusDays
(
30
));
...
@@ -228,22 +235,17 @@ public class NbBankServiceImpl implements NbBankService {
...
@@ -228,22 +235,17 @@ public class NbBankServiceImpl implements NbBankService {
// 更新状态
// 更新状态
bankTradeDao
.
updateStatus
(
bankTrade
);
bankTradeDao
.
updateStatus
(
bankTrade
);
// 货主借款支付回调
// 货主借款支付回调
if
(
Objects
.
equals
(
bankTrade
.
getOrderType
(),
BankTradeEnum
.
OrderType
.
OWNER_LOAN_RECORD
.
getCode
())){
if
(
Objects
.
equals
(
bankTrade
.
getOrderType
(),
BankTradeEnum
.
OrderType
.
OWNER_LOAN_RECORD
.
getCode
())){
OwnerLoanPayNotifyMqParam
param
=
new
OwnerLoanPayNotifyMqParam
();
if
(
Objects
.
equals
(
transStatus
,
NbBankStatusEnum
.
Status
.
SUCCESS
.
getCode
()))
{
param
.
setMerSeqNo
(
merSeqNo
);
param
.
setPayStatus
(
transStatus
);
SpringContextUtils
.
getBeanByClass
(
OwnerLoanRecordService
.
class
).
paySuccess
(
merSeqNo
);
Message
message
=
MessageBuilder
.
withBody
(
JSONUtil
.
parse
(
param
).
toString
().
getBytes
()).
build
();
}
else
if
(
Objects
.
equals
(
transStatus
,
NbBankStatusEnum
.
Status
.
FAIL
.
getCode
()))
{
//执行解绑自有车辆处理逻辑,将绑定记录正常改为取消
SpringContextUtils
.
getBeanByClass
(
OwnerLoanRecordService
.
class
).
payFail
(
merSeqNo
);
rabbitTemplate
.
send
(
}
RabbitKeyConstants
.
OWNER_LOAN_EXCHANGE
,
RabbitKeyConstants
.
OWNER_LOAN_PAY_ROUTE_KEY
,
message
else
{
);
// TODO 其它情况
}
}
else
{
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/loan/OwnerLoanAccountService.java
浏览文件 @
4d517c35
...
@@ -17,4 +17,6 @@ public interface OwnerLoanAccountService {
...
@@ -17,4 +17,6 @@ public interface OwnerLoanAccountService {
IPage
<
CarrierOwnerLoanAccountVO
>
pageOwnerLoanAccount
(
PageOwnerLoanAccountParam
param
);
IPage
<
CarrierOwnerLoanAccountVO
>
pageOwnerLoanAccount
(
PageOwnerLoanAccountParam
param
);
OwnerAccountVO
getOwnerLoanAccount
();
OwnerAccountVO
getOwnerLoanAccount
();
void
orderChildLoanProcess
(
Long
ownerUserNo
);
}
}
performance-web/src/main/java/com/clx/performance/service/loan/OwnerLoanRecordService.java
浏览文件 @
4d517c35
...
@@ -8,7 +8,7 @@ import com.clx.performance.param.pc.loan.owner.OwnerLoanRecordParam;
...
@@ -8,7 +8,7 @@ import com.clx.performance.param.pc.loan.owner.OwnerLoanRecordParam;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierTransferPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.
Carrier
OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.owner.OwnerLoanRecordDetail
;
import
com.clx.performance.vo.pc.loan.owner.OwnerLoanRecordDetail
;
...
@@ -31,7 +31,7 @@ public interface OwnerLoanRecordService {
...
@@ -31,7 +31,7 @@ public interface OwnerLoanRecordService {
CarrierCashierInfoVO
getCashierInfo
(
Integer
id
);
CarrierCashierInfoVO
getCashierInfo
(
Integer
id
);
OwnerOrderPaymentDetailVO
getOrderPaymentDetail
(
Integer
id
);
Carrier
OwnerOrderPaymentDetailVO
getOrderPaymentDetail
(
Integer
id
);
CarrierTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
);
CarrierTransferPaymentDetailVO
getTransferPaymentDetail
(
Integer
id
);
...
@@ -42,7 +42,11 @@ public interface OwnerLoanRecordService {
...
@@ -42,7 +42,11 @@ public interface OwnerLoanRecordService {
void
updateOwnerLoanRecordRepay
(
CarrierOwnerLoanRecordRepayParam
param
);
void
updateOwnerLoanRecordRepay
(
CarrierOwnerLoanRecordRepayParam
param
);
void
updateOwnerLoanRecordPayCancel
(
CarrierOwnerLoanRecordPayCancelParam
param
);
void
updateOwnerLoanRecordPayCancel
(
CarrierOwnerLoanRecordPayCancelParam
param
);
void
payFail
(
String
loan
No
);
void
payFail
(
String
merSeq
No
);
void
paySuccess
(
String
loanNo
);
void
paySuccess
(
String
merSeqNo
);
void
ownerLoanRecordRetryPay
(
String
loanNo
);
void
ownerLoanRecordCancelPay
(
String
loanNo
);
}
}
performance-web/src/main/java/com/clx/performance/service/loan/OwnerRepaymentService.java
浏览文件 @
4d517c35
...
@@ -18,6 +18,8 @@ public interface OwnerRepaymentService {
...
@@ -18,6 +18,8 @@ public interface OwnerRepaymentService {
IPage
<
OwnerRepaymentVO
>
pageOwnerRepayment
(
PageCarrierOwnerRepaymentParam
param
);
IPage
<
OwnerRepaymentVO
>
pageOwnerRepayment
(
PageCarrierOwnerRepaymentParam
param
);
IPage
<
OwnerRepaymentVO
>
ownerRepaymentOverdueList
();
IPage
<
OwnerRepaymentVO
>
pageOwnerRepaymentOfOwner
(
PageOwnerRepaymentOfOwner
param
);
IPage
<
OwnerRepaymentVO
>
pageOwnerRepaymentOfOwner
(
PageOwnerRepaymentOfOwner
param
);
OwnerCashierInfoVO
getCashierInfo
(
Integer
id
);
OwnerCashierInfoVO
getCashierInfo
(
Integer
id
);
...
...
performance-web/src/main/java/com/clx/performance/sqlProvider/loan/BorrowerSqlProvider.java
浏览文件 @
4d517c35
...
@@ -33,7 +33,7 @@ public class BorrowerSqlProvider {
...
@@ -33,7 +33,7 @@ public class BorrowerSqlProvider {
public
String
selectAllBorrowConfig
()
{
public
String
selectAllBorrowConfig
()
{
return
new
SQL
(){{
return
new
SQL
(){{
SELECT
(
" a.name,a.bank_card_no as bankCardNo,b.type,b.day "
);
SELECT
(
" a.
id,a.
name,a.bank_card_no as bankCardNo,b.type,b.day "
);
FROM
(
"borrower a"
);
FROM
(
"borrower a"
);
LEFT_OUTER_JOIN
(
"borrower_config b on a.id = b.borrower_id "
);
LEFT_OUTER_JOIN
(
"borrower_config b on a.id = b.borrower_id "
);
WHERE
(
"a.delete_status = "
+
DeleteStatusEnum
.
NO
.
getCode
());
WHERE
(
"a.delete_status = "
+
DeleteStatusEnum
.
NO
.
getCode
());
...
...
performance-web/src/main/java/com/clx/performance/sqlProvider/loan/OwnerLoanRecordSqlProvider.java
浏览文件 @
4d517c35
...
@@ -19,7 +19,7 @@ public class OwnerLoanRecordSqlProvider {
...
@@ -19,7 +19,7 @@ public class OwnerLoanRecordSqlProvider {
" running_water_open_no as runningWaterOpenNo, merchant_running_water_no as merchantRunningWaterNo, "
+
" running_water_open_no as runningWaterOpenNo, merchant_running_water_no as merchantRunningWaterNo, "
+
" loan_no as loanNo, loan_type as loanType, loan_balance as loanBalance, "
+
" loan_no as loanNo, loan_type as loanType, loan_balance as loanBalance, "
+
" borrower, borrower_account as borrowerAccount, remittance_identification_code as remittanceIdentificationCode, "
+
" borrower, borrower_account as borrowerAccount, remittance_identification_code as remittanceIdentificationCode, "
+
" lending_party
_id as lendingPartyId, lending_party
as lendingParty, lending_party_account as lendingPartyAccount, "
+
" lending_party as lendingParty, lending_party_account as lendingPartyAccount, "
+
" payee, payee_account as payeeAccount, "
+
" payee, payee_account as payeeAccount, "
+
" status, "
+
" status, "
+
" date_format(approve_time, '%Y-%m-%d %H:%i:%s') as approveTime, approve_by as approveBy, "
+
" date_format(approve_time, '%Y-%m-%d %H:%i:%s') as approveTime, approve_by as approveBy, "
+
...
...
performance-web/src/main/java/com/clx/performance/struct/loan/OwnerLoanRecordStruct.java
浏览文件 @
4d517c35
...
@@ -2,8 +2,8 @@ package com.clx.performance.struct.loan;
...
@@ -2,8 +2,8 @@ package com.clx.performance.struct.loan;
import
com.clx.performance.model.loan.OwnerLoanRecord
;
import
com.clx.performance.model.loan.OwnerLoanRecord
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierCashierInfoVO
;
import
com.clx.performance.vo.pc.loan.carrier.CarrierOwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.ExportOwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.ExportOwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerOrderPaymentDetailVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.clx.performance.vo.pc.loan.carrier.OwnerLoanRecordVO
;
import
com.msl.common.utils.DateStructUtil
;
import
com.msl.common.utils.DateStructUtil
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.Mapper
;
...
@@ -19,7 +19,7 @@ public interface OwnerLoanRecordStruct {
...
@@ -19,7 +19,7 @@ public interface OwnerLoanRecordStruct {
CarrierCashierInfoVO
convertCashierInfo
(
OwnerLoanRecord
ownerLoanRecord
);
CarrierCashierInfoVO
convertCashierInfo
(
OwnerLoanRecord
ownerLoanRecord
);
OwnerOrderPaymentDetailVO
convertOrderPaymentDetail
(
OwnerLoanRecord
ownerLoanRecord
);
Carrier
OwnerOrderPaymentDetailVO
convertOrderPaymentDetail
(
OwnerLoanRecord
ownerLoanRecord
);
ExportOwnerLoanRecordVO
convert
(
OwnerLoanRecord
ownerLoanRecord
);
ExportOwnerLoanRecordVO
convert
(
OwnerLoanRecord
ownerLoanRecord
);
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论