From f2ea663c986c5309a6b1d3f283c13bd312ecbed7 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期三, 17 七月 2024 13:52:17 +0800
Subject: [PATCH] 图片测试

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java |   54 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 32 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 ad16377..5430e36 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
@@ -263,23 +263,27 @@
             return;
         }
         //閽㈠寲浼樺厛锛氳幏鍙栫悊鐗囩  鐜荤拑灏忕墖  鐮存崯琛� 鏁伴噺   鍒ゆ柇绗煎唴鐗堝浘鏄惁鍒伴綈
-        TemperingLayoutDTO temperingLayoutDTO = bigStorageCageDetailsService.temperingIsAll();
-        if (null != temperingLayoutDTO) {
-            //鐜荤拑鍒伴綈
+        List<TemperingLayoutDTO> temperingLayoutDTOList = bigStorageCageDetailsService.temperingIsAll();
+        if (CollectionUtils.isNotEmpty(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, temperingLayoutDTO.getTemperingLayoutId())
-                    .eq(GlassInfo::getEngineerId, temperingLayoutDTO.getEngineerId()));
-            temperingGlassInfoService.saveBatch(temperingGlassInfos);
-            computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
-            Date endDate = new Date();
-            log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
-            return;
+            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()));
+                if (CollectionUtils.isNotEmpty(temperingGlassInfos)) {
+                    temperingGlassInfoService.saveBatch(temperingGlassInfos);
+                    computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+                    Date endDate = new Date();
+                    log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
+                    return;
+                }
+            }
         }
         //鏈埌榻� 鎵ц鍐呴儴璋冨害浠诲姟
         TemperingLayoutDTO temperingOccupySlot = bigStorageCageDetailsService.queryTemperingOccupySlot();
@@ -377,27 +381,29 @@
         Boolean flag = Boolean.TRUE;
         //2銆佽幏鍙栧崸杞珛
         Integer widthFirst = Math.max(edgGlassTaskInfoList.get(0).getWidth() / 10, edgGlassTaskInfoList.get(0).getHeight() / 10);
+        Integer heightFirst = Math.min(edgGlassTaskInfoList.get(0).getWidth() / 10, edgGlassTaskInfoList.get(0).getHeight() / 10);
         if (edgGlassTaskInfoList.size() == 1) {
             if (remainWidth >= widthFirst) {
                 if (glassCount < inCarMaxSize) {
-                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst);
+                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst, heightFirst);
                 } else {
-                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst);
+                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst, heightFirst);
                 }
             } else {
                 flag = Boolean.FALSE;
             }
         } else {
             Integer widthSecond = Math.max(edgGlassTaskInfoList.get(1).getWidth() / 10, edgGlassTaskInfoList.get(1).getHeight() / 10);
+            Integer heightSecond = Math.min(edgGlassTaskInfoList.get(1).getWidth() / 10, edgGlassTaskInfoList.get(1).getHeight() / 10);
             if (remainWidth >= widthFirst) {
                 if (remainWidth - widthFirst - glassGap >= widthSecond) {
                     if (glassCount < inCarMaxSize) {
-                        addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst);
+                        addFeedTask(glassId, line, Const.BIG_STORAGE_IN_WAIT, widthFirst, heightSecond);
                     } else {
-                        addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst);
+                        addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst, heightSecond);
                     }
                 } else {
-                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst);
+                    addFeedTask(glassId, line, Const.BIG_STORAGE_IN_RUN, widthFirst, heightSecond);
                 }
             } else {
                 flag = Boolean.FALSE;
@@ -414,13 +420,14 @@
     /**
      * 娣诲姞浠诲姟淇℃伅
      */
-    private Boolean addFeedTask(String glassId, Integer line, Integer taskType, Integer width) {
+    private Boolean addFeedTask(String glassId, Integer line, Integer taskType, Integer width, Integer height) {
         BigStorageCageFeedTask bigStorageCageFeedTask = new BigStorageCageFeedTask();
         bigStorageCageFeedTask.setGlassId(glassId);
         bigStorageCageFeedTask.setTaskState(Const.BIG_STORAGE_IN_NEW);
         bigStorageCageFeedTask.setLine(line);
         bigStorageCageFeedTask.setTaskType(taskType);
         bigStorageCageFeedTask.setWidth(width);
+        bigStorageCageFeedTask.setHeight(height);
         bigStorageCageFeedTask.setCreateTime(new Date());
         return bigStorageCageFeedTaskService.save(bigStorageCageFeedTask);
     }
@@ -576,6 +583,9 @@
     public Boolean computeIsRun(int line, String glassId) {
         //鑾峰彇鍗ц浆绔嬪墿浣欏搴�
         BigStorageDTO sitToUpRemainWidth = bigStorageCageFeedTaskService.querySitToUpRemainWidth(line);
+        if (sitToUpRemainWidth.getGlassCount() == 0) {
+            return Boolean.FALSE;
+        }
         //鑾峰彇鐜荤拑淇℃伅
         GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getGlassId, glassId));
         return sitToUpRemainWidth.getWidth() < glassInfo.getWidth();

--
Gitblit v1.8.0