Quellcode durchsuchen

fix: 优化库位,货架管理排序问题,优化工装夹具呼叫,拦截带有物料的数据

wang.sq@aliyun.com vor 2 Monaten
Ursprung
Commit
a9ba06f4b4

+ 1 - 1
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/mq/TaskWorkNode.java

@@ -643,7 +643,7 @@ public class TaskWorkNode {
                     String code = retJson.getString("result").trim();
                     String concurrency = retJson.containsKey("concurrency") ? retJson.getString("concurrency").trim() : "false";
                     if (code.equals("true")) {
-                        log.setExeStatus("2").setEndTime(new Date()).setSendStatus("1").setFeedback("");
+                        log.setExeStatus("2").setEndTime(new Date()).setSendStatus("1").setExeResult("").setFeedback("");
                         //回调处理
 //                    taskNode.setExeStatus("3").setEndTime(new Date()).setExeResult("1");
 //                    taskNodeService.updateAllById(taskNode);

+ 7 - 2
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/productionResourceCenter/service/impl/RobotNodeServiceImpl2.java

@@ -1062,11 +1062,16 @@ public class RobotNodeServiceImpl2 implements NodeOperationService {
         List<Long> trayAndMToolClamplist = newTrayList.stream().map(t->t.getId()).collect(Collectors.toList());
         trayAndMToolClamplist.addAll(mToolClamplist.stream().map(t->t.getId()).collect(Collectors.toList()));
 
-        // 判断夹具是否有可用的,查询线边库位信息中是否还有夹具
+        // 判断夹具是否有可用的,查询线边库位信息中是否还有夹具,因为是通过匹配相同类型的托盘查询的,所以没有去除带物料的托盘
         List<StockInfo> allStockInfos = stockInfoMapper.selectList(Wraps.<StockInfo>lbQ().in(StockInfo::getGoodsId,trayAndMToolClamplist).in(StockInfo::getStorgeId,startProductionresourcePositionIds).eq(StockInfo::getLockStatus, "1").orderByAsc(StockInfo::getGoodsType));
 
+        List<Long> collect1 = allStockInfos.stream().map(StockInfo::getStorgeId).distinct().collect(toList());
+
+        // 根据库位ID 查询这个库位下最终有多少条数据,
+        List<StockInfo> newAllStockInfos = stockInfoMapper.selectList(Wraps.<StockInfo>lbQ().in(StockInfo::getStorgeId,collect1).in(StockInfo::getStorgeId,startProductionresourcePositionIds).eq(StockInfo::getLockStatus, "1").orderByAsc(StockInfo::getGoodsType));
+
         // 根据集合数据,比对根据零件配置的工装夹具数量是不相等
-        Map<Long, List<StockInfo>> collect = allStockInfos.stream().collect(groupingBy(StockInfo::getStorgeId));
+        Map<Long, List<StockInfo>> collect = newAllStockInfos.stream().collect(groupingBy(StockInfo::getStorgeId));
         collect.forEach((aLong, stockInfos) -> {
             if(stockInfos.size() == trayList.size()){
                 returnList.addAll(stockInfos);

+ 1 - 1
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/edgeLibrary/ShelvesController.java

@@ -48,7 +48,7 @@ public class ShelvesController extends SuperCacheController<ShelvesService, Long
 
         wrapper.like(Shelves::getName,shelves.getName())
                 .eq(Shelves::getStatus,shelves.getStatus())
-                .orderByDesc(Shelves::getCreateTime);
+                .orderByAsc(Shelves::getWeight).orderByAsc(Shelves::getCreateTime);
         baseService.pageList(page, wrapper);
     }