From 112ff5924fd5f6114c1562af60ca16e6eba6f7fb Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期一, 27 十月 2025 08:34:50 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/YiWuProject

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 54 insertions(+), 2 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 2a3a54c..2d2b9d6 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
@@ -2,6 +2,7 @@
 
 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.toolkit.CollectionUtils;
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.toolkit.JoinWrappers;
@@ -28,6 +29,8 @@
 import com.mes.glassinfo.entity.GlassInfo;
 import com.mes.glassinfo.mapper.GlassInfoMapper;
 import com.mes.glassinfo.service.GlassInfoService;
+import com.mes.pp.entity.OptimizeProject;
+import com.mes.pp.service.OptimizeProjectService;
 import com.mes.sysconfig.entity.SysConfig;
 import com.mes.sysconfig.service.SysConfigService;
 import com.mes.temperingglass.entity.TemperingGlassInfo;
@@ -40,6 +43,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.*;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -68,6 +72,8 @@
     private BigStorageCageService bigStorageCageService;
     @Resource
     private GlassInfoMapper glassInfoMapper;
+    @Resource
+    private OptimizeProjectService optimizeProjectService;
 
     @Resource
     private GlassInfoService glassInfoService;
@@ -546,8 +552,8 @@
     }
 
     @Override
-    public List<BigStorageRelationDTO> queryIsAllNeedDispatchVirtualSlot() {
-        return baseMapper.queryIsAllNeedDispatchVirtualSlot();
+    public List<BigStorageRelationDTO> queryIsAllNeedDispatchVirtualSlot(List<Integer> deviceIdList) {
+        return baseMapper.queryIsAllNeedDispatchVirtualSlot(deviceIdList);
     }
 
     @Override
@@ -568,4 +574,50 @@
     public void updateDeviceIdBySlot(List<Integer> slotList) {
         baseMapper.updateDeviceIdBySlot(slotList);
     }
+
+    @Override
+    public List<BigStorageCageDetails> queryEngineer() {
+        QueryWrapper<BigStorageCageDetails> wrapper = new QueryWrapper<>();
+        wrapper.select("distinct engineer_id")
+                .eq("state", 100);
+        return this.list(wrapper);
+    }
+
+    @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);
+        }});
+        Set<String> projectNoSet = projectList.stream()
+                .map(OptimizeProject::getProjectNo)
+                .collect(Collectors.toSet());
+        List<OptimizeProject> resultList= new ArrayList<>();
+        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());
+                project.setGlassTotal(dto.getTotalCount());
+                project.setGlassTotalArea(dto.getRealCount());
+                resultList.add(project);
+            }
+        }
+        return resultList;
+    }
 }

--
Gitblit v1.8.0