123
This commit is contained in:
@@ -14,8 +14,6 @@ public class SettingGoodsVo {
|
||||
private Integer hasWechatPay = 1;
|
||||
@Schema(description = "支付宝是否放在第一个 1-是 0-否")
|
||||
private Integer alipayFirst = 1;
|
||||
@Schema(description = "是否使用第四方支付 1-是 0-否")
|
||||
private Integer useTrdPay = 1;
|
||||
@Schema(description = "支付设置")
|
||||
private List<Goods> goods;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,25 @@
|
||||
package com.ruoyi.cai.pay;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class PayReturnResp {
|
||||
private String data;
|
||||
@Schema(description = "H5,APP")
|
||||
private String appType;
|
||||
|
||||
public static PayReturnResp createH5(String data){
|
||||
PayReturnResp resp = new PayReturnResp();
|
||||
resp.setData(data);
|
||||
resp.setAppType("H5");
|
||||
return resp;
|
||||
}
|
||||
|
||||
public static PayReturnResp createApp(String data){
|
||||
PayReturnResp resp = new PayReturnResp();
|
||||
resp.setData(data);
|
||||
resp.setAppType("APP");
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.PayTrdConfig;
|
||||
import com.ruoyi.cai.pay.PayOrderInfoDTO;
|
||||
import com.ruoyi.cai.pay.PayReturnResp;
|
||||
|
||||
/**
|
||||
* 四方支付配置Service接口
|
||||
@@ -12,7 +13,7 @@ import com.ruoyi.cai.pay.PayOrderInfoDTO;
|
||||
* @date 2024-11-25
|
||||
*/
|
||||
public interface PayTrdConfigService extends IService<PayTrdConfig> {
|
||||
String createOrderAli(PayOrderInfoDTO dto);
|
||||
PayReturnResp createOrderAli(PayOrderInfoDTO dto);
|
||||
|
||||
JSONObject queryOrder(String orderNo, String trdPayType);
|
||||
|
||||
|
||||
@@ -8,11 +8,13 @@ import com.ruoyi.cai.domain.PayTrdConfig;
|
||||
import com.ruoyi.cai.mapper.PayTrdConfigMapper;
|
||||
import com.ruoyi.cai.pay.PayManager;
|
||||
import com.ruoyi.cai.pay.PayOrderInfoDTO;
|
||||
import com.ruoyi.cai.pay.PayReturnResp;
|
||||
import com.ruoyi.cai.pay.PayTypeEnum;
|
||||
import com.ruoyi.cai.service.PayTrdConfigService;
|
||||
import com.ruoyi.cai.trdpay.TrdPayManager;
|
||||
import com.ruoyi.cai.trdpay.TrdPayTypeEnum;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.tencentcloudapi.gme.v20180711.models.AppStatisticsItem;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -36,7 +38,7 @@ public class PayTrdConfigServiceImpl extends ServiceImpl<PayTrdConfigMapper, Pay
|
||||
private PayManager payManager;
|
||||
|
||||
@Override
|
||||
public String createOrderAli(PayOrderInfoDTO dto){
|
||||
public PayReturnResp createOrderAli(PayOrderInfoDTO dto){
|
||||
PayTrdConfig payTrdConfig = getEnableStatus();
|
||||
if(payTrdConfig == null){
|
||||
throw new ServiceException("未开启支付,请联系客服");
|
||||
@@ -55,13 +57,19 @@ public class PayTrdConfigServiceImpl extends ServiceImpl<PayTrdConfigMapper, Pay
|
||||
log.info("第三方支付失败 V1统一支付失败失败 dto={}, payTrdConfig={}, typeEnum={}", JSON.toJSONString(dto), JSON.toJSONString(payTrdConfig),JSON.toJSONString(typeEnum));
|
||||
throw new ServiceException("调用支付失败");
|
||||
}
|
||||
return jsonObject.getJSONObject("payParams").getString("payUrl");
|
||||
String payUrl = jsonObject.getJSONObject("payParams").getString("payUrl");
|
||||
return PayReturnResp.createH5(payUrl);
|
||||
}else if(typeEnum == TrdPayTypeEnum.V2){
|
||||
if(!"0".equals(jsonObject.getString("retCode"))){
|
||||
log.info("第三方支付失败 V2统一支付失败失败 dto={}, payTrdConfig={}, typeEnum={}", JSON.toJSONString(dto), JSON.toJSONString(payTrdConfig),JSON.toJSONString(typeEnum));
|
||||
throw new ServiceException("调用支付失败");
|
||||
}
|
||||
return JSON.toJSONString(jsonObject);
|
||||
String payMethod = jsonObject.getString("payMethod");
|
||||
if("alipayApp".equals(payMethod)){
|
||||
String appStr = jsonObject.getJSONObject("payParams").getString("appStr");
|
||||
return PayReturnResp.createApp(appStr);
|
||||
}
|
||||
return PayReturnResp.createH5(JSON.toJSONString(jsonObject));
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user