From 2c08bfb96d6523dfbf5ae543e94495c151aadbf1 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期五, 14 三月 2025 17:53:18 +0800
Subject: [PATCH] 大屏嵌入历史任务,生产统计显示

---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassOutRelationInfoServiceImpl.java |   32 ++++++++++++++++++++++++++++++--
 1 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassOutRelationInfoServiceImpl.java b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassOutRelationInfoServiceImpl.java
index d66abaf..e237003 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassOutRelationInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassOutRelationInfoServiceImpl.java
@@ -1,8 +1,10 @@
 package com.mes.hollow.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
+import cn.smallbun.screw.core.util.StringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.mes.common.config.Const;
 import com.mes.glassinfo.entity.GlassInfo;
@@ -12,6 +14,7 @@
 import com.mes.hollow.entity.HollowFormulaDetails;
 import com.mes.hollow.entity.HollowGlassOutRelationInfo;
 import com.mes.hollow.entity.dto.*;
+import com.mes.hollow.entity.request.HollowHistoryTaskRequest;
 import com.mes.hollow.entity.request.HollowTaskRequest;
 import com.mes.hollow.mapper.HollowGlassOutRelationInfoMapper;
 import com.mes.hollow.service.HollowBigStorageCageDetailsService;
@@ -20,6 +23,7 @@
 import com.mes.hollow.service.HollowGlassRelationInfoService;
 import com.mes.hollowqueue.entity.HollowGlassQueueInfo;
 import com.mes.hollowqueue.service.HollowGlassQueueInfoService;
+import com.mes.tools.DateUtil;
 import com.mes.utils.Blank;
 import com.mes.utils.RedisUtil;
 import freemarker.template.Configuration;
@@ -277,6 +281,7 @@
             glassAndFrame.setFrameList(frameList);
             glassAndFrameList.add(glassAndFrame);
         });
+        Collections.sort(glassAndFrameList, (s1, s2) -> Integer.parseInt(s1.getItemNum()) - Integer.parseInt(s2.getItemNum()));
         details.setGlassAndFrameList(glassAndFrameList);
 
 
@@ -306,6 +311,23 @@
             e.printStackTrace();
         }
         return "success";
+    }
+
+    @Override
+    public Page<HollowGlassOutRelationInfo> queryHollowHistoryTask(HollowHistoryTaskRequest request) {
+        Page<HollowGlassOutRelationInfo> page = new Page<>(request.getPageNo(), request.getPageSize());
+        if (null == request.getBeginDate()) {
+            request.setBeginDate(DateUtil.getBeginDate());
+            request.setEndDate(DateUtil.getEndDate());
+        }
+        LambdaQueryWrapper<HollowGlassOutRelationInfo> wrapper = new LambdaQueryWrapper<HollowGlassOutRelationInfo>()
+                .eq(HollowGlassOutRelationInfo::getCell, request.getCell())
+                .like(StringUtils.isNotBlank(request.getFlowCardId()), HollowGlassOutRelationInfo::getFlowCardId, request.getFlowCardId())
+                .in(CollectionUtil.isNotEmpty(request.getIsForceList()), HollowGlassOutRelationInfo::getIsForce, request.getIsForceList())
+                .in(CollectionUtil.isNotEmpty(request.getStateList()), HollowGlassOutRelationInfo::getState, request.getStateList())
+                .between(HollowGlassOutRelationInfo::getCreateTime, request.getBeginDate(), request.getEndDate())
+                .orderByDesc(HollowGlassOutRelationInfo::getCreateTime);
+        return this.page(page, wrapper);
     }
 
 
@@ -341,6 +363,7 @@
         if (930 == request.getCell()) {
             Map<Integer, List<HollowBigStorageCageDetails>> listMap = hollowBigStorageCageDetailsList.stream()
                     .collect(Collectors.groupingBy(HollowBigStorageCageDetails::getHollowSequence));
+            List<List<HollowGlassQueueInfo>> disorderList = new ArrayList<>();
             for (Map.Entry<Integer, List<HollowBigStorageCageDetails>> entry : listMap.entrySet()) {
                 //鍒涘缓闃熷垪鎺ユ敹涓嶆弧瓒虫垚瀵规儏鍐典笅锛氫竴瀵圭幓鐠冨垎鍑犳涓婅溅鐨勬搴忛棶棰�
                 List<HollowGlassQueueInfo> tempList = new ArrayList<>();
@@ -350,7 +373,7 @@
                 for (HollowBigStorageCageDetails item : reverse) {
                     remainWidth = remainWidth - (int) Math.max(item.getWidth(), item.getHeight());
                     if (remainWidth < 0) {
-                        hollowQueues.addAll(CollectionUtil.reverse(tempList));
+                        disorderList.add(CollectionUtil.reverse(tempList));
                         tempList = new ArrayList<>();
                         remainWidth = carWidth - (int) Math.max(item.getWidth(), item.getHeight());
                     }
@@ -358,7 +381,7 @@
                     tempList.add(queueInfo);
                     remainWidth = remainWidth - glassGap;
                 }
-                hollowQueues.addAll(CollectionUtil.reverse(tempList));
+                disorderList.add(CollectionUtil.reverse(tempList));
                 HollowBigStorageCageDetails cageDetails = entry.getValue().get(0);
                 if (cageDetails.getIsPair() == 1) {
                     isPairCount = isPairCount - cageDetails.getTotalLayer();
@@ -367,6 +390,11 @@
                     }
                 }
             }
+            //闃叉鐜荤拑涓┖绾跨幓鐠冩棤搴忥紝灏嗙幓鐠冩寜鐓ч『搴忛噸鏂版帓搴�
+            Collections.sort(disorderList, (s1, s2) -> s1.get(0).getHollowSequence() - s2.get(0).getHollowSequence());
+            for (List<HollowGlassQueueInfo> list : disorderList) {
+                hollowQueues.addAll(list);
+            }
         } else {
             loop:
             for (HollowBigStorageCageDetails item : hollowBigStorageCageDetailsList) {

--
Gitblit v1.8.0