提交 fce5ea0f authored 作者: liuhaiquan's avatar liuhaiquan

开发还款提交申请生成付款单记录逻辑

上级 a37ddd81
......@@ -79,6 +79,7 @@ public enum OwnerLoanRecordEnum {
public enum PayChannel {
ORDER_DIRECT_PAY(1, "订单支付"),
ORDER_TRANSFER_PAY(2, "转账支付"),
ASSET(3,"财资")
;
private final Integer code;
......
package com.clx.performance.vo.pc.loan.carrier;
import com.clx.performance.enums.loan.OwnerLoanRecordEnum;
import com.clx.performance.enums.loan.OwnerPaymentEnum;
import com.msl.common.convertor.type.MoneyOutConvert;
import io.swagger.annotations.ApiModelProperty;
......@@ -76,14 +77,14 @@ public class OwnerPaymentVO{
}
@ApiModelProperty("默认财资 30 ")
@ApiModelProperty("默认财资")
private Integer payChannel;
@ApiModelProperty("财资")
@ApiModelProperty("支付渠道名称")
private String payChannelMsg;
public String getPayChannelMsg(){
return "财资";
return OwnerLoanRecordEnum.PayChannel.ASSET.getMsg();
}
......
......@@ -77,7 +77,7 @@ public class OwnerPayment implements HasKey<Integer> {
private Integer status;
@TableField("pay_channel")
@ApiModelProperty("默认财资 30 ")
@ApiModelProperty("默认财资")
private Integer payChannel;
@TableField("operate_time")
......
package com.clx.performance.service.impl.loan;
import cn.hutool.core.util.IdUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
......@@ -8,19 +9,24 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.message.feign.ClxMessageOpenapiFeign;
import com.clx.message.req.message.AliSmsMessageReq;
import com.clx.performance.component.IdGenerateSnowFlake;
import com.clx.performance.config.ClxMessageConfig;
import com.clx.performance.config.loan.ClxPayeeConfig;
import com.clx.performance.config.loan.PaymentFromConfig;
import com.clx.performance.config.nbbank.NbBankConfig;
import com.clx.performance.dao.loan.BankTradeDao;
import com.clx.performance.dao.loan.OwnerLoanRecordDao;
import com.clx.performance.dao.loan.OwnerPaymentDao;
import com.clx.performance.dao.loan.OwnerRepaymentDao;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.loan.OwnerLoanRecordEnum;
import com.clx.performance.enums.loan.OwnerPaymentEnum;
import com.clx.performance.enums.loan.OwnerRePaymentEnum;
import com.clx.performance.enums.nbbank.NbBankStatusEnum;
import com.clx.performance.extranal.user.impl.OwnerInfoServiceImpl;
import com.clx.performance.model.loan.BankTrade;
import com.clx.performance.model.loan.OwnerLoanRecord;
import com.clx.performance.model.loan.OwnerPayment;
import com.clx.performance.model.loan.OwnerRepayment;
import com.clx.performance.param.pc.loan.carrier.PageCarrierOwnerRepaymentParam;
import com.clx.performance.param.pc.loan.carrier.PageOwnerRepaymentOfOwner;
......@@ -74,6 +80,9 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
private final ClxMessageConfig messageConfig;
private final NbBankService bankService;
private final BankTradeDao bankTradeDao;
private final IdGenerateSnowFlake idGenerateSnowFlake;
private final OwnerPaymentDao ownerPaymentDao;
private final OwnerLoanRecordDao ownerLoanRecordDao;
@Override
public IPage<OwnerRepaymentVO> pageOwnerRepayment(PageCarrierOwnerRepaymentParam param) {
......@@ -253,6 +262,7 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
ownerRepaymentDao.updateStatusById(ownerRepayment);
}
@Transactional(rollbackFor = Exception.class)
@Override
public void paySuccess(String merSeqNo) {
// 查询交易流水
......@@ -263,6 +273,29 @@ public class OwnerRepaymentServiceImpl implements OwnerRepaymentService {
ownerRepayment.setStatus(OwnerRePaymentEnum.Status.PAY_SUCCESS.getCode());
// 更新借款信息
ownerRepaymentDao.updateStatusById(ownerRepayment);
OwnerLoanRecord ownerLoanRecord = ownerLoanRecordDao.getOneByField(OwnerLoanRecord::getLoanNo,
ownerRepayment.getLoanNo()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
//生成付款记录
OwnerPayment ownerPayment = new OwnerPayment();
ownerPayment.setOwnerUserNo(ownerRepayment.getOwnerUserNo());
ownerPayment.setOwnerUserName(ownerRepayment.getOwnerUserName());
ownerPayment.setMobile(ownerRepayment.getMobile());
ownerPayment.setRunningWaterOpenNo(bankTrade.getRunningWaterOpenNo());
ownerPayment.setPaymentNo(idGenerateSnowFlake.nextId(1L));
ownerPayment.setRepaymentNo(ownerRepayment.getRepaymentNo());
ownerPayment.setPaymentBalance(ownerRepayment.getRepaymentBalance());
//付款单的付款方取还款单的收款方
ownerPayment.setPayment(ownerRepayment.getPayee());
ownerPayment.setPaymentAccount(ownerRepayment.getPayeeAccount());
//付款单的收款方取借款单的借出方
ownerPayment.setPayee(ownerLoanRecord.getBorrower());
ownerPayment.setPayeeAccount(ownerLoanRecord.getBorrowerAccount());
ownerPayment.setStatus(OwnerPaymentEnum.Status.PAY_WAIT.getCode());
ownerPayment.setPayChannel(OwnerLoanRecordEnum.PayChannel.ASSET.getCode());
ownerPayment.setCreateBy("system");
ownerPaymentDao.saveEntity(ownerPayment);
}
@Override
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论