From fd35c0ee025e8f5471acd4075af33b9f59f4d817 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期四, 05 十二月 2024 13:39:11 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/YiWuProject
---
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java | 103 +++++++
/dev/null | 38 --
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/CacheGlassTask.java | 69 ----
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageDetailsMapper.xml | 2
hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java | 7
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java | 36 ++
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java | 4
hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java | 10
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassStartCallback.java | 552 +++++++++++++++++++-------------------
9 files changed, 416 insertions(+), 405 deletions(-)
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
index 3c358ef..6be3bd5 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
@@ -114,14 +114,16 @@
{
List<TemperingGlassInfo> result=null;
QueryWrapper<TemperingGlassInfo> wrapper = new QueryWrapper<>();
- wrapper.select("Top 1 *").in("state",1,0).eq("temperingLayoutId",id);
+ wrapper.select("Top 1 *").in("state",1,0).eq("tempering_layout_id",id);
TemperingGlassInfo glass=temperingMapper.selectOne(wrapper);
if(glass!=null) {
QueryWrapper<TemperingGlassInfo> glassinfo = new QueryWrapper<>();
glassinfo.eq("engineer_id", glass.getEngineerId())
- .eq("tempering_layout_id", id);
- //return temperingMapper.selectList(glassinfo);
- result= temperingMapper.selectByEngineerIdAndLayoutId(glass.getEngineerId(),glass.getTemperingLayoutId());
+ .eq("tempering_layout_id", id)
+ .orderByDesc("tempering_layout_id")
+ .orderByAsc("tempering_feed_sequence");
+ return temperingMapper.selectList(glassinfo);
+// result= temperingMapper.selectByEngineerIdAndLayoutId(glass.getEngineerId(),glass.getTemperingLayoutId());
}
return result;
}
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 2e352b0..b120c03 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
@@ -872,73 +872,4 @@
}
}
- // @Scheduled(fixedDelay = 1000)
- public void CacheGlassTasks() {
- JSONObject jsonObject = new JSONObject();
- List<Map<String, Object>> currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory();
- jsonObject.append("currentCutTerritory", currentCutTerritorys);
- //log.info("鏈璇嗗埆鐗堝浘{},++++{}",engineerId,currentCutTerritorys);
- //鍗у缂撳瓨绗煎唴淇℃伅
- List<Map<String, Object>> EdgStorageCageinfos = edgStorageCageService.selectEdgStorageCages();
- jsonObject.append("EdgStorageCageinfos", EdgStorageCageinfos);
-
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlass");
- 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("Home is closed");
- }
- }
- }
- }
-
- // @Scheduled(fixedDelay = 1000)
- public void cacheGlassIsRun() {
- JSONObject jsonObject = new JSONObject();
- //姝e湪杩涜鐨勪换鍔�
- List<EdgGlassTaskInfo> taskCaches = edgGlassTaskInfoService.selectTaskCacheIsRun();
- jsonObject.append("taskCaches", taskCaches);
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlassIsRun");
- 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 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");
- }
- }
- }
- }
}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
new file mode 100644
index 0000000..cdbe706
--- /dev/null
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
@@ -0,0 +1,103 @@
+package com.mes.job;
+
+import cn.hutool.json.JSONObject;
+import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
+import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
+import com.mes.edgstoragecage.service.EdgStorageCageDetailsService;
+import com.mes.edgstoragecage.service.EdgStorageCageService;
+import com.mes.tools.WebSocketServer;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author : zhoush
+ * @Date: 2024/12/4 9:41
+ * @Description:
+ */
+@Component
+@Slf4j
+public class PushMessageToIndex {
+
+ @Resource
+ EdgStorageCageDetailsService edgStorageCageDetailsService;
+ @Resource
+ EdgStorageCageService edgStorageCageService;
+ @Resource
+ EdgGlassTaskInfoService edgGlassTaskInfoService;
+
+ @Scheduled(fixedDelay = 1000)
+ public void CacheGlassTasks() {
+ JSONObject jsonObject = new JSONObject();
+ List<Map<String, Object>> currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory();
+ jsonObject.append("currentCutTerritory", currentCutTerritorys);
+ //log.info("鏈璇嗗埆鐗堝浘{},++++{}",engineerId,currentCutTerritorys);
+ //鍗у缂撳瓨绗煎唴淇℃伅
+ List<Map<String, Object>> EdgStorageCageinfos = edgStorageCageService.selectEdgStorageCages();
+ jsonObject.append("EdgStorageCageinfos", EdgStorageCageinfos);
+
+ ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlass");
+ 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("Home is closed");
+ }
+ }
+ }
+ }
+
+ @Scheduled(fixedDelay = 1000)
+ public void cacheGlassIsRun() {
+ JSONObject jsonObject = new JSONObject();
+ //姝e湪杩涜鐨勪换鍔�
+ List<EdgGlassTaskInfo> taskCaches = edgGlassTaskInfoService.selectTaskCacheIsRun();
+ jsonObject.append("taskCaches", taskCaches);
+ ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlassIsRun");
+ 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 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");
+ }
+ }
+ }
+ }
+}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassStartCallback.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassStartCallback.java
index 8941f5c..8bc2c33 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassStartCallback.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassStartCallback.java
@@ -1,14 +1,12 @@
package com.mes.job.opccallback;
import cn.hutool.core.collection.CollectionUtil;
-import cn.hutool.core.lang.Assert;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.kangaroohy.milo.runner.subscription.SubscriptionCallback;
import com.mes.common.config.Const;
-import com.mes.edgglasstaskqueueinfo.entity.EdgGlassTaskQueueInfo;
-import com.mes.edgglasstaskqueueinfo.service.EdgGlassTaskQueueInfoService;
+import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
import com.mes.edgstoragecage.entity.EdgStorageCage;
import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
import com.mes.edgstoragecage.service.EdgStorageCageDetailsService;
@@ -54,7 +52,7 @@
EdgStorageDeviceTaskHistoryService edgStorageDeviceTaskHistoryService;
@Resource
- EdgGlassTaskQueueInfoService edgGlassTaskQueueInfoService;
+ EdgGlassTaskInfoService edgGlassTaskInfoService;
@Value("${mes.glassGap}")
private int glassGap;
@@ -68,263 +66,263 @@
@Override
public void onSubscribe(String identifier, Object value) {
- log.info("褰撳墠姝e湪鎵ц鐨勪换鍔′负{}", value);
- String tableName = identifier.contains("edg_storage_device_one_task") ? EDG_STORAGE_DEVICE_ONE_TASK : EDG_STORAGE_DEVICE_TWO_TASK;
- int device = tableName.equals("edg_storage_device_one_task") ? 1 : 2;
- EdgStorageDeviceTask task = edgStorageDeviceTaskService.queryTaskMessage(tableName);
- try {
- if (task == null) {
- log.info("浠诲姟琛ㄥ熀纭�鏁版嵁褰曞叆澶辫触锛岃妫�鏌ユ暟鎹槸鍚﹀綍鍏ユ垚鍔�");
- return;
- }
- if (task.getTaskState() == 2) {
- //闃叉鍑虹墖浠诲姟涓旂鍓嶆湁鐜荤拑鐨勬儏鍐碉紝灏嗚繘鐗噄d缃┖锛屽嵆鍑虹墖浠呰�冭檻绗煎唴鐨勭幓鐠�
- task.setGlassIdIn("");
- }
- int request = Integer.parseInt("" + value);
- log.info("寮�濮嬫墽琛屼换鍔★紝浠诲姟璇蜂俊鎭负{}", task);
- if (request == 0) {
- log.info("鏈敹鍒颁换鍔¤姹傦紝缁撴潫鏈浠诲姟");
- } else if (request == 1) {
- //杩涚墖浠诲姟
- log.info("杩涚墖浠诲姟锛氳繘鐗囩幓鐠僫d涓猴細{}", task.getGlassIdIn());
- intoTask(task, tableName, device);
- } else if (request == 2) {
- //鍑虹墖浠诲姟
- outTask(task, tableName, device);
- } else if (request == 3) {
- //鐩撮�氫换鍔�
- if (!outTask(task, tableName, device)) {
- intoTask(task, tableName, device);
- }
- } else if (request == 4) {
- log.info("灏嗗惎鍔ㄥ瓙鏀逛负0");
- task.setTaskRunning(Const.GLASS_CACHE_TYPE_RUNNING);
- edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
- } else {
- finishTask(task, tableName);
- }
- } catch (Exception e) {
- log.info("鎵ц浠诲姟杩囩▼涓彂鐢熷紓甯革紝浠诲姟瀛梴}锛寋}", task.getTaskState(), e.getMessage());
- log.info("灏嗗惎鍔ㄥ瓙鏀逛负0");
- task.setTaskState(Const.GLASS_CACHE_TYPE_EMPTY);
- edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
- }
+// log.info("褰撳墠姝e湪鎵ц鐨勪换鍔′负{}", value);
+// String tableName = identifier.contains("edg_storage_device_one_task") ? EDG_STORAGE_DEVICE_ONE_TASK : EDG_STORAGE_DEVICE_TWO_TASK;
+// int device = tableName.equals("edg_storage_device_one_task") ? 1 : 2;
+// EdgStorageDeviceTask task = edgStorageDeviceTaskService.queryTaskMessage(tableName);
+// try {
+// if (task == null) {
+// log.info("浠诲姟琛ㄥ熀纭�鏁版嵁褰曞叆澶辫触锛岃妫�鏌ユ暟鎹槸鍚﹀綍鍏ユ垚鍔�");
+// return;
+// }
+// if (task.getTaskState() == 2) {
+// //闃叉鍑虹墖浠诲姟涓旂鍓嶆湁鐜荤拑鐨勬儏鍐碉紝灏嗚繘鐗噄d缃┖锛屽嵆鍑虹墖浠呰�冭檻绗煎唴鐨勭幓鐠�
+// task.setGlassIdIn("");
+// }
+// int request = Integer.parseInt("" + value);
+// log.info("寮�濮嬫墽琛屼换鍔★紝浠诲姟璇蜂俊鎭负{}", task);
+// if (request == 0) {
+// log.info("鏈敹鍒颁换鍔¤姹傦紝缁撴潫鏈浠诲姟");
+// } else if (request == 1) {
+// //杩涚墖浠诲姟
+// log.info("杩涚墖浠诲姟锛氳繘鐗囩幓鐠僫d涓猴細{}", task.getGlassIdIn());
+// intoTask(task, tableName, device);
+// } else if (request == 2) {
+// //鍑虹墖浠诲姟
+// outTask(task, tableName, device);
+// } else if (request == 3) {
+// //鐩撮�氫换鍔�
+// if (!outTask(task, tableName, device)) {
+// intoTask(task, tableName, device);
+// }
+// } else if (request == 4) {
+// log.info("灏嗗惎鍔ㄥ瓙鏀逛负0");
+// task.setTaskRunning(Const.GLASS_CACHE_TYPE_RUNNING);
+// edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
+// } else {
+// finishTask(task, tableName);
+// }
+// } catch (Exception e) {
+// log.info("鎵ц浠诲姟杩囩▼涓彂鐢熷紓甯革紝浠诲姟瀛梴}锛寋}", task.getTaskState(), e.getMessage());
+// log.info("灏嗗惎鍔ㄥ瓙鏀逛负0");
+// task.setTaskState(Const.GLASS_CACHE_TYPE_EMPTY);
+// edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
+// }
}
private boolean intoTask(EdgStorageDeviceTask task, String tableName, int deviceId) {
- //鑾峰彇鐜荤拑鐨勫熀鏈俊鎭�
- GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, task.getGlassIdIn()));
- if (null == glassInfo) {
- log.info("杩涚墖鐜荤拑淇℃伅涓嶅瓨鍦紝鐜荤拑id:{}", task.getGlassIdIn());
- return Boolean.FALSE;
- }
- //鑾峰彇褰撳墠杩涚墖鐜荤拑id鍜岃繘鐗囨牸瀛� 鐩稿悓灏哄鍙互鏀句笅鐨勬牸瀛�
- EdgStorageCage edgStorageCage = edgStorageCageService.getEdgStorageCageBySize(deviceId, glassInfo.getWidth(), glassInfo.getHeight(), task.getCurrentCell());
- if (edgStorageCage == null) {
- log.info("鐩稿悓灏哄鍙互鏀句笅鐨勬牸瀛愭湭鎵惧埌锛屾牸瀛恑d:{}", task.getCurrentCell());
-// SELECT * from edg_storage_cage where device_id = 1 and remain_width > 1000 order by abs(slot - 10)
- List<EdgStorageCage> storageCageList = edgStorageCageService.list(new LambdaQueryWrapper<EdgStorageCage>()
- .eq(EdgStorageCage::getDeviceId, deviceId)
- .eq(EdgStorageCage::getEnableState, Const.SLOT_ON)
- .ge(EdgStorageCage::getRemainWidth, Math.max(glassInfo.getWidth(), glassInfo.getHeight())).last("order by abs(slot - " + task.getCurrentCell() + ")"));
-// //鐩撮�氫换鍔�
-// if (flag && CollectionUtil.isNotEmpty(emptyList)) {
-// return emptyList.get(0);
+// //鑾峰彇鐜荤拑鐨勫熀鏈俊鎭�
+// GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, task.getGlassIdIn()));
+// if (null == glassInfo) {
+// log.info("杩涚墖鐜荤拑淇℃伅涓嶅瓨鍦紝鐜荤拑id:{}", task.getGlassIdIn());
+// return Boolean.FALSE;
+// }
+// //鑾峰彇褰撳墠杩涚墖鐜荤拑id鍜岃繘鐗囨牸瀛� 鐩稿悓灏哄鍙互鏀句笅鐨勬牸瀛�
+// EdgStorageCage edgStorageCage = edgStorageCageService.getEdgStorageCageBySize(deviceId, glassInfo.getWidth(), glassInfo.getHeight(), task.getCurrentCell());
+// if (edgStorageCage == null) {
+// log.info("鐩稿悓灏哄鍙互鏀句笅鐨勬牸瀛愭湭鎵惧埌锛屾牸瀛恑d:{}", task.getCurrentCell());
+//// SELECT * from edg_storage_cage where device_id = 1 and remain_width > 1000 order by abs(slot - 10)
+// List<EdgStorageCage> storageCageList = edgStorageCageService.list(new LambdaQueryWrapper<EdgStorageCage>()
+// .eq(EdgStorageCage::getDeviceId, deviceId)
+// .eq(EdgStorageCage::getEnableState, Const.SLOT_ON)
+// .ge(EdgStorageCage::getRemainWidth, Math.max(glassInfo.getWidth(), glassInfo.getHeight())).last("order by abs(slot - " + task.getCurrentCell() + ")"));
+//// //鐩撮�氫换鍔�
+//// if (flag && CollectionUtil.isNotEmpty(emptyList)) {
+//// return emptyList.get(0);
+//// }
+// if (CollectionUtil.isEmpty(storageCageList) || storageCageList.size() == 1) {
+// log.info("娌℃湁澶氫綑鐨勭┖鏍煎瓙");
+// return Boolean.FALSE;
// }
- if (CollectionUtil.isEmpty(storageCageList) || storageCageList.size() == 1) {
- log.info("娌℃湁澶氫綑鐨勭┖鏍煎瓙");
- return Boolean.FALSE;
- }
- edgStorageCage = storageCageList.get(0);
- }
- log.info("4銆佸皢鐜荤拑淇℃伅鎻掑叆鍗у紡鐞嗙墖绗�,褰撳墠鐜荤拑淇℃伅:{}", glassInfo);
- EdgStorageCageDetails details = new EdgStorageCageDetails();
- BeanUtils.copyProperties(glassInfo, details);
- details.setState(Const.GLASS_STATE_IN);
- details.setSlot(edgStorageCage.getSlot());
- details.setDeviceId(edgStorageCage.getDeviceId());
- edgStorageCageDetailsService.save(details);
-
- //鏇存柊浠诲姟淇℃伅
- task.setStartCell(edgStorageCage.getSlot());
- task.setTaskRunning(Const.GLASS_CACHE_TYPE_IN);
- edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
- saveHistoryTask(task);
+// edgStorageCage = storageCageList.get(0);
+// }
+// log.info("4銆佸皢鐜荤拑淇℃伅鎻掑叆鍗у紡鐞嗙墖绗�,褰撳墠鐜荤拑淇℃伅:{}", glassInfo);
+// EdgStorageCageDetails details = new EdgStorageCageDetails();
+// BeanUtils.copyProperties(glassInfo, details);
+// details.setState(Const.GLASS_STATE_IN);
+// details.setSlot(edgStorageCage.getSlot());
+// details.setDeviceId(edgStorageCage.getDeviceId());
+// edgStorageCageDetailsService.save(details);
+//
+// //鏇存柊浠诲姟淇℃伅
+// task.setStartCell(edgStorageCage.getSlot());
+// task.setTaskRunning(Const.GLASS_CACHE_TYPE_IN);
+// edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
+// saveHistoryTask(task);
return Boolean.TRUE;
}
private boolean outTask(EdgStorageDeviceTask task, String tableName, int deviceId) {
- EdgStorageCageDetails edgStorageCageDetails = null;
- //绗煎唴鏄増鍥剧浉宸槸鍚﹁秴杩囬槇鍊�
- boolean flag = queryMaxMinDiff(threshold);
- if (flag) {
- EdgStorageCageDetails minEdgDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
- .inSql(EdgStorageCageDetails::getSlot, "select slot from edg_storage_cage where enable_state = " + Const.SLOT_ON)
- .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
- .eq(EdgStorageCageDetails::getDeviceId, deviceId)
- .orderByAsc(EdgStorageCageDetails::getTemperingLayoutId)
- .orderBy(Boolean.TRUE, Boolean.TRUE, EdgStorageCageDetails::getTemperingFeedSequence)
- .last("limit 1"));
-// select * from edg_storage_cage_details where width = 551 and height = 1151 and id in (select min(id ) from edg_storage_cage_details where state = 100 group by slot )
- edgStorageCageDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
- .eq(EdgStorageCageDetails::getWidth, minEdgDetails.getWidth())
- .eq(EdgStorageCageDetails::getHeight, minEdgDetails.getHeight())
- .eq(EdgStorageCageDetails::getDeviceId, deviceId)
- .inSql(EdgStorageCageDetails::getId, "select min(id) from edg_storage_cage_details where state = 100 group by slot ")
- .last("order by abs(slot - " + task.getCurrentCell() + ") asc limit 1")
- );
- //缁欑洿閫氫换鍔�
- if (null == edgStorageCageDetails && StringUtils.isNotBlank(task.getGlassIdIn())) {
- GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>()
- .eq(GlassInfo::getGlassId, task.getGlassIdIn())
- .eq(GlassInfo::getWidth, minEdgDetails.getWidth())
- .eq(GlassInfo::getHeight, minEdgDetails.getHeight()));
- if (null != glassInInfo) {
- edgStorageCageDetails = new EdgStorageCageDetails();
- BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
- }
- }
- if (null == edgStorageCageDetails) {
- edgStorageCageDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
- .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
- .eq(EdgStorageCageDetails::getDeviceId, deviceId)
- .eq(EdgStorageCageDetails::getSlot, minEdgDetails.getSlot())
- .orderByAsc(EdgStorageCageDetails::getId)
- .last("limit 1")
- );
- }
- }
- if (null == edgStorageCageDetails) {
- // 鑾峰彇涓婃浠诲姟
-// 鑾峰彇鍘嗗彶琛ㄤ腑涓婃浠诲姟鏈�鍚庝竴鐗囧昂瀵�
- EdgStorageDeviceTaskHistory edgeData = edgStorageDeviceTaskHistoryService.getOne(new LambdaQueryWrapper<EdgStorageDeviceTaskHistory>()
- .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_SUCCESS)
- .in(EdgStorageDeviceTaskHistory::getTaskType, Const.GLASS_CACHE_TYPE_OUT, Const.GLASS_CACHE_TYPE_THROUGH)
- .orderByDesc(EdgStorageDeviceTaskHistory::getId).last("limit 1"));
- if (null != edgeData) {
- GlassInfo glassOutInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, edgeData.getGlassIdOut()));
- //绗煎唴鐨勭幓鐠冪殑灏哄鏄惁鍜屼笂涓�娆′换鍔′竴鑷�
- edgStorageCageDetails = edgStorageCageDetailsService.queryEdgStorageDetailsBySize(deviceId, task.getCurrentCell(), glassOutInfo.getWidth(), glassOutInfo.getHeight());
- if (null == edgStorageCageDetails && StringUtils.isNotBlank(task.getGlassIdIn())) {
- GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>()
- .eq(GlassInfo::getGlassId, task.getGlassIdIn())
- .eq(GlassInfo::getWidth, glassOutInfo.getWidth())
- .eq(GlassInfo::getHeight, glassOutInfo.getHeight()));
- if (null != glassInInfo) {
- edgStorageCageDetails = new EdgStorageCageDetails();
- BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
- }
- }
- }
- }
- if (null == edgStorageCageDetails) {
- edgStorageCageDetails = edgStorageCageDetailsService.queryEdgStorageDetailsBySize(deviceId, task.getCurrentCell(), 0, 0);
- }
- if (edgStorageCageDetails == null && StringUtils.isNotBlank(task.getGlassIdIn())) {
- //鍜屼笂娆′换鍔′笉瀛樺湪鐩稿悓灏哄
- GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, task.getGlassIdIn()));
- edgStorageCageDetails = new EdgStorageCageDetails();
- BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
- }
- if (edgStorageCageDetails == null) {
- //鍜屼笂娆′换鍔′笉瀛樺湪鐩稿悓灏哄
- log.info("绗煎唴娌℃湁鐜荤拑浜�");
- return Boolean.FALSE;
- }
- int taskType = Const.GLASS_CACHE_TYPE_OUT;
- String glassId = edgStorageCageDetails.getGlassId();
- if (glassId.equals(task.getGlassIdIn())) {
- if (3 != task.getTaskState()) {
- return Boolean.FALSE;
- }
- log.info("5銆佺洿閫氫换鍔�,灏嗙幓鐠冧俊鎭彃鍏ュ崸寮忕悊鐗囩,褰撳墠鐜荤拑淇℃伅:{}", edgStorageCageDetails);
- //鐜荤拑淇℃伅鏇挎崲
- String glassIdChange = queryAndChangeGlass(glassId);
- //澶勭悊鍦ㄥ崸鐞嗗唴鐨勭幓鐠冧俊鎭細绗煎唴鐨勬暟鎹鐞�
- queryEdgAndChangeGlass(edgStorageCageDetails.getGlassId(), glassIdChange);
- if (StringUtils.isNotBlank(glassIdChange)) {
- edgStorageCageDetails = new EdgStorageCageDetails();
- GlassInfo one = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
- BeanUtils.copyProperties(one, edgStorageCageDetails);
- }
- EdgStorageCage storageCage = edgStorageCageService.getOne(new LambdaQueryWrapper<EdgStorageCage>()
- .eq(EdgStorageCage::getDeviceId, deviceId)
- .eq(EdgStorageCage::getEnableState, Const.SLOT_ON)
- .ge(EdgStorageCage::getRemainWidth, cellLength)
- .last("order by abs(slot - " + task.getCurrentCell() + ") limit 1"));
- Assert.isTrue(null != storageCage, "鏍煎瓙宸叉弧,鏃犳硶鎵ц鐩撮�氫换鍔�");
- log.info("3銆佹煡璇㈠崸寮忕悊鐗囩閲岄潰鐨勭┖鏍�:{}", storageCage);
- edgStorageCageDetails.setSlot(storageCage.getSlot());
- edgStorageCageDetails.setDeviceId(storageCage.getDeviceId());
- edgStorageCageDetails.setState(Const.GLASS_STATE_OUT);
- edgStorageCageDetailsService.save(edgStorageCageDetails);
- taskType = Const.GLASS_CACHE_TYPE_THROUGH;
- } else {
- log.info("5銆侀潪鐩撮�氫换鍔�,灏嗙幓鐠冧俊鎭彃鍏ュ崸寮忕悊鐗囩,褰撳墠鐜荤拑淇℃伅:{}", edgStorageCageDetails);
- if (!edgStorageCageDetails.getSlot().equals(task.getCurrentCell())) {
- EdgStorageCageDetails currentGlass = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
- .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
- .eq(EdgStorageCageDetails::getDeviceId, deviceId)
- .eq(EdgStorageCageDetails::getSlot, task.getCurrentCell()).eq(EdgStorageCageDetails::getWidth, edgStorageCageDetails.getWidth())
- .eq(EdgStorageCageDetails::getHeight, edgStorageCageDetails.getHeight()).eq(EdgStorageCageDetails::getThickness, edgStorageCageDetails.getThickness())
- .orderByAsc(EdgStorageCageDetails::getId).last("limit 1")
- );
- if (null != currentGlass) {
- edgStorageCageDetails = currentGlass;
- }
- }
- //鐜荤拑淇℃伅鏇挎崲
- String glassIdChange = queryAndChangeGlass(edgStorageCageDetails.getGlassId());
- //澶勭悊鍦ㄥ崸鐞嗗唴鐨勭幓鐠冧俊鎭細绗煎唴鐨勬暟鎹鐞�
- queryEdgAndChangeGlass(edgStorageCageDetails.getGlassId(), glassIdChange);
- LambdaUpdateWrapper<EdgStorageCageDetails> wrapper = new LambdaUpdateWrapper<>();
- wrapper.eq(EdgStorageCageDetails::getGlassId, edgStorageCageDetails.getGlassId()).set(EdgStorageCageDetails::getState, Const.GLASS_STATE_OUT);
- edgStorageCageDetailsService.update(wrapper);
- log.info("5銆佹洿鏂板嚭鐗囩幓鐠冪殑鐘舵�佷负{}", Const.GLASS_STATE_OUT);
- }
- //鐢熸垚鍑虹墖浠诲姟
- task.setGlassIdOut(edgStorageCageDetails.getGlassId());
- task.setStartCell(edgStorageCageDetails.getSlot());
- task.setTaskRunning(taskType);
-
- edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
- saveHistoryTask(task);
- //鏇存柊璇︽儏琛ㄤ换鍔″嚭鐗囦腑
- edgStorageCageDetailsService.update(new LambdaUpdateWrapper<EdgStorageCageDetails>()
- .set(EdgStorageCageDetails::getState, Const.GLASS_STATE_OUT)
- .eq(EdgStorageCageDetails::getGlassId, edgStorageCageDetails.getGlassId()));
- //纾ㄨ竟瀵瑰垪琛ㄦ柊澧炰竴鏉℃暟鎹�
- EdgGlassTaskQueueInfo edgInfo = new EdgGlassTaskQueueInfo();
- BeanUtils.copyProperties(task, edgInfo);
- edgInfo.setCreateTime(new Date());
- edgInfo.setWidth((int) edgStorageCageDetails.getWidth());
- edgInfo.setHeight((int) edgStorageCageDetails.getWidth());
- edgInfo.setThickness((int) edgStorageCageDetails.getWidth());
- edgInfo.setState(Const.GLASS_STATE_NEW);
- edgGlassTaskQueueInfoService.save(edgInfo);
+// EdgStorageCageDetails edgStorageCageDetails = null;
+// //绗煎唴鏄増鍥剧浉宸槸鍚﹁秴杩囬槇鍊�
+// boolean flag = queryMaxMinDiff(threshold);
+// if (flag) {
+// EdgStorageCageDetails minEdgDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
+// .inSql(EdgStorageCageDetails::getSlot, "select slot from edg_storage_cage where enable_state = " + Const.SLOT_ON)
+// .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
+// .eq(EdgStorageCageDetails::getDeviceId, deviceId)
+// .orderByAsc(EdgStorageCageDetails::getTemperingLayoutId)
+// .orderBy(Boolean.TRUE, Boolean.TRUE, EdgStorageCageDetails::getTemperingFeedSequence)
+// .last("limit 1"));
+//// select * from edg_storage_cage_details where width = 551 and height = 1151 and id in (select min(id ) from edg_storage_cage_details where state = 100 group by slot )
+// edgStorageCageDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
+// .eq(EdgStorageCageDetails::getWidth, minEdgDetails.getWidth())
+// .eq(EdgStorageCageDetails::getHeight, minEdgDetails.getHeight())
+// .eq(EdgStorageCageDetails::getDeviceId, deviceId)
+// .inSql(EdgStorageCageDetails::getId, "select min(id) from edg_storage_cage_details where state = 100 group by slot ")
+// .last("order by abs(slot - " + task.getCurrentCell() + ") asc limit 1")
+// );
+// //缁欑洿閫氫换鍔�
+// if (null == edgStorageCageDetails && StringUtils.isNotBlank(task.getGlassIdIn())) {
+// GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>()
+// .eq(GlassInfo::getGlassId, task.getGlassIdIn())
+// .eq(GlassInfo::getWidth, minEdgDetails.getWidth())
+// .eq(GlassInfo::getHeight, minEdgDetails.getHeight()));
+// if (null != glassInInfo) {
+// edgStorageCageDetails = new EdgStorageCageDetails();
+// BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
+// }
+// }
+// if (null == edgStorageCageDetails) {
+// edgStorageCageDetails = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
+// .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
+// .eq(EdgStorageCageDetails::getDeviceId, deviceId)
+// .eq(EdgStorageCageDetails::getSlot, minEdgDetails.getSlot())
+// .orderByAsc(EdgStorageCageDetails::getId)
+// .last("limit 1")
+// );
+// }
+// }
+// if (null == edgStorageCageDetails) {
+// // 鑾峰彇涓婃浠诲姟
+//// 鑾峰彇鍘嗗彶琛ㄤ腑涓婃浠诲姟鏈�鍚庝竴鐗囧昂瀵�
+// EdgStorageDeviceTaskHistory edgeData = edgStorageDeviceTaskHistoryService.getOne(new LambdaQueryWrapper<EdgStorageDeviceTaskHistory>()
+// .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_SUCCESS)
+// .in(EdgStorageDeviceTaskHistory::getTaskType, Const.GLASS_CACHE_TYPE_OUT, Const.GLASS_CACHE_TYPE_THROUGH)
+// .orderByDesc(EdgStorageDeviceTaskHistory::getId).last("limit 1"));
+// if (null != edgeData) {
+// GlassInfo glassOutInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, edgeData.getGlassIdOut()));
+// //绗煎唴鐨勭幓鐠冪殑灏哄鏄惁鍜屼笂涓�娆′换鍔′竴鑷�
+// edgStorageCageDetails = edgStorageCageDetailsService.queryEdgStorageDetailsBySize(deviceId, task.getCurrentCell(), glassOutInfo.getWidth(), glassOutInfo.getHeight());
+// if (null == edgStorageCageDetails && StringUtils.isNotBlank(task.getGlassIdIn())) {
+// GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>()
+// .eq(GlassInfo::getGlassId, task.getGlassIdIn())
+// .eq(GlassInfo::getWidth, glassOutInfo.getWidth())
+// .eq(GlassInfo::getHeight, glassOutInfo.getHeight()));
+// if (null != glassInInfo) {
+// edgStorageCageDetails = new EdgStorageCageDetails();
+// BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
+// }
+// }
+// }
+// }
+// if (null == edgStorageCageDetails) {
+// edgStorageCageDetails = edgStorageCageDetailsService.queryEdgStorageDetailsBySize(deviceId, task.getCurrentCell(), 0, 0);
+// }
+// if (edgStorageCageDetails == null && StringUtils.isNotBlank(task.getGlassIdIn())) {
+// //鍜屼笂娆′换鍔′笉瀛樺湪鐩稿悓灏哄
+// GlassInfo glassInInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, task.getGlassIdIn()));
+// edgStorageCageDetails = new EdgStorageCageDetails();
+// BeanUtils.copyProperties(glassInInfo, edgStorageCageDetails);
+// }
+// if (edgStorageCageDetails == null) {
+// //鍜屼笂娆′换鍔′笉瀛樺湪鐩稿悓灏哄
+// log.info("绗煎唴娌℃湁鐜荤拑浜�");
+// return Boolean.FALSE;
+// }
+// int taskType = Const.GLASS_CACHE_TYPE_OUT;
+// String glassId = edgStorageCageDetails.getGlassId();
+// if (glassId.equals(task.getGlassIdIn())) {
+// if (3 != task.getTaskState()) {
+// return Boolean.FALSE;
+// }
+// log.info("5銆佺洿閫氫换鍔�,灏嗙幓鐠冧俊鎭彃鍏ュ崸寮忕悊鐗囩,褰撳墠鐜荤拑淇℃伅:{}", edgStorageCageDetails);
+// //鐜荤拑淇℃伅鏇挎崲
+// String glassIdChange = queryAndChangeGlass(glassId);
+// //澶勭悊鍦ㄥ崸鐞嗗唴鐨勭幓鐠冧俊鎭細绗煎唴鐨勬暟鎹鐞�
+// queryEdgAndChangeGlass(edgStorageCageDetails.getGlassId(), glassIdChange);
+// if (StringUtils.isNotBlank(glassIdChange)) {
+// edgStorageCageDetails = new EdgStorageCageDetails();
+// GlassInfo one = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
+// BeanUtils.copyProperties(one, edgStorageCageDetails);
+// }
+// EdgStorageCage storageCage = edgStorageCageService.getOne(new LambdaQueryWrapper<EdgStorageCage>()
+// .eq(EdgStorageCage::getDeviceId, deviceId)
+// .eq(EdgStorageCage::getEnableState, Const.SLOT_ON)
+// .ge(EdgStorageCage::getRemainWidth, cellLength)
+// .last("order by abs(slot - " + task.getCurrentCell() + ") limit 1"));
+// Assert.isTrue(null != storageCage, "鏍煎瓙宸叉弧,鏃犳硶鎵ц鐩撮�氫换鍔�");
+// log.info("3銆佹煡璇㈠崸寮忕悊鐗囩閲岄潰鐨勭┖鏍�:{}", storageCage);
+// edgStorageCageDetails.setSlot(storageCage.getSlot());
+// edgStorageCageDetails.setDeviceId(storageCage.getDeviceId());
+// edgStorageCageDetails.setState(Const.GLASS_STATE_OUT);
+// edgStorageCageDetailsService.save(edgStorageCageDetails);
+// taskType = Const.GLASS_CACHE_TYPE_THROUGH;
+// } else {
+// log.info("5銆侀潪鐩撮�氫换鍔�,灏嗙幓鐠冧俊鎭彃鍏ュ崸寮忕悊鐗囩,褰撳墠鐜荤拑淇℃伅:{}", edgStorageCageDetails);
+// if (!edgStorageCageDetails.getSlot().equals(task.getCurrentCell())) {
+// EdgStorageCageDetails currentGlass = edgStorageCageDetailsService.getOne(new LambdaQueryWrapper<EdgStorageCageDetails>()
+// .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
+// .eq(EdgStorageCageDetails::getDeviceId, deviceId)
+// .eq(EdgStorageCageDetails::getSlot, task.getCurrentCell()).eq(EdgStorageCageDetails::getWidth, edgStorageCageDetails.getWidth())
+// .eq(EdgStorageCageDetails::getHeight, edgStorageCageDetails.getHeight()).eq(EdgStorageCageDetails::getThickness, edgStorageCageDetails.getThickness())
+// .orderByAsc(EdgStorageCageDetails::getId).last("limit 1")
+// );
+// if (null != currentGlass) {
+// edgStorageCageDetails = currentGlass;
+// }
+// }
+// //鐜荤拑淇℃伅鏇挎崲
+// String glassIdChange = queryAndChangeGlass(edgStorageCageDetails.getGlassId());
+// //澶勭悊鍦ㄥ崸鐞嗗唴鐨勭幓鐠冧俊鎭細绗煎唴鐨勬暟鎹鐞�
+// queryEdgAndChangeGlass(edgStorageCageDetails.getGlassId(), glassIdChange);
+// LambdaUpdateWrapper<EdgStorageCageDetails> wrapper = new LambdaUpdateWrapper<>();
+// wrapper.eq(EdgStorageCageDetails::getGlassId, edgStorageCageDetails.getGlassId()).set(EdgStorageCageDetails::getState, Const.GLASS_STATE_OUT);
+// edgStorageCageDetailsService.update(wrapper);
+// log.info("5銆佹洿鏂板嚭鐗囩幓鐠冪殑鐘舵�佷负{}", Const.GLASS_STATE_OUT);
+// }
+// //鐢熸垚鍑虹墖浠诲姟
+// task.setGlassIdOut(edgStorageCageDetails.getGlassId());
+// task.setStartCell(edgStorageCageDetails.getSlot());
+// task.setTaskRunning(taskType);
+//
+// edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
+// saveHistoryTask(task);
+// //鏇存柊璇︽儏琛ㄤ换鍔″嚭鐗囦腑
+// edgStorageCageDetailsService.update(new LambdaUpdateWrapper<EdgStorageCageDetails>()
+// .set(EdgStorageCageDetails::getState, Const.GLASS_STATE_OUT)
+// .eq(EdgStorageCageDetails::getGlassId, edgStorageCageDetails.getGlassId()));
+// //纾ㄨ竟瀵瑰垪琛ㄦ柊澧炰竴鏉℃暟鎹�
+// EdgGlassTaskQueueInfo edgInfo = new EdgGlassTaskQueueInfo();
+// BeanUtils.copyProperties(task, edgInfo);
+// edgInfo.setCreateTime(new Date());
+// edgInfo.setWidth((int) edgStorageCageDetails.getWidth());
+// edgInfo.setHeight((int) edgStorageCageDetails.getWidth());
+// edgInfo.setThickness((int) edgStorageCageDetails.getWidth());
+// edgInfo.setState(Const.GLASS_STATE_NEW);
+// edgGlassTaskQueueInfoService.save(edgInfo);
return Boolean.TRUE;
}
private boolean finishTask(EdgStorageDeviceTask task, String tableName) {
- log.info("褰撳墠浠诲姟淇℃伅涓猴細{}", task);
- if (task.getTaskState() <= 4) {
- log.info("鏈夋鍦ㄦ墽琛岀殑浠诲姟锛岀粨鏉�");
- return Boolean.FALSE;
- }
- Integer cell = task.getStartCell();
- Integer state = task.getTaskState();
- task.setTaskRunning(Const.GLASS_CACHE_TYPE_EMPTY);
- task.setGlassIdOut("");
- task.setStartCell(0);
- edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
- edgStorageDeviceTaskHistoryService.update(new LambdaUpdateWrapper<EdgStorageDeviceTaskHistory>()
- .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW)
- .set(EdgStorageDeviceTaskHistory::getTaskState,
- Const.GLASS_CACHE_TYPE_FINISH.equals(state) ? Const.RAW_GLASS_TASK_SUCCESS : Const.RAW_GLASS_TASK_FAILURE)
- );
- int device = tableName.equals("edg_storage_device_one_task") ? 1 : 2;
- updateCellRemainWidth(cell, device);
+// log.info("褰撳墠浠诲姟淇℃伅涓猴細{}", task);
+// if (task.getTaskState() <= 4) {
+// log.info("鏈夋鍦ㄦ墽琛岀殑浠诲姟锛岀粨鏉�");
+// return Boolean.FALSE;
+// }
+// Integer cell = task.getStartCell();
+// Integer state = task.getTaskState();
+// task.setTaskRunning(Const.GLASS_CACHE_TYPE_EMPTY);
+// task.setGlassIdOut("");
+// task.setStartCell(0);
+// edgStorageDeviceTaskService.updateTaskMessage(tableName, task);
+// edgStorageDeviceTaskHistoryService.update(new LambdaUpdateWrapper<EdgStorageDeviceTaskHistory>()
+// .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW)
+// .set(EdgStorageDeviceTaskHistory::getTaskState,
+// Const.GLASS_CACHE_TYPE_FINISH.equals(state) ? Const.RAW_GLASS_TASK_SUCCESS : Const.RAW_GLASS_TASK_FAILURE)
+// );
+// int device = tableName.equals("edg_storage_device_one_task") ? 1 : 2;
+// updateCellRemainWidth(cell, device);
return Boolean.TRUE;
}
@@ -335,34 +333,34 @@
* @return
*/
public String queryAndChangeGlass(String glassId) {
- GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
-// .inSql(GlassInfo::getEngineerId, "select engineer_id from engineering where state = 1"));
- Assert.isFalse(null == glassInfo, "鐜荤拑淇℃伅涓嶅瓨鍦�"); //鎸夌収鐜荤拑灏哄
- LambdaQueryWrapper<GlassInfo> queryWrapper = new LambdaQueryWrapper<GlassInfo>()
- .eq(GlassInfo::getWidth, glassInfo.getWidth())
- .eq(GlassInfo::getHeight, glassInfo.getHeight())
- .eq(GlassInfo::getThickness, glassInfo.getThickness())
- .eq(GlassInfo::getFilmsid, glassInfo.getFilmsid())
- .eq(GlassInfo::getFlowCardId, glassInfo.getFlowCardId())
- .eq(GlassInfo::getTotalLayer, glassInfo.getTotalLayer())
- .eq(GlassInfo::getLayer, glassInfo.getLayer())
- .eq(GlassInfo::getEngineerId, glassInfo.getEngineerId())
- .notInSql(GlassInfo::getGlassId, "select distinct glass_id from edg_storage_cage_details " +
- "where engineer_id = '" + glassInfo.getEngineerId() + "' and width = " + glassInfo.getWidth() + " and height = " + glassInfo.getHeight()
- + " and state != 100")
- .orderByAsc(GlassInfo::getTemperingLayoutId)
- .orderBy(Boolean.TRUE, Boolean.TRUE, GlassInfo::getTemperingFeedSequence)
- .last("Limit 1");
- GlassInfo swapGlassInfo = glassInfoService.getOne(queryWrapper);
- if (swapGlassInfo != null && !glassInfo.getGlassId().equals(swapGlassInfo.getGlassId())) {
- String swapGlassId = swapGlassInfo.getGlassId();
- log.info("灏嗙幓鐠儃}鍜岀幓鐠儃}锛屼俊鎭簰鎹�,杩涚幓鐠� {}", glassInfo, swapGlassInfo, swapGlassInfo);
- swapGlassInfo.setGlassId(glassId);
- glassInfo.setGlassId(swapGlassId);
- glassInfoService.updateById(swapGlassInfo);
- glassInfoService.updateById(glassInfo);
- return swapGlassId;
- }
+// GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
+//// .inSql(GlassInfo::getEngineerId, "select engineer_id from engineering where state = 1"));
+// Assert.isFalse(null == glassInfo, "鐜荤拑淇℃伅涓嶅瓨鍦�"); //鎸夌収鐜荤拑灏哄
+// LambdaQueryWrapper<GlassInfo> queryWrapper = new LambdaQueryWrapper<GlassInfo>()
+// .eq(GlassInfo::getWidth, glassInfo.getWidth())
+// .eq(GlassInfo::getHeight, glassInfo.getHeight())
+// .eq(GlassInfo::getThickness, glassInfo.getThickness())
+// .eq(GlassInfo::getFilmsid, glassInfo.getFilmsid())
+// .eq(GlassInfo::getFlowCardId, glassInfo.getFlowCardId())
+// .eq(GlassInfo::getTotalLayer, glassInfo.getTotalLayer())
+// .eq(GlassInfo::getLayer, glassInfo.getLayer())
+// .eq(GlassInfo::getEngineerId, glassInfo.getEngineerId())
+// .notInSql(GlassInfo::getGlassId, "select distinct glass_id from edg_storage_cage_details " +
+// "where engineer_id = '" + glassInfo.getEngineerId() + "' and width = " + glassInfo.getWidth() + " and height = " + glassInfo.getHeight()
+// + " and state != 100")
+// .orderByAsc(GlassInfo::getTemperingLayoutId)
+// .orderBy(Boolean.TRUE, Boolean.TRUE, GlassInfo::getTemperingFeedSequence)
+// .last("Limit 1");
+// GlassInfo swapGlassInfo = glassInfoService.getOne(queryWrapper);
+// if (swapGlassInfo != null && !glassInfo.getGlassId().equals(swapGlassInfo.getGlassId())) {
+// String swapGlassId = swapGlassInfo.getGlassId();
+// log.info("灏嗙幓鐠儃}鍜岀幓鐠儃}锛屼俊鎭簰鎹�,杩涚幓鐠� {}", glassInfo, swapGlassInfo, swapGlassInfo);
+// swapGlassInfo.setGlassId(glassId);
+// glassInfo.setGlassId(swapGlassId);
+// glassInfoService.updateById(swapGlassInfo);
+// glassInfoService.updateById(glassInfo);
+// return swapGlassId;
+// }
return "";
}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassTestCallback.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassTestCallback.java
deleted file mode 100644
index b284827..0000000
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/opccallback/CacheGlassTestCallback.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.mes.job.opccallback;
-
-import com.kangaroohy.milo.runner.subscription.SubscriptionCallback;
-import com.mes.opctask.entity.EdgStorageDeviceTask;
-import com.mes.opctask.service.EdgStorageDeviceTaskService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-
-/**
- * @Author : zhoush
- * @Date: 2024/10/10 14:13
- * @Description:
- */
-@Service
-@Slf4j
-public class CacheGlassTestCallback implements SubscriptionCallback {
- @Resource
- EdgStorageDeviceTaskService edgStorageDeviceTaskService;
-
- @Override
- public void onSubscribe(String identifier, Object value) {
- EdgStorageDeviceTask task = edgStorageDeviceTaskService.queryTaskMessage("edg_storage_device_one_task");
- try {
- if (task == null) {
- log.info("浠诲姟琛ㄥ熀纭�鏁版嵁褰曞叆澶辫触锛岃妫�鏌ユ暟鎹槸鍚﹀綍鍏ユ垚鍔�");
- return;
- }
- task.setTaskRunning(task.getTaskRunning() + 1);
- log.info("褰撳墠绗瑊}娆℃墽琛�", task.getTaskRunning());
-// task.setTaskState(task.getTaskRunning());
- edgStorageDeviceTaskService.updateTaskMessage("edg_storage_device_one_task", task);
- } catch (Exception e) {
- log.info("{}", e.getMessage());
- }
- }
-}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
index d4cbd15..0e1440e 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
@@ -300,7 +300,7 @@
int sequence = -1;
int startSlot = -1;
for (BigStorageSequenceDTO item : sequenceDTOList) {
- if (item.getMinSequence() == sequence + 1) {
+ if (item.getMaxSequence() == sequence - 1) {
//鐢熸垚璋冨害浠诲姟
int targetSlot = item.getSlot();
list = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>()
@@ -311,7 +311,7 @@
updateSlotRemainBySlots(slotList);
break loop;
}
- sequence = item.getMaxSequence();
+ sequence = item.getMinSequence();
startSlot = item.getSlot();
}
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageDetailsMapper.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageDetailsMapper.xml
index 003bd62..9611a10 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageDetailsMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageDetailsMapper.xml
@@ -170,6 +170,6 @@
(select engineer_id, tempering_layout_id, tempering_feed_sequence from glass_id_temp)
and t.state = 100
group by t.slot
- order by max_sequence
+ order by max_sequence desc
</select>
</mapper>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java
index cd836a3..70bb941 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java
@@ -1,16 +1,18 @@
package com.mes.job;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.kangaroohy.milo.model.ReadWriteEntity;
import com.kangaroohy.milo.service.MiloService;
+import com.mes.common.config.Const;
import com.mes.pp.entity.OptimizeHeatDetail;
import com.mes.pp.entity.OptimizeHeatLayout;
import com.mes.pp.service.OptimizeHeatDetailService;
import com.mes.pp.service.OptimizeHeatLayoutService;
-import com.mes.temperingglass.entity.TemperingGlass;
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.service.TemperingGlassInfoService;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@@ -41,7 +43,7 @@
* fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
* fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
*/
- //@Scheduled(fixedDelay = 1000)
+ @Scheduled(fixedDelay = 1000)
public void requestTemperingTask() throws Exception {
ReadWriteEntity requestInTempering = miloService.readFromOpcUa("GH1S7.GH1S7.requestInTempering");//璇锋眰杩涚墖
ReadWriteEntity requestTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.requestTemperingId");//璇锋眰杩涚墖 鐐夊彿ID
@@ -50,9 +52,13 @@
if (request == 0) {
miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 0));//鍏佽閫佺墖娓呴浂
} else {
+ if (id == 0){
+ log.info("鐐夊彿涓嶈兘涓�0");
+ return;
+ }
ReadWriteEntity placedNumber = miloService.readFromOpcUa("GH1S7.GH1S7.placedNumber");//宸叉憜鐗囨暟閲�
List<TemperingGlassInfo> glassList = temperingAgoService.selectGlassInfoById(id);
- if (glassList.size() == Integer.parseInt(placedNumber.getValue().toString())) {
+ if (Integer.parseInt(placedNumber.getValue().toString()) == glassList.size()) {
miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 1));//鍐欏叆鍏佽閫佺墖
} else {
miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 2));//涓嶆弧瓒宠繘鐐夋潯浠�
@@ -65,16 +71,32 @@
* fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
* fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
*/
- //@Scheduled(fixedDelay = 1000)
+ @Scheduled(fixedDelay = 1000)
public void loadTemperingTask() throws Exception {
ReadWriteEntity loadTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.loadTemperingId");//杩涚墖瀹屾垚 鐐夊彿ID
getNewTemperingID(Integer.parseInt(loadTemperingId.getValue().toString()));//杩涚墖瀹屾垚 涓嬪彂鍙傛暟
}
+ /**
+ * 鏇存柊閽㈠寲灏忕墖琛ㄥ唴鐨勭幓鐠冪姸鎬�
+ * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
+ * fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
+ */
+ @Scheduled(fixedDelay = 5000)
+ public void updateTemperingTask() throws Exception {
+ ReadWriteEntity furanchiIdEntity = miloService.readFromOpcUa("GH1S7.GH1S7.Furanch1Id");//杩涚墖瀹屾垚 鐐夊彿ID
+ if (StringUtils.isNotBlank(furanchiIdEntity.getValue()+"")){
+ int temperingid = Integer.parseInt(furanchiIdEntity.getValue().toString());
+ temperingAgoService.update(new LambdaUpdateWrapper<TemperingGlassInfo>().set(TemperingGlassInfo::getState, Const.TEMPERING_START)
+ .in(TemperingGlassInfo::getState, Const.TEMPERING_OUT, Const.TEMPERING_DROP).eq(TemperingGlassInfo::getTemperingLayoutId,temperingid));
+ }
+
+
+ }
//鑾峰彇鍒扮倝鍙穒d鎵ц鍙傛暟涓嬪彂浠诲姟
private void getNewTemperingID(Integer temperingid) throws Exception {
- ReadWriteEntity AutoStatus = miloService.readFromOpcUa("GH1.GH1.AutoStatus");
- if (1 != Integer.parseInt(AutoStatus.getValue().toString())) {
+ ReadWriteEntity autoStatus = miloService.readFromOpcUa("GH1.GH1.AutoStatus");
+ if (1 != Integer.parseInt(autoStatus.getValue().toString())) {
log.info("褰撳墠涓洪潪鑱旀満鐘舵�侊紝缁撴潫閽㈠寲涓嬪彂鍙傛暟浠诲姟");
return;
}
@@ -118,7 +140,7 @@
miloService.writeToOpcUa(generateReadWriteEntity("GH1.GH1.WorkMode", workmode));//鍐欏叆宸ヤ綅鏁�
miloService.writeToOpcUa(generateReadWriteEntity("GH1.GH1.FurnaceMode", furmode));//鍐欏叆鐐変綋宸ヤ綔鏂瑰紡
log.info("鐐夊彿" + temperingid + "鐗堥潰淇℃伅灏濊瘯涓嬪彂");
- }
+ }
}
diff --git a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
index b44f147..8bb8edc 100644
--- a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
@@ -244,14 +244,7 @@
@Override
public List<LackDetailsDTO> queryLackByFlowCard(String flowCardId, int layer) {
-
return this.baseMapper.queryLackByFlowCard(flowCardId, layer);
-// return this.list(new LambdaQueryWrapper<HollowGlassRelationInfo>()
-// .eq(HollowGlassRelationInfo::getFlowCardId,flowCardId)
-// .eq(HollowGlassRelationInfo::getLayer,layer)
-// .isNull(HollowGlassRelationInfo::getTemperingLayoutId)
-// .isNull(HollowGlassRelationInfo::getTemperingFeedSequence)
-// );
}
}
--
Gitblit v1.8.0