From b64ef67b6950301c5e808cbb709248e341a3e6a2 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期五, 20 十二月 2024 22:53:14 +0800
Subject: [PATCH] 1、大理片笼及中空大理片笼自动报工,增加过渡台限制(高度超过2500或者厚度超过12) 2、卧理报工
---
hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageHollowTask.java | 43 +++++++++++++++++++++++++++++++++++++++++--
1 files changed, 41 insertions(+), 2 deletions(-)
diff --git a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageHollowTask.java b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageHollowTask.java
index dfd6891..d7e8364 100644
--- a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageHollowTask.java
+++ b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageHollowTask.java
@@ -78,6 +78,10 @@
private static final String BIG_STORAGE_CAGE_IN_TWO_TASK = "big_storage_cage_in_two_task";
private static final String BIG_STORAGE_CAGE_OUT_TWO_TASK = "big_storage_cage_out_two_task";
+ /**
+ * 鐩撮�氭牸瀛�
+ */
+ private static final Integer THROUGH_SLOT = 920;
@Autowired(required = false)
MiloService miloService;
@Resource
@@ -94,6 +98,11 @@
@Value("${mes.outCarMaxSize}")
private Integer outCarMaxSize;
+
+ @Value("${mes.slotMaxHeight}")
+ private Integer slotMaxHeight;
+ @Value("${mes.slotMaxthickness}")
+ private Integer slotMaxthickness;
@Scheduled(fixedDelay = 1000)
public void inBigStorageTask() throws Exception {
@@ -154,10 +163,40 @@
//todo:鍚憄lc鍙戦�佹姤璀�
return;
}
+ //鎸夌収鐜荤拑鍘氬害鍒嗙粍锛屽垽鏂墿浣欐牸瀛愭槸鍚﹀彲浠ュ瓨鏀�
+ Map<Double, Long> thickCountMap = glassInfoList.stream().collect(Collectors.groupingBy(GlassInfo::getThickness, Collectors.counting()));
+ for (Map.Entry<Double, Long> entry : thickCountMap.entrySet()) {
+ int count = hollowBigStorageCageService.count(new LambdaQueryWrapper<HollowBigStorageCage>()
+ .eq(HollowBigStorageCage::getEnableState, Const.SLOT_ON).eq(HollowBigStorageCage::getRemainWidth, slotWidth)
+ .le(HollowBigStorageCage::getMinThickness, entry.getKey())
+ .ge(HollowBigStorageCage::getMaxThickness, entry.getKey()));
+ if (count < entry.getValue()) {
+ log.info("绗煎唴鏍煎瓙鍓╀綑鏁伴噺涓嶈冻锛岀粨鏉熸湰娆¤繘鐗�");
+ //todo:鍚憄lc鍙戦�佹姤璀�
+ return;
+ }
+ }
+ //todo:瓒呭ぇ灏哄
+ if (slotMaxHeight < Math.min(glassInfoList.get(0).getWidth(), glassInfoList.get(0).getHeight()) || glassInfoList.get(0).getThickness() > slotMaxthickness) {
+ int count = hollowBigStorageCageDetailsService.count(new LambdaQueryWrapper<HollowBigStorageCageDetails>()
+ .eq(HollowBigStorageCageDetails::getSlot, THROUGH_SLOT)
+ .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL));
+ if (count > 0) {
+ log.info("鐩撮�氱墖鍙板瓨鍦ㄧ幓鐠冿紝缁撴潫鏈杩涚墖");
+ //todo:鍚憄lc鍙戦�佹姤璀�
+ return;
+ }
+ }
+
+ log.info("灏嗛挗鍖栧皬鐗囪〃鍐呯殑鐘舵�佹敼涓洪挗鍖栫粨鏉燂紝鐜荤拑id鏈夛細{}", glassIdList);
//淇敼閽㈠寲浠诲姟琛ㄤ腑鐨勭姸鎬�
temperingGlassInfoService.update(new LambdaUpdateWrapper<TemperingGlassInfo>()
.set(TemperingGlassInfo::getState, Const.TEMPERING_END).in(TemperingGlassInfo::getGlassId, glassIdList));
-
+ //鎶ュ伐
+ log.info("灏嗘帴鏀跺埌鐨勭幓鐠冭繘琛岄挗鍖栬嚜鍔ㄦ姤宸ワ紝鐜荤拑id鏈夛細{}", glassIdList);
+ for (String glass : glassIdList) {
+ damageService.autoSubmitReport(glass, inTaskList.get(0).getStartSlot(), "閽㈠寲", "杩涗腑绌虹悊鐗囩");
+ }
Map<String, List<GlassInfo>> glassListMap = glassInfoList.stream().collect(Collectors.groupingBy(GlassInfo::getGlassId));
//璁$畻鐩爣鏍煎瓙
@@ -766,7 +805,7 @@
targetSlot = storageCage.getSlot();
hollowBigStorageCageService.update(new LambdaUpdateWrapper<HollowBigStorageCage>()
.set(HollowBigStorageCage::getRemainWidth, 0).eq(HollowBigStorageCage::getSlot, targetSlot));
- }else{
+ } else {
resultList = tempList;
}
totalLayer = 0;
--
Gitblit v1.8.0