From 09be761e45c76c095ddbae1c401d780bae162fdd Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期四, 09 五月 2024 19:20:24 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java | 143 +++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 136 insertions(+), 7 deletions(-) diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java index dd58aa6..c10e337 100644 --- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java +++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java @@ -1,31 +1,63 @@ package com.mes.downstorage.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.yulichang.query.MPJQueryWrapper; -import com.github.yulichang.wrapper.MPJAbstractLambdaWrapper; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.github.yulichang.query.MPJQueryWrapper; + +import com.github.yulichang.toolkit.JoinWrappers; import com.mes.downstorage.entity.DownStorageCage; import com.mes.downstorage.entity.DownStorageCageDetails; import com.mes.downstorage.mapper.DownStorageCageDetailsMapper; + import com.mes.downstorage.mapper.DownStorageCageMapper; import com.mes.downstorage.service.DownStorageCageDetailsService; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.annotation.Resource; import java.util.List; import java.util.Map; - +@Slf4j @Service public class DownStorageCageDetailsServiceImpl extends ServiceImpl<DownStorageCageDetailsMapper, DownStorageCageDetails> implements DownStorageCageDetailsService { - + @Autowired(required=false) + private DownStorageCageMapper downStorageCageMapper; + @Autowired + private DownStorageCageDetailsMapper downStorageCageDetailsMapper; @Override public void addDownStorageCageDetails(DownStorageCageDetails details) { this.save(details); + } + + + @Override + //淇敼鐞嗙墖绗煎唴淇℃伅 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愭坊鍔�/鍒犻櫎/鏇存崲銆� + public boolean updatedownStorageCageDetails(DownStorageCageDetails details){ + baseMapper.updateById(details); + return true; + } + + + @Override + public List<DownStorageCageDetails> CacheOut(int start, int end) { + log.info("鍗曠墖鎯呭喌鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓уぇ灏忓嚭鐗�,骞朵笖浼樺厛鍑烘弧鏋剁殑灏忕墖"); + return downStorageCageDetailsMapper.selectJoinList( + DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCageDetails>() + .select("t.*") + .leftJoin("(SELECT t1.* FROM down_storage_cage_details t1 " + + "JOIN (SELECT flow_card_id, MAX(width*height) AS max_width FROM glass_info GROUP BY flow_card_id) t " + + "ON t1.flow_card_id = t.flow_card_id WHERE t1.width*t1.height = t.max_width) t3" + + " ON t.glass_id = t3.glass_id") + .leftJoin("down_workstation t4 ON t3.flow_card_id = t4.flow_card_id") + .isNull(Boolean.parseBoolean("t.glass_id"), "SELECT glass_id FROM down_glass_info") + .between("t4.workstation_id", start, end) + // 鏍规嵁 racks_number 鎺掑簭 + .orderByDesc("t4.racks_number") + + ); } @@ -42,5 +74,102 @@ - // Other business methods can be implemented here +// @Override +// public List<DownStorageCageDetails> getCacheOut(int start, int end) { +// log.info("鏍规嵁浼犲叆鐨勫伐浣嶆煡璇㈢鍚堟寜鐓ч『搴忓拰澶у皬鍑虹墖鐨勫皬鐗�"); +// return downStorageCageMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .leftJoin("down_workstation dw on escd.flow_card_id = dw.flow_card_id") +// .leftJoin("glass_info gi on dw.flow_card_id = gi.flowcard_id and gi.flowcard_id=escd.flow_card_id ") +// .isNotNull("escd.slot") +// .between("dw.workstation_id", start, end) +// .orderByDesc("escd.width") +// .orderByDesc("escd.height") +// ); +// } + + +// @Override +// public List<DownStorageCageDetails> selectCacheEmpty2(){ +// return downStorageCageMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() +// .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height") +// .leftJoin("down_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot") +// .isNull("escd.slot") +// ); +// } + + + @Override + public List<Map<String, Object>> getCacheInfo() { + log.info("鏌ヨ绗煎瓙鍐呬俊鎭�"); + return downStorageCageDetailsMapper.selectJoinMaps(JoinWrappers.lambda(DownStorageCageDetails.class) // 浣跨敤 JoinWrappers.lambda 鍒涘缓鑱斿悎鏌ヨ + .selectAll(DownStorageCageDetails.class) // 閫夋嫨鎵�鏈夊瓧娈� + .eq(DownStorageCage::getSlot, DownStorageCageDetails::getSlot) // 璁剧疆鍏宠仈鏉′欢 + .orderByAsc(DownStorageCage::getSlot) // 鎸� slot 瀛楁鍗囧簭鎺掑簭 + ); + } + +// +// @Override +// public List<Map> getCacheInfo() { +// log.info(" 鏌ヨ绗煎瓙鍐呬俊鎭�"); +// return downStorageCageMapper.selectJoinList( +// Map.class, new MPJQueryWrapper<DownStorageCage>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .orderByAsc("t.slot") +// ); +// +// } + +// @Override +// public List<DownStorageCageDetails> getCacheLeisure() { +// log.info(" 鏌ヨ绗煎瓙鍐呯┖闂�"); +// List<DownStorageCageDetails> list = downStorageCageMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNull("escd.slot") +// +// .orderByAsc("escd.slot") +// ); +// return list; +// } + + +// @Override +// public List<DownStorageCageDetails> getIsExistIntoCacheByflowcardid(String flowcardid, double width) { +// log.info(" 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿 鎵惧埌绌烘牸"); +// +// return downStorageCageMapper.selectJoinList( +// DownStorageCageDetails.class, new MPJQueryWrapper<DownStorageCage>() +// .select("escd.*") +// .leftJoin("down_storage_cage_details escd on t.slot = escd.slot") +// .isNull("escd.slot") +// .apply("t.remain_width - " + width + " > 0") +// .orderByAsc("escd.sequence") +// ); +// +// +// +// +// } + + + + + + + + + + + + + + + } -- Gitblit v1.8.0