hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java
@@ -321,12 +321,45 @@ .eq(OptimizeHeatDetail::getProjectNo, current) ); Map<String, List<Map<String, Object>>> groupBy=resultCutTerritory.stream().collect(Collectors.groupingBy(item->item.get("layout_id").toString())); Map<String, List<Map<String, Object>>> groupBy = resultCutTerritory.stream().collect(Collectors.groupingBy(item -> item.get("layout_id").toString())); // List<List<Map<String, Object>>> Result=groupBy.values().stream().collect(Collectors.toList()); List<List<Map<String, Object>>> result=new ArrayList<>(); for (int i=1;i<=groupBy.keySet().size();i++) { String key=i+""; if(key!=null){ List<List<Map<String, Object>>> result = new ArrayList<>(); for (int i = 1; i <= groupBy.keySet().size(); i++) { String key = i + ""; if (key != null) { result.add(groupBy.get(key)); } } return result; } /** * 获取 工程下的钢化版图 * * @param current * @return */ @Override public List<List<Map<String, Object>>> selectTemperingTerritory(String current) { //此工程的所有优化数据 List<Map<String, Object>> resultCutTerritory = optimizeHeatDetailMapper.selectJoinMaps(JoinWrappers.lambda(OptimizeHeatDetail.class) .selectAll(OptimizeHeatDetail.class) .selectAs(OptimizeProject::getLoadWidth, "olWidth") .selectAs(OptimizeProject::getLoadLength, "olHeight") .leftJoin(OptimizeHeatLayout.class, on -> on .eq(OptimizeHeatLayout::getProjectNo, OptimizeHeatDetail::getProjectNo) .eq(OptimizeHeatLayout::getLayoutId, OptimizeHeatDetail::getLayoutId)) .leftJoin(OptimizeProject.class, on -> on .eq(OptimizeProject::getProjectNo, OptimizeHeatLayout::getProjectNo)) .eq(OptimizeHeatDetail::getProjectNo, current) ); Map<String, List<Map<String, Object>>> groupBy = resultCutTerritory.stream().collect(Collectors.groupingBy(item -> item.get("layout_id").toString())); // List<List<Map<String, Object>>> Result=groupBy.values().stream().collect(Collectors.toList()); List<List<Map<String, Object>>> result = new ArrayList<>(); for (int i = 1; i <= groupBy.keySet().size(); i++) { String key = i + ""; if (key != null) { result.add(groupBy.get(key)); } } hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java
@@ -770,6 +770,79 @@ } /** * 保存出片任务相关信息 * * @param glassInfo * @param endcell * @param confirmationWrodAddress * @param glassId * @return */ private boolean saveOutGlassMessageBySlot(EdgStorageCageDetails glassInfo, int endcell, String confirmationWrodAddress, String glassId, Integer currentSlot) { if (glassInfo != null) { log.info("4、添加出片任务,玻璃id:{},任务类型:{},起始位置:{},结束位置:{}", glassInfo.getGlassId(), 2, glassInfo.getSlot(), endcell); if (glassInfo.getGlassId().equals(glassId)) { log.info("5、直通任务,将玻璃信息插入卧式理片笼,当前玻璃信息:{}", glassInfo); EdgStorageCageDetails details = new EdgStorageCageDetails(); //玻璃信息替换 String glassIdChange = queryAndChangeGlass(glassId); if (StringUtils.isBlank(glassIdChange)) { BeanUtils.copyProperties(glassInfo, details); } else { GlassInfo one = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId)); BeanUtils.copyProperties(glassInfo, details); } EdgStorageCage nearestEmpty = edgStorageCageService.selectNearestEmpty(currentSlot, Boolean.TRUE); Assert.isTrue(null != nearestEmpty, "格子已满,无法执行直通任务"); log.info("3、查询卧式理片笼里面的空格:{}", nearestEmpty); details.setSlot(nearestEmpty.getSlot()); details.setState(Const.GLASS_STATE_OUT); edgStorageCageDetailsService.save(details); boolean taskCacheStatus = saveTaskCache(glassInfo.getGlassId(), nearestEmpty.getSlot(), endcell, Const.GLASS_CACHE_TYPE_THROUGH); log.info("6、添加出片任务是否完成:{}", taskCacheStatus); } else { log.info("5、非直通任务,将玻璃信息插入卧式理片笼,当前玻璃信息:{}", glassInfo); if (endcell != currentSlot) { EdgStorageCageDetails currentGlass = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>() .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN) .eq(EdgStorageCageDetails::getSlot, currentSlot).eq(EdgStorageCageDetails::getWidth, glassInfo.getWidth()) .eq(EdgStorageCageDetails::getHeight, glassInfo.getHeight()).eq(EdgStorageCageDetails::getThickness, glassInfo.getThickness()) ); if (null != currentGlass) { glassInfo = currentGlass; endcell = currentSlot; } } //玻璃信息替换 String glassIdChange = queryAndChangeGlass(glassInfo.getGlassId()); //处理在卧理内的玻璃信息:笼内的数据处理 queryEdgAndChangeGlass(glassInfo.getGlassId(), glassIdChange); LambdaUpdateWrapper<EdgStorageCageDetails> wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(EdgStorageCageDetails::getGlassId, glassInfo.getGlassId()).set(EdgStorageCageDetails::getState, Const.GLASS_STATE_OUT); edgStorageCageDetailsService.update(wrapper); log.info("5、更新出片玻璃的状态为{}", Const.GLASS_STATE_OUT); boolean taskCacheStatus = saveTaskCache(glassInfo.getGlassId(), glassInfo.getSlot(), endcell, Const.GLASS_CACHE_TYPE_OUT); log.info("6、添加出片任务是否完成:{}", taskCacheStatus); } boolean glassSizeStatus = saveGlassSize(glassInfo, endcell); log.info("7、添加出片玻璃尺寸信息到磨边前玻璃表是否完成:{}", glassSizeStatus); S7object.getinstance().plccontrol.writeWord(confirmationWrodAddress, 1); log.info("8、发送确认字已完成"); Damage damage = new Damage(); damage.setGlassId(glassInfo.getGlassId()); damage.setWorkingProcedure("切割"); damage.setLine(1001); damage.setType(1); damage.setRemark("过卧式理片"); damageService.insertDamage(damage); return Boolean.TRUE; } return Boolean.FALSE; } /** * 添加理片笼任务 * * @param glassId hangzhoumesParent/moduleService/TemperingGlassModule/src/main/resources/application.yml
@@ -23,4 +23,14 @@ endpoint: opc.tcp://zidonghua:49320 security-policy: basic256sha256 username: zsh password: 1qaz2wsx3edc4rfv kangaroohy: milo: enabled: false primary: default config: default: endpoint: opc.tcp://zidonghua:49320 security-policy: basic256sha256 username: zsh password: 1qaz2wsx3edc4rfv hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/application.yml
File was deleted pom.xml
File was deleted