lyhzzz 3 months ago
parent
commit
34a8c40ce8

+ 4 - 16
src/main/java/com/fdkankan/pay/config/PayConfig.java

@@ -31,8 +31,6 @@ import java.util.Set;
 @Configuration
 @Slf4j
 public class PayConfig {
-    public static HashMap<Integer,PaypalConfig> paypalConfigMap = new HashMap<>();
-    public static HashMap<Integer,StripeConfig> stripeConfigMap = new HashMap<>();
 
     @Autowired
     IAliConfigService aliConfigService;
@@ -52,17 +50,9 @@ public class PayConfig {
 
     public void setConfig() {
         log.info("启动初始化支付配置");
-
-        List<PaypalConfig> paypalConfigList = paypalConfigService.list();
-        if (!paypalConfigList.isEmpty()) {
-            log.info("初始化PaypalConfig配置");
-            paypalConfigList.forEach(e -> paypalConfigMap.put(e.getServeId(),e));
-        }
-
         List<StripeConfig> list = stripeConfigService.list();
         if (!list.isEmpty()) {
             log.info("初始化StripeConfig配置");
-            list.forEach(e -> stripeConfigMap.put(e.getServeId(),e));
             list.forEach(e -> Stripe.apiKey = e.getApiKey());
 
         }
@@ -75,9 +65,8 @@ public class PayConfig {
      * https://testeur.4dkankan.com/service/pay/paypal/webhook
      */
     public  void createPayPalWebhooks() {
-        Set<Integer> list = paypalConfigMap.keySet();
-        for (Integer key : list) {
-            PaypalConfig paypalConfig = paypalConfigMap.get(key);
+       List<PaypalConfig> list = paypalConfigService.list();
+        for (PaypalConfig paypalConfig : list) {
             if(StringUtils.isBlank(paypalConfig.getWebhookId())){
                 log.info("--------------项目启动初始化paypal-webhook-------------");
                 try {
@@ -123,9 +112,8 @@ public class PayConfig {
 
     public void createStripeWebhooks(){
         try {
-            Set<Integer> keySet = stripeConfigMap.keySet();
-            for (Integer key : keySet) {
-                StripeConfig stripeConfig = stripeConfigMap.get(key);
+            List<StripeConfig> list = stripeConfigService.list();
+            for (StripeConfig stripeConfig : list) {
                 if(StringUtils.isBlank(stripeConfig.getWebhookId())){
 
                     Stripe.apiKey = stripeConfig.getApiKey();

+ 1 - 1
src/main/java/com/fdkankan/pay/controller/AutopayOrderController.java

@@ -138,7 +138,7 @@ public class AutopayOrderController {
             throw new BusinessException(ResultCode.ORDER_NOT_EXIST);
         }
         if(order.getPayType() == 5){
-            PaypalConfig paypalConfig = PayConfig.paypalConfigMap.get(order.getServeId());
+            PaypalConfig paypalConfig = paypalConfigService.getByServeId(order.getServeId());
             if(paypalConfig == null){
                 throw new BusinessException(ResultCode.PAYPAL_CONFIG_ERROR);
             }

+ 1 - 0
src/main/java/com/fdkankan/pay/service/IStripeConfigService.java

@@ -13,4 +13,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IStripeConfigService extends IService<StripeConfig> {
 
+    StripeConfig getByServeId(Integer serveId);
 }

+ 8 - 0
src/main/java/com/fdkankan/pay/service/impl/StripeConfigServiceImpl.java

@@ -1,5 +1,7 @@
 package com.fdkankan.pay.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.fdkankan.pay.entity.PaypalConfig;
 import com.fdkankan.pay.entity.StripeConfig;
 import com.fdkankan.pay.mapper.IStripeConfigMapper;
 import com.fdkankan.pay.service.IStripeConfigService;
@@ -17,4 +19,10 @@ import org.springframework.stereotype.Service;
 @Service
 public class StripeConfigServiceImpl extends ServiceImpl<IStripeConfigMapper, StripeConfig> implements IStripeConfigService {
 
+    @Override
+    public StripeConfig getByServeId(Integer serveId) {
+        LambdaQueryWrapper<StripeConfig> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(StripeConfig::getServeId,serveId);
+        return this.getOne(wrapper);
+    }
 }

+ 2 - 2
src/main/java/com/fdkankan/pay/util/paypal/sdk/PaypalService.java

@@ -57,7 +57,7 @@ public class PaypalService {
         String orderSn = param.getOrderSn();
         BigDecimal amount = param.getOrderMoney();
         String subject = param.getOrderType();
-        PaypalConfig paypalConfig = PayConfig.paypalConfigMap.get(param.getServeId());
+        PaypalConfig paypalConfig = paypalConfigService.getByServeId(param.getServeId());
         if(paypalConfig == null){
             throw new BusinessException(ResultCode.PAYPAL_CONFIG_ERROR);
         }
@@ -123,7 +123,7 @@ public class PaypalService {
 
             String paymentId = request.getParameter("paymentId");//商品名
             String payerId = request.getParameter("PayerID");//购买数量
-            PaypalConfig paypalConfig = PayConfig.paypalConfigMap.get(order.getServeId());
+            PaypalConfig paypalConfig = paypalConfigService.getByServeId(order.getServeId());
             if(paypalConfig == null){
                 log.error("paypal-callBack--paypalConfig-notexist");
                 return false;

+ 4 - 5
src/main/java/com/fdkankan/pay/util/stripe/StripeService.java

@@ -5,10 +5,7 @@ import com.fdkankan.pay.config.PayConfig;
 import com.fdkankan.pay.entity.*;
 import com.fdkankan.pay.exception.BusinessException;
 import com.fdkankan.pay.response.OpenPayResponse;
-import com.fdkankan.pay.service.IAutopayOrderService;
-import com.fdkankan.pay.service.IStripeCustomerService;
-import com.fdkankan.pay.service.IStripePriceService;
-import com.fdkankan.pay.service.IStripeProductService;
+import com.fdkankan.pay.service.*;
 import com.fdkankan.pay.util.CacheUtil;
 import com.paypal.api.payments.Payment;
 import com.stripe.model.Price;
@@ -42,10 +39,12 @@ public class StripeService {
     IStripeCustomerService stripeCustomerService;
     @Autowired
     IAutopayOrderService autopayOrderService;
+    @Autowired
+    IStripeConfigService stripeConfigService;
 
     public Object openPay(Order param, String ipAddr,String lang) {
 
-        StripeConfig stripeConfig = PayConfig.stripeConfigMap.get(param.getServeId());
+        StripeConfig stripeConfig = stripeConfigService.getByServeId(param.getServeId());
         if(stripeConfig == null){
             throw new BusinessException(ResultCode.PAYPAL_CONFIG_ERROR);
         }