修改支付宝支付

This commit is contained in:
2024-09-18 18:17:28 +08:00
parent 46205fb7ce
commit d7f2d5afc1
2 changed files with 42 additions and 98 deletions

View File

@@ -1545,17 +1545,13 @@ public class PayService {
if (ObjectUtil.isNotNull(orderstatus) && ObjectUtil.isNotEmpty(orderstatus)) {
if ("000000".equals(orderstatus.getCode())) {
if ("TRADE_SUCCESS".equals(orderstatus.getObjData().getState())) {
tbQuickPay.setStatus("0");
tbQuickPay.setUpdateTime(new Date());
tbQuickPayMapper.updateByPrimaryKeySelective(tbQuickPay);
}
}
}
}
}
return Result.success(CodeEnum.SUCCESS, tbQuickPay);
@@ -1927,115 +1923,59 @@ public class PayService {
}
String reqbody = "店铺收款码";
PublicResp<JspayResp> publicResp = thirdPayService.jspay(url, thirdApply.getAppId(), thirdApply.getAppToken(),
reqbody, reqbody, orderInfo.getOrderAmount().multiply(new BigDecimal(100)).longValue(),
payType, thirdApply.getSmallAppid(), userId, ip,
DateUtils.getSsdfTimes(), thirdApply.getStoreId(), backUrl, backUrl);
if("WECHAT".equals(payType) || "ALIPAY".equals(payType)){
PublicResp<JspayResp> publicResp = thirdPayService.jspay(url, thirdApply.getAppId(), thirdApply.getAppToken(),
reqbody, reqbody, orderInfo.getOrderAmount().multiply(new BigDecimal(100)).longValue(),
payType, thirdApply.getSmallAppid(), userId, ip,
DateUtils.getSsdfTimes(), thirdApply.getStoreId(), backUrl, backUrl);
if (ObjectUtil.isNotNull(publicResp) && ObjectUtil.isNotEmpty(publicResp)) {
if ("000000".equals(publicResp.getCode())) {
JspayResp scanpayResp = publicResp.getObjData();
if ("TRADE_SUCCESS".equals(scanpayResp.getState())) {
if (ObjectUtil.isNotNull(publicResp) && ObjectUtil.isNotEmpty(publicResp)) {
if ("000000".equals(publicResp.getCode())) {
JspayResp scanpayResp = publicResp.getObjData();
if ("TRADE_SUCCESS".equals(scanpayResp.getState())) {
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
//处理支付成功的订单
orderInfo.setStatus("closed");
orderInfo.setPayOrderNo(scanpayResp.getPayOrderId());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
//处理支付成功的订单
orderInfo.setStatus("closed");
orderInfo.setPayOrderNo(scanpayResp.getPayOrderId());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
ObjectMapper mapper = new ObjectMapper();
return Result.success(CodeEnum.SUCCESS, mapper.readTree(scanpayResp.getPayInfo()));
ObjectMapper mapper = new ObjectMapper();
return Result.success(CodeEnum.SUCCESS, mapper.readTree(scanpayResp.getPayInfo()));
} else if ("TRADE_AWAIT".equals(scanpayResp.getState())) {
orderInfo.setStatus("paying");
orderInfo.setPayOrderNo(payment.getTradeNumber());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
} else if ("TRADE_AWAIT".equals(scanpayResp.getState())) {
orderInfo.setStatus("paying");
orderInfo.setPayOrderNo(payment.getTradeNumber());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
if ("WECHAT".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("WECHAT");
} else if ("ALIPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("ALIPAY");
} else if ("UNIONPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("UNIONPAY");
}
ObjectMapper mapper = new ObjectMapper();
Map<String,Object> map=new HashMap<>();
map.put("orderInfo",orderInfo);
map.put("payInfo",mapper.readTree(scanpayResp.getPayInfo()));
return Result.success(CodeEnum.PAYING, map);
if ("WECHAT".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("WECHAT");
} else if ("ALIPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("ALIPAY");
} else if ("UNIONPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("UNIONPAY");
}
}
}
}else if("ALIPAY".equals(payType)){
PublicResp<ApppayResp> publicResp= thirdPayService.apppay(url,thirdApply.getAppId(),thirdApply.getAppToken(),
reqbody,reqbody,orderInfo.getOrderAmount().multiply(new BigDecimal(100)).longValue(),
payType,ip,DateUtils.getSsdfTimes(),thirdApply.getStoreId(),backUrl,backUrl);
if (ObjectUtil.isNotNull(publicResp) && ObjectUtil.isNotEmpty(publicResp)) {
if ("000000".equals(publicResp.getCode())) {
ApppayResp scanpayResp = publicResp.getObjData();
if ("TRADE_SUCCESS".equals(scanpayResp.getState())) {
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
//处理支付成功的订单
orderInfo.setStatus("closed");
orderInfo.setPayOrderNo(scanpayResp.getPayOrderId());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
ObjectMapper mapper = new ObjectMapper();
return Result.success(CodeEnum.SUCCESS, mapper.readTree(scanpayResp.getPayInfo()));
ObjectMapper mapper = new ObjectMapper();
} else if ("TRADE_AWAIT".equals(scanpayResp.getState())) {
orderInfo.setStatus("paying");
orderInfo.setPayOrderNo(payment.getTradeNumber());
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
Map<String,Object> map=new HashMap<>();
payment.setTradeNumber(scanpayResp.getPayOrderId());
payment.setUpdatedAt(System.currentTimeMillis());
tbOrderPaymentMapper.updateByPrimaryKeySelective(payment);
if ("WECHAT".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("WECHAT");
} else if ("ALIPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("ALIPAY");
} else if ("UNIONPAY".equals(scanpayResp.getPayType())) {
orderInfo.setPayType("UNIONPAY");
}
ObjectMapper mapper = new ObjectMapper();
Map<String,Object> map=new HashMap<>();
map.put("orderInfo",orderInfo);
map.put("payInfo",mapper.readTree(scanpayResp.getPayInfo()));
return Result.success(CodeEnum.PAYING, map);
}
map.put("orderInfo",orderInfo);
map.put("payInfo",mapper.readTree(scanpayResp.getPayInfo()));
return Result.success(CodeEnum.PAYING, map);
}
}
}
return Result.fail(CodeEnum.FAIL);
}

View File

@@ -197,9 +197,13 @@ public class ThirdPayService {
* @param key
* @return
*/
public PublicResp<OrderReturnResp> returnOrder(String url,String appId, String mchRefundNo, String payOrderId, String mchOrderNo, String refundReason, Long refundAmount, String notifyUrl, String extParam,String key){
OrderRefundReq req=new OrderRefundReq(mchRefundNo, payOrderId, mchOrderNo, refundReason, refundAmount, notifyUrl, extParam);
PublicParam param=new PublicParam(appId,null,SignTypeEnum.MD5.getValue(), null,DateUtils.getSdfTimes(), "1.0", String.valueOf(System.currentTimeMillis()));
public PublicResp<OrderReturnResp> returnOrder(String url,String appId, String mchRefundNo, String payOrderId,
String mchOrderNo, String refundReason, Long refundAmount,
String notifyUrl, String extParam,String key){
OrderRefundReq req=new OrderRefundReq(mchRefundNo, payOrderId, mchOrderNo, refundReason, refundAmount,
notifyUrl, extParam);
PublicParam param=new PublicParam(appId,null,SignTypeEnum.MD5.getValue(), null,DateUtils.getSdfTimes(),
"1.0", String.valueOf(System.currentTimeMillis()));
try {
String str = JSONUtil.toJSONString(sortFields(req));
param.setBizData(str);