diff --git a/README.md b/README.md
index 5c9258038..0d2d09ffd 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@
# Dromara Dax-Pay(开源支付系统-单商户版)
-> **`multi-xxx` 相关分支为多商户版本, `single-xxx` 相关分支为单商户版本**
+> **`multi-xxx` 相关分支为多商户版本, `single-xxx` 相关分支为单商户版本**, **目前都在最后阶段的开发中, 尽请期待**
## ❗使用须知
diff --git a/_doc/Task.md b/_doc/Task.md
index 369b43a3c..99ed5a1ee 100644
--- a/_doc/Task.md
+++ b/_doc/Task.md
@@ -4,8 +4,8 @@
- [x] 增加延时队列的可视页面
- [ ] 增加首页驾驶舱功能
- [ ] 定时同步任务频次不要太高, 预防产生过多的数据
- - [ ] 转账接收方类型优化
- - [ ] 支付/退款/转账商户订单号根据AppId做隔离
+ - [x] 转账接收方类型优化
+ - [x] 支付/退款/转账商户订单号查询时根据AppId做隔离
- [ ] 云闪付支付通道对接
- [ ] 分账功能
- [x] 分账接收方配置
diff --git a/daxpay-single-channel/daxpay-single-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/config/AliPayConfigService.java b/daxpay-single-channel/daxpay-single-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/config/AliPayConfigService.java
index 751024651..e44b50271 100644
--- a/daxpay-single-channel/daxpay-single-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/config/AliPayConfigService.java
+++ b/daxpay-single-channel/daxpay-single-alipay/src/main/java/org/dromara/daxpay/channel/alipay/service/config/AliPayConfigService.java
@@ -72,7 +72,7 @@ public class AliPayConfigService {
public void save(AliPayConfigParam param) {
AliPayConfig entity = AlipayConfigConvert.CONVERT.toEntity(param);
ChannelConfig channelConfig = entity.toChannelConfig();
- // 判断商户和应用下是否存在该配置
+ // 判断商户应用下是否存在该配置
if (channelConfigManager.existsByAppIdAndChannel(channelConfig.getAppId(), channelConfig.getChannel())){
throw new DataErrorException("该应用下已存在支付宝配置, 请勿重新添加");
}
diff --git a/daxpay-single-channel/daxpay-single-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java b/daxpay-single-channel/daxpay-single-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java
index 4051248a2..b6cf538f6 100644
--- a/daxpay-single-channel/daxpay-single-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java
+++ b/daxpay-single-channel/daxpay-single-union/src/main/java/org/dromara/daxpay/channel/union/service/config/UnionPayConfigService.java
@@ -63,7 +63,7 @@ public class UnionPayConfigService {
public void save(UnionPayConfigParam param) {
UnionPayConfig entity = UnionPayConfigConvert.CONVERT.toEntity(param);
ChannelConfig channelConfig = entity.toChannelConfig();
- // 判断商户和应用下是否存在该配置
+ // 判断商户应用下是否存在该配置
if (channelConfigManager.existsByAppIdAndChannel(channelConfig.getAppId(), channelConfig.getChannel())){
throw new DataErrorException("该应用下已存在云闪付配置, 请勿重新添加");
}
diff --git a/daxpay-single-channel/daxpay-single-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/config/WechatPayConfigService.java b/daxpay-single-channel/daxpay-single-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/config/WechatPayConfigService.java
index db56bab29..fe3d37448 100644
--- a/daxpay-single-channel/daxpay-single-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/config/WechatPayConfigService.java
+++ b/daxpay-single-channel/daxpay-single-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/config/WechatPayConfigService.java
@@ -65,7 +65,7 @@ public class WechatPayConfigService {
public void save(WechatPayConfigParam param) {
WechatPayConfig entity = WechatPayConfigConvert.CONVERT.toEntity(param);
ChannelConfig channelConfig = entity.toChannelConfig();
- // 判断商户和应用下是否存在该配置
+ // 判断商户应用下是否存在该配置
if (channelConfigManager.existsByAppIdAndChannel(channelConfig.getAppId(), channelConfig.getChannel())){
throw new DataErrorException("该应用下已存在微信配置, 请勿重新添加");
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/common/anno/PaymentVerify.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/common/anno/PaymentVerify.java
index 3dae989e1..110269702 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/common/anno/PaymentVerify.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/common/anno/PaymentVerify.java
@@ -12,7 +12,7 @@ import java.lang.annotation.*;
*
* 注解实现的功能(按先后顺序):
* 1. 参数校验
- * 2. 商户和应用信息初始化
+ * 2. 商户应用信息初始化
* 3. 终端信息初始化
* 4. 参数签名校验
* 5. 参数请求时间校验
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/controller/order/TransferOrderController.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/controller/order/TransferOrderController.java
index 9a6525b13..ab5df17e6 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/controller/order/TransferOrderController.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/controller/order/TransferOrderController.java
@@ -49,13 +49,6 @@ public class TransferOrderController {
return Res.ok(queryService.findByTransferNo(transferNo));
}
- @RequestPath("根据商户转账号查询")
- @Operation(summary = "根据商户转账号查询")
- @GetMapping("/findByBizTransferNo")
- public Result findByBizTransferNo(String bizTransferNo){
- return Res.ok(queryService.findByBizTransferNo(bizTransferNo));
- }
-
@RequestPath("查询单条")
@Operation(summary = "查询单条")
@GetMapping("/findById")
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/callback/MerchantCallbackTaskManager.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/callback/MerchantCallbackTaskManager.java
index 9ce8ff162..3d8a703cb 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/callback/MerchantCallbackTaskManager.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/callback/MerchantCallbackTaskManager.java
@@ -34,12 +34,4 @@ public class MerchantCallbackTaskManager extends BaseManager generator = QueryGenerator.generator(query);
return this.page(mpPage, generator);
}
-
- /**
- * 获取数据, 不过滤租户
- */
- @IgnoreTenant
- public Optional findByIdNotTenant(Long taskId) {
- return this.findById(taskId);
- }
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/notify/MerchantNotifyTaskManager.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/notify/MerchantNotifyTaskManager.java
index 17bd92337..f8fbd40f3 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/notify/MerchantNotifyTaskManager.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/notice/notify/MerchantNotifyTaskManager.java
@@ -34,11 +34,4 @@ public class MerchantNotifyTaskManager extends BaseManager findByIdNotTenant(Long taskId) {
- return this.findById(taskId);
- }
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/pay/PayOrderManager.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/pay/PayOrderManager.java
index 9d453f09e..637403882 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/pay/PayOrderManager.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/pay/PayOrderManager.java
@@ -40,8 +40,11 @@ public class PayOrderManager extends BaseManager {
/**
* 根据商户订单号查询
*/
- public Optional findByBizOrderNo(String bizOrderNo) {
- return findByField(PayOrder::getBizOrderNo,bizOrderNo);
+ public Optional findByBizOrderNo(String bizOrderNo, String appId) {
+ return lambdaQuery()
+ .eq(PayOrder::getBizOrderNo,bizOrderNo)
+ .eq(PayOrder::getAppId,appId)
+ .oneOpt();
}
/**
@@ -81,7 +84,7 @@ public class PayOrderManager extends BaseManager {
*/
public BigDecimal getTotalAmount(PayOrderQuery query){
QueryWrapper generator = QueryGenerator.generator(query);
- // 商户和应用AppId
+ // 商户应用AppId
generator.eq(MpUtil.getColumnName(PayOrder::getStatus), PayStatusEnum.SUCCESS.getCode());
return baseMapper.getTotalAmount(generator);
}
@@ -97,11 +100,4 @@ public class PayOrderManager extends BaseManager {
.list();
}
- /**
- * 查询订单, 不过滤租户
- */
- @IgnoreTenant
- public Optional findByIdNotTenant(Long id) {
- return this.findById(id);
- }
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/refund/RefundOrderManager.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/refund/RefundOrderManager.java
index c33231cad..c409af138 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/refund/RefundOrderManager.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/refund/RefundOrderManager.java
@@ -50,8 +50,11 @@ public class RefundOrderManager extends BaseManager findByBizRefundNo(String bizRefundNo) {
- return findByField(RefundOrder::getBizRefundNo, bizRefundNo);
+ public Optional findByBizRefundNo(String bizRefundNo, String appId) {
+ return lambdaQuery()
+ .eq(RefundOrder::getBizRefundNo,bizRefundNo)
+ .eq(RefundOrder::getAppId,appId)
+ .oneOpt();
}
/**
@@ -92,12 +95,4 @@ public class RefundOrderManager extends BaseManager findByIdNotTenant(Long id) {
- return findById(id);
- }
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/transfer/TransferOrderManager.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/transfer/TransferOrderManager.java
index 8b5bcb90f..611f9f014 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/transfer/TransferOrderManager.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/dao/order/transfer/TransferOrderManager.java
@@ -62,8 +62,11 @@ public class TransferOrderManager extends BaseManager findByBizTransferNo(String bizTransferNo) {
- return findByField(TransferOrder::getBizTransferNo, bizTransferNo);
+ public Optional findByBizTransferNo(String bizTransferNo, String appId) {
+ return lambdaQuery()
+ .eq(TransferOrder::getBizTransferNo, bizTransferNo)
+ .eq(TransferOrder::getAppId, appId)
+ .oneOpt();
}
/**
@@ -75,10 +78,4 @@ public class TransferOrderManager extends BaseManager findByIdNotTenant(Long id) {
- return findById(id);
- }
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderQueryService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderQueryService.java
index 1e8545b28..464657f52 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderQueryService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderQueryService.java
@@ -58,19 +58,19 @@ public class PayOrderQueryService {
/**
* 根据商户订单号查询
*/
- public Optional findByBizOrderNo(String bizOrderNo) {
- return payOrderManager.findByBizOrderNo(bizOrderNo);
+ public Optional findByBizOrderNo(String bizOrderNo, String appId) {
+ return payOrderManager.findByBizOrderNo(bizOrderNo, appId);
}
/**
* 根据订单号或商户订单号查询
*/
- public Optional findByBizOrOrderNo(String orderNo, String bizOrderNo) {
+ public Optional findByBizOrOrderNo(String orderNo, String bizOrderNo, String appId) {
if (Objects.nonNull(orderNo)){
return this.findByOrderNo(orderNo);
}
if (Objects.nonNull(bizOrderNo)){
- return this.findByBizOrderNo(bizOrderNo);
+ return this.findByBizOrderNo(bizOrderNo,appId);
}
return Optional.empty();
}
@@ -84,7 +84,7 @@ public class PayOrderQueryService {
throw new ValidationFailedException("业务号或支付单ID不能都为空");
}
// 查询支付单
- return this.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNoeNo())
+ return this.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNoeNo(),param.getAppId())
.map(PayOrderConvert.CONVERT::toResult)
.orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java
index 865acf6e6..007b8a806 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/pay/PayOrderService.java
@@ -30,7 +30,7 @@ public class PayOrderService {
*/
public void sync(Long id) {
PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(payOrder.getAppId());
paySyncService.syncPayOrder(payOrder);
}
@@ -40,7 +40,7 @@ public class PayOrderService {
*/
public void close(Long id) {
PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(payOrder.getAppId());
payCloseService.closeOrder(payOrder,false);
}
@@ -50,7 +50,7 @@ public class PayOrderService {
*/
public void cancel(Long id) {
PayOrder payOrder = payOrderManager.findById(id).orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(payOrder.getAppId());
payCloseService.closeOrder(payOrder,true);
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderQueryService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderQueryService.java
index 1f1e50797..5b51e9e77 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderQueryService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderQueryService.java
@@ -62,11 +62,11 @@ public class RefundOrderQueryService {
/**
* 根据退款号和商户退款号查询
*/
- public Optional findByBizOrRefundNo(String refundNo, String bizRefundNo) {
+ public Optional findByBizOrRefundNo(String refundNo, String bizRefundNo, String appId) {
if (StrUtil.isNotBlank(refundNo)){
return refundOrderManager.findByRefundNo(refundNo);
} else if (StrUtil.isNotBlank(bizRefundNo)){
- return refundOrderManager.findByBizRefundNo(bizRefundNo);
+ return refundOrderManager.findByBizRefundNo(bizRefundNo,appId);
} else {
return Optional.empty();
}
@@ -81,7 +81,7 @@ public class RefundOrderQueryService {
throw new ValidationFailedException("退款号或商户退款号不能都为空");
}
// 查询退款单
- RefundOrder refundOrder = this.findByBizOrRefundNo(param.getRefundNo(), param.getBizRefundNo())
+ RefundOrder refundOrder = this.findByBizOrRefundNo(param.getRefundNo(), param.getBizRefundNo(), param.getAppId())
.orElseThrow(() -> new TradeNotExistException("退款订单不存在"));
return RefundOrderConvert.CONVERT.toResult(refundOrder);
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java
index e5f1fd0a1..57dc06547 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/refund/RefundOrderService.java
@@ -54,7 +54,7 @@ public class RefundOrderService {
var payOrder = payOrderManager.findByOrderNo(param.getOrderNo())
.orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(payOrder.getAppId());
String ip = Optional.ofNullable(WebServletUtil.getRequest())
@@ -78,7 +78,7 @@ public class RefundOrderService {
public void sync(Long id) {
RefundOrder refundOrder = refundOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("退款订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(refundOrder.getAppId());
// 同步退款订单状态
refundSyncService.syncRefundOrder(refundOrder);
@@ -90,7 +90,7 @@ public class RefundOrderService {
public void retry(Long id) {
RefundOrder refundOrder = refundOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("退款订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(refundOrder.getAppId());
String ip = Optional.ofNullable(WebServletUtil.getRequest())
@@ -115,7 +115,7 @@ public class RefundOrderService {
public void close(Long id) {
RefundOrder refundOrder = refundOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("退款订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(refundOrder.getAppId());
if (!Objects.equals(refundOrder.getStatus(), RefundStatusEnum.FAIL.getCode())) {
throw new TradeStatusErrorException("只有失败状态的才可以关闭退款");
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderQueryService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderQueryService.java
index 640fd87d6..63bd1d8eb 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderQueryService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderQueryService.java
@@ -59,23 +59,14 @@ public class TransferOrderQueryService {
}
- /**
- * 根据转账号查询
- */
- public TransferOrderVo findByBizTransferNo(String bizTransferNo){
- return transferOrderManager.findByBizTransferNo(bizTransferNo).map(TransferOrder::toResult)
- .orElseThrow(() -> new DataNotExistException("转账订单信息不存在"));
-
- }
-
/**
* 根据转账号和商户转账号查询
*/
- public Optional findByBizOrTransferNo(String transferNo, String bizTransferNo) {
+ public Optional findByBizOrTransferNo(String transferNo, String bizTransferNo,String appId) {
if (StrUtil.isNotBlank(transferNo)){
return transferOrderManager.findByTransferNo(transferNo);
} else if (StrUtil.isNotBlank(bizTransferNo)){
- return transferOrderManager.findByBizTransferNo(bizTransferNo);
+ return transferOrderManager.findByBizTransferNo(bizTransferNo,appId);
} else {
return Optional.empty();
}
@@ -91,7 +82,7 @@ public class TransferOrderQueryService {
throw new ValidationFailedException("转账号或商户转账号不能都为空");
}
// 查询转账单
- TransferOrder transferOrder = this.findByBizOrTransferNo(param.getTransferNo(), param.getBizTransferNo())
+ TransferOrder transferOrder = this.findByBizOrTransferNo(param.getTransferNo(), param.getBizTransferNo(), param.getAppId())
.orElseThrow(() -> new TradeNotExistException("转账订单不存在"));
return TransferOrderConvert.CONVERT.toResult(transferOrder);
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java
index a1a42f277..14f4eb115 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/order/transfer/TransferOrderService.java
@@ -41,7 +41,7 @@ public class TransferOrderService {
public void sync(Long id) {
var transferOrder = transferOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("转账订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(transferOrder.getAppId());
// 同步转账订单状态
transferSyncService.syncTransferOrder(transferOrder);
@@ -53,7 +53,7 @@ public class TransferOrderService {
public void retry(Long id) {
var transferOrder = transferOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("转账订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(transferOrder.getAppId());
String ip = Optional.ofNullable(WebServletUtil.getRequest())
@@ -77,7 +77,7 @@ public class TransferOrderService {
public void close(Long id) {
var transferOrder = transferOrderManager.findById(id)
.orElseThrow(() -> new TradeNotExistException("转账订单不存在"));
- // 初始化商户和应用
+ // 初始化商户应用
paymentAssistService.initMchApp(transferOrder.getAppId());
// 更新订单状态
if (!Objects.equals(TransferStatusEnum.FAIL.getCode(), transferOrder.getStatus())){
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java
index e609930b2..a3056a6a4 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/reconcile/ReconcileStatementService.java
@@ -99,7 +99,7 @@ public class ReconcileStatementService {
if (statement.isDownOrUpload()){
throw new OperationFailException("对账单文件已经下载或上传");
}
- // 初始化对商户和应用上下文
+ // 初始化对商户应用上下文
paymentAssistService.initMchApp(statement.getAppId());
// 构建对账策略
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayAssistService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayAssistService.java
index d4c87a577..45376bcc7 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayAssistService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayAssistService.java
@@ -94,9 +94,9 @@ public class PayAssistService {
/**
* 校验支付状态,支付成功则返回,支付失败则抛出对应的异常
*/
- public PayOrder getOrderAndCheck(String bizOrderNo) {
+ public PayOrder getOrderAndCheck(PayParam param) {
// 根据订单查询支付记录
- PayOrder payOrder = payOrderQueryService.findByBizOrderNo(bizOrderNo)
+ PayOrder payOrder = payOrderQueryService.findByBizOrderNo(param.getBizOrderNo(), param.getAppId())
.orElse(null);
if (Objects.nonNull(payOrder)) {
// 待支付
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayCloseService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayCloseService.java
index 7277f4445..d5733b53b 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayCloseService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayCloseService.java
@@ -46,7 +46,7 @@ public class PayCloseService {
* 关闭支付
*/
public void close(PayCloseParam param){
- PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo())
+ PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo(), param.getAppId())
.orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
this.closeOrder(payOrder, param.isUseCancel());
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayService.java
index 0dfbf328b..9a94b659f 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PayService.java
@@ -55,7 +55,7 @@ public class PayService {
}
try {
// 查询并检查订单
- PayOrder payOrder = payAssistService.getOrderAndCheck(payParam.getBizOrderNo());
+ PayOrder payOrder = payAssistService.getOrderAndCheck(payParam);
// 走首次下单逻辑还是重复下档逻辑
if (Objects.isNull(payOrder)){
return this.firstPay(payParam);
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PaySyncService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PaySyncService.java
index f042fc9a9..a275bcdaf 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PaySyncService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/pay/PaySyncService.java
@@ -59,7 +59,7 @@ public class PaySyncService {
*/
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
public PaySyncResult sync(PaySyncParam param) {
- PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo())
+ PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo(), param.getAppId())
.orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
// 执行订单同步逻辑
return this.syncPayOrder(payOrder);
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundService.java
index bff084e59..18596bfec 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundService.java
@@ -76,7 +76,7 @@ public class RefundService {
}
try {
// 判断是否是首次发起退款
- Optional refund = refundOrderManager.findByBizRefundNo(param.getBizRefundNo());
+ Optional refund = refundOrderManager.findByBizRefundNo(param.getBizRefundNo(), param.getAppId());
if (refund.isPresent()){
return this.repeatRefund(refund.get(),param);
} else {
@@ -93,7 +93,7 @@ public class RefundService {
private RefundResult firstRefund(RefundParam param) {
// 获取支付订单
- PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo())
+ PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(param.getOrderNo(), param.getBizOrderNo(), param.getAppId())
.orElseThrow(() -> new DataNotExistException("支付订单不存在"));
// 检查退款参数
refundAssistService.checkAndParam(param, payOrder);
@@ -146,7 +146,7 @@ public class RefundService {
throw new TradeStatusErrorException("只有失败状态的才可以重新发起退款");
}
// 获取支付订单
- PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(refundOrder.getOrderNo(), refundOrder.getBizOrderNo())
+ PayOrder payOrder = payOrderQueryService.findByBizOrOrderNo(refundOrder.getOrderNo(), refundOrder.getBizOrderNo(), refundOrder.getAppId())
.orElseThrow(() -> new TradeNotExistException("支付订单不存在"));
AbsRefundStrategy refundStrategy = PaymentStrategyFactory.create(refundOrder.getChannel(), AbsRefundStrategy.class);
// 设置退款订单对象
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundSyncService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundSyncService.java
index ff685344b..b76d63f4f 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundSyncService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/refund/RefundSyncService.java
@@ -52,7 +52,7 @@ public class RefundSyncService {
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
public RefundSyncResult sync(RefundSyncParam param){
// 先获取退款单
- RefundOrder refundOrder = refundOrderQueryService.findByBizOrRefundNo(param.getRefundNo(), param.getBizRefundNo())
+ RefundOrder refundOrder = refundOrderQueryService.findByBizOrRefundNo(param.getRefundNo(), param.getBizRefundNo(),param.getAppId())
.orElseThrow(() -> new TradeNotExistException("未查询到退款订单"));
return this.syncRefundOrder(refundOrder);
}
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferService.java
index 47e6f693b..09d25a813 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferService.java
@@ -57,7 +57,7 @@ public class TransferService {
}
try {
// 判断是否是首次发起转账
- var transferOrder = transferOrderManager.findByBizTransferNo(param.getBizTransferNo());
+ var transferOrder = transferOrderManager.findByBizTransferNo(param.getBizTransferNo(), param.getAppId());
if (transferOrder.isPresent()){
return this.repeatTransfer(transferOrder.get(),param);
} else {
diff --git a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferSyncService.java b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferSyncService.java
index da4d2c7b1..9da3cf530 100644
--- a/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferSyncService.java
+++ b/daxpay-single/daxpay-single-service/src/main/java/org/dromara/daxpay/service/service/trade/transfer/TransferSyncService.java
@@ -53,7 +53,7 @@ public class TransferSyncService {
* 转账同步接口
*/
public TransferSyncResult sync(TransferSyncParam param) {
- TransferOrder transferOrder = transferOrderService.findByBizOrTransferNo(param.getTransferNo(), param.getBizTransferNo())
+ TransferOrder transferOrder = transferOrderService.findByBizOrTransferNo(param.getTransferNo(), param.getBizTransferNo(),param.getAppId())
.orElseThrow(() -> new TradeNotExistException("退款订单不存在"));
// 执行订单同步逻辑
return this.syncTransferOrder(transferOrder);