pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/config/redis/RedisConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/config/redis/RedisUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/controller/PreventRiskUnitController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/enums/CountContentEnum.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/ruoyi/doublePrevention/service/impl/SPIDataCountServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
pom.xml
@@ -324,6 +324,18 @@ <artifactId>commons-lang3</artifactId> <version>3.11</version> </dependency> <!--redis--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <version>2.3.12.RELEASE</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> </dependency> <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> @@ -335,7 +347,6 @@ <artifactId>mybatis-plus-extension</artifactId> <version>3.5.2</version> </dependency> </dependencies> src/main/java/com/ruoyi/doublePrevention/config/redis/RedisConfig.java
@@ -1,43 +1,41 @@ //package com.ruoyi.doublePrevention.config.redis; // //import org.springframework.context.annotation.Bean; //import org.springframework.context.annotation.Configuration; //import org.springframework.data.redis.connection.RedisConnectionFactory; //import org.springframework.data.redis.core.RedisTemplate; //import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; //import org.springframework.data.redis.serializer.StringRedisSerializer; // //@Configuration //public class RedisConfig { // // // // /** // * @Description: key和value的序列化方式 // */ // @Bean // public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) { // // RedisTemplate<String, Object> template = new RedisTemplate<>(); // template.setConnectionFactory(factory); // // json序列化对象 // GenericJackson2JsonRedisSerializer jackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(); // StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); // // key=>string // template.setKeySerializer(stringRedisSerializer); // // hash=>string // template.setHashKeySerializer(stringRedisSerializer); // // value=>json // template.setValueSerializer(jackson2JsonRedisSerializer); // // hashValue=>json // template.setHashValueSerializer(jackson2JsonRedisSerializer); // // set // template.afterPropertiesSet(); // return template; // } // // // // // //} package com.ruoyi.doublePrevention.config.redis; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfig { /** * @Description: key和value的序列化方式 */ @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) { RedisTemplate<String, Object> template = new RedisTemplate<>(); template.setConnectionFactory(factory); // json序列化对象 GenericJackson2JsonRedisSerializer jackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(); StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); // key=>string template.setKeySerializer(stringRedisSerializer); // hash=>string template.setHashKeySerializer(stringRedisSerializer); // value=>json template.setValueSerializer(jackson2JsonRedisSerializer); // hashValue=>json template.setHashValueSerializer(jackson2JsonRedisSerializer); // set template.afterPropertiesSet(); return template; } } src/main/java/com/ruoyi/doublePrevention/config/redis/RedisUtils.java
@@ -1,261 +1,270 @@ //package com.ruoyi.doublePrevention.config.redis; // // //import org.slf4j.Logger; //import org.slf4j.LoggerFactory; //import org.springframework.data.redis.connection.RedisClusterConnection; //import org.springframework.data.redis.connection.RedisClusterNode; //import org.springframework.data.redis.connection.RedisConnection; //import org.springframework.data.redis.connection.RedisConnectionFactory; //import org.springframework.data.redis.connection.jedis.JedisClusterConnection; //import org.springframework.data.redis.connection.jedis.JedisConnection; //import org.springframework.data.redis.core.*; //import org.springframework.stereotype.Repository; // //import javax.annotation.PostConstruct; //import javax.annotation.Resource; //import java.io.Serializable; //import java.util.HashSet; //import java.util.Iterator; //import java.util.List; //import java.util.Set; //import java.util.concurrent.TimeUnit; // ///** //* @Description: redis工具类 //*/ // //@Repository("configRedisRepository") //@SuppressWarnings(value = { "unchecked", "rawtypes" }) //public class RedisUtils { // // // @Resource // private RedisTemplate redisTemplate; // /** // * logger // */ // private final Logger logger = LoggerFactory.getLogger(this.getClass()); // // // @PostConstruct // public void initRepository(){ // try { // this.set("test:module:Web", "testConnection", 60L, TimeUnit.SECONDS); // logger.info("[ModuleRedis][Web] is connected"); // } catch (Exception e) { // logger.error("[ModuleRedis][Web] connected failed!!"); // } // } // // /** // * 写入缓存 // * @param key // * @param value // * @return // */ // public boolean set(final String key, Object value) { // boolean result = false; // try { // ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); // operations.set(key, value); // result = true; // } catch (Exception e) { // e.printStackTrace(); // } // return result; // } // /** // * 写入缓存设置时效时间 // * @param key // * @param value // * @return // */ // public boolean set(final String key, Object value, Long expireTime ,TimeUnit timeUnit) { // boolean result = false; // try { // ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); // operations.set(key, value); // redisTemplate.expire(key, expireTime, timeUnit); // result = true; // } catch (Exception e) { // e.printStackTrace(); // } // return result; // } // /** // * 批量删除对应的value // * @param keys // */ // public void remove(final String... keys) { // for (String key : keys) { // remove(key); // } // } // /** // * 批量删除key // * @param pattern // */ // public void removePattern(final String pattern) { // Set<Serializable> keys = redisTemplate.keys(pattern); // if (keys.size() > 0){ // redisTemplate.delete(keys); // } // } // /** // * 删除对应的value // * @param key // */ // public void remove(final String key) { // if (exists(key)) { // redisTemplate.delete(key); // } // } // /** // * 判断缓存中是否有对应的value // * @param key // * @return // */ // public boolean exists(final String key) { // return redisTemplate.hasKey(key); // } // /** // * 读取缓存 // * @param key // * @return // */ // public Object get(final String key) { // Object result = null; // ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); // result = operations.get(key); // return result; // } // /** // * 哈希 添加 // * @param key // * @param hashKey // * @param value // */ // public void hmSet(String key, Object hashKey, Object value){ // HashOperations<String, Object, Object> hash = redisTemplate.opsForHash(); // hash.put(key,hashKey,value); // } // /** // * 哈希获取数据 // * @param key // * @param hashKey // * @return // */ // public Object hmGet(String key, Object hashKey){ // HashOperations<String, Object, Object> hash = redisTemplate.opsForHash(); // return hash.get(key,hashKey); // } // /** // * 列表添加 // * @param k // * @param v // */ // public void lPush(String k,Object v){ // ListOperations<String, Object> list = redisTemplate.opsForList(); // list.rightPush(k,v); // } // /** // * 列表获取 // * @param k // * @param l // * @param l1 // * @return // */ // public List<Object> lRange(String k, long l, long l1){ // ListOperations<String, Object> list = redisTemplate.opsForList(); // return list.range(k,l,l1); // } // /** // * 集合添加 // * @param key // * @param value // */ // public void add(String key,Object value){ // SetOperations<String, Object> set = redisTemplate.opsForSet(); // set.add(key,value); // } // /** // * 集合获取 // * @param key // * @return // */ // public Set<Object> setMembers(String key){ // SetOperations<String, Object> set = redisTemplate.opsForSet(); // return set.members(key); // } // /** // * 有序集合添加 // * @param key // * @param value // * @param scoure // */ // public void zAdd(String key,Object value,double scoure){ // ZSetOperations<String, Object> zset = redisTemplate.opsForZSet(); // zset.add(key,value,scoure); // } // /** // * 有序集合获取 // * @param key // * @param scoure // * @param scoure1 // * @return // */ // public Set<Object> rangeByScore(String key,double scoure,double scoure1){ // ZSetOperations<String, Object> zset = redisTemplate.opsForZSet(); // return zset.rangeByScore(key, scoure, scoure1); // } // // /** // * @Description: 获取过期时间 返回 秒 // */ // // public Long getExpireTime(String key) { // return redisTemplate.getExpire(key, TimeUnit.SECONDS); // } // // // /** // * @Description: 重置key 的 过期时间 // */ // public void resetKeyExpireTime(String key, Long seconds) { // redisTemplate.expire(key, seconds, TimeUnit.SECONDS); // } // // public Set<String> scanMatch(String matchKey) { // Set<String> keys = new HashSet(); // RedisConnectionFactory connectionFactory = redisTemplate.getConnectionFactory(); // RedisConnection redisConnection = connectionFactory.getConnection(); // Cursor<byte[]> scan = null; // if(redisConnection instanceof JedisClusterConnection){ // RedisClusterConnection clusterConnection = connectionFactory.getClusterConnection(); // Iterable<RedisClusterNode> redisClusterNodes = clusterConnection.clusterGetNodes(); // Iterator<RedisClusterNode> iterator = redisClusterNodes.iterator(); // while (iterator.hasNext()) { // RedisClusterNode next = iterator.next(); // scan = clusterConnection.scan(next, ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build()); // while (scan.hasNext()) { // keys.add(new String(scan.next())); // } // scan.close(); // } // return keys; // } // if(redisConnection instanceof JedisConnection){ // scan = redisConnection.scan(ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build()); // while (scan.hasNext()){ // //找到一次就添加一次 // keys.add(new String(scan.next())); // } // scan.close(); // return keys; // } // // return keys; //} // //} package com.ruoyi.doublePrevention.config.redis; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.data.redis.connection.RedisClusterConnection; import org.springframework.data.redis.connection.RedisClusterNode; import org.springframework.data.redis.connection.RedisConnection; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.connection.jedis.JedisClusterConnection; import org.springframework.data.redis.connection.jedis.JedisConnection; import org.springframework.data.redis.core.*; import org.springframework.stereotype.Repository; import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.io.IOException; import java.io.Serializable; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Set; import java.util.concurrent.TimeUnit; /** * @Description: redis工具类 */ @Repository("configRedisRepository") @SuppressWarnings(value = { "unchecked", "rawtypes" }) public class RedisUtils { @Resource private RedisTemplate redisTemplate; /** * logger */ private final Logger logger = LoggerFactory.getLogger(this.getClass()); @PostConstruct public void initRepository(){ try { this.set("test:module:Web", "testConnection", 60L, TimeUnit.SECONDS); logger.info("[ModuleRedis][Web] is connected"); } catch (Exception e) { logger.error("[ModuleRedis][Web] connected failed!!"); } } /** * 写入缓存 * @param key * @param value * @return */ public boolean set(final String key, Object value) { boolean result = false; try { ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); operations.set(key, value); result = true; } catch (Exception e) { e.printStackTrace(); } return result; } /** * 写入缓存设置时效时间 * @param key * @param value * @return */ public boolean set(final String key, Object value, Long expireTime ,TimeUnit timeUnit) { boolean result = false; try { ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); operations.set(key, value); redisTemplate.expire(key, expireTime, timeUnit); result = true; } catch (Exception e) { e.printStackTrace(); } return result; } /** * 批量删除对应的value * @param keys */ public void remove(final String... keys) { for (String key : keys) { remove(key); } } /** * 批量删除key * @param pattern */ public void removePattern(final String pattern) { Set<Serializable> keys = redisTemplate.keys(pattern); if (keys.size() > 0){ redisTemplate.delete(keys); } } /** * 删除对应的value * @param key */ public void remove(final String key) { if (exists(key)) { redisTemplate.delete(key); } } /** * 判断缓存中是否有对应的value * @param key * @return */ public boolean exists(final String key) { return redisTemplate.hasKey(key); } /** * 读取缓存 * @param key * @return */ public Object get(final String key) { Object result = null; ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue(); result = operations.get(key); return result; } /** * 哈希 添加 * @param key * @param hashKey * @param value */ public void hmSet(String key, Object hashKey, Object value){ HashOperations<String, Object, Object> hash = redisTemplate.opsForHash(); hash.put(key,hashKey,value); } /** * 哈希获取数据 * @param key * @param hashKey * @return */ public Object hmGet(String key, Object hashKey){ HashOperations<String, Object, Object> hash = redisTemplate.opsForHash(); return hash.get(key,hashKey); } /** * 列表添加 * @param k * @param v */ public void lPush(String k,Object v){ ListOperations<String, Object> list = redisTemplate.opsForList(); list.rightPush(k,v); } /** * 列表获取 * @param k * @param l * @param l1 * @return */ public List<Object> lRange(String k, long l, long l1){ ListOperations<String, Object> list = redisTemplate.opsForList(); return list.range(k,l,l1); } /** * 集合添加 * @param key * @param value */ public void add(String key,Object value){ SetOperations<String, Object> set = redisTemplate.opsForSet(); set.add(key,value); } /** * 集合获取 * @param key * @return */ public Set<Object> setMembers(String key){ SetOperations<String, Object> set = redisTemplate.opsForSet(); return set.members(key); } /** * 有序集合添加 * @param key * @param value * @param scoure */ public void zAdd(String key,Object value,double scoure){ ZSetOperations<String, Object> zset = redisTemplate.opsForZSet(); zset.add(key,value,scoure); } /** * 有序集合获取 * @param key * @param scoure * @param scoure1 * @return */ public Set<Object> rangeByScore(String key,double scoure,double scoure1){ ZSetOperations<String, Object> zset = redisTemplate.opsForZSet(); return zset.rangeByScore(key, scoure, scoure1); } /** * @Description: 获取过期时间 返回 秒 */ public Long getExpireTime(String key) { return redisTemplate.getExpire(key, TimeUnit.SECONDS); } /** * @Description: 重置key 的 过期时间 */ public void resetKeyExpireTime(String key, Long seconds) { redisTemplate.expire(key, seconds, TimeUnit.SECONDS); } public Set<String> scanMatch(String matchKey) { Set<String> keys = new HashSet(); RedisConnectionFactory connectionFactory = redisTemplate.getConnectionFactory(); RedisConnection redisConnection = connectionFactory.getConnection(); Cursor<byte[]> scan = null; if(redisConnection instanceof JedisClusterConnection){ RedisClusterConnection clusterConnection = connectionFactory.getClusterConnection(); Iterable<RedisClusterNode> redisClusterNodes = clusterConnection.clusterGetNodes(); Iterator<RedisClusterNode> iterator = redisClusterNodes.iterator(); while (iterator.hasNext()) { RedisClusterNode next = iterator.next(); scan = clusterConnection.scan(next, ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build()); while (scan.hasNext()) { keys.add(new String(scan.next())); } try { scan.close(); } catch (IOException e) { throw new RuntimeException("scanMatch关闭失败"); } } return keys; } if(redisConnection instanceof JedisConnection){ scan = redisConnection.scan(ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build()); while (scan.hasNext()){ //找到一次就添加一次 keys.add(new String(scan.next())); } try { scan.close(); } catch (IOException e) { throw new RuntimeException("scanMatch关闭失败"); } return keys; } return keys; } } src/main/java/com/ruoyi/doublePrevention/controller/PreventRiskUnitController.java
对比新文件 @@ -0,0 +1,33 @@ package com.ruoyi.doublePrevention.controller; import com.ruoyi.doublePrevention.entity.dto.resp.PreventRiskUnitCodeAndNameListQueryRespDTO; import com.ruoyi.doublePrevention.enums.ResultCodes; import com.ruoyi.doublePrevention.service.RiskService; import com.ruoyi.doublePrevention.vo.ResultVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController @RequestMapping("/riskUnit") public class PreventRiskUnitController { @Autowired private RiskService riskService; /** * 获取所有的风险分析单元的编码和姓名 */ @PostMapping("/select/listRiskUnitCodeAndName") public ResultVO<List<PreventRiskUnitCodeAndNameListQueryRespDTO>> listRiskUnitCodeAndName() { ResultVO resultVO = new ResultVO<>(); resultVO.setCode(ResultCodes.OK.getCode()); List<PreventRiskUnitCodeAndNameListQueryRespDTO> respDTOS = riskService.listRiskUnitCodeAndName(); resultVO.setData(respDTOS); return resultVO; } } src/main/java/com/ruoyi/doublePrevention/enums/CountContentEnum.java
对比新文件 @@ -0,0 +1,33 @@ package com.ruoyi.doublePrevention.enums; /** * @description SPI统计内容 */ public enum CountContentEnum { //统计时间段内所有、死亡、重伤、轻伤的隐患数量 RESULT_COUNT("所有、死亡、重伤、轻伤的隐患数量"), //统计时间段内一般、重大的隐患数量 LEVEL_COUNT("一般、重大的隐患数量"), //统计时间段内一般已整改、重大已整改的隐患数量 LEVEL_RECTIFIED_COUNT("一般已整改、重大已整改的隐患数量"), ; CountContentEnum(String desc) { this.desc = desc; } private String desc; public String getDesc() { return desc; } public void setDesc(String desc) { this.desc = desc; } } src/main/java/com/ruoyi/doublePrevention/service/impl/RiskServiceImpl.java
@@ -1265,6 +1265,9 @@ @Override public List<PreventRiskUnitCodeAndNameListQueryRespDTO> listRiskUnitCodeAndName() { List<PreventRiskList> riskLists = preventRiskListService.listRiskUnitCodeAndName(); if (riskLists == null){ return null; } List<PreventRiskUnitCodeAndNameListQueryRespDTO> listQueryRespDTOs= riskLists.stream().map((riskList)->{ PreventRiskUnitCodeAndNameListQueryRespDTO listQueryRespDTO = new PreventRiskUnitCodeAndNameListQueryRespDTO(); BeanUtils.copyProperties(riskList,listQueryRespDTO); src/main/java/com/ruoyi/doublePrevention/service/impl/SPIDataCountServiceImpl.java
@@ -6,6 +6,7 @@ import com.ruoyi.doublePrevention.entity.dto.DataCountDangerResultRespDO; import com.ruoyi.doublePrevention.entity.dto.req.SPIDataCountReqDTO; import com.ruoyi.doublePrevention.entity.dto.resp.SPIDataCountRespDTO; import com.ruoyi.doublePrevention.enums.CountContentEnum; import com.ruoyi.doublePrevention.repository.param.DataCountStartAndEndTimeParams; import com.ruoyi.doublePrevention.service.SPIDataCountService; import com.ruoyi.doublePrevention.service.baseService.DoublePreventionDeptService; @@ -16,6 +17,7 @@ import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -26,6 +28,9 @@ @Service("SPIDataCountService") public class SPIDataCountServiceImpl implements SPIDataCountService { @Autowired private RedisTemplate redisTemplate; @Autowired private DoublePreventionDeptService doublePreventionDeptService; @@ -66,26 +71,77 @@ DataCountDangerLevelRespDO levelCountByTime = null; DataCountDangerLevelRectifiedRespDO levelRectifiedCountByTime = null; String SPIDataCountKey = "SPI_PREVENT_RISK_"; //判断month是否null Calendar calendar = Calendar.getInstance(); int currentYear = calendar.get(Calendar.YEAR); int currentMonth = calendar.get(Calendar.MONTH) + 1; int currentDay = calendar.get(Calendar.DATE); if (month == null){ if (currentYear != year){ SPIDataCountKey = SPIDataCountKey + year+"_"+"【1-12】_"+depId; }else { SPIDataCountKey = SPIDataCountKey + year + "_" + "【1-" + currentMonth + "/" + currentDay + "】_" + depId; } }else { if (currentYear != year){ SPIDataCountKey = SPIDataCountKey + year+"_"+month+"_"+depId; }else { SPIDataCountKey = SPIDataCountKey + year + "_" + currentMonth +"_【1-" + currentDay + "】_" + depId; } } if (ObjectUtils.isNotEmpty(month) && ObjectUtils.isNotEmpty(year)){ DataCountStartAndEndTimeParams params = timeInterval(month, year); // 月-统计时间段内所有、死亡、重伤、轻伤的隐患数量 resultCountByTime = preventRiskDangerInfoService.listDangerResultCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name())){ resultCountByTime = preventRiskDangerInfoService.listDangerResultCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name(),resultCountByTime); } resultCountByTime = (DataCountDangerResultRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name()); // 月-统计时间段内一般、重大的隐患数量 levelCountByTime = checkPointService.listDangerLevelCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name())){ levelCountByTime = checkPointService.listDangerLevelCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name(),levelCountByTime); } levelCountByTime = (DataCountDangerLevelRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name()); // 月-统计时间段内一般已整改、重大已整改的隐患数量 levelRectifiedCountByTime = checkPointService.listDangerLevelRectifiedCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name())){ levelRectifiedCountByTime = checkPointService.listDangerLevelRectifiedCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name(),levelRectifiedCountByTime); } levelRectifiedCountByTime = (DataCountDangerLevelRectifiedRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name()); }else { DataCountStartAndEndTimeParams params = timeInterval(null, year); // 年-统计时间段内所有、死亡、重伤、轻伤的隐患数量 resultCountByTime = preventRiskDangerInfoService.listDangerResultCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name())){ resultCountByTime = preventRiskDangerInfoService.listDangerResultCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name(),resultCountByTime); } resultCountByTime = (DataCountDangerResultRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.RESULT_COUNT.name()); // 年-统计时间段内一般、重大的隐患数量 levelCountByTime = checkPointService.listDangerLevelCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name())){ levelCountByTime = checkPointService.listDangerLevelCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name(),levelCountByTime); } levelCountByTime = (DataCountDangerLevelRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.LEVEL_COUNT.name()); // 年-统计时间段内一般已整改、重大已整改的隐患数量 levelRectifiedCountByTime = checkPointService.listDangerLevelRectifiedCountByTime(params.getStartTime(), params.getEndTime(), depIds); if (!redisTemplate.opsForHash().hasKey(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name())){ levelRectifiedCountByTime = checkPointService.listDangerLevelRectifiedCountByTime(params.getStartTime(), params.getEndTime(), depIds); redisTemplate.opsForHash().put(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name(),levelRectifiedCountByTime); } levelRectifiedCountByTime = (DataCountDangerLevelRectifiedRespDO)redisTemplate.opsForHash().get(SPIDataCountKey,CountContentEnum.LEVEL_RECTIFIED_COUNT.name()); } if (resultCountByTime == null || levelCountByTime == null || levelRectifiedCountByTime == null){ parameterVerificationResult.setCode("400"); @@ -195,6 +251,4 @@ params.setEndTime(endTime); return params; } }