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 createBaseSuccess(String orderNo, String stepName);
void createAliPayLogs(String orderNo, String inParams, JSONObject jsonObject, boolean success,TrdPayTypeEnum typeEnum,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); 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 @Data
public static class UrlJson{ public static class UrlJson{
private String url; private String url;
private String params;
public UrlJson() { public UrlJson() {
} }
@@ -70,6 +83,11 @@ public class OrderLogsServiceImpl extends ServiceImpl<OrderLogsMapper, OrderLogs
public UrlJson(String url) { public UrlJson(String url) {
this.url = 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); TradeResponse response = JacksonUtil.jsonToObj(responseJson, TradeResponse.class);
if (!OutRespCodeEnum.SUCCESS.getCode().equals(response.getRespCode())) { if (!OutRespCodeEnum.SUCCESS.getCode().equals(response.getRespCode())) {
log.info("第三方支付失败 V12 统一支付失败失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig)); 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("调用支付失败"); throw new ServiceException("调用支付失败");
} }
boolean verifySign = RSAUtil.verifySign(response.getBizData(), response.getSign(), sandPublicKey, response.getSignType()); // 杉德公钥-验签 boolean verifySign = RSAUtil.verifySign(response.getBizData(), response.getSign(), sandPublicKey, response.getSignType()); // 杉德公钥-验签
if (!verifySign) { if (!verifySign) {
log.info("第三方支付失败 V12 统一支付验签失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig)); 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("调用支付失败"); throw new ServiceException("调用支付失败");
} }
String responseKey = RSAUtil.decrypt(response.getEncryptKey(), merchantPrivateKey); // 商户私钥-解密AES-key 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)); log.info("V12支付请求22222url:{},request:{},body:{}", createOrderUrl,bizRequestJson,JSON.toJSONString(bizResponse));
if (ResultStatusEnum.FAIL.getCode().equals(bizResponse.getResultStatus())) { if (ResultStatusEnum.FAIL.getCode().equals(bizResponse.getResultStatus())) {
log.info("第三方支付失败 V12 统一支付状态失败 url={} request={} body={}, payTrdConfig={}", createOrderUrl, bizRequestJson, responseJson, JSON.toJSONString(payTrdConfig)); 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("调用支付失败"); throw new ServiceException("调用支付失败");
} }
orderLogsService.createAliPayLogs(payOrderInfoDTO.getOrderNo(), createOrderUrl, bizRequestJson, responseJson, true, type, getStepName(wx));
return PayReturnResp.createDesan(bizResponse.getCashierUrl()); return PayReturnResp.createDesan(bizResponse.getCashierUrl());
} }
@@ -155,7 +159,7 @@ public class PayTrdV12Service implements PayTrdService {
String bizData = sourceData.get("bizData"); String bizData = sourceData.get("bizData");
String sign = sourceData.get("sign"); String sign = sourceData.get("sign");
boolean verifySign = RSAUtil.verifySign(bizData, sign, sandPublicKey, AsymmetricTypeEnum.RSA); boolean verifySign = RSAUtil.verifySign(bizData, sign, sandPublicKey, AsymmetricTypeEnum.RSA);
if(verifySign) { if(!verifySign) {
return null; return null;
} }
JSONObject bizDataJson = JSON.parseObject(bizData); JSONObject bizDataJson = JSON.parseObject(bizData);