From 5d468e5ccd96dc068d91d593c770643ecdc6f1af Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 03 七月 2025 16:34:41 +0800
Subject: [PATCH] 1. 入库历史订单明细数据丢失 2. 库存信息响应问题 3. 出库明细新加客户信息 4. 库存明细增加查询条件 5. 出库修改物料来源

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/MatController.java |   47 +++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 43 insertions(+), 4 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 ab47108..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")
@@ -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