瀏覽代碼

刀库展示页

wzx 1 周之前
父節點
當前提交
65bf933cfa

+ 1 - 10
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/edgeLibrary/dao/StockInfoMapper.java

@@ -101,15 +101,6 @@ public interface StockInfoMapper extends SuperMapper<StockInfo> {
 
     List<ToolStorge> getToolStorgeByTooDisplayId(Long id);
 
-    List<Map> getToolStorgeCountByDisplayId();
 
-    List<Map> getInToolStorgeCountByDisplayId();
-
-    List<Map> getFreeToolStorgeCountByDisplayId();
-
-    List<Map> getLockToolStorgeCountByDisplayId();
-
-
-
-    List<CuttingTool> getToolById(Map map);
+    ToolDisplay gettoolByNo(Map map);
 }

+ 3 - 1
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/edgeLibrary/service/StockInfoService.java

@@ -197,5 +197,7 @@ public interface StockInfoService extends SuperService<StockInfo> {
 
 
 
-    List<CuttingTool> getToolById(Map map);
+
+    ToolDisplay getToolByNo(Map map);
+
 }

+ 18 - 112
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/edgeLibrary/service/impl/StockInfoServiceImpl.java

@@ -52,6 +52,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 
 import static com.github.zuihou.utils.BizAssert.isFalse;
 import static java.util.stream.Collectors.groupingBy;
@@ -97,7 +98,7 @@ public class StockInfoServiceImpl extends SuperServiceImpl<StockInfoMapper, Stoc
 
 
     @Autowired
-    private ToolDisplayMapper toolDisplayMapper ;
+    private ToolDisplayMapper toolDisplayMapper;
 
     @Override
     // 启用属性自动注入
@@ -1035,121 +1036,25 @@ public class StockInfoServiceImpl extends SuperServiceImpl<StockInfoMapper, Stoc
             paramsMap.put("orgIds", orgIdsStr);
         }
         List<Map> listMap = new ArrayList<>();
-        //根据货架查询里面数量
-//        List<ToolManagement> toolManagementList = baseMapper.getToolManagement();
 
+        //获取所有刀库库位
         List<ToolDisplay> toolList = toolDisplayMapper.selectList(null);
 
+        //10元素为一组
+        Map<Integer, List<ToolDisplay>> groupedMap = IntStream.range(0, toolList.size())
+                .boxed()
+                .collect(Collectors.groupingBy(
+                        i -> i / 10,  // 分组键:索引除以10(整数除法),每10个一组
+                        LinkedHashMap::new,  // 使用 LinkedHashMap 保持顺序
+                        Collectors.mapping(
+                                toolList::get,   // 把索引 i 映射为 toolList.get(i)
+                                Collectors.toList()
+                        )
+                ));
 
