From c377d90fe2a01c2118f6c69c3c177f75be7c318b Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期五, 29 十一月 2024 15:20:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java |   48 +++++++++++++++++++-----------------------------
 1 files changed, 19 insertions(+), 29 deletions(-)

diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
index 86343e1..6330ac4 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/TemperingTask.java
@@ -70,39 +70,29 @@
         //灏嗙‘璁ゅ瓧缃负0
         plcControl.writeWord(plcParameterObject.getPlcParameter("confirmationWord").getAddress(), 0);
         //鍙兘鏈夊嚑鐐夌幓鐠冨悓鏃跺湪閽紝闇�瑕佽幏鍙栭挗鍖栧皬鐗囪〃涓殑鏁版嵁淇℃伅鐘舵�佷负2锛堟棆杞彴鐜荤拑宸查�佸嚭鏈挗鍖栵紝姝e湪閽㈠寲锛�
-        List<TemperingGlassInfo> temperingGlassInfoList = temporaryGlassInfoService.list(new LambdaQueryWrapper<TemperingGlassInfo>()
-                .eq(TemperingGlassInfo::getState, Const.TEMPERING_START));
+        List<TemperingGlassInfo> temperingGlassInfoList = temporaryGlassInfoService.list(
+                new LambdaQueryWrapper<TemperingGlassInfo>()
+                        .inSql(TemperingGlassInfo::getTemperingLayoutId, "select distinct tempering_layout_id from tempering_glass_info where state=1")
+                        .lt(TemperingGlassInfo::getState, Const.TEMPERING_START)
+        );
         if (CollectionUtils.isEmpty(temperingGlassInfoList)) {
             log.info("褰撳墠绯荤粺娌℃湁闇�瑕侀挗鍖栫殑鐜荤拑淇℃伅");
             return;
         }
-        TemperingGlassInfo maxGlassInfo = temperingGlassInfoList.stream().max(Comparator.comparingLong(TemperingGlassInfo::getId)).get();
+        TemperingGlassInfo minGlassInfo = temperingGlassInfoList.stream().min(Comparator.comparingLong(TemperingGlassInfo::getState)).get();
+        if (minGlassInfo.getState() < Const.TEMPERING_DROP) {
+            log.info("褰撳墠鐐夌幓鐠冩湭鍒伴綈锛岀◢鍚庡湪鎵ц");
+            return;
+        }
         //鎷垮埌宸ョ▼id鍙婄倝鍙�
-//        List<EngineerTemperingDTO> engineerTemperingList = temperingGlassInfoList.stream().map(e -> {
-//            EngineerTemperingDTO engineerTemperingDTO = new EngineerTemperingDTO();
-//            BeanUtils.copyProperties(e, engineerTemperingDTO);
-//            return engineerTemperingDTO;
-//        }).distinct().collect(Collectors.toList());
-        //灏嗘鍦ㄩ挗鍖栫殑鐐夊彿杩囨护鎺夛紝浠呰幏鍙栧緟閽㈠寲鐨勭幓鐠�
-//        List<TemperingRecord> temperingRecords = temperingRecordService.list(new LambdaQueryWrapper<TemperingRecord>().and(i -> i.isNull(TemperingRecord::getCoolEnergy).or().eq(TemperingRecord::getCoolEnergy, "")));
-//        List<EngineerTemperingDTO> temperingList = new ArrayList<>();
-//        if (CollectionUtils.isNotEmpty(temperingRecords)) {
-//            temperingList = temperingRecords.stream().map(e -> {
-//                EngineerTemperingDTO engineerTemperingDTO = new EngineerTemperingDTO();
-//                BeanUtils.copyProperties(e, engineerTemperingDTO);
-//                return engineerTemperingDTO;
-//            }).collect(Collectors.toList());
-//        }
-//        engineerTemperingList.removeAll(temperingList);
-//        if (CollectionUtils.isEmpty(engineerTemperingList)) {
-//            log.info("娌℃湁寰呴挗鍖栫殑浠诲姟锛岀粨鏉�");
-//            return;
-//        }
-//        if (engineerTemperingList.size() > 1) {
-//            log.info("瀛樺湪澶氱倝寰呴挗鍖栫殑浠诲姟锛岃妫�鏌ョ幇鍦烘槸鍚︽湁寮傚父鏁版嵁鏈鐞�");
-//            return;
-//        }
-//        EngineerTemperingDTO temperingDTO = engineerTemperingList.get(0);
+        TemperingGlassInfo maxGlassInfo = temperingGlassInfoList.stream().max(Comparator.comparingLong(TemperingGlassInfo::getId)).get();
+        //灏嗘鍦ㄩ挗鍖栫殑鐐夊彿杩囨护鎺夛紝浠呰幏鍙栧緟閽㈠寲鐨勭幓鐠�:鍒ゆ柇寰呴挗鐨勭幓鐠冩槸鍚﹀凡鍙戦�佸鎺ユ暟鎹�
+        List<TemperingRecord> temperingRecordList = temperingRecordService.list(new LambdaQueryWrapper<TemperingRecord>().eq(TemperingRecord::getEngineerId, maxGlassInfo.getEngineerId())
+                .eq(TemperingRecord::getTemperingLayoutId, maxGlassInfo.getTemperingLayoutId()));
+        if (CollectionUtils.isNotEmpty(temperingRecordList)) {
+            log.info("娌℃湁寰呴挗鍖栫殑浠诲姟锛岀粨鏉�");
+            return;
+        }
         //鑾峰彇寰呴挗鍖栫殑鎵�鏈夌幓鐠冧俊鎭�
         List<TemperingGlassInfo> temperingGlassList = temperingGlassInfoList.stream()
                 .filter(e -> e.getEngineerId().equals(maxGlassInfo.getEngineerId())
@@ -162,7 +152,7 @@
                 damage.setLine(Const.TEMPERING_OUT_TARGET_POSITION);
                 damage.setWorkingProcedure("閽㈠寲");
                 damage.setRemark("閽㈠寲");
-                damage.setStatus(0);
+                damage.setStatus(1);
                 damage.setType(e.getState());
                 return damage;
             }).collect(Collectors.toList());

--
Gitblit v1.8.0