From d5d0d1c7a84b996b9bbcebfaf2c2c95f1a5a3678 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期五, 11 十月 2024 08:39:15 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java |   67 ++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 22 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
index 12a75ab..8ab87a9 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -317,21 +317,23 @@
                 //鐜荤拑鍒伴綈鍖呮嫭宸插嚭鐗囩殑
                 //鍒伴綈锛屽皢鐜荤拑灏忕墖鏁版嵁瀛樺叆閽㈠寲灏忕墖琛紝閫昏緫鐢熸垚鍑虹墖浠诲姟  缁撴潫
                 for (TemperingLayoutDTO item : temperingLayoutDTOList) {
-                    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(BigStorageCageDetails::getState, Const.GLASS_STATE_IN)
-                            .eq(GlassInfo::getTemperingLayoutId, item.getTemperingLayoutId())
-                            .eq(GlassInfo::getEngineerId, item.getEngineerId())
-                            .orderBy(Boolean.TRUE, sequenceOrder, GlassInfo::getTemperingFeedSequence));
-                    if (CollectionUtils.isNotEmpty(temperingGlassInfos)) {
-                        temperingGlassInfoService.saveBatch(temperingGlassInfos);
-                        computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
-                        Date endDate = new Date();
-                        log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
-                        return;
+                    if (redisUtil.getCacheObject("temperingengineerId").equals(item.getEngineerId())) {
+                        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(BigStorageCageDetails::getState, Const.GLASS_STATE_IN)
+                                .eq(GlassInfo::getTemperingLayoutId, item.getTemperingLayoutId())
+                                .eq(GlassInfo::getEngineerId, item.getEngineerId())
+                                .orderBy(Boolean.TRUE, sequenceOrder, GlassInfo::getTemperingFeedSequence));
+                        if (CollectionUtils.isNotEmpty(temperingGlassInfos)) {
+                            temperingGlassInfoService.saveBatch(temperingGlassInfos);
+                            computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+                            Date endDate = new Date();
+                            log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
+                            return;
+                        }
                     }
                 }
             }
@@ -356,7 +358,7 @@
                             int serialNumber = 1;
                             for (BigStorageCageDetails item : list) {
                                 outTasks.add(new BigStorageCageOutTask(item.getGlassId(), first.getSlot(), second.getSlot(),
-                                        item.getWidth() * 10, item.getHeight() * 10, 1, serialNumber++, Const.BIG_STORAGE_OUT_NEW));
+                                        item.getWidth() * 10, item.getHeight() * 10, 1, serialNumber++, Const.BIG_STORAGE_OUT_NEW, new Date()));
                             }
                             //鏂板璋冨害浠诲姟
                             bigStorageCageOutTaskService.saveBatch(outTasks);
