From 9f03850e058066a7c7bb3a3320c5010bb9d162d2 Mon Sep 17 00:00:00 2001 From: wangfei <3597712270@qq.com> Date: 星期一, 09 十二月 2024 13:48:49 +0800 Subject: [PATCH] 大理片笼表格更改,新增调度开关,钢化调整版图大小 --- hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java | 33 +++++++++++++++++++++------------ 1 files changed, 21 insertions(+), 12 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java index 44e8033..ac0d729 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java @@ -53,6 +53,9 @@ @Value("${mes.glassGap}") private Integer glassGap; + @Value("${mes.slotWidth}") + private Integer slotWidth; + //杩涚墖閫昏緫 @Override public BigStorageCageDetails feedGlass(GlassInfo glassInfo, BigStorageCageDetails bigStorageCageDetails) { @@ -194,13 +197,10 @@ .orderByDesc(GlassInfo::getTemperingFeedSequence); List<GlassInfo> glassInfoList = glassInfoService.list(glassInfoWrapper); if (glassInfoList.size() == Integer.parseInt(temperingNo.toString())) { - for (GlassInfo glassInfo : glassInfoList - ) { - + for (GlassInfo glassInfo : glassInfoList) { TemperingGlassInfo temperingGlassInfo = new TemperingGlassInfo(); BeanUtils.copyProperties(glassInfo, temperingGlassInfo); temperingGlassInfoService.save(temperingGlassInfo); - } key = true; } @@ -221,12 +221,12 @@ LambdaQueryWrapper<BigStorageCageDetails> bigStorageCageDetailsWrapper = new LambdaQueryWrapper(); bigStorageCageDetailsWrapper .eq(BigStorageCageDetails::getSlot, slot) - .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL); + .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL); List<BigStorageCageDetails> bigStorageCageDetailsList = bigStorageCageDetailsMapper.selectList(bigStorageCageDetailsWrapper); for (BigStorageCageDetails bigStorageCageDetails : bigStorageCageDetailsList ) { - double widths = bigStorageCageDetails.getWidth(); + double widths = Math.max(bigStorageCageDetails.getWidth(), bigStorageCageDetails.getHeight()); width = width - widths - glassGap; } //淇敼鏍煎瓙鍓╀綑瀹藉害 @@ -243,9 +243,9 @@ MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(BigStorageCage.class).selectCollection(BigStorageCageDetails.class, BigStorageCage::getBigStorageCageDetails) .leftJoin(BigStorageCageDetails.class, on -> on.eq(BigStorageCageDetails::getSlot, BigStorageCage::getSlot) - .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL,Const.GLASS_STATE_OUT_ING)) - .orderByAsc(BigStorageCage::getDeviceId) - .orderByAsc(BigStorageCage::getSlot); + .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL, Const.GLASS_STATE_OUT_ING)) + .orderByAsc(BigStorageCage::getDeviceId) + .orderByAsc(BigStorageCage::getSlot); return bigStorageCageMapper.selectJoinList(BigStorageCage.class, wrapper); } @@ -256,7 +256,7 @@ MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(BigStorageCage.class).selectCollection(BigStorageCageDetails.class, BigStorageCage::getBigStorageCageDetails) .leftJoin(BigStorageCageDetails.class, on -> on.eq(BigStorageCageDetails::getSlot, BigStorageCage::getSlot) - .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL,Const.GLASS_STATE_OUT_ING)); + .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL).orderByAsc(BigStorageCageDetails::getUpdateTime)); List<BigStorageCage> bigStorageCages = bigStorageCageMapper.selectJoinList(BigStorageCage.class, wrapper); Map<Integer, List<BigStorageCage>> listMap = bigStorageCages.stream().collect(Collectors.groupingBy(item -> item.getDeviceId())); return listMap; @@ -266,8 +266,7 @@ @Override public List<Map<String, Object>> selectBigStorageCageUsage() { QueryWrapper<BigStorageCage> wrapper = new QueryWrapper<>(); - wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) / COUNT(device_id), 2) AS percentage,SUM(CASE WHEN remain_width = 5000 THEN 1 ELSE 0 END) AS count") - + wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) / COUNT(device_id), 2)*100 AS percentage,SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) AS count") .groupBy("device_id"); List<Map<String, Object>> bigStorageCageUsages = baseMapper.selectMaps(wrapper); @@ -283,4 +282,14 @@ bigStorageCageWrapper.eq(BigStorageCage::getSlot, slot); baseMapper.update(bigStorageCage, bigStorageCageWrapper); } + + @Override + public List<Integer> queryFreeDeviceByUsed(double thickness) { + return baseMapper.queryFreeDeviceByUsed(thickness); + } + +// @Override +// public List<Integer> queryFreeDeviceByNotUsed(double thickness) { +// return baseMapper.queryFreeDeviceByNotUsed(thickness); +// } } -- Gitblit v1.8.0