diff --git a/_doc/Task.md b/_doc/Task.md index 3699ced6..f970cb86 100644 --- a/_doc/Task.md +++ b/_doc/Task.md @@ -31,12 +31,11 @@ - [x] 增加对单差异数据查看功能和查看功能 - [x] 支付订单和退款订单页面添加实时金额汇总展示 - [ ] 自动分账改造 - - [ ] SDK新增对账接收放添加接口 - [x] 创建定时任务, 自动对待分账订单进行分账 - [x] 增加定时同步分账状态任务 - [x] 增加自动完结功能 - [x] 数据加密方式改为类型处理器模式 -- [ ] 页面优化 +- [x] 页面优化 2.0.7: 分账完善和基础架构优化 - [ ] 集成bootx-platform到项目中 - [ ] 资金流水优化 @@ -47,6 +46,8 @@ - [ ] 分账回调处理 - [ ] 分账组管理提供接口调用 - [ ] 分账通知 +- [ ] 分账支持手动和自动分账两种 +- [ ] 金额过小不进行分账, 增加新状态 - [ ] 增加收单收银台功能 2.0.x 版本内容 diff --git a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/domain/AggregatePayInfo.java b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/domain/AggregatePayInfo.java index 1261599a..f6ffc459 100644 --- a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/domain/AggregatePayInfo.java +++ b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/domain/AggregatePayInfo.java @@ -24,6 +24,9 @@ public class AggregatePayInfo { @Schema(description = "是否分账") private Boolean allocation; + @Schema(description = "自动分账") + private Boolean autoAllocation; + /** 支付金额 */ @Schema(description = "支付金额") private Integer amount; diff --git a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/AggregateSimplePayParam.java b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/AggregateSimplePayParam.java index 8f166454..338a3e56 100644 --- a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/AggregateSimplePayParam.java +++ b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/AggregateSimplePayParam.java @@ -23,6 +23,9 @@ public class AggregateSimplePayParam { @Schema(description = "是否分账") private Boolean allocation; + @Schema(description = "自动分账") + private Boolean autoAllocation; + @Schema(description = "标题") @NotNull private String title; diff --git a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/CashierSimplePayParam.java b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/CashierSimplePayParam.java index 89c4d330..dcb93fdb 100644 --- a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/CashierSimplePayParam.java +++ b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/param/CashierSimplePayParam.java @@ -26,6 +26,7 @@ public class CashierSimplePayParam { @NotNull(message = "分账是否启用必输") private Boolean allocation; + @Schema(description = "标题") @NotNull(message = "标题不能为空") private String title; diff --git a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/service/AggregateService.java b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/service/AggregateService.java index 3bc8237f..44e950ef 100644 --- a/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/service/AggregateService.java +++ b/daxpay-single-demo/src/main/java/cn/bootx/platform/daxpay/demo/service/AggregateService.java @@ -160,8 +160,8 @@ public class AggregateService { .orElse("127.0.0.1"); simplePayParam.setClientIp(ip); // 异步回调地址 - simplePayParam.setNotNotify(true); - // 同步回调地址 无效 + simplePayParam.setNotifyUrl(StrUtil.format("{}/result/success", daxPayDemoProperties.getFrontH5Url())); + // 同步回调地址 simplePayParam.setReturnUrl(StrUtil.format("{}/result/success", daxPayDemoProperties.getFrontH5Url())); DaxPayResult execute = DaxPayKit.execute(simplePayParam); @@ -189,7 +189,7 @@ public class AggregateService { .orElse("127.0.0.1"); payParam.setClientIp(ip); // 异步回调地址 - payParam.setNotNotify(true); + payParam.setNotNotify(false); // 支付成功同步回调地址 payParam.setReturnUrl(StrUtil.format("{}/result/success", daxPayDemoProperties.getFrontH5Url())); // 中途退出 目前经测试不生效 diff --git a/daxpay-single-sdk/src/main/java/cn/bootx/platform/daxpay/sdk/param/pay/PayParam.java b/daxpay-single-sdk/src/main/java/cn/bootx/platform/daxpay/sdk/param/pay/PayParam.java index 9b2cd4e0..6765848b 100644 --- a/daxpay-single-sdk/src/main/java/cn/bootx/platform/daxpay/sdk/param/pay/PayParam.java +++ b/daxpay-single-sdk/src/main/java/cn/bootx/platform/daxpay/sdk/param/pay/PayParam.java @@ -39,6 +39,9 @@ public class PayParam extends DaxPayRequest { /** 是否开启分账, 不传输为不开启 */ private Boolean allocation; + /** 是否开启自动分账, 不传输为不开启 */ + private Boolean autoAllocation; + /** 过期时间 */ private LocalDateTime expiredTime; diff --git a/daxpay-single/daxpay-single-admin/src/main/java/cn/bootx/platform/daxpay/admin/controller/order/ReconcileOrderController.java b/daxpay-single/daxpay-single-admin/src/main/java/cn/bootx/platform/daxpay/admin/controller/order/ReconcileOrderController.java index d038739f..80962139 100644 --- a/daxpay-single/daxpay-single-admin/src/main/java/cn/bootx/platform/daxpay/admin/controller/order/ReconcileOrderController.java +++ b/daxpay-single/daxpay-single-admin/src/main/java/cn/bootx/platform/daxpay/admin/controller/order/ReconcileOrderController.java @@ -101,7 +101,7 @@ public class ReconcileOrderController { @Operation(summary = "对账明细分页") @GetMapping("/detail/page") - public ResResult> pageDetail(PageParam pageParam, ReconcileDetailQuery query){ + public ResResult> pageDetail(PageParam pageParam, ReconcileTradeDetailQuery query){ return Res.ok(reconcileQueryService.pageDetail(pageParam, query)); } diff --git a/daxpay-single/daxpay-single-core/src/main/java/cn/bootx/platform/daxpay/param/payment/pay/PayParam.java b/daxpay-single/daxpay-single-core/src/main/java/cn/bootx/platform/daxpay/param/payment/pay/PayParam.java index 29407624..5f8f30d7 100644 --- a/daxpay-single/daxpay-single-core/src/main/java/cn/bootx/platform/daxpay/param/payment/pay/PayParam.java +++ b/daxpay-single/daxpay-single-core/src/main/java/cn/bootx/platform/daxpay/param/payment/pay/PayParam.java @@ -45,9 +45,12 @@ public class PayParam extends PaymentCommonParam { /** 是否开启分账 */ @Schema(description = "是否开启分账") - @NotNull(message = "分账是否开启不可为空") private Boolean allocation; + @Schema(description = "自动分账") + private Boolean autoAllocation; + + /** 过期时间 */ @Schema(description = "过期时间") @JsonDeserialize(using = TimestampToLocalDateTimeDeserializer.class) diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/pay/entity/PayOrder.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/pay/entity/PayOrder.java index 8b12bbc7..26e525db 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/pay/entity/PayOrder.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/pay/entity/PayOrder.java @@ -58,6 +58,9 @@ public class PayOrder extends MpBaseEntity implements EntityBaseFunction page(PageParam pageParam, ReconcileDetailQuery query){ + public Page page(PageParam pageParam, ReconcileTradeDetailQuery query){ Page mpPage = MpUtil.getMpPage(pageParam, ReconcileTradeDetail.class); QueryWrapper generator = QueryGenerator.generator(query); return this.page(mpPage,generator); diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/reconcile/service/ReconcileQueryService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/reconcile/service/ReconcileQueryService.java index c22e64f0..3599f31c 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/reconcile/service/ReconcileQueryService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/order/reconcile/service/ReconcileQueryService.java @@ -10,7 +10,7 @@ import cn.bootx.platform.daxpay.service.core.order.reconcile.entity.ReconcileOrd import cn.bootx.platform.daxpay.service.core.order.reconcile.entity.ReconcileTradeDetail; import cn.bootx.platform.daxpay.service.dto.order.reconcile.ReconcileOrderDto; import cn.bootx.platform.daxpay.service.dto.order.reconcile.ReconcileTradeDetailDto; -import cn.bootx.platform.daxpay.service.param.reconcile.ReconcileDetailQuery; +import cn.bootx.platform.daxpay.service.param.reconcile.ReconcileTradeDetailQuery; import cn.bootx.platform.daxpay.service.param.reconcile.ReconcileOrderQuery; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -46,7 +46,7 @@ public class ReconcileQueryService { /** * 明细分页 */ - public PageResult pageDetail(PageParam pageParam, ReconcileDetailQuery query){ + public PageResult pageDetail(PageParam pageParam, ReconcileTradeDetailQuery query){ return MpUtil.convert2DtoPageResult(detailManager.page(pageParam, query)); } diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/allocation/service/AllocationService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/allocation/service/AllocationService.java index 9f518e86..b3c2e053 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/allocation/service/AllocationService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/allocation/service/AllocationService.java @@ -136,11 +136,11 @@ public class AllocationService { allocationOrder = allocationOrderManager.findByAllocationNo(param.getAllocationNo()) .orElseThrow(() -> new DataNotExistException("未查询到分账单信息")); } + LockInfo lock = lockTemplate.lock("payment:allocation:" + allocationOrder.getOrderId(),10000,200); if (Objects.isNull(lock)){ throw new RepetitiveOperationException("分账发起处理中,请勿重复操作"); } - try { // 需要是分账中分账中或者完成状态才能重新分账 List list = Arrays.asList(AllocOrderStatusEnum.ALLOCATION_END.getCode(), @@ -172,7 +172,7 @@ public class AllocationService { } allocationOrderManager.updateById(allocationOrder); } finally { - + lockTemplate.releaseLock(lock); } } diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/notice/service/ClientNoticeAssistService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/notice/service/ClientNoticeAssistService.java index c7284de0..366d6575 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/notice/service/ClientNoticeAssistService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/notice/service/ClientNoticeAssistService.java @@ -67,7 +67,7 @@ public class ClientNoticeAssistService { .setSendCount(0) .setTradeId(order.getId()) .setTradeNo(order.getOrderNo()) - .setOrderStatus(order.getStatus()); + .setTradeStatus(order.getStatus()); } /** @@ -77,6 +77,7 @@ public class ClientNoticeAssistService { // 创建退款通知内容 RefundNoticeResult payNoticeResult = new RefundNoticeResult() .setRefundNo(order.getRefundNo()) + .setBizRefundNo(order.getBizRefundNo()) .setChannel(order.getChannel()) .setAmount(order.getAmount()) .setFinishTime(order.getFinishTime()) @@ -94,7 +95,7 @@ public class ClientNoticeAssistService { .setSendCount(0) .setTradeId(order.getId()) .setTradeNo(order.getRefundNo()) - .setOrderStatus(order.getStatus()); + .setTradeStatus(order.getStatus()); } } diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayAssistService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayAssistService.java index 7e8512b7..9e442468 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayAssistService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayAssistService.java @@ -106,7 +106,7 @@ public class PayAssistService { PlatformLocal platform = PaymentContextLocal.get() .getPlatformInfo(); // 异步回调为开启状态 - if (Objects.equals(payParam.getNotNotify(), true) && apiInfo.isNotice()) { + if (!Objects.equals(payParam.getNotNotify(), false) && apiInfo.isNotice()) { // 首先读取请求参数 noticeInfo.setNotifyUrl(payParam.getNotifyUrl()); // 读取接口配置 diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayService.java index f57d6fa8..e8e3a41b 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/pay/service/PayService.java @@ -68,7 +68,7 @@ public class PayService { try { // 查询并检查订单 PayOrder payOrder = payAssistService.getOrderAndCheck(payParam.getBizOrderNo()); - // 初始化上下文 + // 初始化支付上下文 payAssistService.initPayContext(payOrder, payParam); // 走首次下单逻辑还是重复下档逻辑 if (Objects.isNull(payOrder)){ diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundAssistService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundAssistService.java index f5373cc8..ece4094f 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundAssistService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundAssistService.java @@ -61,7 +61,7 @@ public class RefundAssistService { ApiInfoLocal apiInfo = PaymentContextLocal.get().getApiInfo(); PlatformLocal platform = PaymentContextLocal.get().getPlatformInfo(); // 异步回调为开启状态 - if (!param.getNotNotify() && apiInfo.isNotice()){ + if (!Objects.equals(param.getNotNotify(), false) && apiInfo.isNotice()){ // 首先读取请求参数 noticeInfo.setNotifyUrl(param.getNotifyUrl()); // 读取接口配置 diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundService.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundService.java index 77658054..299e0baa 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundService.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/payment/refund/service/RefundService.java @@ -54,9 +54,11 @@ public class RefundService { private final PayOrderQueryService payOrderQueryService; - private final LockTemplate lockTemplate; private final RefundOrderExtraManager refundOrderExtraManager; + private final LockTemplate lockTemplate; + + /** * 分支付通道进行退款 * 1. 创建退款订单(单独事务) @@ -78,6 +80,8 @@ public class RefundService { try { // 判断是否是首次发起退款 Optional refund = refundOrderManager.findByBizRefundNo(param.getBizRefundNo()); + // 初始化退款通知上下文 + refundAssistService.initRefundContext(param); if (refund.isPresent()){ return this.repeatRefund(refund.get(),param); } else { diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeRecord.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeRecord.java index 2ca3a282..9e7413fe 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeRecord.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeRecord.java @@ -43,6 +43,10 @@ public class ClientNoticeRecord extends MpCreateEntity implements EntityBaseFunc @DbColumn(comment = "发送类型") private String sendType; + /** 错误编码 */ + @DbColumn(comment = "错误编码") + private String errorCode; + /** 错误信息 */ @DbColumn(comment = "错误信息") private String errorMsg; diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeTask.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeTask.java index 1ce3e326..ee9f9dc9 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeTask.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/core/task/notice/entity/ClientNoticeTask.java @@ -34,8 +34,8 @@ public class ClientNoticeTask extends MpBaseEntity implements EntityBaseFunction @DbColumn(comment = "本地交易ID") private Long tradeId; - /** 本地订单号 */ - @DbColumn(comment = "本地订单号") + /** 本地交易号 */ + @DbColumn(comment = "本地交易号") private String tradeNo; /** @@ -46,12 +46,12 @@ public class ClientNoticeTask extends MpBaseEntity implements EntityBaseFunction private String noticeType; /** - * 订单状态 + * 交易状态 * @see PayStatusEnum * @see RefundStatusEnum */ - @DbColumn(comment = "订单状态") - private String orderStatus; + @DbColumn(comment = "交易状态") + private String tradeStatus; /** 消息内容 */ @DbColumn(comment = "消息内容") diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationGroupReceiverResult.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationGroupReceiverResult.java index 185be7f4..9072cb36 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationGroupReceiverResult.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationGroupReceiverResult.java @@ -43,6 +43,7 @@ public class AllocationGroupReceiverResult { /** 接收方姓名 */ @Schema(description = "接收方姓名") + @SensitiveInfo(SensitiveInfo.SensitiveType.CHINESE_NAME) private String receiverName; /** diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationReceiverDto.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationReceiverDto.java index d6dd767d..11699642 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationReceiverDto.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/allocation/AllocationReceiverDto.java @@ -47,7 +47,7 @@ public class AllocationReceiverDto extends BaseDto { /** 接收方姓名 */ @Schema(description = "接收方姓名") - @SensitiveInfo + @SensitiveInfo(SensitiveInfo.SensitiveType.CHINESE_NAME) private String receiverName; /** diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/allocation/AllocationOrderDetailDto.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/allocation/AllocationOrderDetailDto.java index ff492752..40a04312 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/allocation/AllocationOrderDetailDto.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/allocation/AllocationOrderDetailDto.java @@ -53,6 +53,7 @@ public class AllocationOrderDetailDto extends BaseDto { /** 接收方姓名 */ @Schema(description = "接收方姓名") + @SensitiveInfo(SensitiveInfo.SensitiveType.CHINESE_NAME) private String receiverName; /** diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/pay/PayOrderDto.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/pay/PayOrderDto.java index 7496c65b..15e53edd 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/pay/PayOrderDto.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/order/pay/PayOrderDto.java @@ -46,6 +46,10 @@ public class PayOrderDto extends BaseDto { @Schema(description = "是否需要分账") private Boolean allocation; + /** 是否开启自动分账, 不传输为不开启 */ + @Schema(description = "是否开启自动分账") + private Boolean autoAllocation; + /** * 支付通道 * @see PayChannelEnum diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeRecordDto.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeRecordDto.java index 6c062060..45c22c30 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeRecordDto.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeRecordDto.java @@ -37,6 +37,10 @@ public class ClientNoticeRecordDto extends BaseDto { @Schema(description = "发送是否成功") private boolean success; + /** 错误编码 */ + @Schema(description = "错误编码") + private String errorCode; + /** 错误信息 */ @Schema(description = "错误信息") private String errorMsg; diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeTaskDto.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeTaskDto.java index 5a925979..42d1cbda 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeTaskDto.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/dto/record/notice/ClientNoticeTaskDto.java @@ -1,6 +1,8 @@ package cn.bootx.platform.daxpay.service.dto.record.notice; import cn.bootx.platform.common.core.rest.dto.BaseDto; +import cn.bootx.platform.daxpay.code.PayStatusEnum; +import cn.bootx.platform.daxpay.code.RefundStatusEnum; import cn.bootx.platform.daxpay.service.code.ClientNoticeTypeEnum; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -24,8 +26,8 @@ public class ClientNoticeTaskDto extends BaseDto { @Schema(description = "本地交易ID") private Long tradeId; - /** 本地订单号 */ - @Schema(description = "本地订单号") + /** 本地交易号 */ + @Schema(description = "本地交易号") private String tradeNo; /** @@ -36,10 +38,12 @@ public class ClientNoticeTaskDto extends BaseDto { private String noticeType; /** - * 订单状态 + * 交易状态 + * @see PayStatusEnum + * @see RefundStatusEnum */ @Schema(description = "订单状态") - private String orderStatus; + private String tradeStatus; /** 消息内容 */ @Schema(description = "消息内容") diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/order/PayOrderQuery.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/order/PayOrderQuery.java index ee49a65d..95ec6c0d 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/order/PayOrderQuery.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/order/PayOrderQuery.java @@ -44,6 +44,9 @@ public class PayOrderQuery extends QueryOrder { @Schema(description = "是否需要分账") private Boolean allocation; + @Schema(description = "是否开启自动分账") + private Boolean autoAllocation; + /** * 支付通道 * @see PayChannelEnum diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileDetailQuery.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileTradeDetailQuery.java similarity index 96% rename from daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileDetailQuery.java rename to daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileTradeDetailQuery.java index d0cc44e1..fee5fbe7 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileDetailQuery.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/reconcile/ReconcileTradeDetailQuery.java @@ -15,7 +15,7 @@ import lombok.experimental.Accessors; @Data @Accessors(chain = true) @Schema(title = "对账详情查询") -public class ReconcileDetailQuery { +public class ReconcileTradeDetailQuery { @Schema(description = "关联对账订单ID") private Long recordOrderId; diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/ClientNoticeTaskQuery.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/ClientNoticeTaskQuery.java index 6ad7cacd..008e4ec7 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/ClientNoticeTaskQuery.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/ClientNoticeTaskQuery.java @@ -20,30 +20,14 @@ import lombok.experimental.Accessors; @Schema(title = "发送通知任务查询") public class ClientNoticeTaskQuery extends QueryOrder { - /** 本地订单ID */ - @Schema(description = "本地订单ID") - private Long orderId; + /** 本地交易号 */ + @Schema(description = "本地交易号") + private String tradeNo; /** - * 通知类型 + * 回调类型 * @see ClientNoticeTypeEnum */ - @Schema(description = "通知类型") - private String type; - - /** 消息内容 */ - @Schema(description = "消息内容") - private String content; - - /** 是否发送成功 */ - @Schema(description = "是否发送成功") - private Boolean success; - - /** 发送次数 */ - @Schema(description = "发送次数") - private Integer sendCount; - - /** 发送地址 */ - @Schema(description = "发送地址") - private String url; + @Schema(description = "回调类型") + private String noticeType; } diff --git a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/PayCallbackRecordQuery.java b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/PayCallbackRecordQuery.java index 7f267827..d81d6414 100644 --- a/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/PayCallbackRecordQuery.java +++ b/daxpay-single/daxpay-single-service/src/main/java/cn/bootx/platform/daxpay/service/param/record/PayCallbackRecordQuery.java @@ -4,6 +4,7 @@ import cn.bootx.platform.common.core.annotation.QueryParam; import cn.bootx.platform.common.core.rest.param.QueryOrder; import cn.bootx.platform.daxpay.code.PayChannelEnum; import cn.bootx.platform.daxpay.service.code.PayCallbackStatusEnum; +import cn.bootx.platform.daxpay.service.code.PaymentTypeEnum; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; @@ -21,9 +22,11 @@ import lombok.experimental.Accessors; @Schema(title = "支付回调信息记录") public class PayCallbackRecordQuery extends QueryOrder { - /** 本地订单ID */ - @Schema(description = "本地订单ID") - private Long orderId; + @Schema(description = "交易号") + private String tradeNo; + + @Schema(description = "通道交易号") + private String outTradeNo; /** * 支付通道 @@ -32,6 +35,12 @@ public class PayCallbackRecordQuery extends QueryOrder { @Schema(description = "支付通道") private String channel; + /** + * 回调类型 + * @see PaymentTypeEnum + */ + @Schema(description = "回调类型") + private String callbackType; /** * 回调处理状态 @@ -40,6 +49,6 @@ public class PayCallbackRecordQuery extends QueryOrder { @Schema(description = "回调处理状态") private String status; - @Schema(description = "请求链路ID") - private String reqId; + @Schema(description = "修复号") + private String repairNo; }