-//        List<Map> toolStorgeCountMap = baseMapper.getToolStorgeCount(); //库位数量
-        List<Map> toolStorgeCountMap = baseMapper.getToolStorgeCountByDisplayId(); //库位数量
-
-//        List<Map> inToolStorgeCountMap = baseMapper.getInToolStorgeCount();
-        List<Map> inToolStorgeCountMap = baseMapper.getInToolStorgeCountByDisplayId(); //已存库位数量
-
-
-//        List<Map> freeToolStorgeCountMap = baseMapper.getFreeToolStorgeCount();
-        List<Map> freeToolStorgeCountMap = baseMapper.getFreeToolStorgeCountByDisplayId();
-
-
-//        List<Map> lockToolStorgeCountMap = baseMapper.getLockToolStorgeCount();
-        List<Map> lockToolStorgeCountMap = baseMapper.getLockToolStorgeCountByDisplayId();//锁定库位数量
-
-
-        toolList.stream().forEach(vo -> {
-//            List<ToolStorge> toolStorgeByToolId = baseMapper.getToolStorgeByToolId(vo.getId());
-            //所有刀库库位
-            List<ToolStorge> toolStorgeByToolId = baseMapper.getToolStorgeByTooDisplayId(vo.getId());
-
-            Map<Integer, List<ToolStorge>> groupedToolStorges =
-                    toolStorgeByToolId.stream()
-                            .collect(Collectors.groupingBy(e -> toolStorgeByToolId.indexOf(e) / 10));
-
-
-            Collection<List<ToolStorge>> values = groupedToolStorges.values();
-            List<ToolStorge> childrenList = new ArrayList<>();
-            values.stream().forEach(it -> {
-                ToolStorge toolStorge = new ToolStorge();
-                toolStorge.setChildren(it);
-                childrenList.add(toolStorge);
-            });
-            // 将分组后的值设置为 vo 的 children
-            vo.setChildren(childrenList);
-
-            Map<String, Object> stringObjectMap = BeanUtil.beanToMap(vo);
-
-            Optional<Map> toolStorgeOptionalMap = toolStorgeCountMap.stream()
-                    .filter(item -> vo.getId().equals(item.get("tooDisplayId"))) // 匹配 tooDisplayId
-                    .findFirst(); // 找到第一个匹配的 Map
-            Optional<Map> inToolStorgeOptionalMap = inToolStorgeCountMap.stream()
-                    .filter(item -> vo.getId().equals(item.get("tooDisplayId"))) // 匹配 tooDisplayId
-                    .findFirst(); // 找到第一个匹配的 Map
-            Optional<Map> freeToolStorgeOptionalMap = freeToolStorgeCountMap.stream()
-                    .filter(item -> vo.getId().equals(item.get("tooDisplayId"))) // 匹配 tooDisplayId
-                    .findFirst(); // 找到第一个匹配的 Map
-            Optional<Map> lockToolStorgeOptionalMap = lockToolStorgeCountMap.stream()
-                    .filter(item -> vo.getId().equals(item.get("tooDisplayId"))) // 匹配 tooDisplayId
-                    .findFirst(); // 找到第一个匹配的 Map
-
-
-            stringObjectMap.put("allCount", toolStorgeOptionalMap.isPresent() ? toolStorgeOptionalMap.get().get("num") : 0);
-            stringObjectMap.put("freeCount", freeToolStorgeOptionalMap.isPresent() ? freeToolStorgeOptionalMap.get().get("num") : 0);
-            stringObjectMap.put("lockCount", lockToolStorgeOptionalMap.isPresent() ? lockToolStorgeOptionalMap.get().get("num") : 0);
-            stringObjectMap.put("stockCount", inToolStorgeOptionalMap.isPresent() ? inToolStorgeOptionalMap.get().get("num") : 0);
-            listMap.add(stringObjectMap);
-        });
-
-        int storgeCount = toolStorgeCountMap.stream()  // 库位数量
-                .mapToInt(item -> {
-                    Object numObj = item.get("num");
-                    if (numObj instanceof Integer) {
-                        return (Integer) numObj;
-                    } else if (numObj instanceof Long) {
-                        return ((Long) numObj).intValue();
-                    } else {
-                        return 0; // 其他类型默认为 0,可以根据实际情况处理
-                    }
-                }).sum(); // 对所有值求和
-        int instockCount = inToolStorgeCountMap.stream()  // 创建流
-                .mapToInt(item -> {
-                    Object numObj = item.get("num");
-                    if (numObj instanceof Integer) {
-                        return (Integer) numObj;
-                    } else if (numObj instanceof Long) {
-                        return ((Long) numObj).intValue();
-                    } else {
-                        return 0; // 其他类型默认为 0,可以根据实际情况处理
-                    }
-                }).sum(); // 对所有值求和
-        int freeToolStockCount = freeToolStorgeCountMap.stream()  // 创建流
-                .mapToInt(item -> {
-                    Object numObj = item.get("num");
-                    if (numObj instanceof Integer) {
-                        return (Integer) numObj;
-                    } else if (numObj instanceof Long) {
-                        return ((Long) numObj).intValue();
-                    } else {
-                        return 0; // 其他类型默认为 0,可以根据实际情况处理
-                    }
-                }).sum(); // 对所有值求和
-        int lockstockCount = lockToolStorgeCountMap.stream()  // 创建流
-                .mapToInt(item -> {
-                    Object numObj = item.get("num");
-                    if (numObj instanceof Integer) {
-                        return (Integer) numObj;
-                    } else if (numObj instanceof Long) {
-                        return ((Long) numObj).intValue();
-                    } else {
-                        return 0; // 其他类型默认为 0,可以根据实际情况处理
-                    }
-                }).sum(); // 对所有值求和
 
         returnMap.put("shelvesCount", toolList.size()); //仓库个数
