From 4d0a406c204d3a9c590fc713a6dc2fce60b9d012 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 05 八月 2025 21:25:47 +0800
Subject: [PATCH] 库单上要显示工作口, 需要已组好的排在后面,未组的排前面

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java |   35 ++++++++++++++++++++++++++---------
 1 files changed, 26 insertions(+), 9 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java
index 4612928..6641e2f 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OrderController.java
@@ -6,20 +6,20 @@
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.common.R;
 import com.zy.asrs.framework.exception.CoolException;
-import com.zy.asrs.wms.asrs.entity.MatField;
-import com.zy.asrs.wms.asrs.entity.OrderType;
+import com.zy.asrs.wms.asrs.entity.*;
 import com.zy.asrs.wms.asrs.entity.enums.OrderSettleType;
 import com.zy.asrs.wms.asrs.entity.param.CreateOrderParam;
 import com.zy.asrs.wms.asrs.entity.param.UpdateOrderParam;
 import com.zy.asrs.wms.asrs.entity.template.OrderTemplate;
+import com.zy.asrs.wms.asrs.service.CacheSiteService;
 import com.zy.asrs.wms.asrs.service.MatFieldService;
 import com.zy.asrs.wms.asrs.service.OrderTypeService;
+import com.zy.asrs.wms.asrs.service.impl.OrderDetlServiceImpl;
 import com.zy.asrs.wms.common.annotation.CacheData;
 import com.zy.asrs.wms.common.annotation.OperationLog;
 import com.zy.asrs.wms.common.domain.BaseParam;
 import com.zy.asrs.wms.common.domain.KeyValVo;
 import com.zy.asrs.wms.common.domain.PageParam;
-import com.zy.asrs.wms.asrs.entity.Order;
 import com.zy.asrs.wms.asrs.service.OrderService;
 import com.zy.asrs.wms.system.controller.BaseController;
 import com.zy.asrs.wms.utils.ExcelUtil;
@@ -43,6 +43,10 @@
     private OrderTypeService orderTypeService;
     @Autowired
     private MatFieldService matFieldService;
+    @Autowired
+    private OrderDetlServiceImpl orderDetlService;
+    @Autowired
+    private CacheSiteService cacheSiteService;
 
     @PreAuthorize("hasAuthority('asrs:order:list')")
     @PostMapping("/order/page")
@@ -64,7 +68,7 @@
         QueryWrapper<Order> wrapper = new QueryWrapper<>();
 
         ArrayList<Long> types = new ArrayList<>();
-        for (OrderType orderType : orderTypeService.list(new LambdaQueryWrapper<OrderType>().eq(OrderType::getType, 1))) {
+        for (OrderType orderType : orderTypeService.list(new LambdaQueryWrapper<OrderType>().in(OrderType::getType, 1))) {
             types.add(orderType.getId());
         }
 
@@ -88,13 +92,14 @@
                 }
             }
         }
+        wrapper.orderByDesc("create_time");
 
         return R.ok().add(orderService.page(pageParam, wrapper));
     }
 
     @PreAuthorize("hasAuthority('asrs:order:list')")
     @PostMapping("/order/out/page")
-    @CacheData(tableName = {"man_order", "man_order_type"})
+//    @CacheData(tableName = {"man_order", "man_order_type"})
     public R pageOut(@RequestBody Map<String, Object> map) {
         String condition = map.getOrDefault("condition", "").toString();
         BaseParam baseParam = buildParam(map, BaseParam.class);
@@ -131,22 +136,34 @@
                 }
             }
         }
-
+        wrapper.orderByDesc("create_time");
         return R.ok().add(orderService.page(pageParam, wrapper));
     }
 
     @PreAuthorize("hasAuthority('asrs:order:list')")
     @PostMapping("/order/list")
-    @CacheData(tableName = {"man_order"})
+//    @CacheData(tableName = {"man_order"})
     public R list(@RequestBody Map<String, Object> map) {
         return R.ok().add(orderService.list());
     }
 
     @PreAuthorize("hasAuthority('asrs:order:list')")
     @GetMapping("/order/{id}")
-    @CacheData(tableName = {"man_order"})
+//    @CacheData(tableName = {"man_order"})
     public R get(@PathVariable("id") Long id) {
-        return R.ok().add(orderService.getById(id));
+        Order order = orderService.getById(id);
+        List<OrderDetl> detls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId()));
+        if (!detls.isEmpty()) {
+            Double sum = detls.stream().mapToDouble(OrderDetl::getAnfme).sum();
+            order.setWaitQty(sum);
+        }
+
+        CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>()
+                .eq(CacheSite::getOrderId, order.getId()), false);
+        if (!Objects.isNull(cacheSite)) {
+            order.setSite(cacheSite.getChannel());
+        }
+        return R.ok().add(order);
     }
 
     @PreAuthorize("hasAuthority('asrs:order:save')")

--
Gitblit v1.9.1