数据
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ruoyi.web.controller.cai.app;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.alipay.api.AlipayApiException;
|
||||
import com.alipay.api.domain.AlipayTradeAppPayModel;
|
||||
import com.alipay.api.internal.util.AlipaySignature;
|
||||
@@ -14,10 +15,15 @@ import com.ijpay.core.kit.WxPayKit;
|
||||
import com.ijpay.wxpay.WxPayApi;
|
||||
import com.ijpay.wxpay.model.UnifiedOrderModel;
|
||||
import com.ruoyi.cai.domain.PayConfig;
|
||||
import com.ruoyi.cai.enums.SystemConfigEnum;
|
||||
import com.ruoyi.cai.manager.SystemConfigManager;
|
||||
import com.ruoyi.cai.pay.*;
|
||||
import com.ruoyi.cai.trdpay.TrdPayManager;
|
||||
import com.ruoyi.cai.trdpay.TrdPayProperties;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.common.utils.ServletUtils;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -44,10 +50,53 @@ public class PayController {
|
||||
private PayConfigManager payConfigManager;
|
||||
@Autowired
|
||||
private PayManager payManager;
|
||||
@Autowired
|
||||
private TrdPayProperties trdPayProperties;
|
||||
@Autowired
|
||||
private TrdPayManager trdPayManager;
|
||||
@Autowired
|
||||
private SystemConfigManager systemConfigManager;
|
||||
|
||||
private static final String NOTIFY_WX_URL = "/api/pay/wx/notify";
|
||||
private static final String NOTIFY_ALI_URL = "/api/pay/ali/notify";
|
||||
|
||||
|
||||
@PostMapping(value = "/trdAli")
|
||||
@Operation(summary = "第三方支付宝支付")
|
||||
@Log(title = "第三方支付宝支付", businessType = BusinessType.OTHER, isSaveDb = true)
|
||||
public R<Map<String,Object>> checkPayType(){
|
||||
Integer payInit = systemConfigManager.getSystemConfigOfInt(SystemConfigEnum.COS_DOMAIN);
|
||||
Long userId = LoginHelper.getUserId();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "/trdAli")
|
||||
@Operation(summary = "第三方支付宝支付")
|
||||
@Log(title = "第三方支付宝支付", businessType = BusinessType.OTHER, isSaveDb = true)
|
||||
public R<PayReturnResp> trdWxPay(@RequestBody PayControllerDTO dto){
|
||||
PayOrderInfoDTO payOrderInfo = payManager.getOrderInfo(dto.getOrderNo());
|
||||
if(payOrderInfo == null){
|
||||
return R.fail(600,"支付失败,未找到订单");
|
||||
}
|
||||
try {
|
||||
JSONObject wx = trdPayManager.createOrderWx(payOrderInfo);
|
||||
String code = wx.getString("retCode");
|
||||
if(!"SUCCESS".equals(code)){
|
||||
return R.fail(600,"支付失败!微信支付通道失败!");
|
||||
}
|
||||
String payUrl = wx.getJSONObject("payParams").getString("payUrl");
|
||||
PayReturnResp payTrdReturnResp = new PayReturnResp();
|
||||
payTrdReturnResp.setData(payUrl);
|
||||
return R.ok(payTrdReturnResp);
|
||||
}catch (Exception e){
|
||||
log.error("第三方微信支付失败!",e);
|
||||
return R.fail(600,"支付失败!微信支付通道失败!");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "/wx")
|
||||
@Operation(summary = "微信支付")
|
||||
@Log(title = "微信支付", businessType = BusinessType.OTHER, isSaveDb = true)
|
||||
@@ -196,4 +245,24 @@ public class PayController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "/trd/notify")
|
||||
@Operation(hidden = true)
|
||||
@Log(title = "第三方支付回调", businessType = BusinessType.OTHER, isSaveDb = false)
|
||||
@SaIgnore
|
||||
public String trdNotifyUrl(HttpServletRequest request) {
|
||||
try {
|
||||
Map<String, String> params = AliPayApi.toMap(request);
|
||||
log.info("第三方支付回调:{}",JSON.toJSONString(params));
|
||||
String mchOrderNo = params.get("mchOrderNo");
|
||||
String payOrderId = params.get("payOrderId");
|
||||
String productId = params.get("productId");
|
||||
payManager.callBack(mchOrderNo,payOrderId,params,productId, PayTypeEnum.TRD);
|
||||
return "success";
|
||||
} catch (Exception e) {
|
||||
log.error("第三方支付回调失败!",e);
|
||||
return "failure";
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -109,3 +109,9 @@ springdoc:
|
||||
enabled: false
|
||||
knife4j:
|
||||
enable: false
|
||||
trd:
|
||||
pay:
|
||||
mch-id: 10418
|
||||
wx-product-id: 8000
|
||||
ali-product-id: 8000
|
||||
notify-url-domain: "http://1.12.220.225:9889"
|
||||
|
||||
@@ -245,6 +245,12 @@ cai:
|
||||
websocket: false
|
||||
coin-name: 花钻
|
||||
home-name: 花语
|
||||
trd:
|
||||
pay:
|
||||
mch-id: 10418
|
||||
wx-product-id: 8000
|
||||
ali-product-id: 8000
|
||||
notify-url-domain: "http://1.12.220.225:9889"
|
||||
--- # Actuator 监控端点的配置项
|
||||
management:
|
||||
endpoints:
|
||||
|
||||
Reference in New Issue
Block a user