소스 검색

兼容不同快递的打印功能

xian 6 년 전
부모
커밋
fed3ef6d78
1개의 변경된 파일25개의 추가작업 그리고 1개의 파일을 삭제
  1. 25 1
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AwaitSendController.java

+ 25 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AwaitSendController.java

@@ -94,7 +94,31 @@ public class AwaitSendController {
                 temp.setSalesOrderItemList(salesOrderService.listSalesOrderItem(item));
             }
         }
-        return new ModelAndView("order/salesOrder/print_order").addObject("page", pagedResult).addObject("posts", salesOrderService.getLogisticsInfo(new LogisticsInfo()));
+
+        int errorOrderNum = 0;
+
+        // 聚合打单方式
+        Map<String, List<SalesOrder>> postMap = new HashMap<>();
+        if (pagedResult != null && pagedResult.getDataList() != null && !pagedResult.getDataList().isEmpty()) {
+            for (SalesOrder temp : pagedResult.getDataList()) {
+                LogisticsInfo info = new LogisticsInfo();
+                info.setLogisticsRstCode(temp.getSalesPostFirm());
+                List<LogisticsInfo> logisticsInfos = salesOrderService.getLogisticsInfo(info);
+                if (logisticsInfos == null || logisticsInfos.size() <= 0) {
+                    errorOrderNum ++;
+                    continue;
+                }
+                String key = logisticsInfos.get(0).getLogisticsName();
+                List<SalesOrder> list = postMap.get(key);
+                if (list == null) {
+                    list = new ArrayList<>();
+                    postMap.put(key, list);
+                }
+                list.add(temp);
+            }
+        }
+
+        return new ModelAndView("order/salesOrder/print_order").addObject("page", postMap).addObject("orderSize", pagedResult.getDataList().size()).addObject("errorOrderNum", errorOrderNum);
     }
 
     // 打单发货