From f44f00034483637a48c4cfedf7b6e93b83c8c6af Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 30 十月 2025 03:36:24 +0800
Subject: [PATCH] 1、 中空理片笼任务优化:进片调度增加限制,避免重复生成调度任务
---
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java | 20 +++++++++++++++++++-
1 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
index ee1bfc4..b648bf9 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -44,6 +44,10 @@
import javax.annotation.Resource;
import java.util.*;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -284,7 +288,7 @@
.eq(BigStorageCage::getEnableState, Const.SLOT_ON)
.eq(BigStorageCage::getRemainWidth, slotWidth).orderByAsc(BigStorageCage::getSlot)
.inSql(BigStorageCage::getDeviceId,
- "select distinct device_id from big_storage_cage_details where engineer_id = '" + EngineerId + "'")
+ "select distinct device_id from big_storage_cage_details where engineer_id = '" + EngineerId + "' and device_id not in (5,6)")
.last("limit 1"));
if (null != bigStorageCage) {
log.info("鏍规嵁鐗堝浘id鎵惧埌绗煎瓙鍐呯殑鐩爣鏍煎瓙锛歿},鐜荤拑id锛歿}", bigStorageCage.getSlot(), glassId);
@@ -580,7 +584,18 @@
}
@Override
+ public List<BigStorageCageDetails> queryNeedDispatch() {
+ return baseMapper.queryNeedDispatch();
+ }
+
+ @Override
+ public BigStorageSlotDTO queryNeedDispatchSlotBySequence() {
+ return baseMapper.queryNeedDispatchSlotBySequence();
+ }
+
+ @Override
public List<OptimizeProject> queryTemperingOrder() {
+ String temperingengineerId = redisUtil.getCacheObject("temperingEngineerId");
List<TemperingGlassCountDTO> temperingGlassCountDTOS = baseMapper.queryTemperingGlassCountSummary(1);
List<OptimizeProject> projectList = optimizeProjectService.engineerScheduling(new OptimizeProject() {{
setType(3);
@@ -592,6 +607,9 @@
for (TemperingGlassCountDTO dto : temperingGlassCountDTOS) {
if (projectNoSet.contains(dto.getEngineerId())) {
OptimizeProject project = new OptimizeProject();
+ if (Objects.equals(dto.getEngineerId(), temperingengineerId)) {
+ project.setState(1);
+ }
project.setProjectNo(dto.getEngineerId());
project.setGlassType(dto.getFilmsId());
project.setGlassThickness(dto.getThickness().intValue());
--
Gitblit v1.8.0