From 13f27508b758b40691274afb661c8210d258de40 Mon Sep 17 00:00:00 2001 From: wuyouming666 <2265557248@qq.com> Date: 星期一, 29 四月 2024 09:40:58 +0800 Subject: [PATCH] 增加优先满架出片条件 --- hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java | 180 +++++++++++++++++++++++++++++------------------------------ 1 files changed, 88 insertions(+), 92 deletions(-) diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java index c07e1dc..f743807 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageServiceImpl.java @@ -11,6 +11,7 @@ import com.mes.downstorage.entity.DownStorageCageDetails; import com.mes.downstorage.mapper.DownStorageCageDetailsMapper; import com.mes.downstorage.mapper.DownStorageCageMapper; +import com.mes.downstorage.service.DownStorageCageDetailsService; import com.mes.downstorage.service.DownStorageCageService; import com.mes.glassinfo.entity.GlassInfo; import com.mes.glassinfo.service.GlassInfoService; @@ -38,10 +39,11 @@ @Autowired private GlassInfoService glassInfoService; - @Autowired - private DownStorageCageService downStorageCageService; + @Autowired private DownGlassTaskService downGlassTaskService; + @Autowired + private DownStorageCageDetailsService downStorageCageDetailsService; @Override public List<Map> gettask(){ downStorageCageMapper.selectList(null); @@ -65,20 +67,17 @@ } -// @Override -// public List<Map> getCacheOut(int start, int end) { -// log.info(" 鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�"); -// List<Map> map = downStorageCageMapper.selectJoinList( -// Map.class, new MPJQueryWrapper<DownStorageCageDetails>() -// .select("escd.*") -// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") -// .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") -// .isNotNull("escd.slot") -// .between("dw.workstation_id", start, end) -// .orderByAsc("escd.tempering_layout_id, escd.tempering_feed_sequence") -// ); -// return map; -// } + @Override + public List<Map> selectCacheEmpty(){ + return baseMapper.selectJoinList( + Map.class,new MPJQueryWrapper<DownStorageCage>().selectAll(DownStorageCage.class) + .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height") + .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot") + .isNull("escd.slot") + ); + } + + @@ -196,22 +195,6 @@ } -// @Override -// public List<DownStorageCageDetails> Out() { -// log.info("鍗曠墖鎯呭喌 鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓уぇ灏忓嚭鐗囩殑灏忕墖"); -// -// -// return downStorageCageMapper.selectJoinList( -// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() -// .select("escd.*") -// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") -// .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") -// .isNotNull("escd.slot") -// -// .orderByDesc("escd.width") -// .orderByDesc("escd.height") -// ); -// } @@ -220,6 +203,53 @@ + + + + + + + + + + + + + + + + + + public DownGlassTask createDownGlassTask(GlassInfo glassInfo, String startCell, String endCell,String taskType ) { + DownGlassTask downGlassTask = new DownGlassTask(); + downGlassTask.setId(glassInfo.getId()); + downGlassTask.setStartCell(startCell); + downGlassTask.setTaskType(taskType); + downGlassTask.setEndCell(endCell); + downGlassTask.setWidth(glassInfo.getWidth()); + downGlassTask.setHeight(glassInfo.getHeight()); + downGlassTask.setFilmsid(String.valueOf(glassInfo.getFilmsid())); + downGlassTask.setThickness(glassInfo.getThickness()); + downGlassTask.setFlowCardId(glassInfo.getFlowcardId()); + + return downGlassTask; + } + + + public DownGlassTask createDownGlassTask(DownStorageCageDetails glassInfo, String startCell, String endCell,String taskType ) { + DownGlassTask downGlassTask = new DownGlassTask(); + downGlassTask.setId(glassInfo.getId()); + downGlassTask.setStartCell(startCell); + downGlassTask.setTaskType(taskType); + downGlassTask.setEndCell(endCell); + downGlassTask.setWidth(glassInfo.getWidth()); + downGlassTask.setHeight(glassInfo.getHeight()); + downGlassTask.setFilmsid(String.valueOf(glassInfo.getFilmsid())); + downGlassTask.setThickness(glassInfo.getThickness()); + downGlassTask.setFlowCardId(glassInfo.getFlowCardId()); + + return downGlassTask; + } @Override @@ -227,12 +257,17 @@ //鎸塱d鏌ヨ鐜荤拑淇℃伅琛ㄩ噷鐨勭幓鐠� GlassInfo GlassInfo = glassInfoService.selectGlassId(Number); - PlcParameterObject plcmes = PLCAutoMes.PlcMesObject; + PlcParameterObject plcmes = PLCAutoMes.PlcMesObject; //瀛樺湪姝ょ幓鐠冪紪鍙� if (GlassInfo != null) { //鍚屾壘鍒板悓娴佺▼鍗¢檮杩戠┖鏍� List<DownStorageCageDetails> list = getIsExistIntoCacheByflowcardid(GlassInfo.getFlowcardId(), GlassInfo.getWidth()); - if (list.size() > 0) { + + List<Map> selectCacheEmpty=selectCacheEmpty(); + + // list<Map> list=selectCacheEmpty(); +// list<Map> = downStorageCageService.selectCacheEmpty(); + if (selectCacheEmpty.size() > 0) { //瀛樺湪绌烘牸 //1.鐢熸垚浠诲姟锛� 璧峰浣嶇疆0 缁撴潫浣嶇疆this.slot 浠诲姟绫诲瀷 1 锛堣繘鐗囦换鍔★級 //2.鍥炲 1杩涚墖 @@ -240,19 +275,11 @@ //selectInfo.insertCacheTask(GlassInfo.getId() + "", "0", item.getSlot() + "", "1", GlassInfo.getWidth(), GlassInfo.getHeight(), GlassInfo.getFilmsid(), GlassInfo.getThickness(), GlassInfo.getFlowcardId()); - DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(GlassInfo.getId()); - downGlassTask.setStartCell("0"); - downGlassTask.setTaskType("1"); - downGlassTask.setEndCell(item.getSlot()+""); - downGlassTask.setWidth(GlassInfo.getWidth()); - downGlassTask.setHeight(GlassInfo.getHeight()); - downGlassTask.setFilmsid(GlassInfo.getFilmsid()+""); - downGlassTask.setThickness(GlassInfo.getThickness()); - downGlassTask.setFlowCardId(GlassInfo.getFlowcardId()); + DownGlassTask downGlassTask = createDownGlassTask(GlassInfo,"0",item.getSlot()+"","1"); + downGlassTaskService.insertCacheTask(downGlassTask); - S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); + S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1); //瀹屾垚鍚庢彃鍏ュ皬鐗囨暟鎹埌缂撳瓨琛� @@ -279,10 +306,11 @@ PlcParameterObject plcmes = PLCAutoMes.PlcMesObject; - List<DownStorageCageDetails> list = getCacheOut(1, 5); - List<DownStorageCageDetails> list2 = getCacheOut(6, 10); - List<DownStorageCageDetails> list3 = getCacheOut(1, 10); + List<DownStorageCageDetails> list = downStorageCageDetailsService.CacheOut(1, 5); + List<DownStorageCageDetails> list2 = downStorageCageDetailsService.CacheOut(6, 10); + List<DownStorageCageDetails> list3 = downStorageCageDetailsService.CacheOut(1, 10); //鑷姩缁戝畾鏋跺瓙 + @@ -297,16 +325,8 @@ // selectInfo.insertCacheTask(item3.getGlassId() + "", "0", endcell, "2", item3.getWidth(), item3.getHeight(), item3.getFilmsid(), item3.getThickness(), item3.getFlowCardId()); - DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(item3.getId()); // 璁剧疆鐜荤拑ID - downGlassTask.setStartCell("0"); - downGlassTask.setEndCell(endcell); - downGlassTask.setTaskType("2"); - downGlassTask.setWidth(item3.getWidth()); // 璁剧疆鐜荤拑瀹藉害 - downGlassTask.setHeight(item3.getHeight()); // 璁剧疆鐜荤拑楂樺害 - downGlassTask.setFilmsid(item3.getFilmsid()+""); // 璁剧疆鑶淚D - downGlassTask.setThickness(item3.getThickness()); // 璁剧疆鐜荤拑鍘氬害 - downGlassTask.setFlowCardId(item3.getFlowCardId()); // 璁剧疆娴佺▼鍗″彿 + DownGlassTask downGlassTask =createDownGlassTask(item3,"0",endcell,"2"); + downGlassTaskService.insertCacheTask(downGlassTask); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); @@ -315,22 +335,14 @@ } - //鍚屾椂璇锋眰 浼樺厛鍚庣鍑虹墖 - else if (!list3.isEmpty()) { - DownStorageCageDetails item3 = list3.get(0); + //濡傛灉鍚屾椂鍓嶅悗绔兘绌洪棽 浼樺厛鍚庣鍑虹墖骞朵笖浼樺厛婊℃灦 + else if (!list3.isEmpty()&&!list2.isEmpty()) { + + DownStorageCageDetails item3 = list2.get(0); String endcell = "11"; String SendEndcell = "1"; // selectInfo.insertCacheTask(item3.getGlassId() + "", "0", endcell, "2", item3.getWidth(), item3.getHeight(), item3.getFilmsid(), item3.getThickness(), item3.getFlowCardId()); - DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(item3.getId()); // 璁剧疆鐜荤拑ID - downGlassTask.setStartCell("0"); - downGlassTask.setEndCell(endcell); - downGlassTask.setTaskType("2"); - downGlassTask.setWidth(item3.getWidth()); // 璁剧疆鐜荤拑瀹藉害 - downGlassTask.setHeight(item3.getHeight()); // 璁剧疆鐜荤拑楂樺害 - downGlassTask.setFilmsid(item3.getFilmsid()+""); // 璁剧疆鑶淚D - downGlassTask.setThickness(item3.getThickness()); // 璁剧疆鐜荤拑鍘氬害 - downGlassTask.setFlowCardId(item3.getFlowCardId()); // 璁剧疆娴佺▼鍗″彿 + DownGlassTask downGlassTask =createDownGlassTask(item3,"0",endcell,"2"); downGlassTaskService.insertCacheTask(downGlassTask); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell); @@ -344,37 +356,21 @@ // 鍑哄埌 G06 //selectInfo.insertCacheTask(item.getGlassId() + "", "0", "06", "2", item.getWidth(), item.getHeight(), item.getFilmsid(), item.getThickness(), item.getFlowCardId()); - DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(item.getId()); // 璁剧疆鐜荤拑ID - downGlassTask.setStartCell("0"); - downGlassTask.setEndCell("06"); - downGlassTask.setTaskType("2"); - downGlassTask.setWidth(item.getWidth()); // 璁剧疆鐜荤拑瀹藉害 - downGlassTask.setHeight(item.getHeight()); // 璁剧疆鐜荤拑楂樺害 - downGlassTask.setFilmsid(item.getFilmsid()+""); // 璁剧疆鑶淚D - downGlassTask.setThickness(item.getThickness()); // 璁剧疆鐜荤拑鍘氬害 - downGlassTask.setFlowCardId(item.getFlowCardId()); // 璁剧疆娴佺▼鍗″彿 + + DownGlassTask downGlassTask =createDownGlassTask(item,"0","06","2"); downGlassTaskService.insertCacheTask(downGlassTask); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1"); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); return true; - // 鎸夌収椤哄簭绗﹀悎鍚庣鍑虹墖 + // 鎸夌収澶у皬绗﹀悎鍚庣鍑虹墖 } else if (!list2.isEmpty()) { DownStorageCageDetails item2 = list2.get(0); // 鍑哄埌 G11 // selectInfo.insertCacheTask(item2.getGlassId() + "", "0", "11", "2", item2.getWidth(), item2.getHeight(), item2.getFilmsid(), item2.getThickness(), item2.getFlowCardId()); - DownGlassTask downGlassTask = new DownGlassTask(); - downGlassTask.setId(item2.getId()); // 璁剧疆鐜荤拑ID - downGlassTask.setStartCell("0"); - downGlassTask.setEndCell("11"); - downGlassTask.setTaskType("2"); - downGlassTask.setWidth(item2.getWidth()); // 璁剧疆鐜荤拑瀹藉害 - downGlassTask.setHeight(item2.getHeight()); // 璁剧疆鐜荤拑楂樺害 - downGlassTask.setFilmsid(item2.getFilmsid()+""); // 璁剧疆鑶淚D - downGlassTask.setThickness(item2.getThickness()); // 璁剧疆鐜荤拑鍘氬害 - downGlassTask.setFlowCardId(item2.getFlowCardId()); // 璁剧疆娴佺▼鍗″彿 + DownGlassTask downGlassTask =createDownGlassTask(item2,"0","11","2"); downGlassTaskService.insertCacheTask(downGlassTask); S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "2"); -- Gitblit v1.8.0