From cb921a68fe5f01012125fb522086acea2aa255ba Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期五, 27 十二月 2024 14:43:40 +0800
Subject: [PATCH] 1、中空理片笼新增配方相关功能,用于用户自定义保存中空线相关参数,避免重复输入相同的参数 2、领取任务/强制出片改造:在流程卡、路线、数量基础上新增配方id,用于关联本地流程卡的中空的参数配方 3、增加限制:同一条线路的同个流程卡仅能存在一个未完成的任务 4、卧式理片笼新增日期格式
---
hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 46 insertions(+), 0 deletions(-)
diff --git a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java
index 68350a7..3a365aa 100644
--- a/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/howllowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowBigStorageCageServiceImpl.java
@@ -1,10 +1,22 @@
package com.mes.hollow.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import com.mes.common.config.Const;
import com.mes.hollow.entity.HollowBigStorageCage;
+import com.mes.hollow.entity.HollowBigStorageCageDetails;
+import com.mes.hollow.entity.dto.HollowBigStorageAndDetailsDTO;
+import com.mes.hollow.entity.vo.HollowBigStorageDetailsQueryVO;
import com.mes.hollow.mapper.HollowBigStorageCageMapper;
import com.mes.hollow.service.HollowBigStorageCageService;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
* (HollowBigStorageCage)琛ㄦ湇鍔″疄鐜扮被
@@ -15,5 +27,39 @@
@Service
public class HollowBigStorageCageServiceImpl extends ServiceImpl<HollowBigStorageCageMapper, HollowBigStorageCage> implements HollowBigStorageCageService {
+ @Value("${mes.slotWidth}")
+ private Integer slotWidth;
+ @Override
+ public List<HollowBigStorageAndDetailsDTO> queryHollowBigStorageCageDetail(HollowBigStorageDetailsQueryVO query) {
+ MPJLambdaWrapper<HollowBigStorageCage> wrapper = new MPJLambdaWrapper<>();
+ wrapper.selectAll(HollowBigStorageCage.class).selectCollection(HollowBigStorageCageDetails.class, HollowBigStorageCage::getHollowBigStorageCageDetails)
+ .leftJoin(HollowBigStorageCageDetails.class, on -> on.eq(HollowBigStorageCageDetails::getSlot, HollowBigStorageCage::getSlot)
+ .like(StringUtils.isNotBlank(query.getFilmsId()), HollowBigStorageCageDetails::getFilmsId, query.getFilmsId())
+ .like(StringUtils.isNotBlank(query.getFlowCardId()), HollowBigStorageCageDetails::getFlowCardId, query.getFlowCardId())
+ .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL, Const.GLASS_STATE_OUT_ING))
+ .eq(HollowBigStorageCage::getDeviceId, query.getDeviceId())
+ .orderByAsc(HollowBigStorageCage::getDeviceId)
+ .orderByAsc(HollowBigStorageCage::getSlot);
+ return baseMapper.selectJoinList(HollowBigStorageAndDetailsDTO.class, wrapper);
+ }
+
+ @Override
+ public Map<Integer, List<HollowBigStorageCage>> queryHollowbigStorageCageDetail() {
+ MPJLambdaWrapper<HollowBigStorageCage> wrapper = new MPJLambdaWrapper<>();
+ wrapper.selectAll(HollowBigStorageCage.class).selectCollection(HollowBigStorageCageDetails.class, HollowBigStorageCage::getHollowBigStorageCageDetails)
+ .leftJoin(HollowBigStorageCageDetails.class, on -> on.eq(HollowBigStorageCageDetails::getSlot, HollowBigStorageCage::getSlot)
+ .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL).orderByAsc(HollowBigStorageCageDetails::getUpdateTime));
+ List<HollowBigStorageCage> bigStorageCages = baseMapper.selectJoinList(HollowBigStorageCage.class, wrapper);
+ Map<Integer, List<HollowBigStorageCage>> listMap = bigStorageCages.stream().collect(Collectors.groupingBy(item -> item.getDeviceId()));
+ return listMap;
+ }
+
+ @Override
+ public List<Map<String, Object>> selectBigStorageCageUsage() {
+ QueryWrapper<HollowBigStorageCage> wrapper = new QueryWrapper<>();
+ wrapper.select("device_id,ROUND(1 - SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) / COUNT(device_id), 2)*100 AS percentage,SUM(CASE WHEN remain_width = " + slotWidth + " THEN 1 ELSE 0 END) AS count")
+ .groupBy("device_id");
+ return baseMapper.selectMaps(wrapper);
+ }
}
--
Gitblit v1.8.0