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