From e9de57df1ef825a3f17b792e9110f24c407c03fb Mon Sep 17 00:00:00 2001 From: ZengTao <2773468879@qq.com> Date: 星期一, 14 十月 2024 08:31:48 +0800 Subject: [PATCH] Merge branch 'hangzhou_master' of http://bore.pub:10439/r/HangZhouMes into hangzhou_master --- hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java | 98 +++++++++++++++++++++++++++++-------------------- 1 files changed, 58 insertions(+), 40 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java index b42a294..869d27c 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java @@ -80,6 +80,12 @@ @Value("${mes.max.secondLength}") private String secondLength; + @Value("${mes.cache.cacheWidth}") + private double cacheWidth; + + @Value("${mes.cache.cacheHeight}") + private double cacheHeight; + @Value("${mes.min.one.firstLength}") private String minOneFirstLength; @@ -94,7 +100,7 @@ public static String engineerId = ""; - @Scheduled(fixedDelay = 1000) + //@Scheduled(fixedDelay = 1000) public void plcHomeEdgTask() { Date startDate = new Date(); log.info("鏈浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate); @@ -124,8 +130,9 @@ log.info("2銆佽幏鍙栧埌鐨勮姹傚瓧涓嶄负0锛屽皢纭瀛椾笉涓�0锛岀洿鎺ョ粨鏉�"); return; } - if ("1".equals(taskRequestTypeValue)) { - log.info("2銆佽繘鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛岃繘鐗囦换鍔�"); + boolean result = edgStorageCageDetailsService.inToVerify(glassIdeValue); + if ("1".equals(taskRequestTypeValue)&&result) { + log.info("2銆佽繘鐗囪姹傦紝涓旂‘璁ゅ瓧涓�0锛屾墽琛岃繘鐗囦换鍔�,鎵爜閲嶅ID楠岃瘉銆愭湁閲嶅=false,鏃犻噸澶�=true銆戯細{}",result); inTo(glassIdeValue, confirmationWrodAddress, currentSlot); } else if ("2".equals(taskRequestTypeValue)) { //09绌洪棽 锛�1 10绌洪棽 锛�2 閮界┖闂诧細3 鍏朵粬0 @@ -137,8 +144,8 @@ //鍔犵瀛愰噷闈㈡槸鍚︽湁鐜荤拑锛屾湁鍏堝嚭锛屾棤鐜荤拑鍏堣繘 boolean outFlase = outTo(Integer.parseInt(out08Glassstate), Integer.parseInt(out10Glassstate), confirmationWrodAddress, glassIdeValue, Integer.parseInt(currentSlot)); - log.info("鍑虹墖浠诲姟鏄惁瀹屾垚锛歿},澶辫触涓旂幓鐠僫d:{}涓嶄负绌哄垯鎵ц杩涚墖浠诲姟", outFlase, glassIdeValue); - if (!outFlase && StringUtils.isNotBlank(glassIdeValue)) { + log.info("鍑虹墖浠诲姟鏄惁瀹屾垚锛歿},涓旂幓鐠僫d:{}涓嶄负绌哄垯鎵ц杩涚墖浠诲姟,鎵爜閲嶅ID楠岃瘉銆愭湁閲嶅=false,鏃犻噸澶�=true銆戯細{}", outFlase, glassIdeValue,result); + if (!outFlase && StringUtils.isNotBlank(glassIdeValue)&&result) { inTo(glassIdeValue, confirmationWrodAddress, currentSlot); } } @@ -146,23 +153,6 @@ log.info("鏈浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms", endDate, endDate.getTime() - startDate.getTime()); } - @Scheduled(fixedDelay = 1000) - public void temperingIsRun() { - JSONObject jsonObject = new JSONObject(); - //姝e湪杩涜鐨勪换鍔� - List<TaskCache> taskCaches = taskCacheService.selectTaskCacheIsRun(); - jsonObject.append("taskCaches", taskCaches); - ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("isRun"); - if (sendwServer != null) { - for (WebSocketServer webserver : sendwServer) { - if (webserver != null) { - webserver.sendMessage(jsonObject.toString()); - } else { - log.info("Home is closed"); - } - } - } - } @Scheduled(fixedDelay = 1000) public void dealDamageTask() { @@ -181,9 +171,9 @@ Damage damage = new Damage(); damage.setGlassId(e.getGlassId()); damage.setLine(e.getEndCell()); - damage.setWorkingProcedure("鍐峰姞宸�"); + damage.setWorkingProcedure("纾ㄨ竟"); damage.setRemark("纾ㄨ竟鍓嶅崸寮忕悊鐗�"); - damage.setStatus(0); + damage.setStatus(1); damage.setType(e.getTaskStatus()); return damage; }).collect(Collectors.toList()); @@ -203,6 +193,16 @@ */ public void inTo(String glassId, String confirmationWrodAddress, String currentSlot) { log.info("1銆佹寜鐓х幓鐠僫d:{}鑾峰彇鐜荤拑灏忕墖淇℃伅,褰撳墠鏍煎瓙涓�:{}", glassId, currentSlot); + + GlassInfo feedGlassInfo = glassInfoService.getOne( + new LambdaQueryWrapper<GlassInfo>() + .eq(GlassInfo::getGlassId,glassId) + ); + if(Math.max(feedGlassInfo.getWidth(),feedGlassInfo.getHeight())>cacheWidth||Math.min(feedGlassInfo.getWidth(),feedGlassInfo.getHeight())>cacheHeight){ + log.info("1.1銆佺幓鐠冭秴杩囧崸寮忕悊鐗囨渶澶у昂瀵�:{}", feedGlassInfo); + return; + } + //娣诲姞杩涚墖浠诲姟 鏌ユ壘绌烘牸 EdgStorageCage nearestEmpty = edgStorageCageService.selectNearestEmpty(Integer.parseInt(currentSlot), Boolean.FALSE); Assert.isTrue(null != nearestEmpty, "鏍煎瓙宸叉弧"); @@ -227,7 +227,6 @@ S7object.getinstance().plccontrol.writeWord(confirmationWrodAddress, 1); log.info("7銆佸彂閫佺‘璁ゅ瓧瀹屾垚"); - } @@ -574,7 +573,7 @@ if (endcell == Const.A10_OUT_TARGET_POSITION) { wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " + "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " + - "on t.glass_id = t1.glass_id and (t1.first_length >= " + minOneFirstLength + " and t1.second_length >= " + minOneSecondLength); + "on t.glass_id = t1.glass_id and (t1.first_length >= " + minOneFirstLength + " and t1.second_length >= " + minOneSecondLength + ")"); } else { wrapper.innerJoin("(select glass_id, case when height <= width then width else height end as first_length, " + "case when width < height then width else height end as second_length from edg_storage_cage_details) t1 " + @@ -671,6 +670,13 @@ 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; @@ -697,7 +703,7 @@ } /** - * 娣诲姞鐞嗙墖绗间换鍔� + * 娣诲姞纾ㄨ竟闃熷垪淇℃伅 * * @param glassInfo * @param endcell @@ -743,20 +749,8 @@ public void CacheGlassTasks() { JSONObject jsonObject = new JSONObject(); List<Map<String, Object>> currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory(); -// List<Map<String, Object>> currentCutTerritorys=new ArrayList<>(); -// if(engineerId==null||engineerId.isEmpty()){ -// //璇嗗埆鎽嗙墖 褰撳墠鐗堝浘鏁版嵁 -// currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory(); -// }else{ -// //璇嗗埆鎽嗙墖 姝ngineerId 宸ョ▼鐗堝浘鏁版嵁 -// currentCutTerritorys = edgStorageCageDetailsService.selectCurrentCutTerritory(engineerId); -// } jsonObject.append("currentCutTerritory", currentCutTerritorys); //log.info("鏈璇嗗埆鐗堝浘{},++++{}",engineerId,currentCutTerritorys); - //纾ㄨ竟淇℃伅 - List<EdgGlassTaskInfo> edgTasks = edgGlassTaskInfoService.selectEdgInfo(); - jsonObject.append("edgTasks", edgTasks); - //鍗у缂撳瓨绗煎唴淇℃伅 List<Map<String, Object>> EdgStorageCageinfos = edgStorageCageService.selectEdgStorageCages(); jsonObject.append("EdgStorageCageinfos", EdgStorageCageinfos); @@ -782,7 +776,7 @@ public void cacheGlassIsRun() { JSONObject jsonObject = new JSONObject(); //姝e湪杩涜鐨勪换鍔� - List<TaskCache> taskCaches = taskCacheService.selectTaskCacheIsRun(); + List<EdgGlassTaskInfo> taskCaches = edgGlassTaskInfoService.selectTaskCacheIsRun(); jsonObject.append("taskCaches", taskCaches); ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlassIsRun"); if (sendwServer != null) { @@ -796,4 +790,28 @@ } } + @Scheduled(fixedDelay = 1000) + public void CacheGlassTaskss() { + JSONObject jsonObject = new JSONObject(); + //log.info("鏈璇嗗埆鐗堝浘{},++++{}",engineerId,currentCutTerritorys); + //纾ㄨ竟淇℃伅 + List<EdgGlassTaskInfo> edgTasks = edgGlassTaskInfoService.selectEdgInfo(); + jsonObject.append("edgTasks", edgTasks); + + ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("edgTasks"); + if (sendwServer != null) { + for (WebSocketServer webserver : sendwServer) { + if (webserver != null) { + webserver.sendMessage(jsonObject.toString()); + List<String> messages = webserver.getMessages(); + if (!messages.isEmpty()) { + // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛� + webserver.clearMessages(); + } + } else { + log.info("edgTasks is closed"); + } + } + } + } } -- Gitblit v1.8.0