From 4fb06a58ed5df46f29af1e9fa65cfd40335263ad Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 18 一月 2025 17:06:18 +0800 Subject: [PATCH] # 6. 大屏添加作业类型 (全盘,还是分拣 IOType) 10.平库出库时,当前平库ID是写死在Sql里,需修改 11.平库出库没有判断是否预约出库,且生成拣货单时没有锁定库存,需确认是否考虑回库问题 26. 已拣过货的任务明细,可以再次拣货,拣货明细需添加一个拣货状态 47. 确认发货前,需判断是否已绑定至集货区 48. CTU出库后,库位103不再删除原有库位信息 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/CacheStatisticsTimer.java | 144 ++++++++++++++++++++++++------------------------ 1 files changed, 72 insertions(+), 72 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/CacheStatisticsTimer.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/CacheStatisticsTimer.java index 2dd0ccf..5782f92 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/CacheStatisticsTimer.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/CacheStatisticsTimer.java @@ -1,72 +1,72 @@ -package com.zy.asrs.wms.asrs.timer; - -import com.alibaba.fastjson.JSON; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.zy.asrs.wms.asrs.entity.CacheStatistics; -import com.zy.asrs.wms.asrs.service.CacheStatisticsService; -import com.zy.asrs.wms.common.constant.RedisConstants; -import com.zy.asrs.wms.common.domain.CacheHitDto; -import com.zy.asrs.wms.utils.RedisUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Set; - -@Component -public class CacheStatisticsTimer { - - @Autowired - private RedisUtil redisUtil; - @Autowired - private CacheStatisticsService cacheStatisticsService; - - /** - * 灏嗙紦瀛樼粺璁′繚瀛樿嚦鏁版嵁搴� - * 姣�30鍒嗛挓鎵弿涓�娆� - */ - @Scheduled(cron = "0 30 * * * ? ") - public void run() { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - String now = format.format(new Date()); - Set<String> keys = redisUtil.searchRedisKeys(RedisConstants.STATISTICS_CACHE_DATA); - for (String key : keys) { - if(key.contains(now)){ - continue; - } - - try { - String[] split = key.split(":"); - String ymd = split[1]; - String cacheKey = split[2]; - Object object = redisUtil.get(key); - if(object == null){ - continue; - } - - CacheHitDto cacheHitDto = JSON.parseObject(object.toString(), CacheHitDto.class); - CacheStatistics cacheStatistics = cacheStatisticsService.getOne(new LambdaQueryWrapper<CacheStatistics>().eq(CacheStatistics::getYmd, ymd).eq(CacheStatistics::getCacheKey, cacheKey)); - if (cacheStatistics == null) { - cacheStatistics = new CacheStatistics(); - cacheStatistics.setYmd(ymd); - cacheStatistics.setCacheKey(cacheKey); - cacheStatistics.setHit(0); - cacheStatistics.setMiss(0); - cacheStatisticsService.save(cacheStatistics); - } - - cacheStatistics.setHit(cacheStatistics.getHit() + cacheHitDto.getHit()); - cacheStatistics.setMiss(cacheStatistics.getMiss() + cacheHitDto.getMiss()); - cacheStatisticsService.updateById(cacheStatistics); - - redisUtil.del(key); - } catch (Exception e) { - e.printStackTrace(); - } - } - - } - -} +package com.zy.asrs.wms.asrs.timer; + +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.asrs.wms.asrs.entity.CacheStatistics; +import com.zy.asrs.wms.asrs.service.CacheStatisticsService; +import com.zy.asrs.wms.common.constant.RedisConstants; +import com.zy.asrs.wms.common.domain.CacheHitDto; +import com.zy.asrs.wms.utils.RedisUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Set; + +@Component +public class CacheStatisticsTimer { + + @Autowired + private RedisUtil redisUtil; + @Autowired + private CacheStatisticsService cacheStatisticsService; + + /** + * 灏嗙紦瀛樼粺璁′繚瀛樿嚦鏁版嵁搴� + * 姣�30鍒嗛挓鎵弿涓�娆� + */ + @Scheduled(cron = "0 30 * * * ? ") + public void run() { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + String now = format.format(new Date()); + Set<String> keys = redisUtil.searchRedisKeys(RedisConstants.STATISTICS_CACHE_DATA); + for (String key : keys) { + if(key.contains(now)){ + continue; + } + + try { + String[] split = key.split(":"); + String ymd = split[1]; + String cacheKey = split[2]; + Object object = redisUtil.get(key); + if(object == null){ + continue; + } + + CacheHitDto cacheHitDto = JSON.parseObject(object.toString(), CacheHitDto.class); + CacheStatistics cacheStatistics = cacheStatisticsService.getOne(new LambdaQueryWrapper<CacheStatistics>().eq(CacheStatistics::getYmd, ymd).eq(CacheStatistics::getCacheKey, cacheKey)); + if (cacheStatistics == null) { + cacheStatistics = new CacheStatistics(); + cacheStatistics.setYmd(ymd); + cacheStatistics.setCacheKey(cacheKey); + cacheStatistics.setHit(0); + cacheStatistics.setMiss(0); + cacheStatisticsService.save(cacheStatistics); + } + + cacheStatistics.setHit(cacheStatistics.getHit() + cacheHitDto.getHit()); + cacheStatistics.setMiss(cacheStatistics.getMiss() + cacheHitDto.getMiss()); + cacheStatisticsService.updateById(cacheStatistics); + + redisUtil.del(key); + } catch (Exception e) { + e.printStackTrace(); + } + } + + } + +} -- Gitblit v1.9.1