diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index af1860ea8..166f552fe 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -158,4 +158,7 @@ public interface WxOrderService { WxOrderCouponPressVo detailPressVo(WxOrder record); void updateStatusByPressCouponId(Long couponId,String tenantId,int orderStatus); + + void updateOrderStatus(WxOrder order); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 72e3a180e..2e1014317 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -950,6 +950,33 @@ public class WxOrderServiceImpl implements WxOrderService { } break; } + case ORDER_STATUS_COOPERATING_OVERTIME: { + try { + stockBack(updateOrder); + } catch (Exception e) { + logger.error("库存+1失败, e:" + e.getMessage()); + throw new MallinkException(ErrorCode.REMAIN_BACK_FAIL); + } + break; + } + case ORDER_STATUS_COOPERATING_CANCEL: { + try { + stockBack(updateOrder); + } catch (Exception e) { + logger.error("库存+1失败, e:" + e.getMessage()); + throw new MallinkException(ErrorCode.REMAIN_BACK_FAIL); + } + break; + } + case ORDER_STATUS_COOPERATING_COMPLETE: { + try { + stockBack(updateOrder); + } catch (Exception e) { + logger.error("库存+1失败, e:" + e.getMessage()); + throw new MallinkException(ErrorCode.REMAIN_BACK_FAIL); + } + break; + } } updateOrder.setOrderStatus(enumOrderStatus.getCode()); updateOrder.setUpdateDate(currentDate); @@ -963,6 +990,23 @@ public class WxOrderServiceImpl implements WxOrderService { return ret; } + + @Override + @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) + public void updateOrderStatus(WxOrder updateOrder) { + if (updateOrder.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_OVERTIME.getCode()) || + updateOrder.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_CANCEL.getCode()) || + updateOrder.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode()) || + updateOrder.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_FAILD.getCode())) { + try { + stockBack(updateOrder); + } catch (Exception e) { + logger.error("拼团库存+1失败, e:" + e.getMessage()); + throw new MallinkException(ErrorCode.REMAIN_BACK_FAIL); + } + } + } + /** * 微信关闭订单 */ diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java index ee4f58865..4aabceb1c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java @@ -1281,7 +1281,12 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { // 修改订单状态 try { - wxOrderService.updateOrderStatus(order, EnumOrderStatus.ORDER_STATUS_REFUND_SUCCESS); + //拼团 非0为拼团券 + if (!order.getOrderGroupId().equals(0L)) { + wxOrderService.updateOrderStatus(order); + } else { + wxOrderService.updateOrderStatus(order, EnumOrderStatus.ORDER_STATUS_REFUND_SUCCESS); + } } catch (Exception e) { logger.error(e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL);