From ce2791d2a730845a564ce0e16563b03fea0970db Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期三, 15 五月 2024 16:24:28 +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 |  174 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 165 insertions(+), 9 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 0cedd56..0b2f093 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
@@ -1,20 +1,176 @@
 package com.mes.downworkstation.service.impl;
 
-import com.mes.downworkstation.entity.DownWorkstation;
+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;
 
-/**
- * <p>
- *  鏈嶅姟瀹炵幇绫�
- * </p>
- *
- * @author zhoush
- * @since 2024-03-27
- */
+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(required=false)
+    private DownWorkstationTaskMapper downWorkstationTaskMapper;
+    @Autowired
+    private DownGlassInfoService downGlassInfoService;
+    @Autowired
+    private DownGlassInfoMapper downGlassInfoMapper;
+    @Autowired
+    private DownGlassTaskService downGlassTaskService;
+
+
+    @Autowired
+    private DownWorkstationTaskService downWorkstationTaskService;
+
+    //    @Override
+//    public List<DownWorkstation> gettwoDownWorkstations() {
+//        return downWorkstationMapper.getDownWorkstationsInRange(6,10);
+//    }
+//鑾峰彇鎬绘暟閲�
+    @Override
+    public int getTotalQuantity(int workstationId) {
+        DownWorkstation result = baseMapper.selectOne(new QueryWrapper<DownWorkstation>().lambda()
+                .select(DownWorkstation::getTotalquantity)
+                .eq(DownWorkstation::getWorkstationId, workstationId));
+
+        return result != null ? result.getTotalquantity() : 0;
+    }
+
+
+    //宸ヤ綅鏄剧ず
+    @Override
+    public List<Map<String, Object>> getTotalGlassDimensionsByWorkstation(int start,int end) {
+        MPJQueryWrapper<DownWorkstation> 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")
+                .orderByAsc("t.workstation_id").between("t.workstation_id", start, end)
+
+        ;
+
+    List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
+       // List<DownWorkstionAndDownGlassinfo> workstationList = null;
+        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 getRacksNumber(int workstationId) {
+        QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("racks_number")
+                .eq("workstation_id", workstationId);
+
+        DownWorkstation result = baseMapper.selectOne(queryWrapper);
+        return result != null ? result.getRacksnumber() : 0;
+    }
+
+    //鏍规嵁鏉′欢鑾峰彇宸ヤ綅鐜荤拑淇℃伅
+    @Override
+    public List<DownWorkstation> getoneDownWorkstations(int startId, int endId) {
+        QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>();
+        queryWrapper.between("workstation_id", startId, endId);
+
+        return baseMapper.selectList(queryWrapper);
+    }
+
+
+//
+
+
+    @Override
+    public void updateracksnumber(String flowCardId, int racksNumber) {
+        UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.set("racks_number", racksNumber).eq("flow_card_id", flowCardId);
+        baseMapper.update(new DownWorkstation(), updateWrapper);
+    }
+
+
+    @Override
+    public int updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId) {
+        UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.set("total_quantity", glassInfoCount)
+                .set("flow_card_id", flowCardId)
+                .eq("workstation_id", workstationId);
+
+        return baseMapper.update(new DownWorkstation(), updateWrapper);
+    }
+
+    @Override
+    public void clearFlowCardId(int workstationId) {
+        UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.set("flow_card_id", null)
+                .set("total_quantity", 0)
+                .set("racks_number", 0)
+                .eq("workstation_id", workstationId);
+
+        baseMapper.update(new DownWorkstation(), updateWrapper);
+    }
+
+
+
+
+
+    @Override
+    public DownWorkstation selectByFlowCardId(String flowcardid) {
+        QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("flow_card_id", flowcardid);
+
+        return baseMapper.selectOne(queryWrapper);
+    }
+
+
+    @Transactional
+    public void crossDatabaseQuery() {
+        // 浠� MySQL 鏁版嵁搴撲腑鏌ヨ鏁版嵁锛屽彧杩斿洖涓�鏉$鍚堟潯浠剁殑鏁版嵁
+        DownWorkstation downWorkstation = downWorkstationTaskMapper.selectdownWorkstationstate();
+
+        // 浠� SQL Server 鏁版嵁搴撲腑鏌ヨ鏁版嵁
+        List<DownWorkstationTask> downWorkstationTasks = downWorkstationTaskMapper.selectList();
+
+    }
+
+
+
+
 }

--
Gitblit v1.8.0