liujc 1 rok pred
rodič
commit
d0348f748b

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/open/UserPaymentClient.java

@@ -93,7 +93,7 @@ public class UserPaymentClient {
     }
 
     @ApiOperation(value = "用户付款", notes = "用户付款")
-    @PostMapping("/executePayment")
+    @PostMapping("/executePayment/v2")
     public R<UserPaymentOrderWrapper.PaymentReq> executePayment(@Validated @RequestBody UserPaymentOrderWrapper.PaymentOrderReqConfig config) {
 
         // 用户登录状态校验

+ 1 - 1
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/UserOrderController.java

@@ -300,7 +300,7 @@ public class UserOrderController extends BaseController {
     }
 
     @ApiOperation(value = "用户付款", notes = "用户付款")
-    @PostMapping("/orderPay/v2")
+    @PostMapping("/executePayment/v2")
     public R<UserPaymentOrderWrapper.PaymentReq> executePaymentV2(@Validated @RequestBody UserPaymentOrderVo.PaymentReqConfig config,HttpServletRequest request) {
         // 设置下单用户信息
         SysUser sysUser = sysUserFeignService.queryUserInfo();

+ 71 - 0
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/open/UserPaymentClient.java

@@ -0,0 +1,71 @@
+package com.yonge.cooleshow.student.controller.open;
+
+import cn.hutool.extra.servlet.ServletUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.huifu.adapay.core.AdapayCore;
+import com.huifu.adapay.core.util.AdapaySign;
+import com.microsvc.toolkit.common.response.template.R;
+import com.microsvc.toolkit.common.webportal.exception.BizException;
+import com.microsvc.toolkit.config.jwt.utils.JwtUserInfo;
+import com.microsvc.toolkit.middleware.payment.common.api.PaymentServiceContext;
+import com.microsvc.toolkit.middleware.payment.common.api.entity.PaymentResp;
+import com.microsvc.toolkit.middleware.payment.common.api.entity.RefundResp;
+import com.yeepay.g3.sdk.yop.encrypt.DigitalEnvelopeDTO;
+import com.yeepay.g3.sdk.yop.utils.DigitalEnvelopeUtils;
+import com.yeepay.g3.sdk.yop.utils.RSAKeyUtils;
+import com.yonge.cooleshow.biz.dal.entity.PaymentMerchantConfig;
+import com.yonge.cooleshow.biz.dal.entity.TenantMember;
+import com.yonge.cooleshow.biz.dal.entity.UserOrderRefundBill;
+import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
+import com.yonge.cooleshow.biz.dal.service.*;
+import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
+import com.yonge.cooleshow.common.enums.EPayerType;
+import com.yonge.cooleshow.student.vo.UserPaymentOrderVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.security.PrivateKey;
+import java.security.PublicKey;
+import java.util.Date;
+import java.util.Objects;
+
+@Slf4j
+@RestController
+@RequestMapping("/open/userOrder")
+@Api(tags = "开放权限接口-支付回调")
+public class UserPaymentClient {
+
+    @Autowired
+    private UserPaymentCoreService userPaymentCoreService;
+
+    @ApiOperation(value = "用户付款", notes = "用户付款")
+    @PostMapping("/executePayment/v2")
+    public R<UserPaymentOrderWrapper.PaymentReq> executePayment(@Validated @RequestBody UserPaymentOrderVo.PaymentReqConfig config, HttpServletRequest request) {
+        // 设置下单用户信息
+
+
+        // 用户下单请求
+        UserPaymentOrderWrapper.PaymentOrderReqConfig reqConfig = UserPaymentOrderWrapper.PaymentOrderReqConfig.from(config.jsonString());
+
+        reqConfig.setIp(ServletUtil.getClientIP(request));
+        // 创建用户支付数据
+        UserPaymentOrderWrapper.PaymentReq paymentConfig = userPaymentCoreService.executePayment(JwtUserInfo.builder()
+                .userId(config.getUserId()).clientType(ClientEnum.TENANT.getCode()).build(), reqConfig);
+        if (Objects.isNull(paymentConfig)) {
+            throw BizException.from("付款失败");
+        }
+
+        return R.from(paymentConfig);
+    }
+
+}

+ 1 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/UserOrderController.java

@@ -272,7 +272,7 @@ public class UserOrderController extends BaseController {
     }
 
     @ApiOperation(value = "用户付款", notes = "用户付款")
-    @PostMapping("/orderPay/v2")
+    @PostMapping("/executePayment/v2")
     public R<UserPaymentOrderWrapper.PaymentReq> executePaymentV2(@Validated @RequestBody UserPaymentOrderVo.PaymentReqConfig config,HttpServletRequest request) {
         // 设置下单用户信息
         SysUser sysUser = sysUserFeignService.queryUserInfo();

+ 55 - 0
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/open/UserPaymentClient.java

@@ -0,0 +1,55 @@
+package com.yonge.cooleshow.teacher.controller.open;
+
+import com.microsvc.toolkit.common.response.template.R;
+import com.microsvc.toolkit.common.webportal.exception.BizException;
+import com.microsvc.toolkit.config.jwt.utils.JwtUserInfo;
+import com.yonge.cooleshow.biz.dal.service.UserPaymentCoreService;
+import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Objects;
+
+@Slf4j
+@RestController
+@RequestMapping("/open/userOrder")
+@Api(tags = "开放权限接口-支付回调")
+public class UserPaymentClient {
+
+    @Autowired
+    private UserPaymentCoreService userPaymentCoreService;
+
+    @ApiOperation(value = "用户付款", notes = "用户付款")
+    @PostMapping("/executePayment")
+    public R<UserPaymentOrderWrapper.PaymentReq> executePayment(@Validated @RequestBody UserPaymentOrderWrapper.PaymentOrderReqConfig config) {
+
+        // 用户登录状态校验
+        if (StringUtils.isBlank(config.getUserId())) {
+            throw BizException.from("用户未登录");
+        }
+
+        // 用户下单请求
+        UserPaymentOrderWrapper.PaymentOrderReqConfig reqConfig = UserPaymentOrderWrapper.PaymentOrderReqConfig.from(config.jsonString());
+
+        JwtUserInfo<Object> userInfo = JwtUserInfo.builder()
+            .userId(config.getUserId())
+            .clientType(config.getUserType().getCode())
+            .build();
+        // 创建用户支付数据
+        UserPaymentOrderWrapper.PaymentReq paymentConfig = userPaymentCoreService.executePayment(userInfo, reqConfig);
+        if (Objects.isNull(paymentConfig)) {
+            throw BizException.from("用户支付请求错误");
+        }
+
+        return R.from(paymentConfig);
+    }
+
+}

+ 1 - 1
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/UserOrderController.java

@@ -92,7 +92,7 @@ public class UserOrderController {
     }
 
     @ApiOperation(value = "用户付款", notes = "用户付款")
-    @PostMapping("/orderPay/v2")
+    @PostMapping("/executePayment/v2")
     public R<UserPaymentOrderWrapper.PaymentReq> executePayment(@Validated @RequestBody UserPaymentOrderVo.PaymentReqConfig config, HttpServletRequest request) {
         // 设置下单用户信息
         SysUser sysUser = sysUserFeignService.queryUserInfo();

+ 56 - 0
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/open/UserPaymentClient.java

@@ -0,0 +1,56 @@
+package com.yonge.cooleshow.tenant.controller.open;
+
+import cn.hutool.extra.servlet.ServletUtil;
+import com.alibaba.fastjson.JSON;
+import com.microsvc.toolkit.common.response.template.R;
+import com.microsvc.toolkit.common.webportal.exception.BizException;
+import com.microsvc.toolkit.config.jwt.utils.JwtUserInfo;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.entity.TenantStaff;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
+import com.yonge.cooleshow.biz.dal.service.UserPaymentCoreService;
+import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
+import com.yonge.cooleshow.tenant.vo.UserPaymentOrderVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Objects;
+
+@Slf4j
+@RestController
+@RequestMapping("/open/userOrder")
+@Api(tags = "开放权限接口-支付回调")
+public class UserPaymentClient {
+
+    @Autowired
+    private UserPaymentCoreService userPaymentCoreService;
+
+    @ApiOperation(value = "用户付款", notes = "用户付款")
+    @PostMapping("/executePayment/v2")
+    public R<UserPaymentOrderWrapper.PaymentReq> executePayment(@Validated @RequestBody UserPaymentOrderVo.PaymentReqConfig config, HttpServletRequest request) {
+        // 设置下单用户信息
+
+
+        // 用户下单请求
+        UserPaymentOrderWrapper.PaymentOrderReqConfig reqConfig = UserPaymentOrderWrapper.PaymentOrderReqConfig.from(config.jsonString());
+
+        reqConfig.setIp(ServletUtil.getClientIP(request));
+        // 创建用户支付数据
+        UserPaymentOrderWrapper.PaymentReq paymentConfig = userPaymentCoreService.executePayment(JwtUserInfo.builder()
+                .userId(config.getUserId()).clientType(ClientEnum.TENANT.getCode()).build(), reqConfig);
+        if (Objects.isNull(paymentConfig)) {
+            throw BizException.from("付款失败");
+        }
+
+        return R.from(paymentConfig);
+    }
+}