Browse Source

生产中万里牛已关闭的订单同步调整

fgd 1 year ago
parent
commit
69414d65af
1 changed files with 18 additions and 14 deletions
  1. 18 14
      sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

+ 18 - 14
sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

@@ -231,6 +231,24 @@ public class WlnOrderServiceImpl implements WlnOrderService {
                 || Objects.equals(orderInfo.getStatus(), OrderStatusEnum.IN_PRODUCTION.getKey())
                 || Objects.equals(orderInfo.getStatus(), OrderStatusEnum.COMPLETION_PRODUCTION.getKey())
                 || Objects.equals(orderInfo.getStatus(), OrderStatusEnum.HAVE_BEEN_SHIPPED.getKey())) {
+            // 万里牛状态异常:订单关闭的订单类型修改为无理由并生成对账单
+            if (Objects.equals(orderInfo.getStatus(), OrderStatusEnum.IN_PRODUCTION.getKey())
+                    && wlnOrder.getInteger("process_status") == 10
+                    && ObjectUtil.notEqual(orderInfo.getClassify(), OrderClassifyEnum.NO_REASON_ORDER.getKey())) {
+                List<OrderInfo> updateOrderList = context.getUpdateOrderList();
+                List<OrderInfo> saveStatementOrderList = context.getSaveStatementOrderList();
+                orderInfo.setWlnStatus(wlnOrder.getInteger("process_status"));
+                orderInfo.setWlnModifyTime(wlnOrder.getDate("modify_time"));
+                orderInfo.setWlnModifyTimestamp(wlnOrder.getLong("modify_time"));
+                orderInfo.setStatus(OrderStatusEnum.COMPLETION_PRODUCTION.getKey());
+                orderInfo.setClassify(OrderClassifyEnum.NO_REASON_ORDER.getKey());
+                orderInfo.setShippingTime(new Date());
+
+                // 保存对账单列表
+                saveStatementOrderList.add(orderInfo);
+                updateOrderList.add(orderInfo);
+            }
+
             return;
         }
 
@@ -245,7 +263,6 @@ public class WlnOrderServiceImpl implements WlnOrderService {
         Department department = context.getDepartment();
         Map<Long, List<OrderSku>> existOrderSkuMap = context.getExistOrderSkuMap();
         List<OrderInfo> updateOrderList = context.getUpdateOrderList();
-        List<OrderInfo> saveStatementOrderList = context.getSaveStatementOrderList();
 
         orderInfo.setWlnStorageCode(wlnOrder.getString("storage_code"));
         orderInfo.setWlnUid(wlnOrder.getString("uid"));
@@ -270,19 +287,6 @@ public class WlnOrderServiceImpl implements WlnOrderService {
         // 赋值订单异常类型
         if (orderInfo.getWlnStatus() == 10) {
             addExceptionType(orderInfo, OrderExceptionTypeEnum.ORDER_CLOSURE);
-            // 万里牛状态异常:订单关闭的订单类型修改为无理由并生成对账单
-            if (orderInfo.getStatus() != null && orderInfo.getStatus() >= OrderStatusEnum.IN_PRODUCTION.getKey()
-                    && ObjectUtil.notEqual(orderInfo.getClassify(), OrderClassifyEnum.NO_REASON_ORDER.getKey())) {
-
-                if (ObjectUtil.equals(orderInfo.getStatus(), OrderStatusEnum.IN_PRODUCTION.getKey())) {
-                    orderInfo.setStatus(OrderStatusEnum.COMPLETION_PRODUCTION.getKey());
-                }
-                orderInfo.setClassify(OrderClassifyEnum.NO_REASON_ORDER.getKey());
-                orderInfo.setShippingTime(new Date());
-
-                // 保存对账单列表
-                saveStatementOrderList.add(orderInfo);
-            }
         }
         if (orderInfo.getWlnStatus() == 11) {
             addExceptionType(orderInfo, OrderExceptionTypeEnum.ORDER_ABORT);