diff --git a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java index 552b76fd..d27cffff 100644 --- a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java +++ b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java @@ -247,8 +247,8 @@ public class OrderDetailServiceImpl implements OrderDetailService { public void cancel(long orderDetailId) throws BaseAdaPayException { OrderDetail orderDetail = selectById(orderDetailId); Assert.notNull(orderDetail, "找不到对应的子订单"); - if (OrderStatus.CANCEL.code() == orderDetail.getOrderStatus()) { - logger.info("子订单[id={}]已经是取消状态了", orderDetailId); + if (OrderStatus.FINISH.code() == orderDetail.getOrderStatus() || OrderStatus.CANCEL.code() == orderDetail.getOrderStatus()) { + logger.info("子订单[id={}]状态不正确,orderStatus={}", orderDetailId, orderDetail.getOrderStatus()); return; } // 更新子订单状态 diff --git a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderMasterServiceImpl.java b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderMasterServiceImpl.java index ee505e78..da1e4bfa 100644 --- a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderMasterServiceImpl.java +++ b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderMasterServiceImpl.java @@ -332,6 +332,10 @@ public class OrderMasterServiceImpl implements OrderMasterService { Assert.notNull(orderMaster, "找不到对应的订单"); if (Integer.valueOf(1).equals(agree)) { // 师傅同意取消订单 + if (OrderStatus.FINISH.code() == orderMaster.getOrderStatus() || OrderStatus.CANCEL.code() == orderMaster.getOrderStatus()) { + logger.info("订单[id={}]状态不正确,orderStatus={}", orderMasterId, orderMaster.getOrderStatus()); + return; + } // 把主订单状态设置为已取消 updateStatus(orderMasterId, OrderStatus.CANCEL.code()); // 把所有子订单状态设置为已取消