Selaa lähdekoodia

刀具齐套性功能检测

oyq28 2 kuukautta sitten
vanhempi
commit
d73f7d13fc

+ 12 - 8
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/centralToolMagazine/service/impl/ToolManagementServiceImpl.java

@@ -105,6 +105,10 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
     @Autowired
     private ProductionresourceBizService productionresourceBizService;
 
+    //默认机床刀位数
+    private final int DEVICE_CUTTER_POSITION = 40;
+
+
     @Override
     protected String getRegion() {
         return TENANT;
@@ -237,7 +241,7 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
                 }else{
                     String[] conditions = bomProcedureTool.getCuttingToolCategory().split("_");
                     List<CutterCategories> toolList = cutterCategoriesService.list(new LbqWrapper<CutterCategories>().eq(CutterCategories::getPartsNo, conditions[0]).eq(CutterCategories::getProcedureNo, conditions[1]));
-                    toolIdList = toolList.stream().map(obj->obj.getId().toString())
+                    toolIdList = toolList.stream().map(obj->obj.getCutterT())
                             .collect(Collectors.toList());
                 }
                 toolId.addAll(toolIdList);
@@ -267,8 +271,8 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
                 Integer freeCount = 0;
                 //判断是否机床
                 if(StringUtils.isNotEmpty(productionresource.getModeSpecification())){
-                    realToolId = machineCuttingToolService.list(new LbqWrapper<MachineCuttingTool>().eq(MachineCuttingTool::getMachineId, vo.getResourceId())).stream().map(obj->obj.getId().toString()).collect(Collectors.toList());
-                    freeCount = 40 - realToolId.size();
+                    realToolId = machineCuttingToolService.list(new LbqWrapper<MachineCuttingTool>().eq(MachineCuttingTool::getMachineId, vo.getResourceId())).stream().map(obj->obj.getCuttingToolId()).collect(Collectors.toList());
+                    freeCount = DEVICE_CUTTER_POSITION - realToolId.size();
                 }else{
                     realToolId = Lists.newArrayList();
                 }
@@ -282,12 +286,12 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
                 //List<String> realToolCategory = cuttingToolMapper.getToolCategory(realToolId);
 
                 //比较 刀具类别  是否存在
-                if(freeCount > 0 && !realToolId.containsAll(toolId)){
+                if(freeCount > 0){
                     List<String> finalRealToolId = realToolId;
                     List<String> differenceCategory = toolId.stream()
                             .filter(id -> !finalRealToolId.contains(id))
                             .collect(Collectors.toList());
-                    List<CutterCategories> cutterCategories = cutterCategoriesService.list(new LbqWrapper<CutterCategories>().in(CutterCategories::getId, differenceCategory)).stream().collect(Collectors.toList());
+                    List<CutterCategories> cutterCategories = cutterCategoriesService.list(new LbqWrapper<CutterCategories>().in(CutterCategories::getCutterT, differenceCategory)).stream().collect(Collectors.toList());
                     //List<String> dicName = dictionaryMapper.getDicName(toolId);
                     /*List<Long> differenceTool = toolId.stream()
                             .filter(id -> !realToolId.contains(id))
@@ -295,8 +299,8 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
                     List<CuttingTool> cuttingTools = cuttingToolMapper.selectList(Wraps.<CuttingTool>lbQ().in(CuttingTool::getId, differenceTool));*/
                     //true 机床刀库空闲个数大于缺刀个数
                     Boolean isFree=freeCount > differenceCategory.size();
-                    ToolTask findToolTask = toolTaskMapper.selectOne(Wraps.<ToolTask>lbQ().eq(ToolTask::getPlanId, item));
-                    toolCheckDTO.setIsTask(Objects.isNull(findToolTask)?"否":"是");
+                    //ToolTask findToolTask = toolTaskMapper.selectOne(Wraps.<ToolTask>lbQ().eq(ToolTask::getPlanId, item));
+                    toolCheckDTO.setIsTask(differenceCategory.size()>0?"是":"否");
                     toolCheckDTO.setId(vo.getResourceId());
                     toolCheckDTO.setDeviceName(vo.getName());
                     toolCheckDTO.setName(bBom.getName());
@@ -304,7 +308,7 @@ public class ToolManagementServiceImpl extends SuperCacheServiceImpl<ToolManagem
                     toolCheckDTO.setIsFree(isFree);
                     toolCheckDTO.setHasCuttingToolsFlag(CollectionUtil.isEmpty(differenceCategory) ? "是" : "否" );
                     toolCheckDTO.setMsg(CollectionUtil.isNotEmpty(differenceCategory) ?
-                            "缺少:"+cutterCategories.stream().map(obj->obj.getPartsNo()+"_"+obj.getProcedureNo()).collect(Collectors.joining(","))+(isFree ? ",机床刀库空闲个数大于缺刀个数":""):"");
+                            "缺少:"+cutterCategories.stream().map(obj->obj.getCutterName()).collect(Collectors.joining(","))+(isFree ? ",机床刀库空闲个数大于缺刀个数":"") +(" 缺刀总数:"+ differenceCategory.size() +"个"):"校验成功" );
                     toolCheckDTO.setPlanId(item);
                     returnList.add(toolCheckDTO);
                 }