From 2a24c69b830d9dc97a8673f5f69418e9f95f3e1b Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期一, 07 七月 2025 10:43:33 +0800
Subject: [PATCH] no message

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java |   49 ++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 44 insertions(+), 5 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java
index 3e95bec..d327bc4 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java
@@ -9,19 +9,17 @@
 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.MatFieldValue;
-import com.zy.asrs.wms.asrs.entity.Tag;
+import com.zy.asrs.wms.asrs.entity.*;
 import com.zy.asrs.wms.asrs.entity.template.MatTemplate;
 import com.zy.asrs.wms.asrs.service.MatFieldService;
 import com.zy.asrs.wms.asrs.service.MatFieldValueService;
 import com.zy.asrs.wms.asrs.service.TagService;
+import com.zy.asrs.wms.asrs.service.impl.LocDetlServiceImpl;
 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.Mat;
 import com.zy.asrs.wms.asrs.service.MatService;
 import com.zy.asrs.wms.system.controller.BaseController;
 import com.zy.asrs.wms.utils.ExcelUtil;
@@ -33,6 +31,7 @@
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.*;
+import java.util.stream.Collectors;
 
 @RestController
 @RequestMapping("/api")
@@ -46,6 +45,8 @@
     private MatFieldValueService matFieldValueService;
     @Autowired
     private TagService tagService;
+    @Autowired
+    private LocDetlServiceImpl locDetlService;
 
     @PreAuthorize("hasAuthority('asrs:mat:list')")
     @PostMapping("/mat/page")
@@ -54,7 +55,7 @@
         BaseParam baseParam = buildParam(map, BaseParam.class);
         PageParam<Mat, BaseParam> pageParam = new PageParam<>(baseParam, Mat.class);
         QueryWrapper<Mat> queryWrapper = pageParam.buildWrapper(true);
-        queryWrapper.orderByDesc("uniliz");
+        queryWrapper.orderByDesc("utiliz");
         PageParam<Mat, BaseParam> page = matService.page(pageParam, queryWrapper);
 
         JSONObject data = JSON.parseObject(JSON.toJSONString(page));
@@ -70,6 +71,44 @@
         return R.ok().add(data);
     }
 
+
+    /**
+     * @author Ryan
+     * @date 2025/7/3
+     * @description: 鑾峰彇鍙嚭搴撶墿鏂欎俊鎭�
+     * @version 1.0
+     */
+    @PreAuthorize("hasAuthority('asrs:mat:list')")
+    @PostMapping("/locs/mats/page")
+    public R getOutPage(@RequestBody Map<String, Object> param) {
+        List<LocDetl> locDetls = locDetlService.list(new LambdaQueryWrapper<LocDetl>().select(LocDetl::getMatId));
+        if (locDetls.isEmpty()) {
+            return R.ok();
+        }
+        /**鑾峰彇瀛樼墿鏂欎俊鎭�*/
+        Set<Long> ids = locDetls.stream().map(LocDetl::getMatId).collect(Collectors.toSet());
+
+        BaseParam baseParam = buildParam(param, BaseParam.class);
+        PageParam<Mat, BaseParam> pageParam = new PageParam<>(baseParam, Mat.class);
+        QueryWrapper<Mat> queryWrapper = pageParam.buildWrapper(true);
+        queryWrapper.orderByDesc("utiliz");
+        queryWrapper.in("id", ids);
+
+        PageParam<Mat, BaseParam> page = matService.page(pageParam, queryWrapper);
+
+        JSONObject data = JSON.parseObject(JSON.toJSONString(page));
+
+        List<Mat> records = page.getRecords();
+        data.put("records", records);
+        for (Mat mat : records) {
+            List<MatFieldValue> list = matFieldValueService.list(new LambdaQueryWrapper<MatFieldValue>()
+                    .eq(MatFieldValue::getMatId, mat.getId()));
+            mat.syncField(list);
+        }
+        return R.ok(data);
+    }
+
+
     @PreAuthorize("hasAuthority('asrs:mat:list')")
     @PostMapping("/mat/list")
     @CacheData(tableName = {"man_mat"})

--
Gitblit v1.9.1