From d5d0d1c7a84b996b9bbcebfaf2c2c95f1a5a3678 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期五, 11 十月 2024 08:39:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java | 50 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 39 insertions(+), 11 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 c61632d..c2645ea 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,13 +1,17 @@ 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.damage.entity.Damage; +import com.mes.damage.service.DamageService; import com.mes.edgstoragecage.entity.EdgStorageCage; import com.mes.edgstoragecage.entity.EdgStorageCageDetails; import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper; import com.mes.edgstoragecage.mapper.EdgStorageCageMapper; +import com.mes.edgstoragecage.service.EdgStorageCageDetailsService; import com.mes.edgstoragecage.service.EdgStorageCageService; import com.mes.uppattenusage.entity.UpPattenUsage; import com.mes.uppattenusage.mapper.UpPattenUsageMapper; @@ -15,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -35,16 +40,26 @@ @Autowired UpPattenUsageMapper upPattenUsageMapper; + @Autowired + DamageService damageService; + @Override - public EdgStorageCage selectNearestEmpty(int currentSlot) { - return this.selectJoinOne(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, Const.GLASS_STATE_IN)) .isNull(EdgStorageCageDetails::getSlot) - .last("order by abs(t.slot - " + currentSlot + ") asc limit 1") + .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); } /** @@ -100,12 +115,9 @@ .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") -// ); } /** @@ -117,9 +129,14 @@ @Override public boolean updateEdgStorageCage(EdgStorageCage edgStorageCage) { EdgStorageCage edgItem = baseMapper.selectById(edgStorageCage.getId()); - edgItem.setEnableState(edgStorageCage.getEnableState()); - baseMapper.updateById(edgItem); - return true; + if (edgItem != null) { + edgItem.setEnableState(edgStorageCage.getEnableState()); + baseMapper.updateById(edgItem); + log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:鎴愬姛", edgStorageCage); + return true; + } + log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:澶辫触", edgStorageCage); + return false; } /** @@ -136,10 +153,21 @@ EdgStorageCageDetails edgDItem = edgStorageCageDetailsMapper.selectById(edgStorageCageDetails.getId()); if (edgItem != null) { //绉婚櫎 锛堢牬鎹�,鐩墠涓や釜姒傚康娣峰悎鍦ㄤ竴璧�,寤鸿鎷嗗紑锛� - EdgStorageCageDetails result = edgStorageCageDetailsMapper.selectOne(new MPJLambdaWrapper<EdgStorageCageDetails>().eq(EdgStorageCageDetails::getSlot, edgStorageCageId)); + EdgStorageCageDetails result = edgStorageCageDetailsMapper.selectOne( + new MPJLambdaWrapper<EdgStorageCageDetails>() + .eq(EdgStorageCageDetails::getSlot, edgStorageCageId) + .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN) + ); if (result != null) { result.setSlot(0); result.setState(201); + Damage damage = new Damage(); + damage.setGlassId(edgStorageCageDetails.getGlassId()); + damage.setLine(2001); + damage.setWorkingProcedure("纾ㄨ竟"); + damage.setStatus(1); + damage.setType(8); + damageService.insertDamage(damage); edgStorageCageDetailsMapper.updateById(result); } //娣诲姞 -- Gitblit v1.8.0