From 8a7e936b92038a9e5c7de3e1314c43f1346202c1 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 01 八月 2024 15:02:29 +0800
Subject: [PATCH] 大理片笼出片逻辑调整:1、尺寸限制 2、fixbug:玻璃重复进出,造成按照历史任务查询笼内玻璃尺寸返回多条记录sql查询异常 3、对列表在新增数据前先按照玻璃id对历史数据进行删除后新增,保证对列表数据唯一,防止大理片笼进片异常
---
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/taskcache/service/impl/TaskCacheServiceImpl.java | 107 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 87 insertions(+), 20 deletions(-)
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/taskcache/service/impl/TaskCacheServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/taskcache/service/impl/TaskCacheServiceImpl.java
index 9993519..7fff8e4 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/taskcache/service/impl/TaskCacheServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/taskcache/service/impl/TaskCacheServiceImpl.java
@@ -1,34 +1,106 @@
package com.mes.taskcache.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
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.glassinfo.entity.GlassInfo;
+import com.mes.glassinfo.mapper.GlassInfoMapper;
import com.mes.taskcache.entity.TaskCache;
import com.mes.taskcache.mapper.TaskCacheMapper;
import com.mes.taskcache.service.TaskCacheService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
/**
* <p>
- * 鏈嶅姟瀹炵幇绫�
+ * 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author zhoush
* @since 2024-04-07
*/
+@Slf4j
@Service
public class TaskCacheServiceImpl extends ServiceImpl<TaskCacheMapper, TaskCache> implements TaskCacheService {
+ @Autowired
+ EdgStorageCageDetailsMapper edgStorageCageDetailsMapper;
+
+ @Autowired
+ GlassInfoMapper glassInfoMapper;
+
+
+ /**
+ * 娣诲姞鐞嗙墖绗间换鍔�
+ * @param taskCache
+ * @return
+ */
+ @Override
+ public boolean insertTaskCache(TaskCache taskCache){
+ baseMapper.insert(taskCache);
+ return true;
+ }
+
/**
* 鏌ヨ纾ㄨ竟浠诲姟
- *
* @param line
* @return
*/
@Override
- public List<TaskCache> selectEdgInfo(String line) {
- return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getEndCell, line));
+ public List<Map<String,Object>> selectEdgInfo(String line) {
+ List<TaskCache> taskCache=baseMapper.selectList(new MPJLambdaWrapper<TaskCache>()
+ .selectAll(TaskCache.class)
+ .eq(TaskCache::getEndCell, line)
+ .eq(TaskCache::getTaskStatus,1)
+ .orderByAsc(TaskCache::getCreateTime));
+ List<Map<String,Object>> result=new ArrayList<>();
+ int serialNumber=1;
+ for(TaskCache taskCache1:taskCache){
+ Map<String,Object> map=new HashMap<>();
+// GlassInfo glassInfo=glassInfoMapper.selectOne(new MPJLambdaWrapper<GlassInfo>()
+// .selectAll(GlassInfo.class)
+// .eq(GlassInfo::getGlassId,taskCache1.getGlassId()));
+ List<GlassInfo> glassInfos=glassInfoMapper.selectJoinList(GlassInfo.class, new MPJLambdaWrapper<GlassInfo>()
+ .selectAll(GlassInfo.class)
+ .innerJoin(EdgStorageCageDetails.class, on -> on
+ .eq(EdgStorageCageDetails::getGlassId, GlassInfo::getGlassId)
+ .eq(EdgStorageCageDetails::getEngineerId, GlassInfo::getEngineerId))
+ .eq(GlassInfo::getGlassId,taskCache1.getGlassId())
+ .eq(EdgStorageCageDetails::getState,Const.GLASS_STATE_IN)
+ );
+ if(glassInfos.size()==1){
+ GlassInfo glassInfo=glassInfos.get(0);
+ map.put("Line",line);//绾胯矾 2001 1绾匡紝 2002 2绾�
+ map.put("Width",glassInfo.getWidth());//瀹�
+ map.put("Height",glassInfo.getHeight());//楂�
+ map.put("Thickness",glassInfo.getThickness());//鍘�
+ map.put("GlassId",glassInfo.getGlassId());//鐜荤拑ID
+ map.put("FlowCardId",glassInfo.getFlowCardId());//娴佺▼鍗″彿
+ map.put("TemperingLayoutId",glassInfo.getTemperingLayoutId());// 鏆備笉鏄剧ず 閽㈠寲鐗堝浘ID
+ map.put("TemperingFeedSequence",glassInfo.getTemperingFeedSequence());// 鏆備笉鏄剧ず 閽㈠寲鐗堝浘ID鍐呯殑搴忓彿
+ map.put("FilmsId",glassInfo.getFilmsid());//鑶滅郴
+ map.put("SerialNumber",serialNumber);//鍑虹墖椤哄簭
+ result.add(map);
+ }else if(glassInfos.size()>1){
+ log.info("鏁版嵁涓嶇鍚堥�昏緫--纾ㄨ竟闃熷垪glassId閲嶅:",glassInfos);
+ return new ArrayList<>();
+ }
+ serialNumber++;
+ }
+
+ return result;
// return baseMapper.selectList(new QueryWrapper<TaskCache>().eq("end_cell",line));
}
@@ -39,18 +111,16 @@
/**
* 鏌ヨ寰呯悊鐗囧伐浣滅殑浠诲姟
- *
* @return
*/
@Override
- public List<TaskCache> selectCacheInfo() {
- return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus, 0));
+ public List<TaskCache> selectCacheInfo(){
+ return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus,0));
// return baseMapper.selectList(new QueryWrapper<TaskCache>().eq("task_status",0));
}
/**
* 鏌ヨ鍏ㄩ儴浠诲姟
- *
* @return
*/
@Override
@@ -60,49 +130,46 @@
/**
* 鏌ヨ寰呰繘鐗囦换鍔�
- *
* @return
*/
@Override
- public List<TaskCache> selectInputTaskCache() {
- return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus, 0).eq(TaskCache::getTaskType, 1));
+ public List<TaskCache> selectInputTaskCache(){
+ return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus,0).eq(TaskCache::getTaskType,1));
// return baseMapper.selectList(new QueryWrapper<TaskCache>().eq("task_status",0).eq("task_type",1));
}
/**
* 鏌ヨ寰呭嚭鐗囦换鍔�
- *
* @return
*/
@Override
- public List<TaskCache> selectOutTaskCache() {
- return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus, 0).eq(TaskCache::getTaskType, 2));
+ public List<TaskCache> selectOutTaskCache(){
+ return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getTaskStatus,0).eq(TaskCache::getTaskType,2));
// return baseMapper.selectList(new QueryWrapper<TaskCache>().eq("task_status",0).eq("task_type",2));
}
/**
* 鏌ヨ A09 鎴� A10 鏈�鏂扮殑涓�鐗� 鍑虹墖浠诲姟
- *
* @param line
* @return
*/
@Override
- public List<TaskCache> selectLastOutCacheInfos(int line) {
- return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getEndCell, line).eq(TaskCache::getTaskStatus, 1).orderByDesc(TaskCache::getCreateTime));
+ public List<TaskCache> selectLastOutCacheInfos(int line){
+ return baseMapper.selectList(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getEndCell,line).eq(TaskCache::getTaskStatus,1).orderByDesc(TaskCache::getCreateTime));
// return baseMapper.selectList(new QueryWrapper<TaskCache>().eq("end_cell",line).eq("task_status",1).orderByDesc("ID"));
}
/**
* 鏌ヨ A09 鎴� A10 鏈�鏂扮殑涓�鐗� 鍑虹墖浠诲姟
- *
* @param line
* @return
*/
@Override
- public TaskCache selectLastOutCacheInfo(String line) {
- return baseMapper.selectOne(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getEndCell, line).eq(TaskCache::getTaskStatus, 1).orderByDesc(TaskCache::getCreateTime));
+ public TaskCache selectLastOutCacheInfo(int line){
+ return baseMapper.selectOne(new MPJLambdaWrapper<TaskCache>().selectAll(TaskCache.class).eq(TaskCache::getEndCell,line).eq(TaskCache::getTaskStatus,1).orderByDesc(TaskCache::getCreateTime));
}
+
}
--
Gitblit v1.8.0