From 18f6e14f2cb0e19fc8726e9821bc4db172a04d17 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期三, 24 四月 2024 16:32:54 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes

---
 hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java |  139 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 138 insertions(+), 1 deletions(-)

diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
index 0c44dac..afcddd1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
@@ -3,27 +3,46 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.query.MPJQueryWrapper;
+import com.mes.downglassinfo.entity.DownGlassInfo;
 import com.mes.downglassinfo.entity.DownGlassTask;
+import com.mes.downglassinfo.mapper.DownGlassInfoMapper;
+import com.mes.downglassinfo.service.DownGlassInfoService;
+import com.mes.downglassinfo.service.DownGlassTaskService;
 import com.mes.downworkstation.entity.DownWorkstation;
 import com.mes.downworkstation.entity.DownWorkstationTask;
+import com.mes.downworkstation.entity.DownWorkstionAndDownGlassinfo;
 import com.mes.downworkstation.mapper.DownWorkstationMapper;
 import com.mes.downworkstation.mapper.DownWorkstationTaskMapper;
 import com.mes.downworkstation.service.DownWorkstationService;
+import com.mes.downworkstation.service.DownWorkstationTaskService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
-
+@Slf4j
 @Service
 public class DownWorkstationServiceImpl extends ServiceImpl<DownWorkstationMapper, DownWorkstation> implements DownWorkstationService {
 
     @Autowired
     private DownWorkstationMapper downWorkstationMapper;
+    @Autowired
     private DownWorkstationTaskMapper downWorkstationTaskMapper;
+    @Autowired
+    private DownGlassInfoService downGlassInfoService;
+    @Autowired
+    private DownGlassInfoMapper downGlassInfoMapper;
+    @Autowired
+    private DownGlassTaskService downGlassTaskService;
 
 
+    @Autowired
+    private DownWorkstationTaskService downWorkstationTaskService;
 
 //    @Override
 //    public List<DownWorkstation> gettwoDownWorkstations() {
@@ -39,6 +58,37 @@
         DownWorkstation result = baseMapper.selectOne(queryWrapper);
         return result != null ? result.getTotalquantity() : 0;
     }
+//宸ヤ綅鏄剧ず
+    @Override
+    public List<Map<String, Object>> getTotalGlassDimensionsByWorkstation() {
+        MPJQueryWrapper<DownWorkstionAndDownGlassinfo> queryWrapper = new MPJQueryWrapper<>();
+        queryWrapper.select("t.workstation_id", "t.flow_card_id", "COALESCE(SUM(b.width), 0) AS totalwidth", "COALESCE(SUM(b.height), 0) AS totalheight")
+                .leftJoin("down_glass_info b on t.flow_card_id = b.flow_card_id")
+                .groupBy("t.workstation_id", "t.flow_card_id");
+
+        List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
+
+        List<Map<String, Object>> result = new ArrayList<>();
+        for (DownWorkstionAndDownGlassinfo downWorkstionAndDownGlassinfo : workstationList) {
+            Map<String, Object> rack = new HashMap<>();
+
+            // 鍒涘缓瀛愰」锛坕tem锛夊璞�
+            Map<String, Object> item = new HashMap<>();
+            item.put("height",  downWorkstionAndDownGlassinfo.getTotalheight()); // 璁剧疆瀛愰」楂樺害锛屾牴鎹疄闄呮儏鍐佃缃�
+            item.put("width",  downWorkstionAndDownGlassinfo.getTotalwidth()); // 璁剧疆瀛愰」瀹藉害锛屾牴鎹疄闄呮儏鍐佃缃�
+            item.put("fillColor", "yellow"); // 璁剧疆瀛愰」棰滆壊
+            item.put("content", downWorkstionAndDownGlassinfo.getFlowCardId()); // 浣跨敤娴佺▼鍗″彿浣滀负瀛愰」鍐呭
+
+            rack.put("item", item); // 灏嗗瓙椤瑰璞℃斁鍏ヨ揣鏋跺璞′腑
+
+            result.add(rack); // 灏嗚揣鏋跺璞℃坊鍔犲埌缁撴灉鍒楄〃涓�
+            //log.info("璐ф灦瀵硅薄: {}", rack);
+        }
+
+        return result; // 杩斿洖鏈�缁堢粨鏋�
+    }
+
+
 
 //    @Override
 //    public int getTotalQuantity(int workstationId) {
