From 21092d29c1c0cd1003bb32bf91fddae265a8baea Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期三, 20 十一月 2024 08:41:11 +0800
Subject: [PATCH] 1、卧理单条磨边线对接完成,另一条线等待IP确认 2、大理片笼提交部分代码
---
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageTask.java | 79 ++++++++++++++-------------------------
1 files changed, 28 insertions(+), 51 deletions(-)
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageTask.java
index b51000b..076ad78 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageTask.java
@@ -5,10 +5,10 @@
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.kangaroohy.milo.runner.subscription.SubscriptionCallback;
import com.kangaroohy.milo.service.MiloService;
-import com.mes.bigstorage.entity.BigStorageCage;
import com.mes.bigstorage.entity.BigStorageCageDetails;
import com.mes.bigstorage.service.BigStorageCageDetailsService;
-import com.mes.bigstorage.service.BigStorageCageService;
+import com.mes.bigstoragecageIntask.entity.BigStorageCageInTask;
+import com.mes.bigstoragecageIntask.service.BigStorageCageInTaskService;
import com.mes.bigstoragetask.entity.BigStorageCageFeedTask;
import com.mes.bigstoragetask.entity.BigStorageCageOutTask;
import com.mes.bigstoragetask.entity.UpdateBigStorageCageDTO;
@@ -17,19 +17,20 @@
import com.mes.common.config.Const;
import com.mes.damage.entity.Damage;
import com.mes.damage.service.DamageService;
-import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
-import com.mes.glassinfo.service.GlassInfoService;
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.service.TemperingGlassInfoService;
+import com.mes.tools.service.BigStorageBaseService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
import java.util.stream.Collectors;
/**
@@ -38,23 +39,21 @@
@Component
@Slf4j
public class OpcPlcStorageCageTask {
-
- @Resource
- private BigStorageCageService bigStorageCageService;
@Resource
private BigStorageCageDetailsService bigStorageCageDetailsService;
- @Resource
- private GlassInfoService glassInfoService;
@Resource
private BigStorageCageFeedTaskService bigStorageCageFeedTaskService;
@Resource
private BigStorageCageOutTaskService bigStorageCageOutTaskService;
@Resource
- private EdgGlassTaskInfoService edgGlassTaskInfoService;
- @Resource
private TemperingGlassInfoService temperingGlassInfoService;
@Resource
private DamageService damageService;
+
+ @Resource
+ private BigStorageBaseService baseService;
+ @Resource
+ private BigStorageCageInTaskService bigStorageBaseInTaskService;
@Autowired(required = false)
MiloService miloService;
@@ -62,14 +61,6 @@
@Resource(name = "bigStorageStartCallback")
SubscriptionCallback bigStorageStartCallback;
- @Value("${mes.carWidth}")
- private Integer carWidth;
-
- @Value("${mes.slotWidth}")
- private Integer slotWidth;
-
- @Value("${mes.glassGap}")
- private Integer glassGap;
@Scheduled(fixedDelay = Long.MAX_VALUE)
public void startOpcTask() throws Exception {
@@ -81,6 +72,17 @@
public void outOpcTask() throws Exception {
//璁惧1鐨勫嚭鐗囪姹�
miloService.subscriptionFromOpcUa(Arrays.asList("my.device03.x1"), bigStorageStartCallback);
+ }
+
+
+ @Scheduled(fixedDelay = 200)
+ public void inBigStorageTask() {
+ //todo:鑾峰彇杩涚墖浠诲姟琛�
+ List<BigStorageCageInTask> inTaskList = bigStorageBaseInTaskService.queryTaskMessage("big_storage_cage_in_one_task");
+ if (CollectionUtils.isEmpty(inTaskList)) {
+ log.info("褰撳墠澶ц溅鏃犺繘鐗囦换鍔★紝缁撴潫鏈湴瀹氭椂浠诲姟");
+ }
+ inTaskList
}
@@ -108,7 +110,7 @@
bigStorageCageDetailsService.updateBySlot(storageCageDTOList, Const.GLASS_STATE_IN);
log.info("4銆佸ぇ鐞嗙墖绗艰繘鐗囩姸鎬佸凡瀹屾垚宸插畬鎴愮殑鐜荤拑淇℃伅id:{}", inSuccessGlass);
//鏇存柊鐞嗙墖绗肩幓鐠冨昂瀵�
- updateSlotRemainBySlots(inSuccessGlassSlot);
+ baseService.updateSlotRemainBySlots(inSuccessGlassSlot);
log.info("5銆佸ぇ鐞嗙墖绗艰繘鐗囩洰鏍囨牸瀛愬昂瀵告洿鏂板畬鎴�");
}
@@ -153,7 +155,7 @@
List<Integer> outSuccessSlotList = outSuccessGlass.stream().map(BigStorageCageOutTask::getStartSlot).collect(Collectors.toList());
log.info("4銆佸ぇ鐞嗙墖绗煎嚭鐗囩姸鎬佸凡瀹屾垚宸插畬鎴愮殑鐜荤拑淇℃伅id:{}", outSuccessGlass);
//鏇存柊鐞嗙墖绗肩幓鐠冨昂瀵�
- updateSlotRemainBySlots(outSuccessSlotList);
+ baseService.updateSlotRemainBySlots(outSuccessSlotList);
log.info("5銆佸ぇ鐞嗙墖绗艰繘鐗囩洰鏍囨牸瀛愬昂瀵告洿鏂板畬鎴�");
}
}
@@ -190,7 +192,7 @@
//鏇存柊鐞嗙墖绗肩幓鐠冨昂瀵�
List<Integer> slotList = scheduleSuccessGlass.stream().map(BigStorageCageOutTask::getStartSlot).distinct().collect(Collectors.toList());
slotList.addAll(scheduleSuccessGlass.stream().map(BigStorageCageOutTask::getEndSlot).distinct().collect(Collectors.toList()));
- updateSlotRemainBySlots(slotList);
+ baseService.updateSlotRemainBySlots(slotList);
log.info("5銆佸ぇ鐞嗙墖绗艰繘鐗囩洰鏍囨牸瀛愬昂瀵告洿鏂板畬鎴�");
}
}
@@ -230,7 +232,7 @@
slotList.add(bigStorageCageFeedTask.getTargetSlot());
}
//鏇存柊鏍煎瓙鍓╀綑瀹藉害
- updateSlotRemainBySlots(slotList);
+ baseService.updateSlotRemainBySlots(slotList);
log.info("杩涚墖浠诲姟鎵ц瀹屾垚");
}
//鑾峰彇鍑虹墖浠诲姟琛ㄤ腑鐘舵�佷负鐮存崯鐨勬暟鎹�
@@ -258,37 +260,12 @@
slotList.add(bigStorageCageOutTask.getStartSlot());
}
//鏇存柊鏍煎瓙鍓╀綑瀹藉害
- updateSlotRemainBySlots(slotList);
+ baseService.updateSlotRemainBySlots(slotList);
log.info("鍑虹墖浠诲姟鎵ц瀹屾垚");
}
Date endDate = new Date();
log.info("澶х悊鐗囩鐮存崯鐜荤拑娓呴櫎浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
- }
-
- public void updateSlotRemainBySlots(List<Integer> slotList) {
- //鑾峰彇鏍煎瓙鍐呮墍鏈夌殑鐜荤拑淇℃伅
- List<BigStorageCageDetails> inSlotGlassList = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>()
- .in(BigStorageCageDetails::getSlot, slotList).in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL));
- Map<Integer, Double> slotRemainMap = new HashMap<>();
- //鏄惁瀛樺湪鏈夋牸瀛愰潪绌虹殑鐜荤拑
- if (CollectionUtils.isNotEmpty(inSlotGlassList)) {
- //瀛樺湪 灏嗘牸瀛愬唴鐨勭幓鐠冨垎鍒繘琛屾洿鏂�
- slotRemainMap = inSlotGlassList.stream()
- .collect(Collectors.groupingBy(BigStorageCageDetails::getSlot, Collectors.summingDouble(item -> Math.max(item.getWidth(), item.getHeight()) + glassGap)));
- slotRemainMap.forEach((e, v) -> {
- double remainWidth = slotWidth - v >= 0 ? slotWidth - v : 0;
- bigStorageCageService.update(new LambdaUpdateWrapper<BigStorageCage>().set(BigStorageCage::getRemainWidth, remainWidth)
- .eq(BigStorageCage::getSlot, e));
- });
- }
- //杩囨护涓嶅瓨鍦ㄧ幓鐠冪殑鏍煎瓙 灏嗗搴﹂噸缃负鍘熷瀹藉害5000
- Set<Integer> remainSlotList = slotRemainMap.keySet();
- slotList.removeAll(remainSlotList);
- if (CollectionUtils.isNotEmpty(slotList)) {
- bigStorageCageService.update(new LambdaUpdateWrapper<BigStorageCage>().set(BigStorageCage::getRemainWidth, slotWidth)
- .in(BigStorageCage::getSlot, slotList));
- }
}
--
Gitblit v1.8.0