hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
@@ -17,6 +17,6 @@ public interface BigStorageCageMapper extends MPJBaseMapper<BigStorageCage> { List<Integer> queryFreeDeviceByUsed(@Param(value = "thickness") double thickness); List<Integer> queryFreeDeviceByNotUsed(@Param(value = "thickness") double thickness); // // List<Integer> queryFreeDeviceByNotUsed(@Param(value = "thickness") double thickness); } hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
@@ -34,5 +34,5 @@ List<Integer> queryFreeDeviceByUsed(double thickness); List<Integer> queryFreeDeviceByNotUsed(double thickness); // List<Integer> queryFreeDeviceByNotUsed(double thickness); } hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -322,22 +322,22 @@ } //获取玻璃的厚度:重新选笼子需要按照笼子可放玻璃厚度进行选择 List<Integer> deviceNotUsedList = bigStorageCageService.queryFreeDeviceByNotUsed(glassInfo.getThickness()); for (Integer item : deviceNotUsedList) { bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>() .eq(BigStorageCage::getRemainWidth, slotWidth) .eq(BigStorageCage::getEnableState, Const.SLOT_ON) .eq(BigStorageCage::getDeviceId, item) .last("limit 1")); if (null != bigStorageCage) { log.info("按照存笼玻璃格子数剩余最多得方式获取信息版图id:{},格子:{},玻璃id:{}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId()); bigStorageDTO = new BigStorageDTO(); bigStorageDTO.setWidth(bigStorageCage.getRemainWidth()); bigStorageDTO.setSlot(bigStorageCage.getSlot()); bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId()); return bigStorageDTO; } } // List<Integer> deviceNotUsedList = bigStorageCageService.queryFreeDeviceByNotUsed(glassInfo.getThickness()); // for (Integer item : deviceNotUsedList) { // bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>() // .eq(BigStorageCage::getRemainWidth, slotWidth) // .eq(BigStorageCage::getEnableState, Const.SLOT_ON) // .eq(BigStorageCage::getDeviceId, item) // .last("limit 1")); // if (null != bigStorageCage) { // log.info("按照存笼玻璃格子数剩余最多得方式获取信息版图id:{},格子:{},玻璃id:{}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId()); // bigStorageDTO = new BigStorageDTO(); // bigStorageDTO.setWidth(bigStorageCage.getRemainWidth()); // bigStorageDTO.setSlot(bigStorageCage.getSlot()); // bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId()); // return bigStorageDTO; // } // } Assert.isTrue(null != bigStorageCage, "没有空余的笼子存放玻璃"); return bigStorageDTO; } hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
@@ -289,8 +289,8 @@ return baseMapper.queryFreeDeviceByUsed(thickness); } @Override public List<Integer> queryFreeDeviceByNotUsed(double thickness) { return baseMapper.queryFreeDeviceByNotUsed(thickness); } // @Override // public List<Integer> queryFreeDeviceByNotUsed(double thickness) { // return baseMapper.queryFreeDeviceByNotUsed(thickness); // } } hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
@@ -6,24 +6,25 @@ <select id="queryFreeDeviceByUsed" resultType="java.lang.Integer"> SELECT T.DEVICE_ID FROM BIG_STORAGE_CAGE T LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1 LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 8, 9)) T1 ON T.SLOT = T1.SLOT WHERE T.MAX_THICKNESS >= #{thickness} AND T.ENABLE_STATE = 1 GROUP BY T.DEVICE_ID ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID), ORDER BY COUNT(DISTINCT T1.ENGINEER_ID) COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID), COUNT(DISTINCT T1.SLOT) </select> <select id="queryFreeDeviceByNotUsed" resultType="java.lang.Integer"> SELECT T.DEVICE_ID FROM BIG_STORAGE_CAGE T LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1 ON T.SLOT = T1.SLOT WHERE T.MAX_THICKNESS >= #{thickness} AND T.ENABLE_STATE = 1 GROUP BY T.DEVICE_ID ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID), COUNT(DISTINCT T.SLOT) - COUNT(DISTINCT T1.SLOT) DESC </select> <!-- <select id="queryFreeDeviceByNotUsed" resultType="java.lang.Integer">--> <!-- SELECT T.DEVICE_ID--> <!-- FROM BIG_STORAGE_CAGE T--> <!-- LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 8, 9)) T1--> <!-- ON T.SLOT = T1.SLOT--> <!-- WHERE T.MAX_THICKNESS >= #{thickness}--> <!-- AND T.ENABLE_STATE = 1--> <!-- GROUP BY T.DEVICE_ID--> <!-- ORDER BY COUNT(DISTINCT T1.ENGINEER_ID)--> <!-- COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),--> <!-- COUNT(DISTINCT T.SLOT) - COUNT(DISTINCT T1.SLOT) DESC--> <!-- </select>--> </mapper> hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
@@ -60,6 +60,10 @@ List<Object> temperRecordIdListObj = temporalRecordService.listObjs(new QueryWrapper<TemperingRecord>().select("distinct tempering_layout_id")); List<String> temperRecordIdList = temperRecordIdListObj.stream().map(String::valueOf).collect(Collectors.toList()); if (CollectionUtils.isEmpty(temperRecordIdList)) { log.info("当前系统没有需要钢化的玻璃信息"); return; } List<TemperingGlassInfo> list = temporaryGlassInfoService.list(new LambdaQueryWrapper<TemperingGlassInfo>() .eq(TemperingGlassInfo::getState, Const.TEMPERING_START).notIn(TemperingGlassInfo::getTemperingLayoutId, temperRecordIdList)); if (CollectionUtils.isEmpty(list)) {