Kaynağa Gözat

小亚通接口修改

wangxiaoming 5 yıl önce
ebeveyn
işleme
e2a7a9eccf

+ 8 - 5
watero-rst-service/src/main/java/com/iamberry/rst/service/order/OrderSyncLogServiceImpl.java

@@ -370,7 +370,9 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
             JSONArray beanListArray = dataObj.getJSONArray("beanList");
             if(beanListArray.length() > 0){
                 JSONObject job = beanListArray.getJSONObject(0);
+
                 //为了避免小亚通同一个订单查询多次,将订单保存在MAP中
+                // 该map数据存活周期仅为一个选中打单发货,在AwaitSendController中,调用完了会直接清掉,这样数据不会重复,又能让每次重复的订单项快速查询
                 orderJsonMap.put(orderId,job);
                 return this.getIsShip(job,salesOrder);
             }
@@ -477,8 +479,10 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                 }
             }
             return allStatus;
-        }else{
-            if(999 == orderStatus){
+        }else if(60 == orderStatus || 70 == orderStatus || 80 == orderStatus ){   //该产品已发货
+            //如果该订单已发货,无需判断其他,直接return true
+            return true;
+        }else if(999 == orderStatus){ //实际应该不可能为0
                 //如果该订单已作废,那么本系统将跟随作废
                 SalesOrder so = new SalesOrder();
                 so.setSalesId(salesOrder.getSalesId());
@@ -492,10 +496,9 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                     orderTracking.setTrackingDesc("作废订单(发货验证-该订单已在第三方平台作废)");
                     salesOrderService.addTracking(orderTracking);
                 }
-            }
-            logger.info("小亚通调用检测该订单无法发货,该订单状态异常-订单状态:"+getStatusMsg(orderStatus));
-            return false;
         }
+        logger.info("小亚通调用检测该订单无法发货,该订单状态异常-订单状态:"+getStatusMsg(orderStatus));
+        return false;
     }