diff --git a/src/main/java/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.java b/src/main/java/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.java index 653a55c..2a27c3a 100644 --- a/src/main/java/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.java +++ b/src/main/java/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.java @@ -1,7 +1,6 @@ package com.gis.xian.mapper; -import com.gis.xian.vo.XianHiddenDangerSpotsBasePointVo; -import com.gis.xian.vo.XianHiddenDangerSpotsPointDetailVo; +import com.gis.xian.entity.XianHiddenDangerSpots; import java.util.List; @@ -16,14 +15,14 @@ public interface XianHiddenDangerSpotsMapper { * 获取所有基础点:滑坡、泥石流、山洪、内涝 * @return 基础点列表 */ - List getBasePoints(String disasterType); + List getBasePoints(String disasterType); /** * 根据id获取隐患点详情 * @param id 隐患点id * @return 隐患点详情 */ - XianHiddenDangerSpotsPointDetailVo getPointDetailById(Long id); + XianHiddenDangerSpots getPointDetailById(Long id); } diff --git a/src/main/java/com/gis/xian/mapper/XianRiskSpotsMapper.java b/src/main/java/com/gis/xian/mapper/XianRiskSpotsMapper.java index 5fe2d54..f688c75 100644 --- a/src/main/java/com/gis/xian/mapper/XianRiskSpotsMapper.java +++ b/src/main/java/com/gis/xian/mapper/XianRiskSpotsMapper.java @@ -1,7 +1,6 @@ package com.gis.xian.mapper; -import com.gis.xian.vo.XianRiskSpotsBasePointVo; -import com.gis.xian.vo.XianRiskSpotsPointDetailVo; +import com.gis.xian.entity.XianRiskSpots; import java.util.List; @@ -16,7 +15,7 @@ public interface XianRiskSpotsMapper { * 获取所有风险点基础信息 * @return 风险点基础列表 */ - List getBasePoints(); + List getBasePoints(); /** @@ -24,7 +23,7 @@ public interface XianRiskSpotsMapper { * @param id 风险点id * @return 风险点详情 */ - XianRiskSpotsPointDetailVo getPointDetailById(Long id); + XianRiskSpots getPointDetailById(Long id); } diff --git a/src/main/java/com/gis/xian/service/impl/IXianHiddenDangerSpotsServiceImpl.java b/src/main/java/com/gis/xian/service/impl/IXianHiddenDangerSpotsServiceImpl.java index c7f7674..d6889a3 100644 --- a/src/main/java/com/gis/xian/service/impl/IXianHiddenDangerSpotsServiceImpl.java +++ b/src/main/java/com/gis/xian/service/impl/IXianHiddenDangerSpotsServiceImpl.java @@ -1,6 +1,7 @@ package com.gis.xian.service.impl; import com.alibaba.fastjson2.JSON; +import com.gis.xian.entity.XianHiddenDangerSpots; import com.gis.xian.vo.XianHiddenDangerSpotsBasePointVo; import com.gis.xian.vo.XianHiddenDangerSpotsPointDetailVo; import com.gis.xian.enums.DisasterTypeEnum; @@ -40,7 +41,7 @@ public class IXianHiddenDangerSpotsServiceImpl implements XianHiddenDangerSpotsS } if (data == null) { - List basePoints = xianHiddenDangerSpotsMapper.getBasePoints(disasterType); + List basePoints = XianHiddenDangerSpotsBasePointVo.entity2Vo(xianHiddenDangerSpotsMapper.getBasePoints(disasterType)); if(DisasterTypeEnum.RAINSTORM.getType().equals(disasterType)) { redisTemplate.opsForValue().set(rainstormBasePointsKey, JSON.toJSONString(basePoints)); @@ -55,6 +56,6 @@ public class IXianHiddenDangerSpotsServiceImpl implements XianHiddenDangerSpotsS @Override public XianHiddenDangerSpotsPointDetailVo getPointDetailById(Long id) { - return xianHiddenDangerSpotsMapper.getPointDetailById(id); + return XianHiddenDangerSpotsPointDetailVo.entity2Vo(xianHiddenDangerSpotsMapper.getPointDetailById(id)); } } diff --git a/src/main/java/com/gis/xian/service/impl/IXianRiskSpotsServiceImpl.java b/src/main/java/com/gis/xian/service/impl/IXianRiskSpotsServiceImpl.java index 82ff5ae..2395649 100644 --- a/src/main/java/com/gis/xian/service/impl/IXianRiskSpotsServiceImpl.java +++ b/src/main/java/com/gis/xian/service/impl/IXianRiskSpotsServiceImpl.java @@ -30,7 +30,7 @@ public class IXianRiskSpotsServiceImpl implements XianRiskSpotsService { Object data = redisTemplate.opsForValue().get(riskPointKey); if (data == null) { - List basePoints = xianRiskSpotsMapper.getBasePoints(); + List basePoints = XianRiskSpotsBasePointVo.entity2Vo(xianRiskSpotsMapper.getBasePoints()); redisTemplate.opsForValue().set(riskPointKey, JSON.toJSONString(basePoints)); return basePoints; } @@ -40,6 +40,6 @@ public class IXianRiskSpotsServiceImpl implements XianRiskSpotsService { @Override public XianRiskSpotsPointDetailVo getPointDetailById(Long id) { - return xianRiskSpotsMapper.getPointDetailById(id); + return XianRiskSpotsPointDetailVo.entity2Vo(xianRiskSpotsMapper.getPointDetailById(id)); } } diff --git a/src/main/java/com/gis/xian/task/InitializeData.java b/src/main/java/com/gis/xian/task/InitializeData.java index d7c2c0b..d4358a5 100644 --- a/src/main/java/com/gis/xian/task/InitializeData.java +++ b/src/main/java/com/gis/xian/task/InitializeData.java @@ -4,6 +4,8 @@ import com.alibaba.fastjson2.JSON; import com.gis.xian.enums.DisasterTypeEnum; import com.gis.xian.mapper.XianHiddenDangerSpotsMapper; import com.gis.xian.mapper.XianRiskSpotsMapper; +import com.gis.xian.vo.XianHiddenDangerSpotsBasePointVo; +import com.gis.xian.vo.XianRiskSpotsBasePointVo; import jakarta.annotation.PostConstruct; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; @@ -43,11 +45,23 @@ public class InitializeData { log.info("开始初始化数据"); // 加载滑坡、泥石流、山洪、内涝隐患点信息并写入redis - redisTemplate.opsForValue().set(rainstormBasePointsKey, JSON.toJSONString(xianHiddenDangerSpotsMapper.getBasePoints(DisasterTypeEnum.RAINSTORM.getType()))); - redisTemplate.opsForValue().set(earthquakeBasePointsKey, JSON.toJSONString(xianHiddenDangerSpotsMapper.getBasePoints(DisasterTypeEnum.EARTHQUAKE.getType()))); + redisTemplate.opsForValue().set(rainstormBasePointsKey, JSON.toJSONString( + XianHiddenDangerSpotsBasePointVo.entity2Vo( + xianHiddenDangerSpotsMapper.getBasePoints(DisasterTypeEnum.RAINSTORM.getType())) + ) + ); + redisTemplate.opsForValue().set(earthquakeBasePointsKey, JSON.toJSONString( + XianHiddenDangerSpotsBasePointVo.entity2Vo( + xianHiddenDangerSpotsMapper.getBasePoints(DisasterTypeEnum.EARTHQUAKE.getType())) + ) + ); // 加载风险点基本信息写入redis - redisTemplate.opsForValue().set(riskBasePointsKey, JSON.toJSONString(xianRiskSpotsMapper.getBasePoints())); + redisTemplate.opsForValue().set(riskBasePointsKey, JSON.toJSONString( + XianRiskSpotsBasePointVo.entity2Vo( + xianRiskSpotsMapper.getBasePoints()) + ) + ); log.info("初始化数据完成"); } } diff --git a/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsBasePointVo.java b/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsBasePointVo.java index ab27d2b..269d550 100644 --- a/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsBasePointVo.java +++ b/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsBasePointVo.java @@ -1,7 +1,10 @@ package com.gis.xian.vo; +import com.gis.xian.entity.XianHiddenDangerSpots; import lombok.Data; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; /** @@ -25,6 +28,23 @@ public class XianHiddenDangerSpotsBasePointVo { */ private Double lat; + public static XianHiddenDangerSpotsBasePointVo entity2Vo(XianHiddenDangerSpots entity) { + XianHiddenDangerSpotsBasePointVo vo = new XianHiddenDangerSpotsBasePointVo(); + vo.setId(entity.getId()); + vo.setLon(entity.getLon()); + vo.setLat(entity.getLat()); + vo.setDisasterType(entity.getDisasterType()); + return vo; + } + + public static List entity2Vo(List entityList) { + List voList = new ArrayList<>(); + for (XianHiddenDangerSpots entity : entityList) { + voList.add(entity2Vo(entity)); + } + return voList; + } + /** * 灾害类型 */ diff --git a/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsPointDetailVo.java b/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsPointDetailVo.java index ddaf200..e66c82a 100644 --- a/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsPointDetailVo.java +++ b/src/main/java/com/gis/xian/vo/XianHiddenDangerSpotsPointDetailVo.java @@ -1,7 +1,10 @@ package com.gis.xian.vo; +import com.gis.xian.entity.XianHiddenDangerSpots; import lombok.Data; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; @Data @@ -41,6 +44,26 @@ public class XianHiddenDangerSpotsPointDetailVo { */ private String riskGrade; + public static XianHiddenDangerSpotsPointDetailVo entity2Vo(XianHiddenDangerSpots entity) { + XianHiddenDangerSpotsPointDetailVo vo = new XianHiddenDangerSpotsPointDetailVo(); + vo.setId(entity.getId()); + vo.setFieldCode(entity.getFieldCode()); + vo.setDisasterName(entity.getDisasterName()); + vo.setPosition(entity.getPosition()); + vo.setDisasterType(entity.getDisasterType()); + vo.setScaleGrade(entity.getScaleGrade()); + vo.setRiskGrade(entity.getRiskGrade()); + return vo; + } + + public static List entity2Vo(List entityList) { + List voList = new ArrayList<>(); + for (XianHiddenDangerSpots entity : entityList) { + voList.add(entity2Vo(entity)); + } + return voList; + } + @Override public boolean equals(Object o) { if (this == o) return true; diff --git a/src/main/java/com/gis/xian/vo/XianRiskSpotsBasePointVo.java b/src/main/java/com/gis/xian/vo/XianRiskSpotsBasePointVo.java index 53ebc65..5afe9d5 100644 --- a/src/main/java/com/gis/xian/vo/XianRiskSpotsBasePointVo.java +++ b/src/main/java/com/gis/xian/vo/XianRiskSpotsBasePointVo.java @@ -1,7 +1,10 @@ package com.gis.xian.vo; +import com.gis.xian.entity.XianRiskSpots; import lombok.Data; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; @Data @@ -21,6 +24,22 @@ public class XianRiskSpotsBasePointVo { */ private Double lat; + public static XianRiskSpotsBasePointVo entity2Vo(XianRiskSpots entity) { + XianRiskSpotsBasePointVo vo = new XianRiskSpotsBasePointVo(); + vo.setId(entity.getId()); + vo.setLon(entity.getLon()); + vo.setLat(entity.getLat()); + return vo; + } + + public static List entity2Vo(List entityList) { + List voList = new ArrayList<>(); + for (XianRiskSpots entity : entityList) { + voList.add(entity2Vo(entity)); + } + return voList; + } + @Override public boolean equals(Object o) { if (this == o) return true; diff --git a/src/main/java/com/gis/xian/vo/XianRiskSpotsPointDetailVo.java b/src/main/java/com/gis/xian/vo/XianRiskSpotsPointDetailVo.java index 8ac01a5..26807e5 100644 --- a/src/main/java/com/gis/xian/vo/XianRiskSpotsPointDetailVo.java +++ b/src/main/java/com/gis/xian/vo/XianRiskSpotsPointDetailVo.java @@ -1,7 +1,10 @@ package com.gis.xian.vo; +import com.gis.xian.entity.XianRiskSpots; import lombok.Data; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; @Data @@ -66,6 +69,31 @@ public class XianRiskSpotsPointDetailVo { */ private Double lat; + public static XianRiskSpotsPointDetailVo entity2Vo(XianRiskSpots entity) { + XianRiskSpotsPointDetailVo vo = new XianRiskSpotsPointDetailVo(); + vo.setId(entity.getId()); + vo.setRiskName(entity.getRiskName()); + vo.setUnitCode(entity.getUnitCode()); + vo.setPosition(entity.getPosition()); + vo.setResidentCounts(entity.getResidentCounts()); + vo.setRiskProperty(entity.getRiskProperty()); + vo.setPermanentPopulation(entity.getPermanentPopulation()); + vo.setHousing(entity.getHousing()); + vo.setInspectorName(entity.getInspectorName()); + vo.setInspectorTele(entity.getInspectorTele()); + vo.setLon(entity.getLon()); + vo.setLat(entity.getLat()); + return vo; + } + + public static List entity2Vo(List entityList) { + List voList = new ArrayList<>(); + for (XianRiskSpots entity : entityList) { + voList.add(entity2Vo(entity)); + } + return voList; + } + @Override public boolean equals(Object o) { if (this == o) return true; diff --git a/src/main/resources/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.xml b/src/main/resources/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.xml index 1944b91..433f17e 100644 --- a/src/main/resources/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.xml +++ b/src/main/resources/com/gis/xian/mapper/XianHiddenDangerSpotsMapper.xml @@ -25,25 +25,8 @@ - - - - - - - - - - - - - - - - - - SELECT id, lon, lat, disaster_type FROM xian_hidden_danger_spots @@ -58,7 +41,7 @@ - SELECT id, field_code, disaster_name, position, disaster_type, scale_grade, risk_grade FROM xian_hidden_danger_spots id = #{id} diff --git a/src/main/resources/com/gis/xian/mapper/XianRiskSpotsMapper.xml b/src/main/resources/com/gis/xian/mapper/XianRiskSpotsMapper.xml index bbf2dd6..af85de1 100644 --- a/src/main/resources/com/gis/xian/mapper/XianRiskSpotsMapper.xml +++ b/src/main/resources/com/gis/xian/mapper/XianRiskSpotsMapper.xml @@ -29,34 +29,13 @@ - - - - - - - - - - - - - - - - - - - - - - SELECT id, lon, lat FROM xian_risk_spots - SELECT id, risk_name, unit_code, position, resident_counts, risk_property, permanent_population, housing, inspector_name, inspector_tele, lon, lat FROM xian_risk_spots id = #{id}