From 309ccdf9189f3b55fa76934b054859dd7289b1f7 Mon Sep 17 00:00:00 2001 From: bootx Date: Sun, 4 May 2025 10:16:33 +0800 Subject: [PATCH] =?UTF-8?q?ref=20=E5=88=A0=E9=99=A4=E7=BB=88=E7=AB=AF?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E5=8A=9F=E8=83=BD=E5=92=8C=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E5=95=86=E6=88=B7=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../payment/AlipayCallbackController.java | 10 +- .../AlipayNoticeReceiverController.java | 10 +- .../payment/AlipayRedirectUrlController.java | 10 +- .../allocation/AlipayAllocReceiver.java | 4 - .../alipay/entity/config/AliPayConfig.java | 7 +- .../param/config/AlipayConfigParam.java | 4 - .../result/config/AlipayConfigResult.java | 4 - .../AlipayAllocReceiverBindService.java | 4 +- .../AlipayAllocReceiverService.java | 1 - .../payment/config/AlipayConfigService.java | 9 +- .../UnionPayCallbackController.java | 6 +- .../UnionPayRedirectUrlController.java | 6 +- .../union/entity/config/UnionPayConfig.java | 6 +- .../param/config/UnionPayConfigParam.java | 5 - .../service/config/UnionPayConfigService.java | 6 +- .../payment/WechatPayCallbackController.java | 26 +- .../allocation/WechatAllocReceiver.java | 4 - .../wechat/entity/config/WechatPayConfig.java | 7 +- .../param/config/WechatPayConfigParam.java | 5 - .../result/config/WechatPayConfigResult.java | 4 - .../WechatAllocReceiverBindService.java | 4 +- .../WechatAllocReceiverService.java | 1 - .../config/WechatPayConfigService.java | 14 +- .../dromara/daxpay/sdk/net/DaxPayConfig.java | 3 - .../org/dromara/daxpay/sdk/net/DaxPayKit.java | 4 - .../dromara/daxpay/sdk/net/DaxPayRequest.java | 6 - .../daxpay/sdk/response/DaxNoticeResult.java | 4 - .../dromara/daxpay/sdk/notice/NoticeTest.java | 1 - .../daxpay/sdk/query/QueryPayOrderTest.java | 1 - .../sdk/query/QueryRefundOrderTest.java | 1 - .../sdk/query/QueryTransferOrderTest.java | 1 - .../daxpay/sdk/trade/CloseOrderTest.java | 1 - .../daxpay/sdk/trade/GatewayPayTest.java | 1 - .../daxpay/sdk/trade/PayOrderTest.java | 1 - .../daxpay/sdk/trade/RefundOrderTest.java | 1 - .../daxpay/sdk/trade/TransferOrderTest.java | 1 - .../assist/TerminalDeviceController.java | 144 ----------- .../common/IndexTradeReportController.java | 5 - .../constant/TerminalConstController.java | 40 --- .../core/enums/ChannelTerminalStatusEnum.java | 23 -- .../core/enums/TerminalDeviceTypeEnum.java | 32 --- .../daxpay/core/enums/TerminalTypeEnum.java | 24 -- .../daxpay/core/param/PaymentCommonParam.java | 6 - .../daxpay/core/result/DaxNoticeResult.java | 4 - .../service/bo/assist/ChannelTerminalBo.java | 29 --- .../common/aop/PaymentVerifyAspect.java | 2 +- .../daxpay/service/common/param/MchQuery.java | 13 - .../service/common/result/MchResult.java | 3 - .../convert/assist/TerminalDeviceConvert.java | 29 --- .../constant/TerminalConstConvert.java | 18 -- .../dao/assist/ChannelTerminalManager.java | 75 ------ .../dao/assist/ChannelTerminalMapper.java | 14 -- .../dao/assist/TerminalConstManager.java | 58 ----- .../dao/assist/TerminalConstMapper.java | 14 -- .../dao/assist/TerminalDeviceManager.java | 44 ---- .../dao/assist/TerminalDeviceMapper.java | 14 -- .../entity/assist/ChannelTerminal.java | 89 ------- .../service/entity/assist/TerminalDevice.java | 97 -------- .../entity/constant/TerminalConst.java | 49 ---- .../service/event/AllocationEventService.java | 6 +- .../event/MerchantNoticeEventService.java | 4 +- .../service/event/TradeOrderEventService.java | 8 +- .../param/constant/TerminalConstQuery.java | 25 -- .../service/param/merchant/MchAppParam.java | 4 - .../service/param/merchant/MchAppQuery.java | 4 - .../param/reconcile/ReconcileCreatParam.java | 5 - .../param/report/TradeReportQuery.java | 4 - .../param/termina/ChannelTerminalParam.java | 40 --- .../param/termina/TerminalDeviceParam.java | 92 ------- .../param/termina/TerminalDeviceQuery.java | 45 ---- .../result/config/ChannelConfigResult.java | 4 - .../result/constant/TerminalConstResult.java | 40 --- .../service/result/merchant/MchAppResult.java | 3 - .../result/termina/ChannelTerminalResult.java | 59 ----- .../result/termina/TerminalDeviceResult.java | 85 ------- .../service/assist/PaymentAssistService.java | 1 - .../service/assist/TerminalDeviceService.java | 234 ------------------ .../service/config/ChannelConfigService.java | 2 - .../config/MerchantNotifyConfigService.java | 4 +- .../constant/TerminalConstService.java | 31 --- .../service/develop/DevelopTradeService.java | 10 +- .../service/gateway/CashierPayService.java | 14 +- .../service/gateway/GatewayPayService.java | 4 +- .../config/AggregateConfigService.java | 1 - .../config/CashierCodeConfigService.java | 6 +- .../gateway/config/CashierConfigService.java | 2 - .../config/GatewayPayConfigService.java | 1 - .../service/merchant/MchAppService.java | 8 +- .../callback/MerchantCallbackSendService.java | 3 +- .../notify/MerchantNotifySendService.java | 3 +- .../service/order/pay/PayOrderService.java | 6 +- .../order/refund/RefundOrderService.java | 10 +- .../order/transfer/TransferOrderService.java | 7 +- .../reconcile/ReconcileStatementService.java | 8 +- .../report/IndexTradeReportService.java | 5 - .../strategy/AbsChannelTerminalStrategy.java | 24 -- .../service/task/OrderSyncTaskService.java | 6 +- .../daxpay/service/task/ReconcileTask.java | 7 +- 98 files changed, 104 insertions(+), 1730 deletions(-) delete mode 100644 daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/assist/TerminalDeviceController.java delete mode 100644 daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/constant/TerminalConstController.java delete mode 100644 daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/ChannelTerminalStatusEnum.java delete mode 100644 daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalDeviceTypeEnum.java delete mode 100644 daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalTypeEnum.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/bo/assist/ChannelTerminalBo.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/assist/TerminalDeviceConvert.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/constant/TerminalConstConvert.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalManager.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalMapper.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstManager.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstMapper.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceManager.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceMapper.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/ChannelTerminal.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/TerminalDevice.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/constant/TerminalConst.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/constant/TerminalConstQuery.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/ChannelTerminalParam.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceParam.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceQuery.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/constant/TerminalConstResult.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/ChannelTerminalResult.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/TerminalDeviceResult.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/TerminalDeviceService.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/constant/TerminalConstService.java delete mode 100644 daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/strategy/AbsChannelTerminalStrategy.java diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayCallbackController.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayCallbackController.java index a5e7e706..0a28e3c4 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayCallbackController.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayCallbackController.java @@ -23,7 +23,7 @@ import org.springframework.web.bind.annotation.RestController; @IgnoreAuth @Tag(name = "支付宝回调通知") @RestController -@RequestMapping("/unipay/callback/{mchNo}/{AppId}") +@RequestMapping("/unipay/callback/{AppId}") @RequiredArgsConstructor public class AlipayCallbackController { @@ -32,14 +32,14 @@ public class AlipayCallbackController { @Operation(summary = "支付宝回调(普通商户)") @PostMapping("/alipay") - public String aliPayNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String aliPayNotify(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return payCallbackService.callbackHandle(request,false); } @Operation(summary = "支付宝回调(特约商户)") @PostMapping("/alipay/isv") - public String aliPayIsvNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String aliPayIsvNotify(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return payCallbackService.callbackHandle(request, true); } } diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayNoticeReceiverController.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayNoticeReceiverController.java index f2e3b543..cb0aa976 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayNoticeReceiverController.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayNoticeReceiverController.java @@ -22,7 +22,7 @@ import org.springframework.web.bind.annotation.RestController; @IgnoreAuth @Tag(name = "支付宝消息通知") @RestController -@RequestMapping("/unipay/notice/{mchNo}/{AppId}") +@RequestMapping("/unipay/notice/{AppId}") @RequiredArgsConstructor public class AlipayNoticeReceiverController { @@ -32,14 +32,14 @@ public class AlipayNoticeReceiverController { @Operation(summary = "支付宝消息通知(普通商户)") @PostMapping("/alipay") - public String aliPay(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String aliPay(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return aliPayNoticeReceiverService.noticeReceiver(request,false); } @Operation(summary = "支付宝消息通知(特约商户)") @PostMapping("/alipay/isv") - public String aliPayIsv(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String aliPayIsv(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return aliPayNoticeReceiverService.noticeReceiver(request,true); } } diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayRedirectUrlController.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayRedirectUrlController.java index 5e0ebdb5..dac02483 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayRedirectUrlController.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/controller/payment/AlipayRedirectUrlController.java @@ -23,7 +23,7 @@ import org.springframework.web.servlet.ModelAndView; @IgnoreAuth @Tag(name = "支付宝同步通知") @RestController -@RequestMapping("/unipay/return/{mchNo}/{AppId}") +@RequestMapping("/unipay/return/{AppId}") @RequiredArgsConstructor public class AlipayRedirectUrlController { private final AlipayRedirectUrlService redirectUrlService; @@ -31,15 +31,15 @@ public class AlipayRedirectUrlController { @Operation(summary = "支付宝同步跳转通知") @GetMapping("/alipay") - public ModelAndView alipay(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request){ - paymentAssistService.initMchAndApp(mchNo, appId); + public ModelAndView alipay(@PathVariable("AppId") String appId, HttpServletRequest request){ + paymentAssistService.initMchAndApp(appId); String redirect = redirectUrlService.redirect(request,false); return new ModelAndView("redirect:"+redirect); } @Operation(summary = "支付宝同步跳转通知") @GetMapping("/alipay/isv") - public ModelAndView alipayIsv(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request){ - paymentAssistService.initMchAndApp(mchNo, appId); + public ModelAndView alipayIsv(@PathVariable("AppId") String appId, HttpServletRequest request){ + paymentAssistService.initMchAndApp(appId); String redirect = redirectUrlService.redirect(request, true); return new ModelAndView("redirect:"+redirect); } diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/allocation/AlipayAllocReceiver.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/allocation/AlipayAllocReceiver.java index 1bdc935c..10c5c60b 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/allocation/AlipayAllocReceiver.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/allocation/AlipayAllocReceiver.java @@ -43,9 +43,6 @@ public class AlipayAllocReceiver implements ToResult /** 分账关系名称 */ private String relationName; - /** 商户号 */ - private String mchNo; - /** 商户AppId */ private String appId; @@ -57,7 +54,6 @@ public class AlipayAllocReceiver implements ToResult var receiver = new AllocReceiver(); receiver.setId(this.getId()); receiver.setAppId(this.getAppId()); - receiver.setMchNo(this.getMchNo()); receiver.setReceiverType(this.getReceiverType()); receiver.setReceiverNo(this.getReceiverNo()); receiver.setReceiverName(this.getReceiverName()); diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/config/AliPayConfig.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/config/AliPayConfig.java index ce721c15..7c56c210 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/config/AliPayConfig.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/entity/config/AliPayConfig.java @@ -68,9 +68,6 @@ public class AliPayConfig implements ToResult { /** 是否沙箱环境 */ private boolean sandbox; - /** 商户号 */ - private String mchNo; - /** 商户AppId */ private String appId; @@ -86,12 +83,11 @@ public class AliPayConfig implements ToResult { channelConfig.setId(this.getId()); channelConfig.setOutAppId(this.getAliAppId()); channelConfig.setAppId(this.getAppId()); - channelConfig.setMchNo(this.getMchNo()); channelConfig.setEnable(this.getEnable()); channelConfig.setChannel(this.isv?ChannelEnum.ALIPAY_ISV.getCode():ChannelEnum.ALIPAY.getCode()); var copy = AlipayConfigConvert.CONVERT.copy(this); // 清空不需要序列化的字段 - copy.setId(null).setAppId(null).setEnable(null).setAliAppId(null).setMchNo(null); + copy.setId(null).setAppId(null).setEnable(null).setAliAppId(null); String jsonStr = JsonUtil.toJsonStr(copy); channelConfig.setExt(jsonStr); return channelConfig; @@ -105,7 +101,6 @@ public class AliPayConfig implements ToResult { config.setId(channelConfig.getId()) .setAliAppId(channelConfig.getOutAppId()) .setAppId(channelConfig.getAppId()) - .setMchNo(channelConfig.getMchNo()) .setEnable(channelConfig.isEnable()); return config; } diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/param/config/AlipayConfigParam.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/param/config/AlipayConfigParam.java index 4c5ae341..80419fd7 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/param/config/AlipayConfigParam.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/param/config/AlipayConfigParam.java @@ -82,10 +82,6 @@ public class AlipayConfigParam { @Schema(description = "是否沙箱环境") private boolean sandbox; - /** 商户号 */ - @NotBlank(message = "商户号不可为空") - @Schema(description = "商户号") - private String mchNo; /** 商户AppId */ @NotBlank(message = "商户AppId不可为空") diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/result/config/AlipayConfigResult.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/result/config/AlipayConfigResult.java index e7b57a96..3a2a3b15 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/result/config/AlipayConfigResult.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/result/config/AlipayConfigResult.java @@ -79,10 +79,6 @@ public class AlipayConfigResult { @Schema(description = "是否沙箱环境") private boolean sandbox; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 商户AppId */ @Schema(description = "商户AppId") private String appId; diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverBindService.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverBindService.java index 73082e48..dd22e732 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverBindService.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverBindService.java @@ -102,7 +102,7 @@ public class AlipayAllocReceiverBindService { if (receiverBind.isBind()){ throw new DataErrorException("分账接收方已绑定"); } - paymentAssistService.initMchAndApp(receiverBind.getMchNo(),receiverBind.getAppId()); + paymentAssistService.initMchAndApp(receiverBind.getAppId()); var aliPayConfig = alipayConfigService.getAndCheckConfig(receiverBind.isIsv()); var model = new AlipayTradeRoyaltyRelationBindModel(); RoyaltyEntity entity = new RoyaltyEntity(); @@ -144,7 +144,7 @@ public class AlipayAllocReceiverBindService { if (!receiverBind.isBind()){ throw new DataErrorException("分账接收方已解绑"); } - paymentAssistService.initMchAndApp(receiverBind.getMchNo(),receiverBind.getAppId()); + paymentAssistService.initMchAndApp(receiverBind.getAppId()); var aliPayConfig = alipayConfigService.getAndCheckConfig(receiverBind.isIsv()); AlipayTradeRoyaltyRelationUnbindModel model = new AlipayTradeRoyaltyRelationUnbindModel(); diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverService.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverService.java index c19febed..91d2d3b5 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverService.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/allocation/AlipayAllocReceiverService.java @@ -62,7 +62,6 @@ public class AlipayAllocReceiverService { paymentAssistService.initMchAndApp(param.getAppId()); var mchApp = PaymentContextLocal.get().getMchAppInfo(); AlipayAllocReceiver entity = AlipayAllocReceiverConvert.CONVERT.toEntity(param); - entity.setMchNo(mchApp.getMchNo()); AllocReceiver receiver = entity.toReceiver(param.isIsv()); String uuid = UUID.fastUUID().toString(true); receiver.setReceiverNo(uuid); diff --git a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/payment/config/AlipayConfigService.java b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/payment/config/AlipayConfigService.java index 8c98aae0..af2a229a 100644 --- a/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/payment/config/AlipayConfigService.java +++ b/daxpay-open-channel/daxpay-open-channel-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/payment/config/AlipayConfigService.java @@ -82,7 +82,6 @@ public class AlipayConfigService { } // 转换类型 var entity = AlipayConfigConvert.CONVERT.toEntity(param); - entity.setMchNo(mchApp.getMchNo()); ChannelConfig channelConfig = entity.toChannelConfig(); // 判断商户和应用下是否存在该配置 if (channelConfigManager.existsByAppIdAndChannel(param.getAppId(), channelConfig.getChannel())){ @@ -117,18 +116,18 @@ public class AlipayConfigService { * 获取异步通知地址 */ public String getNotifyUrl(boolean isv) { - String url = isv?"{}/unipay/callback/{}/{}/alipay/isv":"{}/unipay/callback/{}/{}/alipay"; + String url = isv?"{}/unipay/callback/{}/alipay/isv":"{}/unipay/callback/{}/alipay"; var mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } /** * 获取同步通知地址 */ public String getReturnUrl(boolean isv) { - String url = isv?"{}/unipay/return/{}/{}/alipay/isv":"{}/unipay/return/{}/{}/alipay"; + String url = isv?"{}/unipay/return/{}/alipay/isv":"{}/unipay/return/{}/alipay"; MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } /** diff --git a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayCallbackController.java b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayCallbackController.java index 1c428107..d031e68a 100644 --- a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayCallbackController.java +++ b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayCallbackController.java @@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController; @IgnoreAuth @Tag(name = "银联回调通知") @RestController -@RequestMapping("/unipay/callback/{mchNo}/{AppId}") +@RequestMapping("/unipay/callback/{AppId}") @RequiredArgsConstructor public class UnionPayCallbackController { @@ -30,8 +30,8 @@ public class UnionPayCallbackController { @Operation(summary = "银联回调") @PostMapping("/union") - public String UnionPayNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String UnionPayNotify(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return ""; } } diff --git a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayRedirectUrlController.java b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayRedirectUrlController.java index cfe33175..17ba5512 100644 --- a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayRedirectUrlController.java +++ b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/controller/UnionPayRedirectUrlController.java @@ -22,15 +22,15 @@ import org.springframework.web.servlet.ModelAndView; @IgnoreAuth @Tag(name = "同步通知跳转控制器") @RestController -@RequestMapping("/unipay/return/{mchNo}/{AppId}") +@RequestMapping("/unipay/return/{AppId}") @RequiredArgsConstructor public class UnionPayRedirectUrlController { private final PaymentAssistService paymentAssistService; @Operation(summary = "银联同步跳转通知") @GetMapping("/union") - public ModelAndView alipay(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request){ - paymentAssistService.initMchAndApp(mchNo, appId); + public ModelAndView alipay(@PathVariable("AppId") String appId, HttpServletRequest request){ + paymentAssistService.initMchAndApp(appId); String redirect = ""; return new ModelAndView("redirect:"+redirect); } diff --git a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/entity/config/UnionPayConfig.java b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/entity/config/UnionPayConfig.java index 7d958f7b..2d516d01 100644 --- a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/entity/config/UnionPayConfig.java +++ b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/entity/config/UnionPayConfig.java @@ -71,9 +71,6 @@ public class UnionPayConfig implements ToResult { /** 是否沙箱环境 */ private boolean sandbox; - /** 商户号 */ - private String mchNo; - /** 商户AppId */ private String appId; @@ -90,12 +87,11 @@ public class UnionPayConfig implements ToResult { channelConfig.setId(this.getId()); channelConfig.setOutMchNo(this.getUnionMachId()); channelConfig.setAppId(this.getAppId()); - channelConfig.setMchNo(this.getMchNo()); channelConfig.setEnable(this.getEnable()); channelConfig.setChannel(ChannelEnum.UNION_PAY.getCode()); UnionPayConfig copy = UnionPayConfigConvert.CONVERT.copy(this); // 清空不需要序列化的字段 - copy.setId(null).setAppId(null).setEnable(null).setUnionMachId(null).setAppId(null).setMchNo(null); + copy.setId(null).setAppId(null).setEnable(null).setUnionMachId(null).setAppId(null); String jsonStr = JsonUtil.toJsonStr(copy); channelConfig.setExt(jsonStr); return channelConfig; diff --git a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/param/config/UnionPayConfigParam.java b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/param/config/UnionPayConfigParam.java index 4ae4d4f2..f145d050 100644 --- a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/param/config/UnionPayConfigParam.java +++ b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/param/config/UnionPayConfigParam.java @@ -76,11 +76,6 @@ public class UnionPayConfigParam { @Schema(description = "是否沙箱环境") private boolean sandbox; - /** 商户号 */ - @NotBlank(message = "商户号不可为空") - @Schema(description = "商户号") - private String mchNo; - /** 商户AppId */ @Schema(description = "商户AppId") @NotBlank(message = "商户AppId不可为空") diff --git a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java index a2cd4fc0..ac7fd33c 100644 --- a/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java +++ b/daxpay-open-channel/daxpay-open-channel-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java @@ -64,8 +64,6 @@ public class UnionPayConfigService { public void save(UnionPayConfigParam param) { UnionPayConfig entity = UnionPayConfigConvert.CONVERT.toEntity(param); ChannelConfig channelConfig = entity.toChannelConfig(); - // 如果运营端使用, 商户号写入上下文中 - MchContextLocal.setMchNo(channelConfig.getMchNo()); // 判断商户和应用下是否存在该配置 if (channelConfigManager.existsByAppIdAndChannel(channelConfig.getAppId(), channelConfig.getChannel())){ throw new DataErrorException("该应用下已存在云闪付配置, 请勿重新添加"); @@ -103,7 +101,7 @@ public class UnionPayConfigService { */ public String getNotifyUrl() { var mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format("{}/unipay/callback/{}/{}/union",mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format("{}/unipay/callback/{}/union",mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getAppId()); } /** @@ -111,7 +109,7 @@ public class UnionPayConfigService { */ public String getReturnUrl() { MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format("{}/unipay/return/{}/{}/union",mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format("{}/unipay/return/{}/union",mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } } diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/controller/payment/WechatPayCallbackController.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/controller/payment/WechatPayCallbackController.java index 5c9d49a8..d0e1d860 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/controller/payment/WechatPayCallbackController.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/controller/payment/WechatPayCallbackController.java @@ -25,7 +25,7 @@ import org.springframework.web.bind.annotation.RestController; @IgnoreAuth @Tag(name = "微信回调通知控制器") @RestController -@RequestMapping("/unipay/callback/{mchNo}/{AppId}/wechat") +@RequestMapping("/unipay/callback/{AppId}/wechat") @RequiredArgsConstructor public class WechatPayCallbackController { private final WechatTransferCallbackService transferCallbackService; @@ -35,44 +35,44 @@ public class WechatPayCallbackController { @Operation(summary = "微信支付回调(普通商户)") @PostMapping("/pay") - public String wechatPayNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId,HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatPayNotify(@PathVariable("AppId") String appId,HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return payCallbackService.payHandle(request,false); } @Operation(summary = "微信支付回调(特约商户)") @PostMapping("/isv/pay") - public String wechatPayIsvNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId,HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatPayIsvNotify(@PathVariable("AppId") String appId,HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return payCallbackService.payHandle(request,true); } @Operation(summary = "微信退款回调(普通商户)") @PostMapping("/refund") - public String wechatRefundNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId,HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatRefundNotify(@PathVariable("AppId") String appId,HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return refundCallbackService.refundHandle(request,false); } @Operation(summary = "微信退款回调(特约商户)") @PostMapping("/isv/refund") - public String wechatIsvRefundNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId,HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatIsvRefundNotify(@PathVariable("AppId") String appId,HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return refundCallbackService.refundHandle(request,true); } @Operation(summary = "微信转账回调(普通商户)") @PostMapping("/transfer") - public String wechatTransferNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatTransferNotify(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return transferCallbackService.transferHandle(request,false); } @Operation(summary = "微信转账回调(特约商户)") @PostMapping("/isv/transfer") - public String wechatIsvTransferNotify(@PathVariable("mchNo") String mchNo, @PathVariable("AppId") String appId, HttpServletRequest request) { - paymentAssistService.initMchAndApp(mchNo, appId); + public String wechatIsvTransferNotify(@PathVariable("AppId") String appId, HttpServletRequest request) { + paymentAssistService.initMchAndApp(appId); return transferCallbackService.transferHandle(request,true); } } diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/allocation/WechatAllocReceiver.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/allocation/WechatAllocReceiver.java index feeb2c39..ba0e706f 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/allocation/WechatAllocReceiver.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/allocation/WechatAllocReceiver.java @@ -39,9 +39,6 @@ public class WechatAllocReceiver implements ToResult /** 分账关系名称 */ private String relationName; - /** 商户号 */ - private String mchNo; - /** 商户AppId */ private String appId; @@ -52,7 +49,6 @@ public class WechatAllocReceiver implements ToResult var receiver = new AllocReceiver(); receiver.setId(this.getId()); receiver.setAppId(this.getAppId()); - receiver.setMchNo(this.getMchNo()); receiver.setReceiverNo(this.getReceiverNo()); receiver.setReceiverType(this.getReceiverType()); receiver.setReceiverName(this.getReceiverName()); diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/config/WechatPayConfig.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/config/WechatPayConfig.java index 7469cd9e..2f9ce0ff 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/config/WechatPayConfig.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/entity/config/WechatPayConfig.java @@ -88,9 +88,6 @@ public class WechatPayConfig implements ToResult { /** 备注 */ private String remark; - /** 商户号 */ - private String mchNo; - /** 商户AppId */ private String appId; @@ -103,12 +100,11 @@ public class WechatPayConfig implements ToResult { channelConfig.setOutAppId(this.getWxAppId()); channelConfig.setOutMchNo(this.getWxMchId()); channelConfig.setAppId(this.getAppId()); - channelConfig.setMchNo(this.getMchNo()); channelConfig.setEnable(this.getEnable()); channelConfig.setChannel(this.isv?ChannelEnum.WECHAT_ISV.getCode():ChannelEnum.WECHAT.getCode()); WechatPayConfig copy = WechatPayConfigConvert.CONVERT.copy(this); // 清空不需要序列化的字段 - copy.setId(null).setMchNo(null).setAppId(null).setEnable(null).setWxMchId(null).setWxAppId(null); + copy.setId(null).setAppId(null).setEnable(null).setWxMchId(null).setWxAppId(null); String jsonStr = JsonUtil.toJsonStr(copy); channelConfig.setExt(jsonStr); return channelConfig; @@ -124,7 +120,6 @@ public class WechatPayConfig implements ToResult { .setWxAppId(channelConfig.getOutAppId()) .setWxMchId(channelConfig.getOutMchNo()) .setAppId(channelConfig.getAppId()) - .setMchNo(channelConfig.getMchNo()) .setEnable(channelConfig.isEnable()); return config; } diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/param/config/WechatPayConfigParam.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/param/config/WechatPayConfigParam.java index 56acc4b7..8a58d717 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/param/config/WechatPayConfigParam.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/param/config/WechatPayConfigParam.java @@ -104,11 +104,6 @@ public class WechatPayConfigParam { @Schema(description = "备注") private String remark; - /** 商户号 */ - @NotBlank(message = "商户号不可为空") - @Schema(description = "商户号") - private String mchNo; - /** 商户AppId */ @Schema(description = "商户AppId") @NotBlank(message = "商户AppId不可为空") diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/result/config/WechatPayConfigResult.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/result/config/WechatPayConfigResult.java index 3972b89b..1d546e6f 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/result/config/WechatPayConfigResult.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/result/config/WechatPayConfigResult.java @@ -108,10 +108,6 @@ public class WechatPayConfigResult { @Schema(description = "备注") private String remark; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 商户AppId */ @Schema(description = "商户AppId") private String appId; diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverBindService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverBindService.java index 8ea05833..fb24a173 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverBindService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverBindService.java @@ -99,7 +99,7 @@ public class WechatAllocReceiverBindService { */ public void bind(Long id) { var receiverBind = receiverBindManager.findById(id).orElseThrow(() -> new DataNotExistException("微信分账接收方数据不存在")); - paymentAssistService.initMchAndApp(receiverBind.getMchNo(),receiverBind.getAppId()); + paymentAssistService.initMchAndApp(receiverBind.getAppId()); if (receiverBind.isBind()){ throw new DataErrorException("分账接收方已绑定"); } @@ -131,7 +131,7 @@ public class WechatAllocReceiverBindService { */ public void unbind(Long id) { var receiverBind = receiverBindManager.findById(id).orElseThrow(() -> new DataNotExistException("微信分账接收方数据不存在")); - paymentAssistService.initMchAndApp(receiverBind.getMchNo(),receiverBind.getAppId()); + paymentAssistService.initMchAndApp(receiverBind.getAppId()); if (!receiverBind.isBind()){ throw new DataErrorException("分账接收方已解绑"); } diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverService.java index 5e273881..ff56d8ca 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/allocation/WechatAllocReceiverService.java @@ -61,7 +61,6 @@ public class WechatAllocReceiverService { paymentAssistService.initMchAndApp(param.getAppId()); var mchApp = PaymentContextLocal.get().getMchAppInfo(); var entity = WechatAllocReceiverConvert.CONVERT.toEntity(param); - entity.setMchNo(mchApp.getMchNo()); AllocReceiver receiver = entity.toReceiver(param.isIsv()); String uuid = UUID.fastUUID().toString(true); receiver.setReceiverNo(uuid); diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/config/WechatPayConfigService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/config/WechatPayConfigService.java index d51578f6..bc4bd86b 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/config/WechatPayConfigService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/config/WechatPayConfigService.java @@ -79,8 +79,6 @@ public class WechatPayConfigService { } WechatPayConfig entity = WechatPayConfigConvert.CONVERT.toEntity(param); ChannelConfig channelConfig = entity.toChannelConfig(); - // 如果运营端使用, 商户号写入上下文中 - MchContextLocal.setMchNo(channelConfig.getMchNo()); // 判断商户和应用下是否存在该配置 if (channelConfigManager.existsByAppIdAndChannel(channelConfig.getAppId(), channelConfig.getChannel())){ throw new DataErrorException("该应用下已存在微信配置, 请勿重新添加"); @@ -114,27 +112,27 @@ public class WechatPayConfigService { * 获取支付异步通知地址 */ public String getPayNotifyUrl(boolean isv) { - String url = isv ? "{}/unipay/callback/{}/{}/wechat/isv/pay":"{}/unipay/callback/{}/{}/wechat/pay"; + String url = isv ? "{}/unipay/callback/{}/wechat/isv/pay":"{}/unipay/callback/{}/wechat/pay"; MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } /** * 获取退款异步通知地址 */ public String getRefundNotifyUrl(boolean isv) { - String url = isv ? "{}/unipay/callback/{}/{}/wechat/isv/refund":"{}/unipay/callback/{}/{}/wechat/refund"; + String url = isv ? "{}/unipay/callback/{}/wechat/isv/refund":"{}/unipay/callback/{}/wechat/refund"; MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } /** * 转账回调地址 */ public String getTransferNotifyUrl(boolean isv) { - String url = isv ? "{}/unipay/callback/{}/{}/wechat/isv/transfer":"{}/unipay/callback/{}/{}/wechat/transfer"; + String url = isv ? "{}/unipay/callback/{}/wechat/isv/transfer":"{}/unipay/callback/{}/wechat/transfer"; MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); - return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(), mchAppInfo.getMchNo(),mchAppInfo.getAppId()); + return StrUtil.format(url,mchAppInfo.getGatewayServiceUrl(),mchAppInfo.getAppId()); } /** diff --git a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayConfig.java b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayConfig.java index 23864c37..401c5283 100644 --- a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayConfig.java +++ b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayConfig.java @@ -17,9 +17,6 @@ public class DaxPayConfig { /** 服务地址 */ private String serviceUrl; - /** 商户号 */ - private String mchNo; - /** 应用号 */ private String appId; diff --git a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayKit.java b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayKit.java index 39d4efb4..6f39010d 100644 --- a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayKit.java +++ b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayKit.java @@ -46,10 +46,6 @@ public class DaxPayKit { * @return DaxResult 响应类 */ public DaxResult execute(DaxPayRequest request, boolean sign) { - // 判断是否需要填充商户号和应用号 - if (Objects.isNull(request.getMchNo())) { - request.setMchNo(config.getMchNo()); - } if (Objects.isNull(request.getAppId())) { request.setAppId(config.getAppId()); } diff --git a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayRequest.java b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayRequest.java index ad1e8760..800efa46 100644 --- a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayRequest.java +++ b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/net/DaxPayRequest.java @@ -21,12 +21,6 @@ import java.time.LocalDateTime; @Setter public abstract class DaxPayRequest { - /** 商户号 */ - @Schema(description = "商户号") - @NotBlank(message = "商户号不可为空") - @Size(max = 32, message = "商户号不可超过32位") - private String mchNo; - /** 应用号 */ @Schema(description = "应用号") @NotBlank(message = "应用号不可为空") diff --git a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/response/DaxNoticeResult.java b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/response/DaxNoticeResult.java index dd2d1911..9f0b1a36 100644 --- a/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/response/DaxNoticeResult.java +++ b/daxpay-open-sdk/src/main/java/org/dromara/daxpay/sdk/response/DaxNoticeResult.java @@ -20,10 +20,6 @@ public class DaxNoticeResult extends DaxResult{ @Schema(description = "通知类型") private String noticeType; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 应用ID */ @Schema(description = "应用ID") private String appId; diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/notice/NoticeTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/notice/NoticeTest.java index 05962f2e..6d04d8b1 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/notice/NoticeTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/notice/NoticeTest.java @@ -31,7 +31,6 @@ public class NoticeTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.HMAC_SHA256) - .mchNo("M1723635576766") .appId("M8088873888246277") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryPayOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryPayOrderTest.java index 9d85bf96..23a9d8a9 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryPayOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryPayOrderTest.java @@ -24,7 +24,6 @@ public class QueryPayOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryRefundOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryRefundOrderTest.java index d42eeda9..d64c2c09 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryRefundOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryRefundOrderTest.java @@ -24,7 +24,6 @@ public class QueryRefundOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryTransferOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryTransferOrderTest.java index c4125ff6..013f3ed1 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryTransferOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/query/QueryTransferOrderTest.java @@ -25,7 +25,6 @@ public class QueryTransferOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/CloseOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/CloseOrderTest.java index 08350dcc..14013b6d 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/CloseOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/CloseOrderTest.java @@ -24,7 +24,6 @@ public class CloseOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/GatewayPayTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/GatewayPayTest.java index 86deb1f8..0809f986 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/GatewayPayTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/GatewayPayTest.java @@ -28,7 +28,6 @@ public class GatewayPayTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/PayOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/PayOrderTest.java index 7ed276f9..fabacadc 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/PayOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/PayOrderTest.java @@ -31,7 +31,6 @@ public class PayOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/RefundOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/RefundOrderTest.java index 7fddc239..b7f3d22c 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/RefundOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/RefundOrderTest.java @@ -29,7 +29,6 @@ public class RefundOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/TransferOrderTest.java b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/TransferOrderTest.java index 0a8c841e..7ca91a4e 100644 --- a/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/TransferOrderTest.java +++ b/daxpay-open-sdk/src/test/java/org/dromara/daxpay/sdk/trade/TransferOrderTest.java @@ -29,7 +29,6 @@ public class TransferOrderTest { .serviceUrl("http://127.0.0.1:19999") .signSecret("123456") .signType(SignTypeEnum.MD5) - .mchNo("M1723635576766") .appId("M8207639754663343") .build(); DaxPayKit.initConfig(config); diff --git a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/assist/TerminalDeviceController.java b/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/assist/TerminalDeviceController.java deleted file mode 100644 index fca4d74a..00000000 --- a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/assist/TerminalDeviceController.java +++ /dev/null @@ -1,144 +0,0 @@ -package org.dromara.daxpay.controller.assist; - -import cn.bootx.platform.core.annotation.RequestGroup; -import cn.bootx.platform.core.annotation.RequestPath; -import cn.bootx.platform.core.rest.Res; -import cn.bootx.platform.core.rest.dto.LabelValue; -import cn.bootx.platform.core.rest.param.PageParam; -import cn.bootx.platform.core.rest.result.PageResult; -import cn.bootx.platform.core.rest.result.Result; -import cn.bootx.platform.core.validation.ValidationGroup; -import org.dromara.daxpay.service.param.termina.ChannelTerminalParam; -import org.dromara.daxpay.service.param.termina.TerminalDeviceQuery; -import org.dromara.daxpay.service.param.termina.TerminalDeviceParam; -import org.dromara.daxpay.service.result.termina.ChannelTerminalResult; -import org.dromara.daxpay.service.result.termina.TerminalDeviceResult; -import org.dromara.daxpay.service.service.assist.TerminalDeviceService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; -import lombok.RequiredArgsConstructor; -import org.dromara.core.trans.anno.TransMethodResult; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 支付终端设备 - * @author xxm - * @since 2025/3/9 - */ -@Validated -@Tag(name = "支付终端设备管理") -@RestController -@RequestMapping("/terminal/device") -@RequestGroup(groupCode = "TerminalDevice", groupName = "支付终端设备管理", moduleCode = "PayConfig") -@RequiredArgsConstructor -public class TerminalDeviceController { - private final TerminalDeviceService terminalDeviceService; - - @TransMethodResult - @RequestPath("分页查询") - @Operation(summary = "分页查询") - @GetMapping("/page") - public Result> page(PageParam pageParam, TerminalDeviceQuery query){ - return Res.ok(terminalDeviceService.page(pageParam, query)); - } - - @TransMethodResult - @RequestPath("根据ID查询") - @Operation(summary = "根据ID查询") - @GetMapping("/findById") - public Result findById(@NotNull(message = "支付终端设备id不能为空") Long id){ - return Res.ok(terminalDeviceService.findById(id)); - } - - @RequestPath("新增") - @Operation(summary = "新增") - @PostMapping("/add") - public Result add(@RequestBody @Validated(ValidationGroup.add.class) TerminalDeviceParam param){ - terminalDeviceService.add(param); - return Res.ok(); - } - - @RequestPath("修改") - @Operation(summary = "修改") - @PostMapping("/edit") - public Result edit(@RequestBody @Validated(ValidationGroup.edit.class) TerminalDeviceParam param){ - terminalDeviceService.edit(param); - return Res.ok(); - } - - @RequestPath("删除") - @Operation(summary = "删除") - @PostMapping("/delete") - public Result delete(@NotNull(message = "支付终端设备id不能为空") Long id){ - terminalDeviceService.delete(id); - return Res.ok(); - } - - @RequestPath("查询通道报备列表") - @Operation(summary = "查询通道报备列表") - @GetMapping("/channel/list") - public Result> channelList(@NotNull(message = "支付终端设备id不能为空") Long terminalId){ - return Res.ok(terminalDeviceService.channelList(terminalId)); - } - - @RequestPath("通道报备") - @Operation(summary = "通道报备") - @PostMapping("/channel/submit") - public Result channelSubmit(@NotNull(message = "通道终端设备id不能为空") Long channelTerminalId){ - terminalDeviceService.channelSubmit(channelTerminalId); - return Res.ok(); - } - - @RequestPath("通道报备取消") - @Operation(summary = "通道报备取消") - @PostMapping("/channel/cancel") - public Result channelCancel(@NotNull(message = "通道终端设备id不能为空") Long channelTerminalId){ - terminalDeviceService.channelCancel(channelTerminalId); - return Res.ok(); - } - - @RequestPath("通道报备修改") - @Operation(summary = "通道报备修改") - @PostMapping("/channel/edit") - public Result channelEdit(@RequestBody @Validated ChannelTerminalParam param){ - terminalDeviceService.channelEdit(param); - return Res.ok(); - } - - @RequestPath("查询通道报备详情") - @Operation(summary = "查询通道报备详情") - @GetMapping("/channel/detail") - public Result channelDetail(@NotNull(message = "通道终端设备id不能为空") Long channelTerminalId){ - return Res.ok(terminalDeviceService.channelDetail(channelTerminalId)); - } - - @RequestPath("通道报备新增") - @Operation(summary = "通道报备新增") - @PostMapping("/channel/add") - public Result channelAdd(@NotNull(message = "支付终端设备id不能为空") Long terminalId, - @NotBlank(message = "通道不能为空") String channel, - @NotBlank(message = "终端类型不能为空") String terminalType){ - terminalDeviceService.channelAdd(terminalId, channel,terminalType); - return Res.ok(); - } - - @RequestPath("检查并修复终端设备") - @Operation(summary = "检查并修复终端设备") - @PostMapping("/channel/checkAndRepair") - public Result checkAndRepair(@NotNull(message = "支付终端设备id不能为空") Long terminalId){ - terminalDeviceService.checkAndRepair(terminalId); - return Res.ok(); - } - - @RequestPath("根据应用号查询下拉列表") - @Operation(summary = "根据应用号查询下拉列表") - @GetMapping("/dropdown") - public Result> dropdown(String appId){ - return Res.ok(terminalDeviceService.dropdown(appId)); - } -} diff --git a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/common/IndexTradeReportController.java b/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/common/IndexTradeReportController.java index a37ba13a..22fd67bc 100644 --- a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/common/IndexTradeReportController.java +++ b/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/common/IndexTradeReportController.java @@ -36,7 +36,6 @@ public class IndexTradeReportController { @Operation(summary = "支付交易信息统计") @GetMapping("/pay") public Result pryTradeReport(TradeReportQuery query){ - query.setMchNo(null); return Res.ok(tradeReportService.pryTradeReport(query)); } @@ -44,7 +43,6 @@ public class IndexTradeReportController { @Operation(summary = "退款交易信息统计") @GetMapping("/refund") public Result refundTradeReport(TradeReportQuery query){ - query.setMchNo(null); return Res.ok(tradeReportService.refundTradeReport(query)); } @@ -52,7 +50,6 @@ public class IndexTradeReportController { @Operation(summary = "支付交易通道统计") @GetMapping("/payChannel") public Result> payChannelReport(TradeReportQuery query){ - query.setMchNo(null); return Res.ok(tradeReportService.payChannelReport(query)); } @@ -60,7 +57,6 @@ public class IndexTradeReportController { @Operation(summary = "退款交易通道统计") @GetMapping("/refundChannel") public Result> refundChannelReport(TradeReportQuery query){ - query.setMchNo(null); return Res.ok(tradeReportService.refundChannelReport(query)); } @@ -68,7 +64,6 @@ public class IndexTradeReportController { @Operation(summary = "支付交易方式统计") @GetMapping("/payMethod") public Result> payMethodReport(TradeReportQuery query){ - query.setMchNo(null); return Res.ok(tradeReportService.payMethodReport(query)); } diff --git a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/constant/TerminalConstController.java b/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/constant/TerminalConstController.java deleted file mode 100644 index 5c37271a..00000000 --- a/daxpay-open/daxpay-open-controller/src/main/java/org/dromara/daxpay/controller/constant/TerminalConstController.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.dromara.daxpay.controller.constant; - -import cn.bootx.platform.core.annotation.RequestGroup; -import cn.bootx.platform.core.annotation.RequestPath; -import cn.bootx.platform.core.rest.Res; -import cn.bootx.platform.core.rest.param.PageParam; -import cn.bootx.platform.core.rest.result.PageResult; -import cn.bootx.platform.core.rest.result.Result; -import org.dromara.daxpay.service.param.constant.TerminalConstQuery; -import org.dromara.daxpay.service.result.constant.TerminalConstResult; -import org.dromara.daxpay.service.service.constant.TerminalConstService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import lombok.RequiredArgsConstructor; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 终端报送方式常量控制器 - * @author xxm - * @since 2025/3/12 - */ -@Validated -@Tag(name = "终端报送方式常量控制器") -@RestController -@RequestMapping("/const/terminal") -@RequiredArgsConstructor -@RequestGroup(groupCode = "PayConst", moduleCode = "PayConfig") -public class TerminalConstController { - private final TerminalConstService terminalConstService; - - @RequestPath("终端报送方式分页") - @Operation(summary = "支付方式分页") - @GetMapping("/page") - public Result> page(PageParam pageParam, TerminalConstQuery query) { - return Res.ok(terminalConstService.page(pageParam, query)); - } -} diff --git a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/ChannelTerminalStatusEnum.java b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/ChannelTerminalStatusEnum.java deleted file mode 100644 index 546df86c..00000000 --- a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/ChannelTerminalStatusEnum.java +++ /dev/null @@ -1,23 +0,0 @@ -package org.dromara.daxpay.core.enums; - -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * 通道终端设备报备状态 - * 字典: channel_terminal_status - * @author xxm - * @since 2025/3/9 - */ -@Getter -@AllArgsConstructor -public enum ChannelTerminalStatusEnum { - - WAIT("wait", "未报送"), - SUBMIT("submit", "已报送"), - LOGGED("logged", "已注销"), - ERROR("error", "错误"); - - private final String code; - private final String name; -} diff --git a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalDeviceTypeEnum.java b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalDeviceTypeEnum.java deleted file mode 100644 index 0267f4be..00000000 --- a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalDeviceTypeEnum.java +++ /dev/null @@ -1,32 +0,0 @@ -package org.dromara.daxpay.core.enums; - -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * 收款终端设备类型 - * 字典: terminal_device_type - * @author xxm - * @since 2025/3/7 - */ -@Getter -@AllArgsConstructor -public enum TerminalDeviceTypeEnum { - - AUTO_COUNTER("01", "自动柜员机"), - TRADITIONAL_POS("02", "传统POS"), - MPOS("03", "mPOS"), - SMART_POS("04", "智能POS"), - FIXED_PHONE("05", "II型固定电话"), - CLOUD_SHAN_PAY("06", "云闪付终端"), - RESERVE_USE("07", "保留使用"), - PHONE_POS("08", "手机POS"), - FACE_PAY_TERMINAL("09", "刷脸付终端"), - BAR_CODE_PAY_ACCEPT_TERMINAL("10", "条码支付受理终端"), - ASSIST_ACCEPT_TERMINAL("11", "辅助受理终端"), - INDUSTRY_TERMINAL("12", "行业终端"), - MIS_TERMINAL("13", "MIS终端"); - - private final String code; - private final String name; -} diff --git a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalTypeEnum.java b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalTypeEnum.java deleted file mode 100644 index 87700b5d..00000000 --- a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/enums/TerminalTypeEnum.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.dromara.daxpay.core.enums; - -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * 终端报送类型 - * 字典: terminal_type - * @author xxm - * @since 2025/3/12 - */ -@Getter -@AllArgsConstructor -public enum TerminalTypeEnum { - - COMM("comm", "标准上报"), - WECHAT("wechat", "微信渠道报送"), - ALIPAY("alipay", "支付宝渠道报送"), - UNION("union", "云闪付渠道报送"), - ; - - private final String code; - private final String name; -} diff --git a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/param/PaymentCommonParam.java b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/param/PaymentCommonParam.java index 13db8d33..2d7c7e56 100644 --- a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/param/PaymentCommonParam.java +++ b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/param/PaymentCommonParam.java @@ -20,12 +20,6 @@ import java.time.LocalDateTime; @Schema(title = "支付公共参数") public abstract class PaymentCommonParam { - /** 商户号 */ - @Schema(description = "商户号") - @NotBlank(message = "商户号不可为空") - @Size(max = 32, message = "商户号不可超过32位") - private String mchNo; - /** 应用号 */ @Schema(description = "应用号") @NotBlank(message = "应用号不可为空") diff --git a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/result/DaxNoticeResult.java b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/result/DaxNoticeResult.java index 13eecc24..ab816320 100644 --- a/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/result/DaxNoticeResult.java +++ b/daxpay-open/daxpay-open-core/src/main/java/org/dromara/daxpay/core/result/DaxNoticeResult.java @@ -22,10 +22,6 @@ public class DaxNoticeResult extends DaxResult{ @Schema(description = "通知类型") private String noticeType; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 应用ID */ @Schema(description = "应用ID") private String appId; diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/bo/assist/ChannelTerminalBo.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/bo/assist/ChannelTerminalBo.java deleted file mode 100644 index d08ba75a..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/bo/assist/ChannelTerminalBo.java +++ /dev/null @@ -1,29 +0,0 @@ -package org.dromara.daxpay.service.bo.assist; - -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 通道终端设备报送记录结果 - * @author xxm - * @since 2025/3/10 - */ -@Data -@Accessors(chain = true) -public class ChannelTerminalBo { - - /** - * 通道返回的设备注册号 - */ - private String deviceNo; - - /** - * 是否成功 - */ - private boolean success; - - /** - * 错误提示 - */ - private String errorMsg; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/aop/PaymentVerifyAspect.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/aop/PaymentVerifyAspect.java index 0ae33c37..99119050 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/aop/PaymentVerifyAspect.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/aop/PaymentVerifyAspect.java @@ -43,7 +43,7 @@ public class PaymentVerifyAspect { // 参数校验 ValidationUtil.validateParam(paymentParam); // 商户和应用信息初始化 - paymentAssistService.initMchAndApp(paymentParam.getMchNo(), paymentParam.getAppId()); + paymentAssistService.initMchAndApp(paymentParam.getAppId()); // 状态判断 paymentAssistService.checkStatus(); // 终端信息初始化 diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/param/MchQuery.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/param/MchQuery.java index 5ba7e9f1..45ab7b2e 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/param/MchQuery.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/param/MchQuery.java @@ -23,22 +23,9 @@ import java.util.Objects; @Schema(title = "商户查询参数") public class MchQuery extends SortParam { - /** 商户号 */ - @QueryParam(type = QueryParam.CompareTypeEnum.EQ) - @Schema(description = "商户号") - private String mchNo; - /** 应用号 */ @QueryParam(type = QueryParam.CompareTypeEnum.EQ) @Schema(description = "应用号") private String appId; - public String getMchNo() { - // 判断是否管理端, 如果不是管理端将值设置为null, 防止越权 - var clientCodeService = SpringUtil.getBean(ClientCodeService.class); - if (!Objects.equals(clientCodeService.getClientCode(), DaxPayCode.Client.ADMIN)){ - return null; - } - return mchNo; - } } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/result/MchResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/result/MchResult.java index 02032b2b..147a80f9 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/result/MchResult.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/common/result/MchResult.java @@ -23,9 +23,6 @@ import org.dromara.core.trans.vo.TransPojo; @Schema(title = "商户应用基础返回结果") public class MchResult extends BaseResult implements TransPojo { - @Schema(description = "商户号") - private String mchNo; - @Schema(description = "商户名称") private String mchName; diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/assist/TerminalDeviceConvert.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/assist/TerminalDeviceConvert.java deleted file mode 100644 index 47d6bf77..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/assist/TerminalDeviceConvert.java +++ /dev/null @@ -1,29 +0,0 @@ -package org.dromara.daxpay.service.convert.assist; - -import org.dromara.daxpay.service.entity.assist.TerminalDevice; -import org.dromara.daxpay.service.entity.assist.ChannelTerminal; -import org.dromara.daxpay.service.param.termina.ChannelTerminalParam; -import org.dromara.daxpay.service.param.termina.TerminalDeviceParam; -import org.dromara.daxpay.service.result.termina.ChannelTerminalResult; -import org.dromara.daxpay.service.result.termina.TerminalDeviceResult; -import org.mapstruct.Mapper; -import org.mapstruct.factory.Mappers; - -/** - * 支付终端设备转换 - * @author xxm - * @since 2025/3/8 - */ -@Mapper -public interface TerminalDeviceConvert { - TerminalDeviceConvert CONVERT = Mappers.getMapper(TerminalDeviceConvert.class); - - TerminalDeviceResult toResult(TerminalDevice entity); - - TerminalDevice toEntity(TerminalDeviceParam param); - - ChannelTerminalResult toResult(ChannelTerminal entity); - - ChannelTerminal toEntity(ChannelTerminalParam param); - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/constant/TerminalConstConvert.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/constant/TerminalConstConvert.java deleted file mode 100644 index fdc51c47..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/convert/constant/TerminalConstConvert.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.dromara.daxpay.service.convert.constant; - -import org.dromara.daxpay.service.entity.constant.TerminalConst; -import org.dromara.daxpay.service.result.constant.TerminalConstResult; -import org.mapstruct.Mapper; -import org.mapstruct.factory.Mappers; - -/** - * - * @author xxm - * @since 2025/3/12 - */ -@Mapper -public interface TerminalConstConvert { - TerminalConstConvert CONVERT = Mappers.getMapper(TerminalConstConvert.class); - - TerminalConstResult toResult(TerminalConst channelTerminalTypeConst); -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalManager.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalManager.java deleted file mode 100644 index 0ee7bbd9..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalManager.java +++ /dev/null @@ -1,75 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import cn.bootx.platform.common.mybatisplus.impl.BaseManager; -import org.dromara.daxpay.service.entity.assist.ChannelTerminal; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Repository; - -import java.util.List; -import java.util.Optional; - -/** - * 支付终端设备通道上报记录 - * @author xxm - * @since 2025/3/7 - */ -@Slf4j -@Repository -@RequiredArgsConstructor -public class ChannelTerminalManager extends BaseManager { - - /** - * 根据终端设备ID判断是否存在 - */ - public boolean existsByTerminalId(Long terminalId){ - return existedByField(ChannelTerminal::getTerminalId,terminalId); - } - - /** - * 根据终端设备ID和通道查询记录 - */ - public Optional findByTerminalIdAndChannel(Long terminalId, String channel){ - return lambdaQuery() - .eq(ChannelTerminal::getTerminalId,terminalId) - .eq(ChannelTerminal::getChannel,channel) - .oneOpt(); - } - - /** - * 根据终端设备ID和通道查询记录 - */ - public boolean existsByTerminal(Long terminalId, String channel, String terminalType){ - return lambdaQuery() - .eq(ChannelTerminal::getTerminalId,terminalId) - .eq(ChannelTerminal::getType,terminalType) - .eq(ChannelTerminal::getChannel,channel) - .exists(); - } - - /** - * 根据终端号查询 - */ - public List findAllByTerminalId(Long terminalId){ - return lambdaQuery() - .eq(ChannelTerminal::getTerminalId,terminalId) - .list(); - - } - - /** - * 删除多余的终端设备通道上报记录 - * @param terminalId 终端设备ID - * @param channelId 保留的通道ID - * @param channel 通道 - * @param terminalType 终端类型 - */ - public void deleteByTerminalId(Long terminalId, Long channelId, String channel, String terminalType){ - lambdaUpdate() - .eq(ChannelTerminal::getTerminalId,terminalId) - .eq(ChannelTerminal::getChannel,channel) - .eq(ChannelTerminal::getType,terminalType) - .ne(ChannelTerminal::getId,channelId) - .remove(); - } -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalMapper.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalMapper.java deleted file mode 100644 index 930fa354..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/ChannelTerminalMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import org.dromara.daxpay.service.entity.assist.ChannelTerminal; -import com.github.yulichang.base.MPJBaseMapper; -import org.apache.ibatis.annotations.Mapper; - -/** - * 支付终端设备通道上报记录 - * @author xxm - * @since 2025/3/7 - */ -@Mapper -public interface ChannelTerminalMapper extends MPJBaseMapper { -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstManager.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstManager.java deleted file mode 100644 index ae52120e..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstManager.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import cn.bootx.platform.common.mybatisplus.base.MpIdEntity; -import cn.bootx.platform.common.mybatisplus.impl.BaseManager; -import cn.bootx.platform.common.mybatisplus.query.generator.QueryGenerator; -import cn.bootx.platform.common.mybatisplus.util.MpUtil; -import cn.bootx.platform.core.rest.param.PageParam; -import org.dromara.daxpay.service.entity.constant.TerminalConst; -import org.dromara.daxpay.service.param.constant.TerminalConstQuery; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Repository; - -import java.util.List; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@Slf4j -@Repository -@RequiredArgsConstructor -public class TerminalConstManager extends BaseManager { - - /** - * 分页 - */ - public Page page(PageParam pageParam, TerminalConstQuery query) { - Page mpPage = MpUtil.getMpPage(pageParam); - QueryWrapper wrapper = QueryGenerator.generator(query); - wrapper.orderByAsc(MpIdEntity.Id.id); - return this.page(mpPage, wrapper); - } - - /** - * 查询启用的类型 - */ - public List findAllEnable() { - return lambdaQuery() - .eq(TerminalConst::isEnable, true) - .orderByAsc(MpIdEntity::getId) - .list(); - } - - /** - * 根据通道查询启用的类型 - */ - public List findAllByChannel(String channel) { - return lambdaQuery() - .eq(TerminalConst::getChannel, channel) - .orderByAsc(MpIdEntity::getId) - .list(); - } - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstMapper.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstMapper.java deleted file mode 100644 index c31fbe70..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalConstMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import org.dromara.daxpay.service.entity.constant.TerminalConst; -import com.github.yulichang.base.MPJBaseMapper; -import org.apache.ibatis.annotations.Mapper; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@Mapper -public interface TerminalConstMapper extends MPJBaseMapper { -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceManager.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceManager.java deleted file mode 100644 index ac6f0c61..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceManager.java +++ /dev/null @@ -1,44 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import cn.bootx.platform.common.mybatisplus.impl.BaseManager; -import cn.bootx.platform.common.mybatisplus.query.generator.QueryGenerator; -import cn.bootx.platform.common.mybatisplus.util.MpUtil; -import cn.bootx.platform.core.rest.param.PageParam; -import org.dromara.daxpay.service.entity.assist.TerminalDevice; -import org.dromara.daxpay.service.param.termina.TerminalDeviceQuery; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Repository; - -import java.util.Optional; - -/** - * 支付终端设备管理 - * @author xxm - * @since 2025/3/7 - */ -@Slf4j -@Repository -@RequiredArgsConstructor -public class TerminalDeviceManager extends BaseManager { - - /** - * 分页 - */ - public Page page(PageParam pageParam, TerminalDeviceQuery query){ - var mpPage = MpUtil.getMpPage(pageParam, TerminalDevice.class); - QueryWrapper generator = QueryGenerator.generator(query); - return this.page(mpPage,generator); - } - - /** - * 根据编号查询终端信息 - */ - public Optional findByNo(String terminalNo){ - return this.lambdaQuery() - .eq(TerminalDevice::getTerminalNo,terminalNo) - .oneOpt(); - } -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceMapper.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceMapper.java deleted file mode 100644 index 4f2218f9..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/dao/assist/TerminalDeviceMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.dromara.daxpay.service.dao.assist; - -import org.dromara.daxpay.service.entity.assist.TerminalDevice; -import com.github.yulichang.base.MPJBaseMapper; -import org.apache.ibatis.annotations.Mapper; - -/** - * 支付终端设备管理 - * @author xxm - * @since 2025/3/7 - */ -@Mapper -public interface TerminalDeviceMapper extends MPJBaseMapper { -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/ChannelTerminal.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/ChannelTerminal.java deleted file mode 100644 index ecf3ac3c..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/ChannelTerminal.java +++ /dev/null @@ -1,89 +0,0 @@ -package org.dromara.daxpay.service.entity.assist; - -import cn.bootx.platform.common.mybatisplus.function.ToResult; -import org.dromara.daxpay.core.enums.ChannelEnum; -import org.dromara.daxpay.core.enums.ChannelTerminalStatusEnum; -import org.dromara.daxpay.core.enums.TerminalTypeEnum; -import org.dromara.daxpay.service.common.entity.MchAppBaseEntity; -import org.dromara.daxpay.service.convert.assist.TerminalDeviceConvert; -import org.dromara.daxpay.service.param.termina.ChannelTerminalParam; -import org.dromara.daxpay.service.result.termina.ChannelTerminalResult; -import com.baomidou.mybatisplus.annotation.FieldStrategy; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 通道终端设备上报记录 - * @author xxm - * @since 2025/3/7 - */ -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -@TableName("pay_channel_terminal") -public class ChannelTerminal extends MchAppBaseEntity implements ToResult { - - /** 终端设备ID */ - @TableField(updateStrategy = FieldStrategy.NEVER) - private Long terminalId; - - /** 终端设备编码 */ - @TableField(updateStrategy = FieldStrategy.NEVER) - private String terminalNo; - - /** - * 通道 - * @see ChannelEnum - */ - @TableField(updateStrategy = FieldStrategy.NEVER) - private String channel; - - /** - * 终端报送类型 - * @see TerminalTypeEnum - */ - @TableField(updateStrategy = FieldStrategy.NEVER) - private String type; - - /** - * 状态 - * @see ChannelTerminalStatusEnum - */ - private String status; - - /** - * 扩展信息 - */ - private String extra; - - /** 通道终端号 */ - @TableField(updateStrategy = FieldStrategy.ALWAYS) - private String outTerminalNo; - - /** 错误信息 */ - @TableField(updateStrategy = FieldStrategy.ALWAYS) - private String errorMsg; - - /** - * 获取上报类型 格式: 通道编码:上报类型 - */ - public String genUpType(){ - return this.channel + ":" + this.type; - } - - /** - * 初始化对象 - */ - public static ChannelTerminal init(ChannelTerminalParam param){ - return TerminalDeviceConvert.CONVERT.toEntity(param); - } - - @Override - public ChannelTerminalResult toResult() { - return TerminalDeviceConvert.CONVERT.toResult(this); - } - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/TerminalDevice.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/TerminalDevice.java deleted file mode 100644 index 42ecee05..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/assist/TerminalDevice.java +++ /dev/null @@ -1,97 +0,0 @@ -package org.dromara.daxpay.service.entity.assist; - -import cn.bootx.platform.common.mybatisplus.function.ToResult; -import cn.bootx.platform.common.mybatisplus.handler.StringListTypeHandler; -import org.dromara.daxpay.core.enums.TerminalDeviceTypeEnum; -import org.dromara.daxpay.service.common.entity.MchAppBaseEntity; -import org.dromara.daxpay.service.convert.assist.TerminalDeviceConvert; -import org.dromara.daxpay.service.param.termina.TerminalDeviceParam; -import org.dromara.daxpay.service.result.termina.TerminalDeviceResult; -import com.baomidou.mybatisplus.annotation.FieldStrategy; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.time.LocalDate; -import java.util.List; -import java.util.Objects; - -/** - * 支付终端设备管理 - * @author xxm - * @since 2025/3/7 - */ -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -@TableName(value = "pay_terminal_device",autoResultMap = true) -public class TerminalDevice extends MchAppBaseEntity implements ToResult { - - /** 终端名称 */ - private String name; - - /** 终端编码 */ - @TableField(updateStrategy = FieldStrategy.NEVER) - private String terminalNo; - - /** - * 终端类型 - * @see TerminalDeviceTypeEnum - */ - private String type; - - /** 终端序列号 */ - private String serialNum; - - /** 省市区编码 */ - @TableField(updateStrategy = FieldStrategy.ALWAYS, typeHandler = StringListTypeHandler.class) - private List areaCode; - - /** 终端发放地址 */ - private String address; - - /** 终端厂商名称 */ - private String companyName; - - /** 发放日期 */ - private LocalDate putDate; - - /** 支持终端定位 */ - private Boolean gps; - - /** 终端机具体型号 */ - private String machineType; - - /** - * 经度,浮点型, 小数点后最多保留6位 - */ - private String longitude; - /** - * 纬度,浮点型,小数点后最多保留6位 - */ - private String latitude; - - /** 设备 IP 地址 */ - private String ip; - - /** 银行卡受理终端产品入网认证编号 */ - private String networkLicense; - - public Boolean getGps() { - return Objects.equals(gps, true); - } - - /** - * 初始化对象 - */ - public static TerminalDevice init(TerminalDeviceParam param){ - return TerminalDeviceConvert.CONVERT.toEntity(param); - } - - @Override - public TerminalDeviceResult toResult() { - return TerminalDeviceConvert.CONVERT.toResult(this); - } -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/constant/TerminalConst.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/constant/TerminalConst.java deleted file mode 100644 index 9b6e7280..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/entity/constant/TerminalConst.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.dromara.daxpay.service.entity.constant; - -import cn.bootx.platform.common.mybatisplus.base.MpIdEntity; -import cn.bootx.platform.common.mybatisplus.function.ToResult; -import org.dromara.daxpay.core.enums.TerminalTypeEnum; -import org.dromara.daxpay.service.convert.constant.TerminalConstConvert; -import org.dromara.daxpay.service.result.constant.TerminalConstResult; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -@TableName("pay_terminal_const") -public class TerminalConst extends MpIdEntity implements ToResult { - - /** 所属通道 */ - private String channel; - - /** - * 终端报送类型 - * @see TerminalTypeEnum - */ - private String type; - - /** 终端报送名称 */ - private String name; - - /** 是否启用 */ - private boolean enable; - - /** 备注 */ - private String remark; - - /** - * 转换 - */ - @Override - public TerminalConstResult toResult() { - return TerminalConstConvert.CONVERT.toResult(this); - } -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/AllocationEventService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/AllocationEventService.java index 5dddfb33..6608d406 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/AllocationEventService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/AllocationEventService.java @@ -42,7 +42,7 @@ public class AllocationEventService { var payOrderOpt = payOrderManager.findByIdNotTenant(event.getMessage()); if (payOrderOpt.isPresent()){ var payOrder = payOrderOpt.get(); - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); payOrderService.autoAllocation(payOrder); log.info("分账开始,订单号:{}", event.getMessage()); } else { @@ -58,7 +58,7 @@ public class AllocationEventService { Optional opt = allocOrderManager.findByIdNotTenant(event.getMessage()); if (opt.isPresent()){ var allocOrder = opt.get(); - paymentAssistService.initMchAndApp(allocOrder.getMchNo(),allocOrder.getAppId()); + paymentAssistService.initMchAndApp(allocOrder.getAppId()); syncService.autoSync(allocOrder); log.info("分账同步,订单号:{}", event.getMessage()); } else { @@ -74,7 +74,7 @@ public class AllocationEventService { Optional opt = allocOrderManager.findByIdNotTenant(event.getMessage()); if (opt.isPresent()){ var allocOrder = opt.get(); - paymentAssistService.initMchAndApp(allocOrder.getMchNo(),allocOrder.getAppId()); + paymentAssistService.initMchAndApp(allocOrder.getAppId()); allocationService.autoFinish(allocOrder); log.info("分账完结,订单号:{}", event.getMessage()); } else { diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/MerchantNoticeEventService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/MerchantNoticeEventService.java index 8631cb22..8acbf1c3 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/MerchantNoticeEventService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/MerchantNoticeEventService.java @@ -46,7 +46,7 @@ public class MerchantNoticeEventService { var taskOpt = merchantNotifyTaskManager.findByIdNotTenant(taskId); if (taskOpt.isPresent()){ var task = taskOpt.get(); - paymentAssistService.initMchAndApp(task.getMchNo(), task.getAppId()); + paymentAssistService.initMchAndApp(task.getAppId()); MchAppLocal mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); // 判断通知方式是否为http并且订阅了该类型的通知 boolean subscribe = merchantNotifyConfigService.getSubscribeByAppIdAndType(mchAppInfo.getAppId(), task.getNotifyType()); @@ -71,7 +71,7 @@ public class MerchantNoticeEventService { var taskOpt = merchantCallbackTaskManager.findByIdNotTenant(taskId); if (taskOpt.isPresent()){ var task = taskOpt.get(); - paymentAssistService.initMchAndApp(task.getMchNo(), task.getAppId()); + paymentAssistService.initMchAndApp(task.getAppId()); merchantCallbackSendService.sendData(task,true); } else { log.error("商户回调发送任务不存在,任务ID:{}",taskId); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/TradeOrderEventService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/TradeOrderEventService.java index 743b2bdc..57ae1720 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/TradeOrderEventService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/event/TradeOrderEventService.java @@ -55,12 +55,12 @@ public class TradeOrderEventService { PayOrder payOrder = orderOpt.get(); // 不是支付中不需要进行同步 if (payOrder.getStatus().equals(PayStatusEnum.PROGRESS.getCode())) { - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); paySyncService.syncPayOrder(payOrder); } // 待支付走超时关闭 if (payOrder.getStatus().equals(PayStatusEnum.WAIT.getCode()) ) { - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); payCloseService.closeOrder(payOrder,false); } } @@ -75,7 +75,7 @@ public class TradeOrderEventService { var order = orderOpt.get(); // 不是退款中不需要进行同步 if (order.getStatus().equals(RefundStatusEnum.PROGRESS.getCode())) { - paymentAssistService.initMchAndApp(order.getMchNo(), order.getAppId()); + paymentAssistService.initMchAndApp(order.getAppId()); refundSyncService.syncRefundOrder(order); } } @@ -91,7 +91,7 @@ public class TradeOrderEventService { var order = orderOpt.get(); // 不是退款中不需要进行同步 if (order.getStatus().equals(TransferStatusEnum.PROGRESS.getCode())) { - paymentAssistService.initMchAndApp(order.getMchNo(), order.getAppId()); + paymentAssistService.initMchAndApp(order.getAppId()); transferSyncService.syncTransferOrder(order); } } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/constant/TerminalConstQuery.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/constant/TerminalConstQuery.java deleted file mode 100644 index e7a2f1f3..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/constant/TerminalConstQuery.java +++ /dev/null @@ -1,25 +0,0 @@ -package org.dromara.daxpay.service.param.constant; - -import cn.bootx.platform.common.mybatisplus.query.entity.SortParam; -import cn.bootx.platform.core.annotation.QueryParam; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@EqualsAndHashCode(callSuper = true) -@QueryParam(type = QueryParam.CompareTypeEnum.LIKE) -@Data -@Accessors(chain = true) -@Schema(title = "通道终端报送类型查询") -public class TerminalConstQuery extends SortParam { - - /** 通道编码 */ - @Schema(description = "通道编码") - private String code; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppParam.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppParam.java index 82e97c39..3ccd6d13 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppParam.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppParam.java @@ -26,10 +26,6 @@ public class MchAppParam { @NotNull(message = "主键ID不可为空", groups = ValidationGroup.edit.class) private Long id; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 应用名称 */ @Schema(description = "应用名称") @NotNull(message = "应用名称不可为空") diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppQuery.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppQuery.java index d0fe5b6f..f0b36a63 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppQuery.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/merchant/MchAppQuery.java @@ -19,10 +19,6 @@ import lombok.experimental.Accessors; @Schema(title = "商户应用查询参数") public class MchAppQuery { - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 应用名称 */ @Schema(description = "应用号") private String appId; diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/reconcile/ReconcileCreatParam.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/reconcile/ReconcileCreatParam.java index 88b63818..1698d84e 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/reconcile/ReconcileCreatParam.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/reconcile/ReconcileCreatParam.java @@ -33,11 +33,6 @@ public class ReconcileCreatParam { @NotNull(message = "日期不可为空") private LocalDate date; - /** 商户号 */ - @Schema(description = "商户号") - @NotBlank(message = "商户号不可为空") - private String mchNo; - /** 应用Appid */ @Schema(description = "应用Appid") @NotBlank(message = "应用Appid不可为空") diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/report/TradeReportQuery.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/report/TradeReportQuery.java index a4ce8010..aadb4a56 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/report/TradeReportQuery.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/report/TradeReportQuery.java @@ -23,8 +23,4 @@ public class TradeReportQuery { /** 结束日期 */ @Schema(description = "结束日期") private LocalDate endDate; - - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/ChannelTerminalParam.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/ChannelTerminalParam.java deleted file mode 100644 index 579344a1..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/ChannelTerminalParam.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.dromara.daxpay.service.param.termina; - -import org.dromara.daxpay.core.enums.ChannelTerminalStatusEnum; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotNull; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 通道终端设备上报记录参数 - * @author xxm - * @since 2025/3/8 - */ -@Data -@Accessors(chain = true) -@Schema(title = "通道终端设备上报记录参数") -public class ChannelTerminalParam { - - /** 主键*/ - @NotNull(message = "Id不可为空") - @Schema(description = "主键") - private Long id; - - /** - * 状态 - * @see ChannelTerminalStatusEnum - */ - @NotNull(message = "状态不能为空") - @Schema(description = "状态") - private String status; - - /** 通道终端号 */ - @Schema(description = "通道终端号") - private String outTerminalNo; - - /** 清除错误信息 */ - @Schema(description = "清除错误信息") - private boolean clearErrMsg; - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceParam.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceParam.java deleted file mode 100644 index 9522ff71..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceParam.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.dromara.daxpay.service.param.termina; - -import cn.bootx.platform.core.validation.ValidationGroup; -import org.dromara.daxpay.core.enums.TerminalDeviceTypeEnum; -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; -import jakarta.validation.constraints.Null; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.time.LocalDate; -import java.util.List; - -/** - * 支付终端设备参数 - * @author xxm - * @since 2025/3/8 - */ -@Data -@Accessors(chain = true) -@Schema(title = "支付终端设备参数") -public class TerminalDeviceParam { - - /** 主键 */ - @Null(message = "Id需要为空", groups = ValidationGroup.add.class) - @NotNull(message = "Id不可为空", groups = ValidationGroup.edit.class) - @Schema(description = "主键") - private Long id; - - /** 终端名称 */ - @Schema(description = "终端名称") - private String name; - - /** - * 终端类型 - * @see TerminalDeviceTypeEnum - */ - @Schema(description = "终端类型") - private String type; - - /** 终端序列号 */ - @Schema(description = "终端序列号") - private String serialNum; - - /** 省市区编码 */ - @Schema(description = "省市区编码") - private List areaCode; - - /** 终端发放地址 */ - @Schema(description = "终端发放地址") - private String address; - - /** 终端厂商名称 */ - @Schema(description = "终端厂商名称") - private String companyName; - - /** 发放日期 */ - @Schema(description = "发放日期") - private LocalDate putDate; - - /** 支持终端定位 */ - @Schema(description = "支持终端定位") - private Boolean gps; - - /** 终端机具型号 */ - @Schema(description = "终端机具型号") - private String machineType; - - /** - * 经度,浮点型, 小数点后最多保留6位 - */ - @Schema(description = "经度,浮点型, 小数点后最多保留6位") - private String longitude; - /** - * 纬度,浮点型,小数点后最多保留6位 - */ - @Schema(description = "纬度,浮点型,小数点后最多保留6位") - private String latitude; - - /** 设备 IP 地址 */ - @Schema(description = "设备 IP 地址") - private String ip; - - /** 银行卡受理终端产品入网认证编号 */ - @Schema(description = "银行卡受理终端产品入网认证编号") - private String networkLicense; - - @NotBlank(message = "商户AppId不能为空") - @Schema(description = "商户应用AppId") - private String appId; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceQuery.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceQuery.java deleted file mode 100644 index 4d90ddcb..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/param/termina/TerminalDeviceQuery.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.dromara.daxpay.service.param.termina; - -import cn.bootx.platform.core.annotation.QueryParam; -import org.dromara.daxpay.core.enums.TerminalDeviceTypeEnum; -import org.dromara.daxpay.service.common.param.MchQuery; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 支付终端查询参数 - * @author xxm - * @since 2025/3/8 - */ -@QueryParam(type = QueryParam.CompareTypeEnum.LIKE) -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -public class TerminalDeviceQuery extends MchQuery { - - /** 终端名称 */ - @Schema(description = "终端名称") - private String name; - - /** 终端编码 */ - @Schema(description = "终端编码") - private String terminalNo; - - /** - * 终端类型 - * @see TerminalDeviceTypeEnum - */ - @Schema(description = "终端类型") - private String type; - - /** 终端序列号 */ - @Schema(description = "终端序列号") - private String serialNum; - - /** 终端机具型号 */ - @Schema(description = "终端机具型号") - private String machineType; - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/config/ChannelConfigResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/config/ChannelConfigResult.java index 1c0a4862..3e80f3e2 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/config/ChannelConfigResult.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/config/ChannelConfigResult.java @@ -41,10 +41,6 @@ public class ChannelConfigResult{ @Schema(description = "是否启用") private Boolean enable; - /** 商户号 */ - @Schema(description = "商户号") - private String mchNo; - /** 应用号 */ @Schema(description = "应用号") private String appId; diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/constant/TerminalConstResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/constant/TerminalConstResult.java deleted file mode 100644 index 9761e6d7..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/constant/TerminalConstResult.java +++ /dev/null @@ -1,40 +0,0 @@ -package org.dromara.daxpay.service.result.constant; - -import org.dromara.daxpay.core.enums.TerminalTypeEnum; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; -import lombok.experimental.Accessors; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@Data -@Accessors(chain = true) -@Schema(title = "通道终端报送类型") -public class TerminalConstResult { - - /** 所属通道 */ - @Schema(description = "所属通道") - private String channel; - - /** - * 终端报送类型 - * @see TerminalTypeEnum - */ - @Schema(description = "终端报送类型") - private String type; - - /** 终端报送名称 */ - @Schema(description = "终端报送名称") - private String name; - - /** 是否启用 */ - @Schema(description = "是否启用") - private boolean enable; - - /** 备注 */ - @Schema(description = "备注") - private String remark; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/merchant/MchAppResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/merchant/MchAppResult.java index 0c206f3e..442f660b 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/merchant/MchAppResult.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/merchant/MchAppResult.java @@ -26,9 +26,6 @@ import java.math.BigDecimal; @Schema(title = "商户应用") public class MchAppResult extends BaseResult implements TransPojo { - @Schema(description = "商户号") - private String mchNo; - @Schema(description = "商户名称") private String mchName; diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/ChannelTerminalResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/ChannelTerminalResult.java deleted file mode 100644 index 13cc5f40..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/ChannelTerminalResult.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.dromara.daxpay.service.result.termina; - -import org.dromara.daxpay.core.enums.ChannelEnum; -import org.dromara.daxpay.core.enums.ChannelTerminalStatusEnum; -import org.dromara.daxpay.core.enums.TerminalTypeEnum; -import org.dromara.daxpay.service.common.result.MchResult; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - * 通道终端设备上报记录 - * @author xxm - * @since 2025/3/8 - */ -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -@Schema(title = "通道终端设备上报记录") -public class ChannelTerminalResult extends MchResult { - - /** 终端设备ID */ - @Schema(description = "终端设备ID") - private Long terminalId; - - /** 终端设备编码 */ - @Schema(description = "终端设备编码") - private String terminalNo; - - /** - * 通道 - * @see ChannelEnum - */ - @Schema(description = "通道") - private String channel; - - /** - * 终端报送类型 - * @see TerminalTypeEnum - */ - @Schema(description = "终端报送类型") - private String type; - - /** - * 状态 - * @see ChannelTerminalStatusEnum - */ - @Schema(description = "状态") - private String status; - - /** 通道终端号 */ - @Schema(description = "通道终端号") - private String outTerminalNo; - - /** 错误信息 */ - @Schema(description = "错误信息") - private String errorMsg; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/TerminalDeviceResult.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/TerminalDeviceResult.java deleted file mode 100644 index 47c91a30..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/result/termina/TerminalDeviceResult.java +++ /dev/null @@ -1,85 +0,0 @@ -package org.dromara.daxpay.service.result.termina; - -import org.dromara.daxpay.core.enums.TerminalDeviceTypeEnum; -import org.dromara.daxpay.service.common.result.MchResult; -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.time.LocalDate; -import java.util.List; - -/** - * 支付终端设备参数 - * @author xxm - * @since 2025/3/8 - */ -@EqualsAndHashCode(callSuper = true) -@Data -@Accessors(chain = true) -@Schema(title = "支付终端设备参数") -public class TerminalDeviceResult extends MchResult { - - /** 终端名称 */ - @Schema(description = "终端名称") - private String name; - - /** 终端编码 */ - @Schema(description = "终端编码") - private String terminalNo; - - /** - * 终端类型 - * @see TerminalDeviceTypeEnum - */ - @Schema(description = "终端类型") - private String type; - - /** 终端序列号 */ - @Schema(description = "终端序列号") - private String serialNum; - - /** 省市区编码 */ - @Schema(description = "省市区编码") - private List areaCode; - - /** 终端发放地址 */ - @Schema(description = "终端发放地址") - private String address; - - /** 终端厂商名称 */ - @Schema(description = "终端厂商名称") - private String companyName; - - /** 发放日期 */ - @Schema(description = "发放日期") - private LocalDate putDate; - - /** 支持终端定位 */ - @Schema(description = "支持终端定位") - private Boolean gps; - - /** 终端机具型号 */ - @Schema(description = "终端机具型号") - private String machineType; - - /** - * 经度,浮点型, 小数点后最多保留6位 - */ - @Schema(description = "经度,浮点型, 小数点后最多保留6位") - private String longitude; - /** - * 纬度,浮点型,小数点后最多保留6位 - */ - @Schema(description = "纬度,浮点型,小数点后最多保留6位") - private String latitude; - - /** 设备 IP 地址 */ - @Schema(description = "设备 IP 地址") - private String ip; - - /** 银行卡受理终端产品入网认证编号 */ - @Schema(description = "银行卡受理终端产品入网认证编号") - private String networkLicense; -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/PaymentAssistService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/PaymentAssistService.java index df007986..65ee24a4 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/PaymentAssistService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/PaymentAssistService.java @@ -174,7 +174,6 @@ public class PaymentAssistService { mchAppInfo.setLimitAmount(mchAppInfo.getLimitAmount().min(platformConfig.getLimitAmount())); } } - // 初始化商户上下文信息 MchContextLocal.setMchNo(mchAppInfo.getMchNo()); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/TerminalDeviceService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/TerminalDeviceService.java deleted file mode 100644 index b4822dc0..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/assist/TerminalDeviceService.java +++ /dev/null @@ -1,234 +0,0 @@ -package org.dromara.daxpay.service.service.assist; - -import cn.bootx.platform.common.mybatisplus.function.CollectorsFunction; -import cn.bootx.platform.common.mybatisplus.util.MpUtil; -import cn.bootx.platform.core.exception.DataNotExistException; -import cn.bootx.platform.core.rest.dto.LabelValue; -import cn.bootx.platform.core.rest.param.PageParam; -import cn.bootx.platform.core.rest.result.PageResult; -import org.dromara.daxpay.core.enums.ChannelTerminalStatusEnum; -import org.dromara.daxpay.core.exception.DataErrorException; -import org.dromara.daxpay.service.common.entity.MchAppBaseEntity; -import org.dromara.daxpay.service.common.local.PaymentContextLocal; -import org.dromara.daxpay.service.dao.assist.ChannelTerminalManager; -import org.dromara.daxpay.service.dao.assist.TerminalConstManager; -import org.dromara.daxpay.service.dao.assist.TerminalDeviceManager; -import org.dromara.daxpay.service.entity.assist.ChannelTerminal; -import org.dromara.daxpay.service.entity.assist.TerminalDevice; -import org.dromara.daxpay.service.param.termina.ChannelTerminalParam; -import org.dromara.daxpay.service.param.termina.TerminalDeviceParam; -import org.dromara.daxpay.service.param.termina.TerminalDeviceQuery; -import org.dromara.daxpay.service.result.termina.ChannelTerminalResult; -import org.dromara.daxpay.service.result.termina.TerminalDeviceResult; -import org.dromara.daxpay.service.strategy.AbsChannelTerminalStrategy; -import org.dromara.daxpay.service.util.PaymentStrategyFactory; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.bean.copier.CopyOptions; -import cn.hutool.core.lang.UUID; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import java.util.List; -import java.util.Objects; -import java.util.function.Function; -import java.util.stream.Collectors; - -/** - * 支付终端设备管理 - * @author xxm - * @since 2025/3/7 - */ -@Slf4j -@Service -@RequiredArgsConstructor -public class TerminalDeviceService { - private final TerminalDeviceManager terminalManager; - private final ChannelTerminalManager channelTerminalManager; - private final TerminalConstManager terminalConstManager; - private final PaymentAssistService paymentAssistService; - - /** - * 分页 - */ - public PageResult page(PageParam pageParam, TerminalDeviceQuery query){ - return MpUtil.toPageResult(terminalManager.page(pageParam, query)); - } - - /** - * 查询详情 - */ - public TerminalDeviceResult findById(Long id){ - return terminalManager.findById(id).map(TerminalDevice::toResult) - .orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - } - - /** - * 添加 - */ - public void add(TerminalDeviceParam param){ - paymentAssistService.initMchAndApp(param.getAppId()); - var mchApp = PaymentContextLocal.get().getMchAppInfo(); - String uuid = UUID.fastUUID().toString(true); - TerminalDevice entity = TerminalDevice.init(param); - entity.setTerminalNo(uuid) - .setAppId(mchApp.getAppId()) - .setMchNo(mchApp.getMchNo()); - terminalManager.save(entity); - } - - /** - * 修改 - */ - public void edit(TerminalDeviceParam param){ - var entity = terminalManager.findById(param.getId()).orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - BeanUtil.copyProperties(param, entity, CopyOptions.create().ignoreNullValue()); - terminalManager.updateById(entity); - } - - /** - * 删除 - */ - public void delete(Long id){ - // 判断是有已经进行了上报的 - if (channelTerminalManager.existsByTerminalId(id)){ - throw new DataErrorException("该终端设备下有通道报备记录,无法被删除"); - } - terminalManager.deleteById(id); - } - - /** - * 根据终端ID查询通道报备列表 - */ - public List channelList(Long terminalId){ - var terminal = terminalManager.findById(terminalId).orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - var terminalChannelMap = channelTerminalManager.findAllByTerminalId(terminalId).stream() - .collect(Collectors.toMap(ChannelTerminal::genUpType, Function.identity(), CollectorsFunction::retainFirst)); - var terminalTypes = terminalConstManager.findAllEnable(); - // 组装列表 - return terminalTypes.stream() - .map(o -> { - var terminalChannel = terminalChannelMap.get(o.getChannel()+":"+o.getType()); - if (Objects.isNull(terminalChannel)) { - return new ChannelTerminalResult() - .setChannel(o.getChannel()) - .setType(o.getType()) - .setTerminalId(terminal.getId()) - .setTerminalNo(terminal.getTerminalNo()); - } else { - return terminalChannel.toResult(); - } - }) - .toList(); - } - - /** - * 通道报备 - */ - public void channelSubmit(Long terminalChannelId){ - var terminalChannel = channelTerminalManager.findById(terminalChannelId) - .orElseThrow(() -> new DataNotExistException("通道支付终端报备信息不存在")); - var terminal = terminalManager.findById(terminalChannel.getTerminalId()) - .orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - // 查询通道报备策略 - var strategy = PaymentStrategyFactory.create(terminalChannel.getChannel(), AbsChannelTerminalStrategy.class); - // 提交报备 - paymentAssistService.initMchAndApp(terminal.getMchNo(),terminal.getAppId()); - var terminalBo = strategy.submit(terminal,terminalChannel); - terminalChannel.setOutTerminalNo(terminalBo.getDeviceNo()) - .setErrorMsg(terminalBo.getErrorMsg()) - .setStatus(terminalBo.isSuccess()?ChannelTerminalStatusEnum.SUBMIT.getCode(): ChannelTerminalStatusEnum.ERROR.getCode()); - channelTerminalManager.updateById(terminalChannel); - - } - - /** - * 通道取消报备 - */ - public void channelCancel(Long terminalChannelId){ - var terminalChannel = channelTerminalManager.findById(terminalChannelId).orElseThrow(() -> new DataNotExistException("通道支付终端报备信息不存在")); - var terminal = terminalManager.findById(terminalChannel.getTerminalId()).orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - // 查询通道报备策略 - var strategy = PaymentStrategyFactory.create(terminalChannel.getChannel(), AbsChannelTerminalStrategy.class); - // 注销设备 - paymentAssistService.initMchAndApp(terminal.getMchNo(),terminal.getAppId()); - var terminalBo = strategy.cancel(terminal, terminalChannel); - terminalChannel.setErrorMsg(terminalBo.getErrorMsg()) - .setStatus(terminalBo.isSuccess()?ChannelTerminalStatusEnum.LOGGED.getCode(): ChannelTerminalStatusEnum.ERROR.getCode()); - channelTerminalManager.updateById(terminalChannel); - } - - /** - * 手动更改通道报备状态 - */ - public void channelEdit(ChannelTerminalParam param){ - var terminalChannel = channelTerminalManager.findById(param.getId()) - .orElseThrow(() -> new DataNotExistException("通道支付终端报备信息不存在")); - terminalChannel.setStatus(param.getStatus()) - .setOutTerminalNo(param.getOutTerminalNo()); - if (param.isClearErrMsg()){ - terminalChannel.setErrorMsg(null); - } - channelTerminalManager.updateById(terminalChannel); - } - - /** - * 通道报备详情 - */ - public ChannelTerminalResult channelDetail(Long terminalChannelId){ - return channelTerminalManager.findById(terminalChannelId).map(ChannelTerminal::toResult) - .orElseThrow(() -> new DataNotExistException("通道支付终端报备信息不存在")); - } - - /** - * 生成通道报备记录 - */ - public void channelAdd(Long terminalId, String channel, String terminalType){ - if (channelTerminalManager.existsByTerminal(terminalId, channel,terminalType)){ - throw new DataErrorException("该通道关联支付设备已存在,无法进行创建"); - } - var terminal = terminalManager.findById(terminalId).orElseThrow(() -> new DataNotExistException("支付终端设备不存在")); - this.channelAdd(terminal, channel, terminalType); - } - - /** - * 数据检查修复 - */ - public void checkAndRepair(Long terminalId){ - // 查询通道报备列表 - var terminalChannels = channelTerminalManager.findAllByTerminalId(terminalId); - // 判断是否有重复的, 进行删除 - var terminalChannelGroup = terminalChannels.stream() - .collect(Collectors.groupingBy(ChannelTerminal::genUpType)); - terminalChannelGroup.forEach((key, value) -> { - if (value.size() > 1){ - var terminalChannel = value.getFirst(); - channelTerminalManager.deleteByTerminalId(terminalId, terminalChannel.getId(), terminalChannel.getChannel(), terminalChannel.getType()); - } - }); - } - - /** - * 生成通道报备记录 - */ - private void channelAdd(TerminalDevice terminal, String channel,String terminalType){ - var terminalChannel = new ChannelTerminal() - .setTerminalId(terminal.getId()) - .setTerminalNo(terminal.getTerminalNo()) - .setChannel(channel) - .setType(terminalType) - .setStatus(ChannelTerminalStatusEnum.WAIT.getCode()); - terminalChannel.setAppId(terminal.getAppId()) - .setMchNo(terminal.getMchNo()); - channelTerminalManager.save(terminalChannel); - } - - /** - * 终端下拉列表 - */ - public List dropdown(String appId) { - return terminalManager.findAllByField(MchAppBaseEntity::getAppId, appId).stream() - .map(o -> new LabelValue(o.getName(), o.getTerminalNo())) - .toList(); - } -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/ChannelConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/ChannelConfigService.java index 49ac8f20..94b16368 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/ChannelConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/ChannelConfigService.java @@ -62,12 +62,10 @@ public class ChannelConfigService { return new ChannelConfigResult() .setChannel(o.getCode()) .setName(o.getName()) - .setMchNo(mchApp.getMchNo()) .setAppId(mchApp.getAppId()); } else { return channelConfig.toResult() .setName(o.getName()) - .setMchNo(mchApp.getMchNo()) .setAppId(mchApp.getAppId()); } }).toList(); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/MerchantNotifyConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/MerchantNotifyConfigService.java index 349ed609..37b23a19 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/MerchantNotifyConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/config/MerchantNotifyConfigService.java @@ -54,8 +54,7 @@ public class MerchantNotifyConfigService { .setName(o.getName()) .setDescription(o.getDescription()) .setSubscribe(subscribe); - result.setAppId(appId) - .setMchNo(mchApp.getMchNo()); + result.setAppId(appId); return result; }).toList(); } @@ -91,7 +90,6 @@ public class MerchantNotifyConfigService { } else { MerchantNotifyConfig merchantNotifyConfig = new MerchantNotifyConfig(); merchantNotifyConfig.setAppId(appId); - merchantNotifyConfig.setMchNo(mchApp.getMchNo()); merchantNotifyConfig.setCode(notifyType); merchantNotifyConfig.setSubscribe(subscribe); configManager.save(merchantNotifyConfig); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/constant/TerminalConstService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/constant/TerminalConstService.java deleted file mode 100644 index d4bfc2a5..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/constant/TerminalConstService.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.dromara.daxpay.service.service.constant; - -import cn.bootx.platform.common.mybatisplus.util.MpUtil; -import cn.bootx.platform.core.rest.param.PageParam; -import cn.bootx.platform.core.rest.result.PageResult; -import org.dromara.daxpay.service.dao.assist.TerminalConstManager; -import org.dromara.daxpay.service.param.constant.TerminalConstQuery; -import org.dromara.daxpay.service.result.constant.TerminalConstResult; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -/** - * 通道终端报送类型 - * @author xxm - * @since 2025/3/12 - */ -@Slf4j -@Service -@RequiredArgsConstructor -public class TerminalConstService { - private final TerminalConstManager terminalConstManager; - - /** - * 分页 - */ - public PageResult page(PageParam pageParam, TerminalConstQuery query) { - return MpUtil.toPageResult(terminalConstManager.page(pageParam, query)); - } - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/develop/DevelopTradeService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/develop/DevelopTradeService.java index 5810722c..b421769a 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/develop/DevelopTradeService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/develop/DevelopTradeService.java @@ -37,7 +37,7 @@ public class DevelopTradeService { * 生成签名 */ public String genSign(PaymentCommonParam param){ - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); return paymentAssistService.genSign(param); } @@ -46,7 +46,7 @@ public class DevelopTradeService { */ public PayResult pay(PayParam param) { // 初始化 - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); // 签名校验 paymentAssistService.signVerify(param); return payService.pay(param); @@ -57,7 +57,7 @@ public class DevelopTradeService { */ public RefundResult refund(RefundParam param) { // 初始化 - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); // 签名校验 paymentAssistService.signVerify(param); return refundService.refund(param); @@ -68,7 +68,7 @@ public class DevelopTradeService { */ public TransferResult transfer(TransferParam param) { // 初始化 - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); // 签名校验 paymentAssistService.signVerify(param); return transferService.transfer(param); @@ -79,7 +79,7 @@ public class DevelopTradeService { */ public GatewayPayUrlResult checkoutUrl(GatewayPayParam param) { // 初始化 - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); // 签名校验 paymentAssistService.signVerify(param); return gatewayPayService.prePay(param); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/CashierPayService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/CashierPayService.java index cb5c09ed..1cfcbf6c 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/CashierPayService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/CashierPayService.java @@ -63,7 +63,7 @@ public class CashierPayService { @IgnoreTenant public PayResult cashierBarPay(GatewayCashierBarPayParam param) { var payOrder = gatewayPayAssistService.getOrderAndCheck(param.getOrderNo()); - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); // 识别付款码类型 var aggregatePayType = PayUtil.getBarCodeType(param.getAuthCode()); // 获取聚合付款码支付配置 @@ -79,7 +79,6 @@ public class CashierPayService { payParam.setOtherMethod(barPayConfig.getOtherMethod()); payParam.setAuthCode(param.getAuthCode()); payParam.setAppId(barPayConfig.getAppId()); - payParam.setMchNo(barPayConfig.getMchNo()); // 设置IP if (Objects.isNull(payParam.getClientIp())){ String ip = Optional.ofNullable(WebServletUtil.getRequest()) @@ -97,7 +96,7 @@ public class CashierPayService { public PayResult cashierPay(GatewayCashierPayParam param){ // 订单信息 PayOrder payOrder = gatewayPayAssistService.getOrderAndCheck(param.getOrderNo()); - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); // 获取配置项 var itemConfig = cashierItemConfigManager.findByIdAndAppId(param.getItemId(),payOrder.getAppId()) .orElseThrow(() -> new TradeProcessingException("支付配置项不存在")); @@ -118,7 +117,7 @@ public class CashierPayService { // 查询配置 var itemConfig = cashierItemConfigManager.findByIdAndAppId(param.getItemId(),payOrder.getAppId()) .orElseThrow(() -> new TradeProcessingException("支付配置项不存在")); - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); // 构建支付参数 var payParam = new PayParam(); payParam.setChannel(itemConfig.getChannel()); @@ -127,7 +126,6 @@ public class CashierPayService { payParam.setAuthCode(param.getAuthCode()); payParam.setOpenId(param.getOpenId()); payParam.setAppId(itemConfig.getAppId()); - payParam.setMchNo(payOrder.getMchNo()); // 设置IP if (Objects.isNull(payParam.getClientIp())){ String ip = Optional.ofNullable(WebServletUtil.getRequest()) @@ -156,7 +154,7 @@ public class CashierPayService { if (!codeConfig.getEnable()) { throw new ConfigNotEnableException("支付码牌已禁用"); } - paymentAssistService.initMchAndApp(codeConfig.getMchNo(), codeConfig.getAppId()); + paymentAssistService.initMchAndApp(codeConfig.getAppId()); var itemConfig = cashierCodeItemConfigManager.findByCodeAndType(codeConfig.getId(), param.getCashierType()) .orElseThrow(() -> new DataNotExistException("码牌配置不存在")); // 构建支付参数 @@ -196,7 +194,7 @@ public class CashierPayService { if (!codeConfig.getEnable()) { throw new ConfigNotEnableException("支付码牌已禁用"); } - paymentAssistService.initMchAndApp(codeConfig.getMchNo(), codeConfig.getAppId()); + paymentAssistService.initMchAndApp(codeConfig.getAppId()); var codeItemConfig = cashierCodeItemConfigManager.findByCodeAndType(codeConfig.getId(), param.getCashierType()) .orElseThrow(() -> new DataNotExistException("码牌配置不存在")); // 获取认证策略 @@ -226,7 +224,7 @@ public class CashierPayService { if (!codeConfig.getEnable()) { throw new ConfigNotEnableException("支付码牌已禁用"); } - paymentAssistService.initMchAndApp(codeConfig.getMchNo(), codeConfig.getAppId()); + paymentAssistService.initMchAndApp(codeConfig.getAppId()); var codeItemConfig = cashierCodeItemConfigManager.findByCodeAndType(codeConfig.getId(), param.getCashierType()) .orElseThrow(() -> new DataNotExistException("码牌配置不存在")); // 获取认证策略 diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/GatewayPayService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/GatewayPayService.java index b078faae..9fb33e29 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/GatewayPayService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/GatewayPayService.java @@ -126,7 +126,7 @@ public class GatewayPayService { // 获取聚合类型 var aggregateConfig = aggregatePayConfigManager.findByAppIdAndType(payOrder.getAppId(), param.getAggregateType()) .orElseThrow(() -> new ConfigNotExistException("聚合支付配置项不存在")); - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); // 构建支付参数 var payParam = new PayParam(); payParam.setChannel(aggregateConfig.getChannel()); @@ -134,7 +134,6 @@ public class GatewayPayService { payParam.setOtherMethod(aggregateConfig.getOtherMethod()); payParam.setOpenId(param.getOpenId()); payParam.setAppId(aggregateConfig.getAppId()); - payParam.setMchNo(payOrder.getMchNo()); // 设置IP if (Objects.isNull(payParam.getClientIp())){ String ip = Optional.ofNullable(WebServletUtil.getRequest()) @@ -173,7 +172,6 @@ public class GatewayPayService { payParam.setAuthCode(param.getAuthCode()); payParam.setTerminalNo(param.getTerminalNo()); payParam.setAppId(barPayConfig.getAppId()); - payParam.setMchNo(barPayConfig.getMchNo()); // 设置IP if (Objects.isNull(payParam.getClientIp())){ String ip = Optional.ofNullable(WebServletUtil.getRequest()) diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/AggregateConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/AggregateConfigService.java index fffaafd4..e7c03bd1 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/AggregateConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/AggregateConfigService.java @@ -73,7 +73,6 @@ public class AggregateConfigService { throw new OperationFailException("聚合支付配置已存在"); } var entity = AggregatePayConfig.init(param); - entity.setMchNo(mchApp.getMchNo()); aggregatePayConfigManager.save(entity); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierCodeConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierCodeConfigService.java index bfddc761..bfc79b17 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierCodeConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierCodeConfigService.java @@ -50,8 +50,7 @@ public class CashierCodeConfigService { paymentAssistService.initMchAndApp(param.getAppId()); String uuid = UUID.fastUUID().toString(true); CashierCodeConfig config = CashierCodeConfig.init(param); - config.setCode(uuid) - .setMchNo(MchContextLocal.getMchNo()); + config.setCode(uuid); cashierCodeConfigManager.save(config); } @@ -143,8 +142,7 @@ public class CashierCodeConfigService { } CashierCodeItemConfig entity = CashierCodeItemConfig.init(param); - entity.setAppId(codeConfig.getAppId()) - .setMchNo(codeConfig.getMchNo()); + entity.setAppId(codeConfig.getAppId()); codeItemConfigManager.save(entity); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierConfigService.java index 8ebd96d1..938f1c7b 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/CashierConfigService.java @@ -80,7 +80,6 @@ public class CashierConfigService { paymentAssistService.initMchAndApp(param.getAppId()); var mchApp = PaymentContextLocal.get().getMchAppInfo(); var entity = CashierGroupConfig.init(param); - entity.setMchNo(mchApp.getMchNo()); cashierGroupConfigManager.save(entity); } @@ -117,7 +116,6 @@ public class CashierConfigService { paymentAssistService.initMchAndApp(param.getAppId()); var mchApp = PaymentContextLocal.get().getMchAppInfo(); var entity = CashierItemConfig.init(param); - entity.setMchNo(mchApp.getMchNo()); cashierItemConfigManager.save(entity); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/GatewayPayConfigService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/GatewayPayConfigService.java index 92a39595..c85bf4c8 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/GatewayPayConfigService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/gateway/config/GatewayPayConfigService.java @@ -44,7 +44,6 @@ public class GatewayPayConfigService { paymentAssistService.initMchAndApp(param.getAppId()); var mchApp = PaymentContextLocal.get().getMchAppInfo(); var entity = GatewayPayConfig.init(param); - entity.setMchNo(mchApp.getMchNo()); gatewayPayConfigManager.save(entity); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/merchant/MchAppService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/merchant/MchAppService.java index dd02e5ed..93aa3f9d 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/merchant/MchAppService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/merchant/MchAppService.java @@ -116,12 +116,12 @@ public class MchAppService { * 生成应用号 */ private String generateAppId() { - String mchNo = RandomUtil.randomNumbers(16); + String appId = RandomUtil.randomNumbers(16); for (int i = 0; i < 10; i++){ - if (!mchAppManager.existedByField(MchApp::getAppId, mchNo)){ - return "A"+mchNo; + if (!mchAppManager.existedByField(MchApp::getAppId, appId)){ + return "A"+ appId; } - mchNo = String.valueOf(System.currentTimeMillis()); + appId = String.valueOf(System.currentTimeMillis()); } throw new BizException("应用号生成失败"); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/callback/MerchantCallbackSendService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/callback/MerchantCallbackSendService.java index 78747f02..dd1f920e 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/callback/MerchantCallbackSendService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/callback/MerchantCallbackSendService.java @@ -61,7 +61,6 @@ public class MerchantCallbackSendService { try { // 构造通知消息并签名 var daxResult = new DaxNoticeResult>(SUCCESS_CODE, JsonUtil.parseObj(task.getContent()), SUCCESS_MSG) - .setMchNo(task.getMchNo()) .setAppId(task.getAppId()); paymentAssistService.sign(daxResult); HttpResponse execute = HttpUtil.createPost(task.getUrl()) @@ -136,7 +135,7 @@ public class MerchantCallbackSendService { var taskOpt = taskManager.findById(taskId); if (taskOpt.isPresent()){ var task = taskOpt.get(); - paymentAssistService.initMchAndApp(task.getMchNo(), task.getAppId()); + paymentAssistService.initMchAndApp(task.getAppId()); this.sendData(task,false); } else { log.error("发送任务不存在,任务ID:{}",taskId); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/notify/MerchantNotifySendService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/notify/MerchantNotifySendService.java index 0e2f9bba..82f23d3c 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/notify/MerchantNotifySendService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/notice/notify/MerchantNotifySendService.java @@ -68,7 +68,6 @@ public class MerchantNotifySendService { try { // 构造通知消息并签名 var daxResult = new DaxNoticeResult>(SUCCESS_CODE, JsonUtil.parseObj(task.getContent()), SUCCESS_MSG) - .setMchNo(task.getMchNo()) .setAppId(task.getAppId()) .setNoticeType(task.getNotifyType()); paymentAssistService.sign(daxResult); @@ -145,7 +144,7 @@ public class MerchantNotifySendService { var taskOpt = taskManager.findById(taskId); if (taskOpt.isPresent()){ var task = taskOpt.get(); - paymentAssistService.initMchAndApp(task.getMchNo(), task.getAppId()); + paymentAssistService.initMchAndApp(task.getAppId()); var mchAppInfo = PaymentContextLocal.get().getMchAppInfo(); // 判断通知方式是否为http并且订阅了该类型的通知 boolean subscribe = notifyConfigService.getSubscribeByAppIdAndType(mchAppInfo.getAppId(), task.getNotifyType()); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java index 75e6ccbe..81a2e88e 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java @@ -42,7 +42,7 @@ public class PayOrderService { public void sync(Long id) { PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); paySyncService.syncPayOrder(payOrder); } @@ -52,7 +52,7 @@ public class PayOrderService { public void close(Long id) { PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); payCloseService.closeOrder(payOrder,false); } @@ -62,7 +62,7 @@ public class PayOrderService { public void cancel(Long id) { PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); payCloseService.closeOrder(payOrder,true); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java index b63b1458..575d3334 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java @@ -56,7 +56,7 @@ public class RefundOrderService { .orElseThrow(() -> new TradeNotExistException("支付订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(payOrder.getMchNo(),payOrder.getAppId()); + paymentAssistService.initMchAndApp(payOrder.getAppId()); String ip = Optional.ofNullable(WebServletUtil.getRequest()) .map(JakartaServletUtil::getClientIP) @@ -64,7 +64,6 @@ public class RefundOrderService { // 构建退款参数并发起 var refundParam = new RefundParam(); - refundParam.setMchNo(payOrder.getMchNo()); refundParam.setAppId(payOrder.getAppId()); refundParam.setClientIp(ip); refundParam.setReqTime(LocalDateTime.now()); @@ -82,7 +81,7 @@ public class RefundOrderService { RefundOrder refundOrder = refundOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("退款订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(refundOrder.getMchNo(),refundOrder.getAppId()); + paymentAssistService.initMchAndApp(refundOrder.getAppId()); // 同步退款订单状态 refundSyncService.syncRefundOrder(refundOrder); } @@ -94,7 +93,7 @@ public class RefundOrderService { RefundOrder refundOrder = refundOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("退款订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(refundOrder.getMchNo(),refundOrder.getAppId()); + paymentAssistService.initMchAndApp(refundOrder.getAppId()); String ip = Optional.ofNullable(WebServletUtil.getRequest()) .map(JakartaServletUtil::getClientIP) @@ -102,7 +101,6 @@ public class RefundOrderService { // 构建退款参数并发起 var refundParam = new RefundParam(); - refundParam.setMchNo(refundOrder.getMchNo()); refundParam.setAppId(refundOrder.getAppId()); refundParam.setClientIp(ip); refundParam.setReqTime(LocalDateTime.now()); @@ -120,7 +118,7 @@ public class RefundOrderService { RefundOrder refundOrder = refundOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("退款订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(refundOrder.getMchNo(),refundOrder.getAppId()); + paymentAssistService.initMchAndApp(refundOrder.getAppId()); if (!Objects.equals(refundOrder.getStatus(), RefundStatusEnum.FAIL.getCode())) { throw new TradeStatusErrorException("只有失败状态的才可以关闭退款"); } diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java index 301f8d1b..4379d61d 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java @@ -42,7 +42,7 @@ public class TransferOrderService { var transferOrder = transferOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("转账订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(transferOrder.getMchNo(),transferOrder.getAppId()); + paymentAssistService.initMchAndApp(transferOrder.getAppId()); // 同步转账订单状态 transferSyncService.syncTransferOrder(transferOrder); } @@ -54,7 +54,7 @@ public class TransferOrderService { var transferOrder = transferOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("转账订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(transferOrder.getMchNo(),transferOrder.getAppId()); + paymentAssistService.initMchAndApp(transferOrder.getAppId()); String ip = Optional.ofNullable(WebServletUtil.getRequest()) .map(JakartaServletUtil::getClientIP) @@ -62,7 +62,6 @@ public class TransferOrderService { // 构建转账参数并发起 var transferParam = new TransferParam(); - transferParam.setMchNo(transferOrder.getMchNo()); transferParam.setAppId(transferOrder.getAppId()); transferParam.setClientIp(ip); transferParam.setReqTime(LocalDateTime.now()); @@ -79,7 +78,7 @@ public class TransferOrderService { var transferOrder = transferOrderManager.findById(id) .orElseThrow(() -> new TradeNotExistException("转账订单不存在")); // 初始化商户和应用 - paymentAssistService.initMchAndApp(transferOrder.getMchNo(),transferOrder.getAppId()); + paymentAssistService.initMchAndApp(transferOrder.getAppId()); // 更新订单状态 if (!Objects.equals(TransferStatusEnum.FAIL.getCode(), transferOrder.getStatus())){ throw new TradeProcessingException("只有失败状态的才可以关闭"); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java index 4cf285c4..f902a384 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java @@ -73,7 +73,7 @@ public class ReconcileStatementService { @Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class) public ReconcileStatement create(ReconcileCreatParam param) { // 初始化上下文 - paymentAssistService.initMchAndApp(param.getMchNo(), param.getAppId()); + paymentAssistService.initMchAndApp(param.getAppId()); ReconcileStatement statement = new ReconcileStatement() .setName(param.getTitle()) .setReconcileNo(TradeNoGenerateUtil.reconciliation()) @@ -101,7 +101,7 @@ public class ReconcileStatementService { throw new OperationFailException("对账单文件已经下载或上传"); } // 初始化对商户和应用上下文 - paymentAssistService.initMchAndApp(statement.getMchNo(), statement.getAppId()); + paymentAssistService.initMchAndApp(statement.getAppId()); // 构建对账策略 AbsReconcileStrategy reconcileStrategy = PaymentStrategyFactory.create(statement.getChannel(), AbsReconcileStrategy.class); @@ -129,7 +129,7 @@ public class ReconcileStatementService { var statement = reconcileStatementManager.findById(param.getId()) .orElseThrow(() -> new DataNotExistException("未找到对账订单")); - paymentAssistService.initMchAndApp(statement.getMchNo(), statement.getAppId()); + paymentAssistService.initMchAndApp(statement.getAppId()); // 将对账订单写入到上下文中 AbsReconcileStrategy reconcileStrategy = PaymentStrategyFactory.create(statement.getChannel(), AbsReconcileStrategy.class); @@ -192,7 +192,7 @@ public class ReconcileStatementService { if (statement.isCompare()){ throw new OperationFailException("对账单比对已经完成"); } - paymentAssistService.initMchAndApp(statement.getMchNo(), statement.getAppId()); + paymentAssistService.initMchAndApp(statement.getAppId()); // 获取通道交易记录 var channelTrades = reconcileTradeManage.findAllByReconcileId(statement.getId()); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/report/IndexTradeReportService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/report/IndexTradeReportService.java index a9fcfdab..0a392ca4 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/report/IndexTradeReportService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/service/report/IndexTradeReportService.java @@ -40,7 +40,6 @@ public class IndexTradeReportService { var endTime = LocalDateTimeUtil.endOfDay(query.getEndDate()); param.between(MpUtil.getColumnName(PayOrder::getPayTime), startTime, endTime) - .eq(Objects.nonNull(query.getMchNo()), MpUtil.getColumnName(PayOrder::getMchNo), query.getMchNo()) .eq(MpUtil.getColumnName(PayOrder::getStatus), PayStatusEnum.SUCCESS.getCode()); return tradeReportMapper.payTradeReport(param); } @@ -55,7 +54,6 @@ public class IndexTradeReportService { var endTime = LocalDateTimeUtil.endOfDay(query.getEndDate()); param.between(MpUtil.getColumnName(RefundOrder::getFinishTime),startTime, endTime) - .eq(Objects.nonNull(query.getMchNo()), MpUtil.getColumnName(RefundOrder::getMchNo), query.getMchNo()) .eq(MpUtil.getColumnName(RefundOrder::getStatus), RefundStatusEnum.SUCCESS.getCode()); return tradeReportMapper.refundTradeReport(param); } @@ -70,7 +68,6 @@ public class IndexTradeReportService { var endTime = LocalDateTimeUtil.endOfDay(query.getEndDate()); queryWrapper.between(MpUtil.getColumnName(PayOrder::getPayTime),startTime, endTime) - .eq(Objects.nonNull(query.getMchNo()), MpUtil.getColumnName(PayOrder::getMchNo), query.getMchNo()) .eq(MpUtil.getColumnName(PayOrder::getStatus), PayStatusEnum.SUCCESS.getCode()) .groupBy(MpUtil.getColumnName(PayOrder::getChannel)); var list = tradeReportMapper.payChannelReport(queryWrapper); @@ -90,7 +87,6 @@ public class IndexTradeReportService { param.between(MpUtil.getColumnName(RefundOrder::getFinishTime),startTime, endTime) .groupBy(MpUtil.getColumnName(RefundOrder::getChannel)) - .eq(Objects.nonNull(query.getMchNo()), MpUtil.getColumnName(RefundOrder::getMchNo), query.getMchNo()) .eq(MpUtil.getColumnName(RefundOrder::getStatus), RefundStatusEnum.SUCCESS.getCode()); var list = tradeReportMapper.refundChannelReport(param); @@ -110,7 +106,6 @@ public class IndexTradeReportService { param.between(MpUtil.getColumnName(PayOrder::getPayTime),startTime, endTime) .eq(MpUtil.getColumnName(PayOrder::getStatus), PayStatusEnum.SUCCESS.getCode()) - .eq(Objects.nonNull(query.getMchNo()), MpUtil.getColumnName(PayOrder::getMchNo), query.getMchNo()) .groupBy(MpUtil.getColumnName(PayOrder::getMethod)); var list = tradeReportMapper.payMethodReport(param); var dictMap = dictionaryItemService.findEnableByDictCode("pay_method"); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/strategy/AbsChannelTerminalStrategy.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/strategy/AbsChannelTerminalStrategy.java deleted file mode 100644 index 5192cac1..00000000 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/strategy/AbsChannelTerminalStrategy.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.dromara.daxpay.service.strategy; - -import org.dromara.daxpay.service.bo.assist.ChannelTerminalBo; -import org.dromara.daxpay.service.entity.assist.ChannelTerminal; -import org.dromara.daxpay.service.entity.assist.TerminalDevice; - -/** - * 支付终端设备通道管理策略 - * @author xxm - * @since 2025/3/8 - */ -public abstract class AbsChannelTerminalStrategy implements PaymentStrategy{ - - /** - * 报备 - */ - public abstract ChannelTerminalBo submit(TerminalDevice terminalDevice, ChannelTerminal terminalChannel); - - /** - * 注销 - */ - public abstract ChannelTerminalBo cancel(TerminalDevice terminal, ChannelTerminal terminalChannel); - -} diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/OrderSyncTaskService.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/OrderSyncTaskService.java index c7453099..67871e65 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/OrderSyncTaskService.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/OrderSyncTaskService.java @@ -52,7 +52,7 @@ public class OrderSyncTaskService { List payOrders = payOrderManager.queryExpiredOrderNotTenant(); for (PayOrder order : payOrders) { try { - paymentAssistService.initMchAndApp(order.getMchNo(),order.getAppId()); + paymentAssistService.initMchAndApp(order.getAppId()); if (!List.of(PayStatusEnum.WAIT.getCode(),PayStatusEnum.TIMEOUT.getCode()).contains(order.getStatus())){ paySyncService.syncPayOrder(order); } else { @@ -84,7 +84,7 @@ public class OrderSyncTaskService { for (RefundOrder refundOrder : list) { try { // 调用同步方法 - paymentAssistService.initMchAndApp(refundOrder.getMchNo(),refundOrder.getAppId()); + paymentAssistService.initMchAndApp(refundOrder.getAppId()); refundSyncService.syncRefundOrder(refundOrder); } catch (Exception e) { log.warn("退款执行同步失败, ID: {}, 退款号: {}",refundOrder.getId(), refundOrder.getRefundNo(), e); @@ -101,7 +101,7 @@ public class OrderSyncTaskService { for (var transferOrder : list) { try { // 调用同步方法 - paymentAssistService.initMchAndApp(transferOrder.getMchNo(),transferOrder.getAppId()); + paymentAssistService.initMchAndApp(transferOrder.getAppId()); transferSyncService.syncTransferOrder(transferOrder); } catch (Exception e) { log.warn("转账执行同步失败, ID: {}, 转账号: {}",transferOrder.getId(),transferOrder.getTransferNo(), e); diff --git a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/ReconcileTask.java b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/ReconcileTask.java index 741fb2a7..0edf6d2b 100644 --- a/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/ReconcileTask.java +++ b/daxpay-open/daxpay-open-service/src/main/java/org/dromara/daxpay/service/task/ReconcileTask.java @@ -57,14 +57,14 @@ public class ReconcileTask { // 遍历应用下启用的通道 for (MchApp mchApp : mchApps) { // 设置上下文 - paymentAssistService.initMchAndApp(mchApp.getMchNo(), mchApp.getAppId()); + paymentAssistService.initMchAndApp( mchApp.getAppId()); List configs = channelConfigManager.findEnableByAppId(mchApp.getAppId()); for (ChannelConfig config : configs) { try { - log.info("商户: {}, 应用: {} 通道: {} 执行对账任务任务 }", mchApp.getMchNo(), mchApp.getAppId(), config.getChannel()); + log.info("应用: {} 通道: {} 执行对账任务任务 }", mchApp.getAppId(), config.getChannel()); this.reconcileTaskRun(mchApp, config, channelMap); } catch (Exception e) { - log.error("商户: {}, 应用: {} 通道: {} 执行对账任务失败 }", mchApp.getMchNo(), mchApp.getAppId(), config.getChannel(), e); + log.error("应用: {} 通道: {} 执行对账任务失败 }", mchApp.getAppId(), config.getChannel(), e); } } } @@ -79,7 +79,6 @@ public class ReconcileTask { String title = StrUtil.format("【{}】{}-{}", DateUtil.format(DateUtil.yesterday(), DatePattern.NORM_DATE_PATTERN), mchApp.getAppName(), channelMap.get(config.getChannel())); ReconcileCreatParam param = new ReconcileCreatParam() - .setMchNo(mchApp.getMchNo()) .setAppId(mchApp.getAppId()) .setChannel(config.getChannel()) .setDate(LocalDate.now().plusDays(-1))