From 09402133807b1e774e658a13ad365b2e6efca25b Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期一, 21 四月 2025 16:06:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java | 111 +++++++++++++++++++++++++------------------------------
1 files changed, 50 insertions(+), 61 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 5d27ac4..2911bc8 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
@@ -2,22 +2,23 @@
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.entity.vo.EdgSlotRemainVO;
+import com.mes.edgstoragecage.entity.vo.EdgStorageCageVO;
import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper;
import com.mes.edgstoragecage.mapper.EdgStorageCageMapper;
import com.mes.edgstoragecage.service.EdgStorageCageService;
-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>
@@ -31,19 +32,21 @@
@Service
public class EdgStorageCageServiceImpl extends MPJBaseServiceImpl<EdgStorageCageMapper, EdgStorageCage> implements EdgStorageCageService {
- @Autowired
+ @Resource
EdgStorageCageDetailsMapper edgStorageCageDetailsMapper;
@Autowired
- UpPattenUsageMapper upPattenUsageMapper;
+ DamageService damageService;
@Override
- public EdgStorageCage selectNearestEmpty(int currentSlot, boolean flag) {
+ public EdgStorageCage selectNearestEmpty(Integer currentSlot, int deviceId, 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)
+ .eq(EdgStorageCage::getEnableState, Const.SLOT_ON)
+ .eq(EdgStorageCage::getDeviceId, deviceId)
.last("order by abs(t.slot - " + currentSlot + ") asc limit 2")
);
if (flag && CollectionUtil.isNotEmpty(emptyList)) {
@@ -56,65 +59,26 @@
}
/**
- * 鏌ヨ绗煎唴绌烘牸
+ * 鎸夌収璁惧鍙疯繑鍥炲搴旂殑绗煎唴璇︽儏鏁版嵁
*
* @return
*/
@Override
- public List<EdgStorageCage> selectCacheEmpty() {
- return baseMapper.selectJoinList(EdgStorageCage.class, new MPJLambdaWrapper<EdgStorageCage>()
+ public List<EdgStorageCageVO> selectEdgStorageCagesByDeviceId(int deviceId) {
+ List<EdgStorageCageVO> storageCageVOS = this.selectJoinList(EdgStorageCageVO.class, new MPJLambdaWrapper<EdgStorageCage>()
.selectAll(EdgStorageCage.class)
+ .selectCollection(EdgStorageCageDetails.class, EdgStorageCageVO::getDetails)
.leftJoin(EdgStorageCageDetails.class, on -> on
+ .eq(EdgStorageCageDetails::getDeviceId, EdgStorageCage::getDeviceId)
.eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)
- .eq(EdgStorageCageDetails::getState, "100"))
- .isNull(EdgStorageCageDetails::getSlot)
- .last("order by abs(t.slot - 4) asc")
+ .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN))
+ .eq(EdgStorageCage::getDeviceId, deviceId)
+ .orderByAsc(EdgStorageCage::getSlot)
+ .orderByAsc(EdgStorageCageDetails::getId)
);
+ return storageCageVOS;
}
- /**
- * 鏌ヨ绗煎唴鍑虹墖浠诲姟 鎸夐挗鍖栫増鍥惧彿+鐗堝浘鍐呭簭鍙�
- *
- * @return
- */
- @Override
- 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))
- .isNull(EdgStorageCageDetails::getSlot)
- );
-// return upPattenUsageMapper.selectJoinMaps(new MPJQueryWrapper<UpPattenUsage>().selectAll(UpPattenUsage.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")
-// .isNotNull("escd.slot")
-// .orderByAsc("escd.tempering_layout_id","escd.tempering_feed_sequence")
-// );
- }
-
- /**
- * 鐞嗙墖缂撳瓨璇︽儏
- *
- * @return
- */
- @Override
- 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))
- );
-// 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")
-// );
- }
/**
* 淇敼鐞嗙墖绗间俊鎭� 鍔熻兘锛氬绗煎唴鏍呮牸鐜荤拑 銆愬惎鐢�/绂佺敤銆�
@@ -125,9 +89,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;
}
/**
@@ -143,10 +112,22 @@
log.info("姝e父" + edgItem);
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);
}
//娣诲姞
@@ -160,5 +141,13 @@
return true;
}
+ @Override
+ public EdgStorageCage getEdgStorageCageBySize(int deviceId, double width, double height, int slot) {
+ return baseMapper.getEdgStorageCageBySize(deviceId, width, height, slot);
+ }
+ @Override
+ public void resetSlotRemainWidth(List<EdgSlotRemainVO> edgSlotRemainVOS) {
+ baseMapper.resetSlotRemainWidth(edgSlotRemainVOS);
+ }
}
--
Gitblit v1.8.0