From 09bb613cb75774426df43ecd5152aeac35e5315c Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 09 九月 2024 15:01:56 +0800
Subject: [PATCH] 掰片查询修改为查卧式理片数据,钢化查询界面添加显示更多信息,去除重复玻璃id不能连续扫码限制,人工下片添加判断是否超尺寸
---
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java | 143 +++++++++++++++++++++++++++--------------------
1 files changed, 83 insertions(+), 60 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 2717685..87716c5 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,31 +1,31 @@
package com.mes.edgstoragecage.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import cn.hutool.core.collection.CollectionUtil;
import com.github.yulichang.base.MPJBaseServiceImpl;
-import com.github.yulichang.query.MPJLambdaQueryWrapper;
-import com.github.yulichang.query.MPJQueryWrapper;
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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
-import com.mes.edgstoragecage.mapper.EdgStorageCageMapper;
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;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.List;
import java.util.Map;
-import java.util.*;
-import java.util.stream.Collectors;
/**
* <p>
- * 鏈嶅姟瀹炵幇绫�
+ * 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author zhoush
@@ -40,47 +40,58 @@
@Autowired
UpPattenUsageMapper upPattenUsageMapper;
+ @Autowired
+ DamageService damageService;
+
+ @Override
+ 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 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<EdgStorageCage> selectCacheEmpty(){
- return baseMapper.selectJoinList(EdgStorageCage.class,new MPJLambdaWrapper<EdgStorageCage>()
+ public List<EdgStorageCage> selectCacheEmpty() {
+ return baseMapper.selectJoinList(EdgStorageCage.class, new MPJLambdaWrapper<EdgStorageCage>()
.selectAll(EdgStorageCage.class)
- .leftJoin(EdgStorageCageDetails.class,on->on
- .eq(EdgStorageCageDetails::getDeviceId,EdgStorageCage::getDeviceId)
- .eq(EdgStorageCageDetails::getSlot,EdgStorageCage::getSlot))
+ .leftJoin(EdgStorageCageDetails.class, on -> on
+ .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)
+ .eq(EdgStorageCageDetails::getState, "100"))
.isNull(EdgStorageCageDetails::getSlot)
+ .last("order by abs(t.slot - 4) asc")
);
-
-// return baseMapper.selectJoinMaps(JoinWrappers.lambda(EdgStorageCage.class).selectAll(EdgStorageCage.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 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")
-// .isNull("escd.slot")
-// );
}
/**
* 鏌ヨ绗煎唴鍑虹墖浠诲姟 鎸夐挗鍖栫増鍥惧彿+鐗堝浘鍐呭簭鍙�
+ *
* @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)
@@ -93,59 +104,71 @@
/**
* 鐞嗙墖缂撳瓨璇︽儏
+ *
* @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);
+ Damage damage =new Damage();
+ damage.setGlassId(edgStorageCageDetails.getGlassId());
+ damage.setLine(1002);
+ damage.setWorkingProcedure("鍗у紡鐞嗙墖");
+ damage.setStatus(2);
+ damageService.insertDamage(damage);
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