|
|
|
@@ -119,32 +119,40 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { |
|
|
|
public WxPayOrder handleWxOrderQuery(WxPayOrder oldRecord,WxOrder order,WxAppinfo appInfo,WxPayAccount payAccount,IdWorker idworker) { |
|
|
|
int wxpaystatus = WxPayOrderServiceHelper.wxOrderPayStatus(oldRecord, order, appInfo, payAccount); |
|
|
|
if (EnumPayStatus.PAY_STATUS_SUCCESS.getCode()==wxpaystatus) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
if (oldRecord.getPayOrderStatus() != EnumPayStatus.PAY_STATUS_SUCCESS.getCode()) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
} |
|
|
|
if (order.getOrderStatus() != EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { |
|
|
|
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); |
|
|
|
wxOrderMapper.updateById(order); |
|
|
|
} |
|
|
|
throw new MallinkException(ErrorCode.PAY_ORDER_PAYING.getCode(),"该订单已经支付,请勿重复支付!"); |
|
|
|
}else if (EnumPayStatus.PAY_STATUS_REFUND.getCode()==wxpaystatus) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REFUND.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
if (oldRecord.getPayOrderStatus() != EnumPayStatus.PAY_STATUS_REFUND.getCode()) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REFUND.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
} |
|
|
|
if (order.getOrderStatus() != EnumOrderStatus.ORDER_STATUS_REFUND_SUCCESS.getCode()) { |
|
|
|
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_REFUND_SUCCESS.getCode()); |
|
|
|
wxOrderMapper.updateById(order); |
|
|
|
} |
|
|
|
throw new MallinkException(ErrorCode.PAY_ORDER_PAYING.getCode(),"该订单已经退款,无法支付!"); |
|
|
|
}else if (EnumPayStatus.PAY_STATUS_CLOSE.getCode()==wxpaystatus) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_CLOSE.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
if (oldRecord.getPayOrderStatus() != EnumPayStatus.PAY_STATUS_CLOSE.getCode()) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_CLOSE.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
} |
|
|
|
if (order.getOrderStatus() != EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) { |
|
|
|
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); |
|
|
|
wxOrderMapper.updateById(order); |
|
|
|
} |
|
|
|
throw new MallinkException(ErrorCode.PAY_ORDER_PAYING.getCode(),"该订单已经关闭,无法支付!"); |
|
|
|
}else if (EnumPayStatus.PAY_STATUS_REVERSE.getCode()==wxpaystatus) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REVERSE.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
if (oldRecord.getPayOrderStatus() != EnumPayStatus.PAY_STATUS_REVERSE.getCode()) { |
|
|
|
oldRecord.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REVERSE.getCode()); |
|
|
|
wxPayOrderMapper.updateById(oldRecord); |
|
|
|
} |
|
|
|
if (order.getOrderStatus() != EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) { |
|
|
|
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); |
|
|
|
wxOrderMapper.updateById(order); |
|
|
|
|