@@ -435,6 +437,16 @@
             List<BigStorageCageOutTask> outSuccessGlass = bigStorageCageOutTaskService.list(new LambdaQueryWrapper<BigStorageCageOutTask>()
                     .in(BigStorageCageOutTask::getGlassId, glassIds).in(BigStorageCageOutTask::getTaskState, Const.BIG_STORAGE_OUT_ALL));
             if (CollectionUtils.isNotEmpty(outSuccessGlass)) {
+                for (BigStorageCageOutTask bigStorageCageOutTask:outSuccessGlass
+                     ) {
+                    if(bigStorageCageOutTask.getEndSlot().equals(Const.ARTIFICIAL_OUT_TARGET_POSITION)){
+                        temperingGlassInfoService.update(
+                                new LambdaUpdateWrapper<TemperingGlassInfo>()
+                                        .set(TemperingGlassInfo::getState,Const.TEMPERING_END)
+                                        .eq(TemperingGlassInfo::getGlassId,bigStorageCageOutTask.getGlassId())
+                        );
+                    }
+                }
                 log.info("3銆佽幏鍙栧嚭鐗囧凡瀹屾垚鐨勭幓鐠冧俊鎭痠d:{}", outSuccessGlass);
                 List<UpdateBigStorageCageDTO> storageCageDTOList = outSuccessGlass.stream().map(e -> {
                     UpdateBigStorageCageDTO storageCageDTO = new UpdateBigStorageCageDTO();
@@ -664,6 +676,13 @@
         bigStorageCageFeedTask.setCreateTime(new Date());
         //鍒犻櫎鐞嗙墖绗艰〃鎷胯蛋/鐮存崯鏁版嵁鏁版嵁
         damageService.deleteByGlassId(glassId);
+        Damage damage = new Damage();
+        damage.setGlassId(glassId);
+        damage.setWorkingProcedure("纾ㄨ竟");
+        damage.setLine(line);
+        damage.setType(1);
+        damage.setRemark("杩涘ぇ鐞嗙墖");
+        damageService.insertDamage(damage);
         return bigStorageCageFeedTaskService.save(bigStorageCageFeedTask);
     }
 
@@ -787,7 +806,7 @@
                 int minLength = Math.min((int) e.getWidth(), (int) e.getHeight());
                 if (maxX + minLength <= xMaxSize) {
                     bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION,
-                            e.getWidth() * 10, e.getHeight() * 10, 0, 0, 1));
+                            e.getWidth() * 10, e.getHeight() * 10, 0, 0, 1, new Date()));
                     maxX = Math.max(maxX, e.getXCoordinate());
                 } else {
                     break;
@@ -795,7 +814,7 @@
 
             } else {
                 bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.ARTIFICIAL_OUT_TARGET_POSITION,
-                        e.getWidth() * 10, e.getHeight(), 0, 0, 1));
+                        e.getWidth() * 10, e.getHeight(), 0, 0, 1, new Date()));
             }
         }
         Assert.isFalse(CollectionUtils.isEmpty(bigStorageCageOutTaskList), "鏈幏鍙栧嚭鐗囨暟鎹紝缁撴潫鍑虹墖浠诲姟");
@@ -846,7 +865,7 @@
                 int minLength = Math.min((int) e.getWidth(), (int) e.getHeight());
                 if (maxX + minLength <= xMaxSize) {
                     bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION,
-                            e.getWidth() * 10, e.getHeight() * 10, trainNumber, serialNumber++, 1));
+                            e.getWidth() * 10, e.getHeight() * 10, trainNumber, serialNumber++, 1, new Date()));
                     maxX = Math.max(maxX, e.getXCoordinate());
                 } else {
                     remainWidth = carWidth - maxLength - glassGap;
@@ -854,16 +873,20 @@
                     serialNumber = 1;
                     maxX = e.getXCoordinate();
                     bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.TEMPERING_OUT_TARGET_POSITION,
-                            e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1));
+                            e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1, new Date()));
                 }
             } else {
                 bigStorageCageOutTaskList.add(new BigStorageCageOutTask(e.getGlassId(), e.getSlot(), Const.ARTIFICIAL_OUT_TARGET_POSITION,
-                        e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1));
+                        e.getWidth() * 10, e.getHeight(), trainNumber, serialNumber++, 1, new Date()));
             }
         }
         Assert.isFalse(CollectionUtils.isEmpty(bigStorageCageOutTaskList), "鏈幏鍙栧嚭鐗囨暟鎹紝缁撴潫鍑虹墖浠诲姟");
         log.info("鑾峰彇鍑虹墖浠诲姟鏁版嵁{}鏉★紝鎵ц淇濆瓨", bigStorageCageOutTaskList.size());
-        bigStorageCageOutTaskService.saveBatch(bigStorageCageOutTaskList);
+        for (BigStorageCageOutTask bigStorageCageOutTask : bigStorageCageOutTaskList
+        ) {
+            bigStorageCageOutTaskService.save(bigStorageCageOutTask);
+        }
+//        bigStorageCageOutTaskService.saveBatch(bigStorageCageOutTaskList);
         List<String> glassIds = bigStorageCageOutTaskList.stream().map(BigStorageCageOutTask::getGlassId).collect(Collectors.toList());
         log.info("灏嗗嚭鐗囩幓鐠儃}鐜荤拑鐘舵�佹敼涓哄凡鍑虹墖", glassIds);
         bigStorageCageDetailsService.update(new LambdaUpdateWrapper<BigStorageCageDetails>()

--
Gitblit v1.8.0