33333333333

This commit is contained in:
777
2025-04-08 21:39:04 +08:00
parent 6a80dcedd7
commit 61b77ff6d2
3 changed files with 25 additions and 1 deletions

View File

@@ -22,4 +22,6 @@ public interface OrderLogsService extends IService<OrderLogs> {
void createBaseSuccess(String orderNo, String stepName);
void createAliPayLogs(String orderNo, String inParams, JSONObject jsonObject, boolean success,TrdPayTypeEnum typeEnum,String stepName);
void createAliPayLogs(String orderNo, String url, String params, String body, boolean success, TrdPayTypeEnum typeEnum, String stepName);
}

View File

@@ -60,9 +60,22 @@ public class OrderLogsServiceImpl extends ServiceImpl<OrderLogsMapper, OrderLogs
this.save(orderLogs);
}
@Override
public void createAliPayLogs(String orderNo, String url, String params, String body, boolean success, TrdPayTypeEnum typeEnum, String stepName){
OrderLogs orderLogs = new OrderLogs();
orderLogs.setOrderNo(orderNo);
orderLogs.setStepName(stepName);
orderLogs.setInParams(JSON.toJSONString(new UrlJson(url,params)));
orderLogs.setOutParams(body);
orderLogs.setFlagName(typeEnum.name());
orderLogs.setSuccess(success?"成功":"失败");
this.save(orderLogs);
}
@Data
public static class UrlJson{
private String url;
private String params;
public UrlJson() {
}
@@ -70,6 +83,11 @@ public class OrderLogsServiceImpl extends ServiceImpl<OrderLogsMapper, OrderLogs
public UrlJson(String url) {
this.url = url;
}
public UrlJson(String url, String params) {
this.url = url;
this.params = params;
}
}
}

View File

@@ -132,11 +132,13 @@ public class PayTrdV12Service implements PayTrdService {
TradeResponse response = JacksonUtil.jsonToObj(responseJson, TradeResponse.class);
if (!OutRespCodeEnum.SUCCESS.getCode().equals(response.getRespCode())) {
log.info("第三方支付失败 V12 统一支付失败失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig));
orderLogsService.createAliPayLogs(payOrderInfoDTO.getOrderNo(), createOrderUrl, bizRequestJson, responseJson, false, type, getStepName(wx));
throw new ServiceException("调用支付失败");
}
boolean verifySign = RSAUtil.verifySign(response.getBizData(), response.getSign(), sandPublicKey, response.getSignType()); // 杉德公钥-验签
if (!verifySign) {
log.info("第三方支付失败 V12 统一支付验签失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig));
orderLogsService.createAliPayLogs(payOrderInfoDTO.getOrderNo(), createOrderUrl, bizRequestJson, responseJson, false, type, getStepName(wx));
throw new ServiceException("调用支付失败");
}
String responseKey = RSAUtil.decrypt(response.getEncryptKey(), merchantPrivateKey); // 商户私钥-解密AES-key
@@ -145,8 +147,10 @@ public class PayTrdV12Service implements PayTrdService {
log.info("V12支付请求22222url:{},request:{},body:{}", createOrderUrl,bizRequestJson,JSON.toJSONString(bizResponse));
if (ResultStatusEnum.FAIL.getCode().equals(bizResponse.getResultStatus())) {
log.info("第三方支付失败 V12 统一支付状态失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig));
orderLogsService.createAliPayLogs(payOrderInfoDTO.getOrderNo(), createOrderUrl, bizRequestJson, responseJson, false, type, getStepName(wx));
throw new ServiceException("调用支付失败");
}
orderLogsService.createAliPayLogs(payOrderInfoDTO.getOrderNo(), createOrderUrl, bizRequestJson, responseJson, true, type, getStepName(wx));
return PayReturnResp.createDesan(bizResponse.getCashierUrl());
}
@@ -155,7 +159,7 @@ public class PayTrdV12Service implements PayTrdService {
String bizData = sourceData.get("bizData");
String sign = sourceData.get("sign");
boolean verifySign = RSAUtil.verifySign(bizData, sign, sandPublicKey, AsymmetricTypeEnum.RSA);
if(verifySign) {
if(!verifySign) {
return null;
}
JSONObject bizDataJson = JSON.parseObject(bizData);