This commit is contained in:
kuang.yifei@iwhalecloud.com 2022-07-21 14:12:12 +08:00
commit 999ab95487
3 changed files with 13 additions and 15 deletions

View File

@ -46,10 +46,10 @@ public interface FinancialMasterService {
/** /**
* 支付成功 * 支付成功
* *
* @param orderNo 订单号 * @param orderMasterCode 订单号
* @param payChannel 支付渠道 * @param payChannel 支付渠道
*/ */
void paySucceeded(String orderNo, String payChannel); void paySucceeded(String orderMasterCode, String payChannel);
/** /**
* 创建主财务单CODE * 创建主财务单CODE

View File

@ -74,15 +74,13 @@ public class FinancialMasterServiceImpl implements FinancialMasterService {
} }
@Override @Override
public void paySucceeded(String orderNo, String payChannel) { public void paySucceeded(String orderMasterCode, String payChannel) {
try { try {
if(orderNo.contains("_")){
orderNo = orderNo.split("_")[0]; financialMasterMapper.paySucceeded(orderMasterCode, PayTypeEnum.valueOf(payChannel.toUpperCase()).getCode());
} financialMasterMapper.updateOrderStatus(orderMasterCode, PayStatus.PAID.getCode());
financialMasterMapper.paySucceeded(orderNo, PayTypeEnum.valueOf(payChannel.toUpperCase()).getCode());
financialMasterMapper.updateOrderStatus(orderNo, PayStatus.PAID.getCode());
} catch (IllegalArgumentException e) { } catch (IllegalArgumentException e) {
logger.warn("OrderNo[{}] Unknown payChannel [{}]!", orderNo, payChannel); logger.warn("OrderNo[{}] Unknown payChannel [{}]!", orderMasterCode, payChannel);
} }
} }

View File

@ -35,7 +35,7 @@ public class PayCallbackService implements CallBackService {
@Override @Override
public void onCallback(Event event) { public void onCallback(Event event) {
logger.debug("pay callback is {}", event); logger.info("pay callback is {}", event);
String data = event.getData(); String data = event.getData();
PayCallback payment = JSON.parseObject(data, PayCallback.class); PayCallback payment = JSON.parseObject(data, PayCallback.class);
Assert.hasText(payment.getOrderNo(), "orderNo is blank !!!"); Assert.hasText(payment.getOrderNo(), "orderNo is blank !!!");
@ -51,12 +51,12 @@ public class PayCallbackService implements CallBackService {
PaymentDTO param = new PaymentDTO(); PaymentDTO param = new PaymentDTO();
param.setId(payment.getId()); param.setId(payment.getId());
param.setStatus(payment.getStatus()); param.setStatus(payment.getStatus());
param.setPayTime(payment.getPayTime()); param.setPayTime(System.currentTimeMillis());
financialMasterService.updatePayment(param); financialMasterService.updatePayment(param);
if (AdapayStatusEnum.succeeded.code.equals(payment.getStatus())) { if (AdapayStatusEnum.succeeded.code.equals(payment.getStatus())) {
// 修改主财务单状态 // 修改主财务单状态
financialMasterService.paySucceeded(payment.getOrderNo(), payment.getPayChannel()); financialMasterService.paySucceeded(payment.getOrderNo().split("_")[0], payment.getPayChannel());
} else { } else {
logger.warn("支付失败 : {}", payment); logger.warn("支付失败 : {}", payment);
} }
@ -67,15 +67,15 @@ public class PayCallbackService implements CallBackService {
@Override @Override
public void onResponse(JSONObject response) { public void onResponse(JSONObject response) {
logger.info("支付结果: {}", response.toJSONString());
// 保存一条支付记录 // 保存一条支付记录
PaymentDTO payment = response.toJavaObject(PaymentDTO.class); PaymentDTO payment = response.toJavaObject(PaymentDTO.class);
String status = payment.getStatus(); String status = payment.getStatus();
payment.setStatus("pending");
financialMasterService.insertPayment(payment); financialMasterService.insertPayment(payment);
if (AdapayStatusEnum.succeeded.code.equals(status)) { if (AdapayStatusEnum.succeeded.code.equals(status)) {
FinancialMaster update = new FinancialMaster(); FinancialMaster update = new FinancialMaster();
update.setOrderMasterCode(payment.getOrderNo()); update.setOrderMasterCode(payment.getOrderNo().split("_")[0]);
update.setPaymentId(payment.getId()); update.setPaymentId(payment.getId());
financialMasterService.updateFinancialMaster(update); financialMasterService.updateFinancialMaster(update);
} else { } else {