修改全额退款时支付状态修改为已退款

This commit is contained in:
dingzhiwei 2021-11-18 12:17:41 +08:00
parent f5b8cfd592
commit 776cfe472b
2 changed files with 2 additions and 1 deletions

View File

@ -84,7 +84,7 @@ public class RefundOrderService extends ServiceImpl<RefundOrderMapper, RefundOrd
return false;
}
//2. 更新订单表数据
//2. 更新订单表数据更新退款次数,退款状态,如全额退款更新支付状态为已退款
RefundOrder refundOrder = getOne(RefundOrder.gw().select(RefundOrder::getPayOrderId, RefundOrder::getRefundAmount).eq(RefundOrder::getRefundOrderId, refundOrderId));
int updateCount = payOrderMapper.updateRefundAmountAndCount(refundOrder.getPayOrderId(), refundOrder.getRefundAmount());
if(updateCount <= 0){

View File

@ -91,6 +91,7 @@
update t_pay_order
set refund_times = refund_times + 1, <!-- 退款次数 +1 -->
refund_state = CASE WHEN refund_amount + #{currentRefundAmount} >= amount THEN 2 ELSE 1 END, <!-- 更新是否已全额退款。 此更新需在refund_amount更新之前否则需要去掉累加逻辑 -->
`state` = CASE WHEN refund_state = 2 THEN 5 ELSE 2 END, <!-- 更新是否已退款。 此更新需在refund_state更新之后如果全额退款则修改支付状态为已退款 -->
refund_amount = refund_amount + #{currentRefundAmount} <!-- 退款金额累加 -->
where
pay_order_id = #{payOrderId} and `state` = 2 <!-- 订单号 & 成功状态的可退款 -->