From 91e4ba507f9806c975a4273154d79f1a43b836c4 Mon Sep 17 00:00:00 2001 From: ZengTao <2773468879@qq.com> Date: 星期一, 29 四月 2024 13:42:29 +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 | 137 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 128 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 0c44dac..18d2def 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,29 +3,49 @@ 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 + // @Override // public List<DownWorkstation> gettwoDownWorkstations() { // return downWorkstationMapper.getDownWorkstationsInRange(6,10); // } @@ -40,13 +60,44 @@ 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<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 getTotalQuantity(int workstationId) { // Integer totalQuantity = downWorkstationMapper.getTotalQuantity(workstationId); // return totalQuantity != null ? totalQuantity : 0; // } -// @Override + // @Override // public int getRacksNumber(int workstationId) { // Integer racksNumber = downWorkstationMapper.getRacksNumber(workstationId); // return racksNumber != null ? racksNumber : 0; @@ -61,7 +112,8 @@ 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<>(); @@ -77,10 +129,9 @@ @Override public void updateracksnumber(String flowCardId, int racksNumber) { UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("racks_number",racksNumber).eq("flow_card_id", flowCardId); + updateWrapper.set("racks_number", racksNumber).eq("flow_card_id", flowCardId); baseMapper.update(null, updateWrapper); } - @Override @@ -105,11 +156,12 @@ } + public DownWorkstation selectByFlowCardId(String flowcardid) { + QueryWrapper<DownWorkstation> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("flow_card_id", flowcardid); - - - - + return baseMapper.selectOne(queryWrapper); + } @Transactional @@ -123,7 +175,74 @@ } + @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