From 8e1ee5781fb9c3a812c24934d74272bcc1a6eaa0 Mon Sep 17 00:00:00 2001 From: wuyouming666 <2265557248@qq.com> Date: 星期四, 18 七月 2024 10:26:29 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java | 102 +++++++++++++++++++++++++++++---------------------- 1 files changed, 58 insertions(+), 44 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java index 242ffed..f7600e6 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java @@ -1,8 +1,10 @@ package com.mes.edgstoragecage.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.mes.common.config.Const; import com.mes.edgstoragecage.entity.EdgStorageCage; import com.mes.edgstoragecage.entity.EdgStorageCageDetails; import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper; @@ -11,15 +13,15 @@ import com.mes.uppattenusage.entity.UpPattenUsage; import com.mes.uppattenusage.mapper.UpPattenUsageMapper; 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; /** * <p> - * 鏈嶅姟瀹炵幇绫� + * 鏈嶅姟瀹炵幇绫� * </p> * * @author zhoush @@ -29,38 +31,44 @@ @Service public class EdgStorageCageServiceImpl extends MPJBaseServiceImpl<EdgStorageCageMapper, EdgStorageCage> implements EdgStorageCageService { - @Autowired + @Resource EdgStorageCageDetailsMapper edgStorageCageDetailsMapper; - @Autowired + @Resource UpPattenUsageMapper upPattenUsageMapper; - /** - * 鏌ヨ绗煎唴绌烘牸 - * @return - */ @Override - public List<EdgStorageCage> selectCacheEmpty(){ - return baseMapper.selectJoinList(EdgStorageCage.class,new MPJLambdaWrapper<EdgStorageCage>() + public EdgStorageCage selectNearestEmpty(int currentSlot, boolean flag) { + List<EdgStorageCage> emptyList = this.selectJoinList(EdgStorageCage.class, new MPJLambdaWrapper<EdgStorageCage>() .selectAll(EdgStorageCage.class) - .leftJoin(EdgStorageCageDetails.class,on->on - .eq(EdgStorageCageDetails::getSlot,EdgStorageCage::getSlot) - .eq(EdgStorageCageDetails::getState,"100")) + .leftJoin(EdgStorageCageDetails.class, on -> on + .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot) + .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)) .isNull(EdgStorageCageDetails::getSlot) + .eq(EdgStorageCage::getEnableState, Const.SLOT_ON) + .last("order by abs(t.slot - " + currentSlot + ") asc limit 2") ); + if (flag && CollectionUtil.isNotEmpty(emptyList)) { + return emptyList.get(0); + } + if (CollectionUtil.isEmpty(emptyList) || emptyList.size() == 1) { + return null; + } + return emptyList.get(0); } /** * 鏌ヨ绗煎唴鍑虹墖浠诲姟 鎸夐挗鍖栫増鍥惧彿+鐗堝浘鍐呭簭鍙� + * * @return */ @Override - public List<Map<String, Object>> selectCacheOut(){ + public List<Map<String, Object>> selectCacheOut() { return upPattenUsageMapper.selectJoinMaps(JoinWrappers.lambda(UpPattenUsage.class).selectAll(UpPattenUsage.class) - .select(EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight,EdgStorageCageDetails::getGlassId) - .leftJoin(EdgStorageCageDetails.class,on->on - .eq(EdgStorageCageDetails::getDeviceId,EdgStorageCage::getDeviceId) - .eq(EdgStorageCageDetails::getSlot,EdgStorageCage::getSlot)) + .select(EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight, EdgStorageCageDetails::getGlassId) + .leftJoin(EdgStorageCageDetails.class, on -> on + .eq(EdgStorageCageDetails::getDeviceId, EdgStorageCage::getDeviceId) + .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)) .isNull(EdgStorageCageDetails::getSlot) ); // return upPattenUsageMapper.selectJoinMaps(new MPJQueryWrapper<UpPattenUsage>().selectAll(UpPattenUsage.class) @@ -73,59 +81,65 @@ /** * 鐞嗙墖缂撳瓨璇︽儏 + * * @return */ @Override - public List<Map<String, Object>> selectEdgStorageCages(){ + public List<Map<String, Object>> selectEdgStorageCages() { return baseMapper.selectJoinMaps(JoinWrappers.lambda(EdgStorageCage.class) .selectAll(EdgStorageCage.class) - .selectAs(EdgStorageCageDetails::getId,"esdId") - .select(EdgStorageCageDetails::getGlassId,EdgStorageCageDetails::getWidth,EdgStorageCageDetails::getHeight,EdgStorageCageDetails::getId) - .leftJoin(EdgStorageCageDetails.class,on->on - .eq(EdgStorageCageDetails::getDeviceId,EdgStorageCage::getDeviceId) - .eq(EdgStorageCageDetails::getSlot,EdgStorageCage::getSlot)) + .selectAs(EdgStorageCageDetails::getId, "esdId") + .select(EdgStorageCageDetails::getGlassId, EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight, EdgStorageCageDetails::getId) + .leftJoin(EdgStorageCageDetails.class, on -> on + .eq(EdgStorageCageDetails::getDeviceId, EdgStorageCage::getDeviceId) + .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN) + .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)) ); -// return baseMapper.selectJoinMaps(new MPJQueryWrapper<EdgStorageCage>().selectAll(EdgStorageCage.class) -// .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height") -// .leftJoin("edg_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot") -// ); } /** * 淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愬惎鐢�/绂佺敤銆� + * * @param edgStorageCage * @return */ @Override - public boolean updateEdgStorageCage(EdgStorageCage edgStorageCage){ - EdgStorageCage edgItem=baseMapper.selectById(edgStorageCage.getId()); - edgItem.setEnableState(edgStorageCage.getEnableState()); - baseMapper.updateById(edgItem); - return true; + public boolean updateEdgStorageCage(EdgStorageCage edgStorageCage) { + EdgStorageCage edgItem = baseMapper.selectById(edgStorageCage.getId()); + if(edgItem!=null){ + edgItem.setEnableState(edgStorageCage.getEnableState()); + baseMapper.updateById(edgItem); + log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:鎴愬姛",edgStorageCage); + return true; + } + log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:澶辫触",edgStorageCage); + return false; } /** - *淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愭坊鍔�/鍒犻櫎/鏇存崲銆� + * 淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愭坊鍔�/鍒犻櫎/鏇存崲銆� + * * @param edgStorageCageId * @param edgStorageCageDetails * @return */ @Override - public boolean updateEdgStorageCageDetails(int edgStorageCageId,EdgStorageCageDetails edgStorageCageDetails){ - EdgStorageCage edgItem=baseMapper.selectById(edgStorageCageId); - log.info("姝e父"+edgItem); - EdgStorageCageDetails edgDItem=edgStorageCageDetailsMapper.selectById(edgStorageCageDetails.getId()); - if (edgItem!=null){ - //绉婚櫎 - EdgStorageCageDetails result=edgStorageCageDetailsMapper.selectOne(new MPJLambdaWrapper<EdgStorageCageDetails>().eq(EdgStorageCageDetails::getSlot,edgStorageCageId)); - if (result!=null){ + public boolean updateEdgStorageCageDetails(int edgStorageCageId, EdgStorageCageDetails edgStorageCageDetails) { + EdgStorageCage edgItem = baseMapper.selectById(edgStorageCageId); + log.info("姝e父" + edgItem); + EdgStorageCageDetails edgDItem = edgStorageCageDetailsMapper.selectById(edgStorageCageDetails.getId()); + if (edgItem != null) { + //绉婚櫎 锛堢牬鎹�,鐩墠涓や釜姒傚康娣峰悎鍦ㄤ竴璧�,寤鸿鎷嗗紑锛� + EdgStorageCageDetails result = edgStorageCageDetailsMapper.selectOne(new MPJLambdaWrapper<EdgStorageCageDetails>().eq(EdgStorageCageDetails::getSlot, edgStorageCageId)); + if (result != null) { result.setSlot(0); + result.setState(201); edgStorageCageDetailsMapper.updateById(result); } //娣诲姞 - if(edgDItem!=null){ + if (edgDItem != null) { //鍙紶鏍煎瓙 锛氱Щ闄ょ幓鐠� - EdgStorageCageDetails newresult=edgStorageCageDetailsMapper.selectById(edgStorageCageDetails.getId()); + EdgStorageCageDetails newresult = edgStorageCageDetailsMapper.selectById(edgStorageCageDetails.getId()); newresult.setSlot(edgItem.getSlot()); edgStorageCageDetailsMapper.updateById(newresult); } -- Gitblit v1.8.0