@@ -106,6 +156,14 @@
 
 
 
+    public DownWorkstation selectByFlowCardId(String flowcardid) {
+        QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("flow_card_id", flowcardid);
+
+        return baseMapper.selectOne(queryWrapper);
+    }
+
+
 
 
 
@@ -126,4 +184,83 @@
 
 
 
+
+    @Override
+    public void insertdownglassinfo() {
+
+
+
+        List<DownGlassTask> taskdownGlassInf = downGlassTaskService.getUnloadingTaskState();
+//
+
+
+        if (taskdownGlassInf != null && !taskdownGlassInf.isEmpty()) {
+
+//
+
+            for (DownGlassTask downGlassInfo : taskdownGlassInf) {
+                // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
+                DownGlassInfo newdownGlassInfo = new DownGlassInfo();
+
+                newdownGlassInfo.setFlowCardId(downGlassInfo.getFlowCardId());
+                Integer maxSequence = downGlassInfoService.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId());
+                // 鍒濆鍖栭『搴忓瓧娈靛��
+                int sequence = maxSequence != null ? maxSequence + 1 : 1;
+//                newdownGlassInfo.setId(downGlassInfo.getId());
+                newdownGlassInfo.setWidth(downGlassInfo.getWidth());
+                newdownGlassInfo.setHeight(downGlassInfo.getHeight());
+                newdownGlassInfo.setThickness(downGlassInfo.getThickness());
+                newdownGlassInfo.setFilmsid(downGlassInfo.getFilmsid());
+                // 璁剧疆椤哄簭瀛楁鍊�
+                newdownGlassInfo.setSequence(sequence);
+
+                // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
+                downGlassInfoService.insertDownGlassInfo(newdownGlassInfo);
+                //鎻掑叆鏁版嵁鍒版満姊版墜浠诲姟琛�
+
+                downWorkstationTaskService.insertdownWorkstationtask(newdownGlassInfo);
+                //鏇存柊涓嬬墖浠诲姟琛ㄧ姸鎬佷负0
+                downGlassTaskService.updateTaskStateToZero(downGlassInfo.getId());
+                //鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+                downGlassTaskService.deleteTask(downGlassInfo.getFlowCardId());
+
+                sequence++; // 閫掑椤哄簭瀛楁鍊�
+
+
+            }
+        }
+
+
+
+
+        try {
+            //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏋跺瓙鏄惁缁戝畾浜嗘祦绋嬪崱鍙� 宸ヤ綅琛ㄥ拰浠诲姟琛ㄤ腑鐘舵�佷负1鐨勬祦绋嬪崱鍙峰拰宸茶惤鏋舵暟閲�
+            List<DownWorkstationTask> taskdownWorkstation = downWorkstationTaskService.getTaskState();
+            if (taskdownWorkstation != null && !taskdownWorkstation.isEmpty()) {
+                //锛屽鏋滃凡缁忕粦瀹氬垯鏇存柊宸茶惤鏋舵暟閲�,骞朵笖鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+                for (DownWorkstationTask downWorkstation : taskdownWorkstation) {
+                    //鏇存柊涓嬬墖宸ヤ綅琛ㄤ腑宸茶惤鏋舵暟閲�
+                    DownWorkstation downWorkstation1 = selectByFlowCardId(downWorkstation.getFlowCardId());
+                    updateracksnumber(downWorkstation.getFlowCardId(),downWorkstation1.getRacksnumber()  + 1);
+                    //鏇存柊鏈烘浠诲姟琛ㄤ腑鐘舵�佷负0
+                    downWorkstationTaskService.updateTaskStateToZero(downWorkstation.getId());
+                    //鍒犻櫎鏈烘浠诲姟琛�
+                    downWorkstationTaskService.removeById(downWorkstation.getId());
+
+
+                }
+            }
+        } catch (Exception e) {
+            // 鎵撳嵃寮傚父淇℃伅
+            e.printStackTrace();
+            // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
+        }
+    }
+
+
+
+
+
+
+
 }

--
Gitblit v1.8.0