From d48de59b57bce614e17e91f1845789c071930a2f Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 16 九月 2025 08:01:35 +0800
Subject: [PATCH] 1、大理片进片报表添加连续工作时间统计

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

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java
new file mode 100644
index 0000000..0b91a9c
--- /dev/null
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstoragetask/service/impl/BigStorageCageFeedTaskServiceImpl.java
@@ -0,0 +1,94 @@
+package com.mes.bigstoragetask.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.bigstorage.entity.BigStorageCageDetails;
+import com.mes.bigstorage.entity.BigStorageDTO;
+import com.mes.bigstoragetask.entity.BigStorageCageFeedTask;
+import com.mes.bigstoragetask.mapper.BigStorageCageFeedTaskMapper;
+import com.mes.bigstoragetask.service.BigStorageCageFeedTaskService;
+import com.mes.utils.Result;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author zhoush
+ * @since 2024-04-16
+ */
+@Service
+public class BigStorageCageFeedTaskServiceImpl extends ServiceImpl<BigStorageCageFeedTaskMapper, BigStorageCageFeedTask> implements BigStorageCageFeedTaskService {
+
+    @Value("${mes.glassGap}")
+    private Integer glassGap;
+
+    @Override
+    public void addFeedTask(BigStorageCageDetails slotInfo, Integer plcFeedReqLine, int taskType) {
+        BigStorageCageFeedTask bigStorageCageFeedTask = new BigStorageCageFeedTask();
+        bigStorageCageFeedTask.setId(slotInfo.getId());
+        bigStorageCageFeedTask.setTaskState(0);
+        bigStorageCageFeedTask.setLine(plcFeedReqLine);
+        bigStorageCageFeedTask.setTaskType(taskType);
+        baseMapper.insert(bigStorageCageFeedTask);
+    }
+
+    @Override
+    public List<BigStorageCageFeedTask> querybigStorageCageFeedTask(int taskState) {
+        LambdaQueryWrapper<BigStorageCageFeedTask> getFeedTaskWrapper = new LambdaQueryWrapper<>();
+        getFeedTaskWrapper.eq(BigStorageCageFeedTask::getTaskState, taskState);
+        return baseMapper.selectList(getFeedTaskWrapper);
+    }
+
+    @Override
+    public BigStorageDTO querySitToUpRemainWidth(Integer line) {
+        return baseMapper.querySitToUpRemainWidth(line, glassGap);
+    }
+
+    @Override
+    public List<Integer> querySitToUpGlass() {
+        return baseMapper.querySitToUpGlass();
+    }
+
+    @Override
+    public List<BigStorageCageFeedTask> selectBigStorageCageFeedTask(BigStorageCageFeedTask bigStorageCageFeedTask, String startTime, String endTime) {
+        if (endTime != null && !endTime.isEmpty()) {
+            endTime = endTime + " 23:59:59";
+        }
+        LambdaQueryWrapper<BigStorageCageFeedTask> wrapper = new LambdaQueryWrapper<>();
+        if (bigStorageCageFeedTask.getTargetSlot() != null) {
+            wrapper.eq(BigStorageCageFeedTask::getTargetSlot, bigStorageCageFeedTask.getTargetSlot());
+        }
+        if (bigStorageCageFeedTask.getWidth() != null) {
+            wrapper.eq(BigStorageCageFeedTask::getWidth, bigStorageCageFeedTask.getWidth());
+        }
+        if (bigStorageCageFeedTask.getHeight() != null) {
+            wrapper.eq(BigStorageCageFeedTask::getHeight, bigStorageCageFeedTask.getHeight());
+        }
+        if (bigStorageCageFeedTask.getLine() != 0) {
+            wrapper.eq(BigStorageCageFeedTask::getLine, bigStorageCageFeedTask.getLine());
+        }
+        if (bigStorageCageFeedTask.getTaskState() != -1) {
+            wrapper.eq(BigStorageCageFeedTask::getTaskState, bigStorageCageFeedTask.getTaskState());
+        }
+        if (bigStorageCageFeedTask.getTaskType() != 0) {
+            wrapper.eq(BigStorageCageFeedTask::getTaskType, bigStorageCageFeedTask.getTaskType());
+        }
+        if (startTime != null && !startTime.isEmpty()) {
+            wrapper.ge(BigStorageCageFeedTask::getCreateTime, startTime);
+        }
+        if (endTime != null && !endTime.isEmpty()) {
+            wrapper.le(BigStorageCageFeedTask::getCreateTime, endTime);
+        }
+        wrapper.orderByDesc(BigStorageCageFeedTask::getId);
+        wrapper.and(item -> item.eq(BigStorageCageFeedTask::getDeleted, 0)
+                .or()
+                .eq(BigStorageCageFeedTask::getDeleted, 1));
+        wrapper.between(BigStorageCageFeedTask::getCreateTime, startTime, endTime);
+        return baseMapper.selectList(wrapper);
+    }
+}

--
Gitblit v1.8.0