From eae89f75a208938dba8787a73f68a8ae2e44e165 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 23 十二月 2024 10:20:37 +0800
Subject: [PATCH] 1、指定钢化工程接口

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageDetailsService.java          |    2 +-
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |   26 ++++++++++++++++++++++++--
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java    |   19 +++++++++++--------
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java                             |   10 ----------
 4 files changed, 36 insertions(+), 21 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
index 0cf74de..cffa40b 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/controller/BigStorageCageDetailsController.java
@@ -104,6 +104,17 @@
         }
     }
 
+    @ApiOperation("鎸囧畾閽㈠寲宸ョ▼")
+    @PostMapping("/appointTemperingEngineerId")
+    public Result appointTemperingEngineerId(@RequestBody BigStorageCageDetails bigStorageCageDetails) {
+        boolean result = bigStorageCageDetailsService.appointTemperingEngineerId(bigStorageCageDetails.getEngineerId());
+        if (result == true) {
+            return Result.build(200, "鎸囧畾閽㈠寲鎴愬姛", 1);
+        } else {
+            return Result.build(200, "宸插瓨鍦ㄩ挗鍖栦换鍔★紝璇风瓑寰呴挗鍖栧畬鎴愬啀鎸囧畾閽㈠寲", 1);
+        }
+    }
+
     @ApiOperation("閽㈠寲/闈為挗鍖栨煡璇細0 闈為挗鍖�  1锛氶挗鍖�")
     @PostMapping("/selectTemperingGlass")
     public Result<List<TemperingGlassCountDTO>> selectTemperingGlass(int isTempering) {
@@ -163,14 +174,6 @@
             return Result.build(200, "鎸囧畾娴佺▼鍗℃垚鍔�", 1);
         }
     }
-
-    @ApiOperation("鎸囧畾宸ョ▼")
-    @PostMapping("/appointEngineerId")
-    public Result appointEngineerId(@RequestBody BigStorageCageDetails bigStorageCageDetails) {
-        bigStorageCageDetailsService.appointEngineerId(bigStorageCageDetails.getEngineerId());
-        return Result.build(200, "淇敼鎴愬姛", 1);
-    }
-
     @ApiOperation("澶х悊鐗囩鎶ョ牬鎹�")
     @PostMapping("/bigStorageGlassDamageByGlassId")
     public Result<String> bigStorageGlassDamageByGlassId(String glassId) {
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageDetailsService.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageDetailsService.java
index d52dbbb..f8413c4 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageDetailsService.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageDetailsService.java
@@ -76,7 +76,7 @@
 
     String temperingSwitch(Boolean flag);
 
-    void appointEngineerId(String engineerId);
+    boolean appointTemperingEngineerId(String engineerId);
 
     List<BigStorageRelationDTO> queryIsAllNeedDispatchVirtualSlot();
 
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 485bdba..f23a0a7 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
@@ -447,8 +447,30 @@
     }
 
     @Override
-    public void appointEngineerId(String engineerId) {
-        redisUtil.setCacheObject("temperingengineerId", engineerId);
+    public boolean appointTemperingEngineerId(String engineerId) {
+        LambdaQueryWrapper<TemperingGlassInfo> temperingGlassInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        temperingGlassInfoLambdaQueryWrapper
+                .eq(TemperingGlassInfo::getState, Const.TEMPERING_NEW);
+        List<TemperingGlassInfo> temperingGlassInfoList = temperingGlassInfoMapper.selectList(temperingGlassInfoLambdaQueryWrapper);
+
+        if (temperingGlassInfoList.size() == 0) {
+            List<TemperingGlassInfo> temperingGlassInfos = glassInfoService.selectJoinList(TemperingGlassInfo.class, JoinWrappers.lambda(GlassInfo.class)
+                    .selectAll(GlassInfo.class)
+                    .select("-1 as state")
+                    .selectAs(BigStorageCageDetails::getSlot, TemperingGlassInfo::getSlot)
+                    .innerJoin(BigStorageCageDetails.class, BigStorageCageDetails::getGlassId, GlassInfo::getGlassId)
+                    .eq(GlassInfo::getEngineerId, engineerId)
+                    .ne(GlassInfo::getTemperingLayoutId, 0)
+                    .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN)
+                    .orderByAsc(GlassInfo::getTemperingLayoutId)
+                    .orderByAsc(GlassInfo::getTemperingFeedSequence)
+            );
+            if (CollectionUtils.isNotEmpty(temperingGlassInfos)) {
+                temperingGlassInfoService.saveBatch(temperingGlassInfos);
+                return true;
+            }
+        }
+        return false;
     }
 
     @Override
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 b506c45..2faeee9 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
@@ -290,16 +290,6 @@
         List<TemperingGlassInfo> unFinishTemperingGlassInfoList = temperingGlassInfoService.list(new LambdaQueryWrapper<TemperingGlassInfo>()
                 .eq(TemperingGlassInfo::getState, Const.TEMPERING_NEW).orderByAsc(TemperingGlassInfo::getTemperingFeedSequence));
         if (CollectionUtil.isNotEmpty(unFinishTemperingGlassInfoList)) {
-//            List<String> glassIdList = unFinishTemperingGlassInfoList.stream().map(TemperingGlassInfo::getGlassId).collect(Collectors.toList());
-//            List<BigStorageCageHistoryTask> historyTaskList = bigStorageCageHistoryTaskService.list(new LambdaQueryWrapper<BigStorageCageHistoryTask>()
-//                    .eq(BigStorageCageHistoryTask::getTaskType, Const.BIG_STORAGE_BEFORE_OUT)
-//                    .in(BigStorageCageHistoryTask::getGlassId, glassIdList));
-//            List<TemperingGlassInfo> temperingGlassList = unFinishTemperingGlassInfoList;
-//            if (CollectionUtil.isNotEmpty(historyTaskList)) {
-//                List<String> taskGlassList = historyTaskList.stream().map(BigStorageCageHistoryTask::getGlassId).collect(Collectors.toList());
-//                temperingGlassList = unFinishTemperingGlassInfoList.stream().filter(e -> !taskGlassList.contains(e.getGlassId())).collect(Collectors.toList());
-//            }
-//            if (CollectionUtil.isNotEmpty(unFinishTemperingGlassInfoList)) {
             log.info("鏈夋鍦ㄥ嚭鐗囩殑閽㈠寲浠诲姟");
             computeOutGlassInfoByVirtualSlot(unFinishTemperingGlassInfoList, "big_storage_cage_out_one_task", temperingOutTargetPosition, Const.GLASS_STATE_OUT_ING, Const.BIG_STORAGE_BEFORE_OUT);
             Date endDate = new Date();

--
Gitblit v1.8.0