From b15920d5a66d379c9fd9cb15fcc48f0f078e7c77 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期一, 28 十月 2024 14:52:53 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java |   57 ++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 42 insertions(+), 15 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java
index 622d58d..e31f197 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.dy.common.multiDataSource.DataSourceContext;
+import com.dy.common.util.AES;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.ResultCodeMsg;
@@ -17,10 +18,7 @@
 import com.dy.pipIrrWechat.virtualCard.dto.DtoVirtualCard;
 import com.dy.pipIrrWechat.virtualCard.enums.LastOperateENUM;
 import com.dy.pipIrrWechat.virtualCard.enums.RefundItemStateENUM;
-import com.dy.pipIrrWechat.wechatpay.dto.Code2Session;
-import com.dy.pipIrrWechat.wechatpay.dto.DtoOrder;
-import com.dy.pipIrrWechat.wechatpay.dto.NotifyResource;
-import com.dy.pipIrrWechat.wechatpay.dto.OrderNotify;
+import com.dy.pipIrrWechat.wechatpay.dto.*;
 import com.dy.pipIrrWechat.wechatpay.enums.RefundStatusENUM;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.media.Content;
@@ -48,10 +46,7 @@
 import java.security.SignatureException;
 import java.security.spec.InvalidKeySpecException;
 import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 
 /**
  * @author ZhuBaoMin
@@ -71,9 +66,9 @@
     private final RestTemplateUtil restTemplateUtil;
     private final PayHelper payHelper;
     private final VirtualCardSv virtualCardSv;
-    private final String appid = com.dy.pipIrrWechat.wechatpay.PayInfo.appid;
-    private final String secret = com.dy.pipIrrWechat.wechatpay.PayInfo.secret;
-    private final String mchid = com.dy.pipIrrWechat.wechatpay.PayInfo.mchid;
+    //private final String appid = com.dy.pipIrrWechat.wechatpay.PayInfo.appid;
+    //private final String secret = com.dy.pipIrrWechat.wechatpay.PayInfo.secret;
+    //private final String mchid = com.dy.pipIrrWechat.wechatpay.PayInfo.mchid;
     private final String schema = com.dy.pipIrrWechat.wechatpay.PayInfo.schema;
     private final String signType = com.dy.pipIrrWechat.wechatpay.PayInfo.signType;
     private final String description = com.dy.pipIrrWechat.wechatpay.PayInfo.description;
@@ -111,8 +106,8 @@
         String jsCode = code2Session.getJs_code();
 
         Map<String, Object> queryParams = new HashMap<>();
-        queryParams.put("appid", appid);
-        queryParams.put("secret", secret);
+        queryParams.put("appid", PayInfo.appid);
+        queryParams.put("secret", PayInfo.secret);
         queryParams.put("js_code", jsCode);
         queryParams.put("grant_type", grantType);
         Map<String, String> headerParams = new HashMap<>();
@@ -263,8 +258,8 @@
         }
 
         JSONObject job_body = new JSONObject();
-        job_body.put("appid", appid);
-        job_body.put("mchid", mchid);
+        job_body.put("appid", PayInfo.appid);
+        job_body.put("mchid", PayInfo.mchid);
         job_body.put("description", description);
         job_body.put("out_trade_no", orderNumber);
         job_body.put("attach", DataSourceContext.get());
@@ -535,4 +530,36 @@
         result.put("message", "鎴愬姛");
         return  result;
     }
+
+    /**
+     * 娣诲姞寰俊鏀粯淇℃伅
+     * @param po
+     * @param bindingResult
+     * @return
+     */
+    @PostMapping(path = "add_wechatpay", consumes = MediaType.APPLICATION_JSON_VALUE)
+    public BaseResponse<Boolean> addWechatpay(@RequestBody @Valid Wechatpay po, BindingResult bindingResult) throws Exception {
+        if(bindingResult != null && bindingResult.hasErrors()){
+            return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+        }
+
+        if(paymentSv.getWechatpayByAppId(po.getAppId()) != null) {
+            return BaseResponseUtils.buildErrorMsg("璇ュ井淇℃敮浠樹俊鎭凡缁忓瓨鍦�");
+        }
+
+        SeWechatpay seWechatpay = new SeWechatpay();
+        seWechatpay.setAppId(AES.encrypt(po.getAppId()));
+        seWechatpay.setAppSecret(AES.encrypt(po.getAppSecret()));
+        seWechatpay.setMchId(AES.encrypt(po.getMchId()));
+        seWechatpay.setMchKey(AES.encrypt(po.getMchKey()));
+        seWechatpay.setSerialNo((AES.encrypt(po.getSerialNo())));
+        seWechatpay.setNotifyUrl(AES.encrypt(po.getNotifyUrl()));
+        seWechatpay.setRemarks(po.getRemarks());
+
+        Long rec = Optional.ofNullable(paymentSv.addWechatpay(seWechatpay)).orElse(0L);
+        if(rec == 0) {
+            return BaseResponseUtils.buildFail("娣诲姞寰俊鏀粯淇℃伅澶辫触");
+        }
+        return BaseResponseUtils.buildSuccess(true) ;
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0