From 8891898a6ae6229ede66c8005f2912c75ddc6d90 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期三, 05 三月 2025 22:32:26 +0800
Subject: [PATCH] 1、fixbug:中空任务领取部分对数玻璃后继续领任务,任务显示异常bug解决 2、大理片笼/中空理片笼显示异常bug:进片任务计算目标格子后,预先将笼子插入一条记录,界面相同判断时显示存在歧义,修改数据返回逻辑:在没有目标格子前提下,如果笼内存在玻璃显示相同,有目标格子后笼内有数据不显示 3、中空理片笼进片任务优化:中空可能存在脏数据,原因人为操作或订单多补片造成中空关系订单数量与实际数据不匹配,实际数量大于订单数量,系统会重新生成一份关系造成关系进笼玻璃数据顺序存在重复而无法进笼。

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/edgglasstask/service/impl/EdgGlassTaskInfoServiceImpl.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/edgglasstask/service/impl/EdgGlassTaskInfoServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/edgglasstask/service/impl/EdgGlassTaskInfoServiceImpl.java
index 34a06f4..97a7cb2 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/edgglasstask/service/impl/EdgGlassTaskInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/edgglasstask/service/impl/EdgGlassTaskInfoServiceImpl.java
@@ -1,10 +1,15 @@
 package com.mes.edgglasstask.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.bigstorage.service.BigStorageCageDetailsService;
 import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
 import com.mes.edgglasstask.mapper.EdgGlassTaskInfoMapper;
 import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * <p>
@@ -17,4 +22,62 @@
 @Service
 public class EdgGlassTaskInfoServiceImpl extends ServiceImpl<EdgGlassTaskInfoMapper, EdgGlassTaskInfo> implements EdgGlassTaskInfoService {
 
+    @Resource
+    BigStorageCageDetailsService bigStorageCageDetailsService;
+    @Override
+    public int judgeTasktype(String plcFeedReqLine){
+        LambdaQueryWrapper<EdgGlassTaskInfo> edgGlassTaskInfoWrapper=new LambdaQueryWrapper<>();
+        edgGlassTaskInfoWrapper
+                .eq(EdgGlassTaskInfo::getLine, plcFeedReqLine)
+                .orderByDesc(EdgGlassTaskInfo::getCreateTime);
+        EdgGlassTaskInfo edgGlassTaskInfo=baseMapper.selectOne(edgGlassTaskInfoWrapper);
+        double width=bigStorageCageDetailsService.selectGetBoard(plcFeedReqLine);
+        if(edgGlassTaskInfo.getWidth()<width){
+            return 0;
+        }else{
+            return 1;
+        }
+    }
+
+    @Override
+    public int startTask(){
+
+        double line1Width=bigStorageCageDetailsService.selectGetBoard("1");
+        double line2Width=bigStorageCageDetailsService.selectGetBoard("2");
+
+        LambdaQueryWrapper<EdgGlassTaskInfo> edgGlassTaskInfoWrapper=new LambdaQueryWrapper<>();
+        edgGlassTaskInfoWrapper
+                .eq(EdgGlassTaskInfo::getLine, 1)
+                .orderByDesc(EdgGlassTaskInfo::getCreateTime);
+        List<EdgGlassTaskInfo> edgGlassTaskInfoList1=baseMapper.selectList(edgGlassTaskInfoWrapper);
+        int i=0;
+        for (EdgGlassTaskInfo edgGlassTaskInfo:edgGlassTaskInfoList1
+             ) {
+            if(edgGlassTaskInfo.getWidth()<line1Width){
+                i+=1;
+                line1Width-=edgGlassTaskInfo.getWidth()+20;
+            }
+        }
+        if(i==2){
+            return 2;
+        }
+
+        edgGlassTaskInfoWrapper
+                .eq(EdgGlassTaskInfo::getLine, 2)
+                .orderByDesc(EdgGlassTaskInfo::getCreateTime);
+        List<EdgGlassTaskInfo> edgGlassTaskInfoList2=baseMapper.selectList(edgGlassTaskInfoWrapper);
+        i=0;
+        for (EdgGlassTaskInfo edgGlassTaskInfo:edgGlassTaskInfoList2
+        ) {
+            if(edgGlassTaskInfo.getWidth()<line2Width){
+                i+=1;
+                line2Width-=edgGlassTaskInfo.getWidth()+20;
+            }
+        }
+        if(i==2) {
+            return 1;
+        }else{
+            return 2;
+        }
+    }
 }

--
Gitblit v1.8.0