From 469d41fe09ceec3dc5259d01a4060aac1448e09f Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 03 九月 2025 09:59:34 +0800
Subject: [PATCH] 完善订单组托可用数据显示功能

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java |   76 +++++++++++++++++++++++++++++++++++++-
 1 files changed, 74 insertions(+), 2 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
index b49cbb0..9e808a5 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/OrderController.java
@@ -10,6 +10,7 @@
 import com.zy.asrs.common.domain.dto.WrkTraceVo;
 import com.zy.asrs.common.domain.param.OrderDomainParam;
 import com.zy.asrs.common.wms.entity.*;
+import com.zy.asrs.common.wms.mapper.OrderDetlMapper;
 import com.zy.asrs.common.wms.service.*;
 import com.zy.asrs.framework.annotations.ManagerAuth;
 import com.zy.asrs.framework.common.Cools;
@@ -53,6 +54,10 @@
     private SnowflakeIdWorker snowflakeIdWorker;
     @Autowired
     private DocTypeService docTypeService;
+    @Autowired
+    private LocInPrintMatService locInPrintMatService;
+    @Autowired
+    private MatService matService;
 
     @RequestMapping(value = "/order/list/orderNo")
     public R orderListorderNo(@RequestParam String orderNo) {
@@ -60,8 +65,6 @@
         List<OrderDetl> orderDetl1 = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderNo, orderNo));
         List<OrderDetl> orderDetls= new ArrayList<OrderDetl>();
         for (OrderDetl o: orderDetl1) {
-            BigDecimal c1 = new BigDecimal(o.getEnableQty()).setScale(2,BigDecimal.ROUND_HALF_UP);
-            o.setAnfme(c1.doubleValue());
             if (o.getAnfme().equals(0.0)){
                 continue;
             }
@@ -195,6 +198,30 @@
         }
         if (!orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, orderId))) {
             throw new CoolException("鍒犻櫎鍗曟嵁鏄庣粏澶辫触");
+        }
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/order/dy")
+    @ManagerAuth(memo = "鎵嬪姩鍒犻櫎璁㈠崟")
+    @Transactional
+    public R dy(@RequestParam Long orderId){
+        List<OrderDetl> list = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, orderId));
+        for (OrderDetl orderDetl : list) {
+            Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, orderDetl.getMatnr()));
+            LocInPrintMat locInPrintMat = new LocInPrintMat();
+            locInPrintMat.setMatnr(orderDetl.getMatnr());
+            locInPrintMat.setMaktx(orderDetl.getMaktx());
+            locInPrintMat.setStatus(1);
+            locInPrintMat.setOrderNo(orderDetl.getOrderNo());
+            locInPrintMat.setBatch(orderDetl.getBatch());
+            locInPrintMat.setCreateBy(getUserId());
+            locInPrintMat.setCreateTime(new Date());
+            locInPrintMat.setUpdateTime(new Date());
+            if(!Cools.isEmpty(mat)){
+                locInPrintMat.setDecrees(mat.getDecrees());
+            }
+            locInPrintMatService.save(locInPrintMat);
         }
         return R.ok();
     }
@@ -471,4 +498,49 @@
         return R.ok("璁㈠崟淇敼鎴愬姛");
     }
 
+    @RequestMapping(value = "/order/export/auth")
+    @ManagerAuth(memo = "璁㈠崟鏄庣粏瀵煎嚭")
+    public synchronized R export(@RequestBody JSONObject param){
+        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
+        QueryWrapper<OrderDetl> wrapper = new QueryWrapper<>();
+        JSONArray orderNo = param.getJSONArray("orderNo");
+        List<String> orderNoList = new ArrayList<>();
+        for (int i = 0; i < orderNo.size(); i++) {
+            Object o = orderNo.get(i);
+            orderNoList.add(o.toString());
+        }
+        List<OrderDetl> list = orderDetlService.list(new  QueryWrapper<OrderDetl>().in("order_no", orderNoList));
+        return R.ok(exportSupport(list, fields));
+    }
+
+    private <T> void convert(Map<String, Object> map, QueryWrapper<T> wrapper){
+        for (Map.Entry<String, Object> entry : map.entrySet()){
+            if(Cools.eq(entry.getKey(),"curr")
+                    || Cools.eq(entry.getKey(),"limit")
+                    || Cools.eq(entry.getKey(),"unreason")
+                    || Cools.eq(entry.getKey(),"orderByField")
+                    || Cools.eq(entry.getKey(),"orderByType")
+                    || Cools.eq(entry.getKey(),"row")
+                    || Cools.eq(entry.getKey(),"condition")){
+                continue;
+            }
+
+            if(Cools.isEmpty(entry.getValue())){
+                continue;
+            }
+
+            String val = String.valueOf(entry.getValue());
+            if (val.contains(RANGE_TIME_LINK)){
+                String[] dates = val.split(RANGE_TIME_LINK);
+                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
+            } else {
+                if (entry.getKey().equals("locNo")) {
+                    wrapper.eq("loc_no", String.valueOf(entry.getValue()));
+                } else {
+                    wrapper.like(entry.getKey(), String.valueOf(entry.getValue()));
+                }
+            }
+        }
+    }
 }

--
Gitblit v1.9.1