hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -274,7 +274,7 @@ .eq(GlassInfo::getTemperingLayoutId, glassInfo.getTemperingLayoutId()) .eq(GlassInfo::getSlot, glassInfo.getSlot()) ); List<String> glassIds = glassInfoList.stream().map(String::valueOf).collect(Collectors.toList()); List<String> glassIds = glassInfoList.stream().map(GlassInfo::getGlassId).collect(Collectors.toList()); BigStorageDTO bigStorageDTO = null; MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(BigStorageCage.class) .selectAll(BigStorageCage.class) hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -857,7 +857,9 @@ ); } String carRequest = plcParameterObject.getPlcParameter("CarRequest").getValue(); log.info("大车当前玻璃id{}",glassIdsCar); log.info("大车当前玻璃id{}", glassIdsCar); log.info("卧转立1玻璃id{}", glassIds1); log.info("卧转立2玻璃id{}", glassIds2); if (CollectionUtils.isNotEmpty(glassIdsCar) && REQUEST_WORD.equals(carRequest)) { List<BigStorageCageFeedTask> bigStorageCageFeedTasks = bigStorageCageFeedTaskService.list( new LambdaQueryWrapper<BigStorageCageFeedTask>() @@ -865,7 +867,10 @@ .eq(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_UP) .eq(BigStorageCageFeedTask::getTargetSlot, 0) ); computeTargetByLineCar(bigStorageCageFeedTasks.get(0).getLine()); if(CollectionUtils.isNotEmpty(bigStorageCageFeedTasks)){ log.info("获取到的进片任务信息{}", bigStorageCageFeedTasks); computeTargetByLineCar(bigStorageCageFeedTasks.get(0).getLine(), glassIdsCar); } } @@ -1081,11 +1086,13 @@ /** * 计算任务表进片线路的目标格子,并启动任务 */ public boolean computeTargetByLineCar(Integer line) { public boolean computeTargetByLineCar(Integer line, List<String> carGlassId) { //1、获取任务表中的所有玻璃(指定线路且已经进卧转立完成) List<BigStorageCageFeedTask> taskList = bigStorageCageFeedTaskService.list(new LambdaQueryWrapper<BigStorageCageFeedTask>() .eq(BigStorageCageFeedTask::getLine, line) .and(e -> e.isNull(BigStorageCageFeedTask::getTargetSlot).or().eq(BigStorageCageFeedTask::getTargetSlot, Const.OUT_TARGET_POSITION_ZERO)) .in(BigStorageCageFeedTask::getGlassId, carGlassId) .and(e -> e.isNull(BigStorageCageFeedTask::getTargetSlot).or() .eq(BigStorageCageFeedTask::getTargetSlot, Const.OUT_TARGET_POSITION_ZERO)) .in(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_UP_ALL) .orderByAsc(BigStorageCageFeedTask::getId)); //2、去笼子内查找是否可以继续存放的笼子 @@ -1116,6 +1123,13 @@ if (info == null) { continue; } if(info.getSlot()==null){ computeSlot(info.getGlassId()); info=glassInfoService.getOne( new LambdaQueryWrapper<GlassInfo>() .eq(GlassInfo::getGlassId,info.getGlassId()) ); } BigStorageCageDetails cageDetails = new BigStorageCageDetails(); BeanUtils.copyProperties(info, cageDetails); //2、获取目标格子信息 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
@@ -23,6 +23,7 @@ import com.mes.edgglasstask.entity.EdgGlassTaskInfo; import com.mes.edgglasstask.service.EdgGlassTaskInfoService; import com.mes.glassinfo.entity.GlassInfo; import com.mes.glassinfo.service.GlassInfoService; import com.mes.job.PlcStorageCageTask; import com.mes.pp.entity.ReportingWork; import com.mes.pp.entity.ReportingWorkDetail; @@ -67,6 +68,8 @@ EdgGlassTaskInfoService edgGlassTaskInfoService; @Autowired BigStorageCageFeedTaskService bigStorageCageFeedTaskService; @Autowired GlassInfoService glassInfoService; // @Autowired @@ -275,12 +278,23 @@ @Test public void ca111() { List<Integer> slotList = new ArrayList<>(Arrays.asList(62)); // 注意 null 元素 Set<Integer> remainSlotList = new HashSet<>(Arrays.asList(62)); slotList.removeAll(remainSlotList); log.info("1"); // plcStorageCageTask.computeSlot("P24111102|1|1"); // GlassInfo glassInfo=glassInfoService.getOne( // new LambdaQueryWrapper<GlassInfo>() // .eq(GlassInfo::getGlassId,"P24120801|1|2") // ); // bigStorageCageDetailsService.queryTargetSlotByTempering(glassInfo); List<String> glassIdsCar=new ArrayList<>(); glassIdsCar.add("P24120801|4|3"); List<BigStorageCageFeedTask> bigStorageCageFeedTasks = bigStorageCageFeedTaskService.list( new LambdaQueryWrapper<BigStorageCageFeedTask>() .in(BigStorageCageFeedTask::getGlassId, glassIdsCar) .eq(BigStorageCageFeedTask::getTaskState, Const.BIG_STORAGE_IN_UP) .eq(BigStorageCageFeedTask::getTargetSlot, 0) ); if(CollectionUtils.isNotEmpty(bigStorageCageFeedTasks)){ log.info("获取到的进片任务信息{}", bigStorageCageFeedTasks); plcStorageCageTask.computeTargetByLineCar(bigStorageCageFeedTasks.get(0).getLine(), glassIdsCar); } } @Test hangzhoumesParent/moduleService/LoadGlassModule/src/main/resources/application-dev.yml
@@ -10,12 +10,12 @@ password: beibo.123/ driver-class-name: com.mysql.cj.jdbc.Driver pp: url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8 url: jdbc:mysql://127.0.0.1:3306/pp?serverTimezone=GMT%2b8 username: root password: beibo.123/ driver-class-name: com.mysql.cj.jdbc.Driver sd: url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8 url: jdbc:mysql://127.0.0.1:3306/sd?serverTimezone=GMT%2b8 username: root password: beibo.123/ driver-class-name: com.mysql.cj.jdbc.Driver