From d799fbde44cc568a3e15d78dc6e582ff244ffa89 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期六, 29 三月 2025 16:05:44 +0800 Subject: [PATCH] 1、卧式理片重置任务调整,避免无任务情况下无法将任务交互表的数据清掉 2、中空领取任务界面新增产品名称,便于识别产品 3、调整部分定时任务间隔时间 4、定时任务分隔开,按照两个/多个界面的websocket由一个分为多个 5、取消钢化功能开发中z --- hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java | 22 +++++++++++++++++++--- 1 files changed, 19 insertions(+), 3 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java index 959d8b7..dea422e 100644 --- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java +++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -10,6 +11,7 @@ import com.mes.bigstorage.entity.BigStorageCage; import com.mes.bigstorage.entity.BigStorageCageDetails; import com.mes.bigstorage.entity.dto.BigStorageAndDetailsDTO; +import com.mes.bigstorage.entity.dto.BigStorageSummaryDTO; import com.mes.bigstorage.entity.vo.BigStorageDetailsQueryVO; import com.mes.bigstorage.mapper.BigStorageCageDetailsMapper; import com.mes.bigstorage.mapper.BigStorageCageMapper; @@ -221,10 +223,10 @@ MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(BigStorageCage.class).selectCollection(BigStorageCageDetails.class, BigStorageCage::getBigStorageCageDetails) .leftJoin(BigStorageCageDetails.class, on -> on.eq(BigStorageCageDetails::getSlot, BigStorageCage::getSlot) - .eq(StringUtils.isNotBlank(query.getFilmsId()), BigStorageCageDetails::getFilmsId, query.getFilmsId()) - .eq(StringUtils.isNotBlank(query.getFlowCardId()), BigStorageCageDetails::getFlowCardId, query.getFlowCardId()) + .like(StringUtils.isNotBlank(query.getFilmsId()), BigStorageCageDetails::getFilmsId, query.getFilmsId()) + .like(StringUtils.isNotBlank(query.getFlowCardId()), BigStorageCageDetails::getFlowCardId, query.getFlowCardId()) .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN, Const.GLASS_STATE_ARTIFICIAL, Const.GLASS_STATE_OUT_ING)) - .eq(BigStorageCage::getDeviceId, query.getDeviceId()) +// .eq(BigStorageCage::getDeviceId, query.getDeviceId()) .orderByAsc(BigStorageCage::getDeviceId) .orderByAsc(BigStorageCage::getSlot); return bigStorageCageMapper.selectJoinList(BigStorageAndDetailsDTO.class, wrapper); @@ -284,6 +286,7 @@ public List<Map<String, Object>> selectBigStorageCageUsage() { QueryWrapper<BigStorageCage> 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") + .eq("enable_state", Const.SLOT_ON) .groupBy("device_id"); List<Map<String, Object>> bigStorageCageUsages = baseMapper.selectMaps(wrapper); @@ -305,6 +308,19 @@ return baseMapper.queryFreeDeviceByUsed(thickness); } + @Override + public List<BigStorageSummaryDTO> selectBigStorageSummary() { + return baseMapper.selectBigStorageSummary(); + } + + @Override + public Boolean resetCage() { + bigStorageCageDetailsMapper.delete(Wrappers.<BigStorageCageDetails>lambdaQuery().eq(BigStorageCageDetails::getState, Const.GLASS_STATE_NEW)); + this.update(new LambdaUpdateWrapper<BigStorageCage>().set(BigStorageCage::getRemainWidth, slotWidth) + .notInSql(BigStorageCage::getSlot, "select distinct slot from big_storage_cage_details where state in ( 100, 102, 103, 104)")); + return Boolean.TRUE; + } + // @Override // public List<Integer> queryFreeDeviceByNotUsed(double thickness) { // return baseMapper.queryFreeDeviceByNotUsed(thickness); -- Gitblit v1.8.0