-        returnMap.put("storgeCount", storgeCount);    //库位数量
-        returnMap.put("instockCount", instockCount);  //已存在库位数量
-        returnMap.put("freestockCount", freeToolStockCount);  //空库位数量
-        returnMap.put("lockstockCount", lockstockCount);      //锁定库位数量
-        returnMap.put("shelvesTreeList", listMap);
+        returnMap.put("shelvesTreeList", groupedMap);
         return returnMap;
     }
 
@@ -1158,7 +1063,8 @@ public class StockInfoServiceImpl extends SuperServiceImpl<StockInfoMapper, Stoc
 
 
     @Override
-    public List<CuttingTool> getToolById(Map map) {
-        return baseMapper.getToolById(map);
+    public ToolDisplay getToolByNo(Map map) {
+
+        return baseMapper.gettoolByNo(map);
     }
 }

+ 6 - 18
imcs-admin-boot/imcs-business-biz/src/main/resources/mapper_business/base/edgeLibrary/StockInfoMapper.xml

@@ -579,24 +579,12 @@
         WHERE ifnull(tool_handle_id, -1) = - 1
         GROUP BY tool_display_id
     </select>
-    <select id="getLockToolStorgeCountByDisplayId" resultType="java.util.Map">
-        SELECT
-            count(*) AS num,
-            tool_display_id AS tooDisplayId
-        FROM
-            imcs_tool_storge
-                INNER JOIN imcs_tool_display tm ON tool_display_id = tm.id
-        WHERE
-            lock_status = '0'
-        GROUP BY
-            tool_display_id
+    <select id="gettoolByNo"
+            resultType="com.github.zuihou.business.productionResourceCenter.entity.ToolDisplay">
+        SELECT *
+        FROM imcs_tool_display
+        WHERE material_no = #{materialNo}
     </select>
 
-    <select id="getToolById" resultType="com.github.zuihou.business.productionReadyCenter.entity.CuttingTool">
-        SELECT
-            *
-        FROM
-            imcs_cutting_tool
-        WHERE storge_id = #{id}
-    </select>
+
 </mapper>

+ 8 - 5
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/edgeLibrary/StockInfoController.java

@@ -91,6 +91,14 @@ public class StockInfoController extends SuperController<StockInfoService, Long,
         return success(baseService.toolListDisplay(map));
     }
 
+    @ApiOperation(value = "根据刀具编号获取刀具信息", notes = "根据刀具编号获取刀具信息")
+    @PostMapping("/getToolByNo")
+    public R<ToolDisplay> getToolByNo(@RequestBody(required = false) Map map) {
+        return success(baseService.getToolByNo(map));
+    }
+
+
+
 
 
     @ApiOperation(value = "查询所有边线库库存信息", notes = "查询所有边线库库存信息")
@@ -161,11 +169,6 @@ public class StockInfoController extends SuperController<StockInfoService, Long,
         return success(baseService.getCuttingToolByCutterCode(map));
     }
 
-    @ApiOperation(value = "根据库位id查询刀具列表", notes = "根据库位id查询刀具列表")
-    @PostMapping("/getToolById")
-    public R<List<CuttingTool>> getToolByCode(@RequestBody Map map) {
-        return success(baseService.getToolById(map));
-    }
 
 
     @ApiOperation(value = "解锁/锁定状态", notes = "解锁/锁定状态")