refactor: 支付单据结构调整

pull/1121/head
梁宇奇 2025-04-09 16:07:30 +08:00
parent a7084826ed
commit 9879b77ae4
24 changed files with 215 additions and 63 deletions

View File

@ -9,7 +9,7 @@ import lombok.ToString;
import java.math.BigDecimal;
/**
*
*
*
* @author liangyq
* @date 2025-04-01 11:57:52.533
@ -17,7 +17,7 @@ import java.math.BigDecimal;
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PaymentBill extends SimpleEntity {
public class FinanceBill extends SimpleEntity {
/**
*
*/
@ -46,6 +46,10 @@ public class PaymentBill extends SimpleEntity {
* ID
*/
private Long relId;
/**
*
*/
private String businessUniqueKey;
/**
* ID
*/

View File

@ -8,7 +8,7 @@ import lombok.ToString;
import java.math.BigDecimal;
/**
*
*
*
* @author liangyq
* @date 2025-04-01 11:57:52.550
@ -16,11 +16,11 @@ import java.math.BigDecimal;
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PaymentBillDetail extends SimpleEntity {
public class FinanceBillDetail extends SimpleEntity {
/**
* ID
* ID
*/
private Long paymentBillId;
private Long financeBillId;
/**
* [1:]
*/

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;
@ -6,15 +6,15 @@ import java.math.BigDecimal;
import java.util.Date;
/**
*
*
*
* @author liangyq
* @date 2025-04-01 11:57:52.533
**/
@Data
public class PaymentBillDTO {
public class FinanceBillDTO {
/**
* ID
* ID
*/
private Long id;
/**
@ -45,6 +45,10 @@ public class PaymentBillDTO {
* ID
*/
private Long relId;
/**
*
*/
private String businessUniqueKey;
/**
* ID
*/

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;
@ -6,21 +6,21 @@ import java.math.BigDecimal;
import java.util.Date;
/**
*
*
*
* @author liangyq
* @date 2025-04-01 11:57:52.550
**/
@Data
public class PaymentBillDetailDTO {
public class FinanceBillDetailDTO {
/**
* ID
* ID
*/
private Long id;
/**
* ID
* ID
*/
private Long paymentBillId;
private Long financeBillId;
/**
* [1:]
*/

View File

@ -0,0 +1,23 @@
package com.ruoyi.xkt.dto.finance;
import com.ruoyi.xkt.domain.FinanceBill;
import com.ruoyi.xkt.domain.FinanceBillDetail;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author liangyq
* @date 2025-04-08 21:18
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class FinanceBillInfo {
private FinanceBill financeBill;
private List<FinanceBillDetail> financeBillDetails;
}

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.xkt.dto.payment;
package com.ruoyi.xkt.dto.finance;
import lombok.Data;

View File

@ -1,23 +0,0 @@
package com.ruoyi.xkt.dto.payment;
import com.ruoyi.xkt.domain.PaymentBill;
import com.ruoyi.xkt.domain.PaymentBillDetail;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author liangyq
* @date 2025-04-08 21:18
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PaymentBillInfo {
private PaymentBill paymentBill;
private List<PaymentBillDetail> paymentBillDetails;
}

View File

@ -0,0 +1,27 @@
package com.ruoyi.xkt.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author liangyq
* @date 2025-04-02 23:42
*/
@Getter
@AllArgsConstructor
public enum EFinBillDetailRelType {
STORE_ORDER_DETAIL(1, "代发订单明细");
private final Integer value;
private final String label;
public static EFinBillDetailRelType of(Integer value) {
for (EFinBillDetailRelType e : EFinBillDetailRelType.values()) {
if (e.getValue().equals(value)) {
return e;
}
}
return null;
}
}

View File

@ -0,0 +1,27 @@
package com.ruoyi.xkt.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author liangyq
* @date 2025-04-02 23:42
*/
@Getter
@AllArgsConstructor
public enum EFinBillRelType {
STORE_ORDER(1, "代发订单");
private final Integer value;
private final String label;
public static EFinBillRelType of(Integer value) {
for (EFinBillRelType e : EFinBillRelType.values()) {
if (e.getValue().equals(value)) {
return e;
}
}
return null;
}
}

View File

@ -0,0 +1,29 @@
package com.ruoyi.xkt.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author liangyq
* @date 2025-04-02 23:42
*/
@Getter
@AllArgsConstructor
public enum EFinBillSrcType {
STORE_ORDER_PAID(1, "代发订单支付"),
STORE_ORDER_COMPLETED(2, "代发订单完成"),
WITHDRAW(3, "提现");
private final Integer value;
private final String label;
public static EFinBillSrcType of(Integer value) {
for (EFinBillSrcType e : EFinBillSrcType.values()) {
if (e.getValue().equals(value)) {
return e;
}
}
return null;
}
}

View File

@ -0,0 +1,30 @@
package com.ruoyi.xkt.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author liangyq
* @date 2025-04-02 23:42
*/
@Getter
@AllArgsConstructor
public enum EFinBillStatus {
INIT(1, "初始"),
PROCESSING(2, "执行中"),
SUCCESS(3, "执行成功"),
FAILURE(4, "执行失败");
private final Integer value;
private final String label;
public static EFinBillStatus of(Integer value) {
for (EFinBillStatus e : EFinBillStatus.values()) {
if (e.getValue().equals(value)) {
return e;
}
}
return null;
}
}

View File

@ -0,0 +1,29 @@
package com.ruoyi.xkt.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author liangyq
* @date 2025-04-02 23:42
*/
@Getter
@AllArgsConstructor
public enum EFinBillType {
COLLECTION(1, "收款单"),
PAYMENT(2, "付款单"),
TRANSFER(3, "转移单");
private final Integer value;
private final String label;
public static EFinBillType of(Integer value) {
for (EFinBillType e : EFinBillType.values()) {
if (e.getValue().equals(value)) {
return e;
}
}
return null;
}
}

View File

@ -10,7 +10,7 @@ import com.alipay.api.request.AlipayTradeWapPayRequest;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.xkt.domain.AlipayCallback;
import com.ruoyi.xkt.dto.order.StoreOrderInfo;
import com.ruoyi.xkt.dto.payment.AlipayReqDTO;
import com.ruoyi.xkt.dto.finance.AlipayReqDTO;
import com.ruoyi.xkt.enums.EPayChannel;
import com.ruoyi.xkt.enums.EPayFrom;
import com.ruoyi.xkt.manager.PaymentManager;

View File

@ -1,7 +1,7 @@
package com.ruoyi.xkt.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.xkt.domain.PaymentBillDetail;
import com.ruoyi.xkt.domain.FinanceBillDetail;
import org.springframework.stereotype.Repository;
/**
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
* @date 2025-04-02 12:48
*/
@Repository
public interface PaymentBillDetailMapper extends BaseMapper<PaymentBillDetail> {
public interface FinanceBillDetailMapper extends BaseMapper<FinanceBillDetail> {
}

View File

@ -1,7 +1,7 @@
package com.ruoyi.xkt.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.xkt.domain.PaymentBill;
import com.ruoyi.xkt.domain.FinanceBill;
import org.springframework.stereotype.Repository;
/**
@ -9,5 +9,5 @@ import org.springframework.stereotype.Repository;
* @date 2025-04-02 12:48
*/
@Repository
public interface PaymentBillMapper extends BaseMapper<PaymentBill> {
public interface FinanceBillMapper extends BaseMapper<FinanceBill> {
}

View File

@ -1,18 +1,19 @@
package com.ruoyi.xkt.service;
import com.ruoyi.xkt.dto.finance.FinanceBillInfo;
import com.ruoyi.xkt.dto.order.StoreOrderInfo;
import com.ruoyi.xkt.dto.payment.PaymentBillInfo;
/**
* @author liangyq
* @date 2025-04-08 21:14
*/
public interface IPaymentBillService {
public interface IFinanceBillService {
/**
*
*
* @param orderInfo
* @param srcId
* @return
*/
PaymentBillInfo createCollectionBillByOrder(StoreOrderInfo orderInfo);
FinanceBillInfo createCollectionBillAfterOrderPaid(StoreOrderInfo orderInfo, String srcId);
}

View File

@ -3,11 +3,11 @@ package com.ruoyi.xkt.service.impl;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.xkt.domain.InternalAccount;
import com.ruoyi.xkt.dto.order.StoreOrderInfo;
import com.ruoyi.xkt.dto.payment.PaymentBillInfo;
import com.ruoyi.xkt.mapper.PaymentBillDetailMapper;
import com.ruoyi.xkt.mapper.PaymentBillMapper;
import com.ruoyi.xkt.dto.finance.FinanceBillInfo;
import com.ruoyi.xkt.mapper.FinanceBillDetailMapper;
import com.ruoyi.xkt.mapper.FinanceBillMapper;
import com.ruoyi.xkt.service.IInternalAccountService;
import com.ruoyi.xkt.service.IPaymentBillService;
import com.ruoyi.xkt.service.IFinanceBillService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -17,18 +17,19 @@ import org.springframework.transaction.annotation.Transactional;
* @date 2025-04-08 21:14
*/
@Service
public class PaymentBillServiceImpl implements IPaymentBillService {
public class FinanceBillServiceImpl implements IFinanceBillService {
@Autowired
private PaymentBillMapper paymentBillMapper;
private FinanceBillMapper financeBillMapper;
@Autowired
private PaymentBillDetailMapper paymentBillDetailMapper;
private FinanceBillDetailMapper financeBillDetailMapper;
@Autowired
private IInternalAccountService internalAccountService;
@Transactional
@Override
public PaymentBillInfo createCollectionBillByOrder(StoreOrderInfo orderInfo) {
public FinanceBillInfo createCollectionBillAfterOrderPaid(StoreOrderInfo orderInfo, String srcId) {
//获取平台账户并加锁
InternalAccount ca = internalAccountService.getWithLock(Constants.PLATFORM_INTERNAL_ACCOUNT_ID);
return null;
}

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.xkt.mapper.PaymentBillDetailMapper">
<mapper namespace="com.ruoyi.xkt.mapper.FinanceBillDetailMapper">
</mapper>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.xkt.mapper.PaymentBillMapper">
<mapper namespace="com.ruoyi.xkt.mapper.FinanceBillMapper">
</mapper>