Browse Source

1.拉取京东订单已发货的订单默认出库,出库时间为发货时间
2.订单发货,子母单打单时,修复子单添加日志的功能

wangxiaoming 5 years ago
parent
commit
d679696a49

+ 4 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml

@@ -1081,6 +1081,8 @@
                 sales_warehouse_id,
                 sales_is_sublist,
                 sales_belong_orderId,
+                sales_deliver,
+                sales_deliver_time,
                 sales_ex_orderId
             )
         values
@@ -1132,6 +1134,8 @@
                 #{salesWarehouseId},
                 #{salesIsSublist},
                 #{salesBelongOrderId},
+                #{salesDeliver},
+                #{salesDeliverTime},
                 #{salesExOrderId}
             )
   </insert>

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

@@ -350,7 +350,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                 return 0;
             }
         }else{
-            calendar.add(Calendar.DATE,-7);
+            calendar.add(Calendar.DATE,-5);
             calendar.set(Calendar.HOUR_OF_DAY,0);
             calendar.set(Calendar.MINUTE,0);
             calendar.set(Calendar.SECOND,0);
@@ -530,6 +530,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
 
                             String companyCode = logistics.getString("companyCode");
                             String deliveryNo = logistics.getString("deliveryNo");
+                            String deliveryTime = logistics.getString("deliveryTime");
 
                             SalesOrder so = new SalesOrder();
                             switch (companyCode){
@@ -551,6 +552,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                             so.setSalesStatus(1);
                             so.setSalesShippingStatus(1);
                             so.setSalesDeliver(2);
+                            so.setSalesDeliverTime(sdf.parse(deliveryTime));
                             Integer res = salesOrderMapper.updateSalesOrder(so);
                             if(res > 0){
                                 //添加操作跟踪信息
@@ -1191,6 +1193,8 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                                     JSONObject logistics = logisticsArray.getJSONObject(0);
                                     String companyCode = logistics.getString("companyCode");
                                     String deliveryNo = logistics.getString("deliveryNo");
+                                    String deliveryTime = logistics.getString("deliveryTime");
+                                    salesOrder.setSalesDeliverTime(sdf.parse(deliveryTime));
                                     switch (companyCode){
                                         case "2087":{
                                             salesOrder.setSalesPostFirm("jd");

+ 11 - 7
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AwaitSendController.java

@@ -427,9 +427,9 @@ public class AwaitSendController {
 
         //第三方发货,传入的id
         Set<Integer> salesIdsset = new HashSet<Integer>();
+        Set<String> salesCodeSet = new HashSet<String>();
         salesIdsset.add(salesOrderInfo.getSalesId());
-
-
+        salesCodeSet.add(salesOrderInfo.getSalesDealCode());
 
         try {
             // 向第三方系统【快递鸟】提交订单数据,第三方系统会检测订单是否重复
@@ -498,6 +498,7 @@ public class AwaitSendController {
                             order.setSalesOldOrderStatus(11);
                             Integer msg = salesOrderService.updateSalesOrder(order);
                             salesIdsset.add(orders.get(i).getSalesId());
+                            salesCodeSet.add(orders.get(i).getSalesDealCode());
                             if (msg == null || msg <= 0) {
                                 return ResponseJson.getFAILURE().addResponseKeyValue("error", "子订单状态非通知配货,无法打印");
                             }
@@ -556,11 +557,14 @@ public class AwaitSendController {
                 }
 
                 //添加操作跟踪信息
-                OrderTracking orderTracking = new OrderTracking();
-                orderTracking.setAdminId(AdminUtils.getLoginAdminId());
-                orderTracking.setSalesDealCode(salesOrderInfo.getSalesDealCode());
-                orderTracking.setTrackingDesc("打印订单");
-                salesOrderService.addTracking(orderTracking);
+                Iterator<String> iterator = salesCodeSet.iterator();
+                while(iterator.hasNext()){
+                    OrderTracking orderTracking = new OrderTracking();
+                    orderTracking.setAdminId(AdminUtils.getLoginAdminId());
+                    orderTracking.setSalesDealCode(iterator.next());
+                    orderTracking.setTrackingDesc("打印订单");
+                    salesOrderService.addTracking(orderTracking);
+                }
 
             } else {
                 // 获取电子面单失败