From 4d8089f35b577dda064345b6323838649bc99576 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期四, 23 五月 2024 10:12:42 +0800 Subject: [PATCH] 1、上片机修改读写PLC方式 2、修改卧式理片ip地址 --- hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 46 insertions(+), 9 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 e956d94..c0126b4 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 @@ -7,6 +7,7 @@ import com.github.yulichang.query.MPJQueryWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.mes.common.S7object; +import com.mes.common.WebSocketServer; import com.mes.common.config.Const; import com.mes.device.PlcParameterObject; import com.mes.edgglasstask.entity.EdgGlassTaskInfo; @@ -51,6 +52,9 @@ @Autowired EdgGlassTaskInfoService edgGlassTaskInfoService; + + @Autowired + WebSocketServer webServerService; @Value("${mes.threshold}") private int threshold; @@ -113,6 +117,27 @@ } } + public void plcToHomeEdgTask() { + // log.info("鎺ㄦ暟鎹�"); + // jsonObject.append("params", new short[] { 30, 40, }); +// ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("Home"); +// if (sendwServer != null) { +// for (WebSocketServer webserver : sendwServer) { +// webserver.sendMessage(jsonObject.toString()); +// if (webserver != null) { +// +// List<String> messages = webserver.getMessages(); +// +// if (!messages.isEmpty()) { +// // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛� +// webserver.clearMessages(); +// } +// } +// +// } +// } + } + /** * 杩涚墖浠诲姟 * @@ -123,6 +148,7 @@ private void inTo(String glassId, String confirmationWrodAddress, String currentSlot) { log.info("1銆佹寜鐓х幓鐠僫d:{}鑾峰彇鐜荤拑灏忕墖淇℃伅,褰撳墠鏍煎瓙涓�:{}", glassId, currentSlot); GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId)); + //TODO: 鏌ヨ鐜荤拑 if (glassInfo == null) { log.info("2銆佹鐜荤拑缂栧彿涓嶅瓨鍦�"); return; @@ -191,7 +217,7 @@ } EdgStorageCageDetails a09EdgGlass = queryGlassByTaskCache(Const.A09_OUT_TARGET_POSITION, Const.GLASS_CACHE_TYPE_OUT); EdgStorageCageDetails a10EdgGlass = queryGlassByTaskCache(Const.A10_OUT_TARGET_POSITION, Const.GLASS_CACHE_TYPE_OUT); - endcell = queryLineByGlassInfo(a09EdgGlass, a10EdgGlass, glassInfo, out08Glassstate, out08Glassstate); + endcell = queryLineByGlassInfo(a09EdgGlass, a10EdgGlass, glassInfo, out08Glassstate, out10Glassstate); } else { //鍒ゆ柇涓ゆ潯绾挎槸鍚﹂兘绌洪棽 endcell = out08Glassstate == 1 ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION; @@ -233,8 +259,12 @@ //鑾峰彇绗煎唴鎵�鏈夌幓鐠冧俊鎭紝鍖呮嫭寰呰繘鐗囩殑 List<EdgStorageCageDetails> glassList = queryEdgAllGlass(glassId); Assert.isTrue(CollectionUtil.isNotEmpty(glassList), "绗煎唴鍜屽緟杩涚墖閮芥病鏈夌幓鐠�"); - int othercell = endcell == Const.A10_OUT_TARGET_POSITION ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION; - glassInfo = queryChangeGlassInfo(othercell, glassId); + if (glassList.size() == 1 && glassId.equals(glassList.get(0).getGlassId())) { + glassInfo = glassList.get(0); + } else { + int othercell = endcell == Const.A10_OUT_TARGET_POSITION ? Const.A09_OUT_TARGET_POSITION : Const.A10_OUT_TARGET_POSITION; + glassInfo = queryChangeGlassInfo(othercell, glassId); + } } } } @@ -249,11 +279,14 @@ private List<EdgStorageCageDetails> queryEdgAllGlass(String glassId) { List<EdgStorageCageDetails> glassList = new ArrayList<>(); //鑾峰彇寰呰繘鐗囩幓鐠� - GlassInfo one = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>() - .eq(GlassInfo::getGlassId, glassId)); - EdgStorageCageDetails resultDetails = new EdgStorageCageDetails(); - BeanUtils.copyProperties(one, resultDetails); - glassList.add(resultDetails); + //todo: 鑾峰彇姝e湪鎵ц鐨勫伐绋嬩俊鎭� + if (StringUtils.isNotBlank(glassId)) { + GlassInfo one = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>() + .eq(GlassInfo::getGlassId, glassId)); + EdgStorageCageDetails resultDetails = new EdgStorageCageDetails(); + BeanUtils.copyProperties(one, resultDetails); + glassList.add(resultDetails); + } //鑾峰彇绗煎唴鐜荤拑 List<EdgStorageCageDetails> details = edgStorageCageDetailsService.list(new LambdaQueryWrapper<EdgStorageCageDetails>() .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)); @@ -399,9 +432,13 @@ MPJLambdaWrapper<EdgStorageCageDetails> wrapper = new MPJLambdaWrapper<>(); wrapper.select(EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight) .selectCount(EdgStorageCageDetails::getGlassId, EdgStorageCageDetails::getCount) + .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN) .groupBy(EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight) .last("order by count(t.glass_id) desc limit 2"); List<EdgStorageCageDetails> list = edgStorageCageDetailsService.list(wrapper); + if (CollectionUtil.isEmpty(list)) { + return null; + } log.info("鑾峰彇绗煎瓙鍐呮暟閲忓墠浜岀殑鐜荤拑鏁伴噺锛歿}", list); //鑾峰彇瀹介珮鎷嶇涓�鐨勭幓鐠冧俊鎭� EdgStorageCageDetails firstSize = list.get(0); @@ -526,7 +563,7 @@ private boolean saveGlassSize(EdgStorageCageDetails glassInfo) { EdgGlassTaskInfo edgGlassTaskInfo = new EdgGlassTaskInfo(); BeanUtils.copyProperties(glassInfo, edgGlassTaskInfo); - edgGlassTaskInfo.setHeight((int) (glassInfo.getEdgHeight() * ratio)); + edgGlassTaskInfo.setHeight((int) (glassInfo.getHeight() * ratio)); edgGlassTaskInfo.setWidth((int) (glassInfo.getWidth() * ratio)); edgGlassTaskInfo.setThickness((int) (glassInfo.getThickness() * ratio)); edgGlassTaskInfo.setStatus(Const.EDG_GLASS_BEFORE); -- Gitblit v1.8.0