screen-api/src/main/java/com/moral/api/controller/GovMonitorPointController.java
@@ -115,4 +115,11 @@ List<Map<String, Object>> response = govMonitorPointService.getGovMonitorPointsByOrganizationId(organizationId); return ResultMessage.ok(response); } @GetMapping("getGovMonitorPoints") @ApiOperation("获取国控站信息") public ResultMessage getGovMonitorPoints(){ List<GovMonitorPoint> govMonitorPoints = govMonitorPointService.selectPoint(); return ResultMessage.ok(govMonitorPoints); } } screen-api/src/main/java/com/moral/api/controller/HistoryFiveMinutelyController.java
@@ -1,10 +1,12 @@ package com.moral.api.controller; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.moral.api.pojo.dto.historyAqi.HistoryAqiDto; import com.moral.api.pojo.dto.historyFiveMinutely.DeviceAndFiveMinuteDataDTO; import com.moral.api.pojo.form.historyFiveMinutely.QueryDeviceAndFiveMinuteDataForm; import com.moral.api.pojo.vo.historyFiveMinutely.DeviceAndFiveMinuteDataVO; import com.moral.api.pojo.vo.historyFiveMinutely.QueryFiveDataByMacVO; import com.moral.api.service.HistoryAqiService; import com.moral.api.service.HistoryFiveMinutelyService; import com.moral.constant.ResponseCodeEnum; import com.moral.constant.ResultMessage; @@ -45,6 +47,8 @@ @Autowired HistoryFiveMinutelyService historyFiveMinutelyService; @Autowired private HistoryAqiService historyAqiService; /** * @Description: 查询组织区域对应的设备以及对应因子的五分钟数据 @@ -101,6 +105,13 @@ } @GetMapping("historyAqi") @ApiOperation("显示国控站设备") public ResultMessage historyAqiQuery(String guid){ List<HistoryAqiDto> reveal = historyAqiService.reveal(guid); return ResultMessage.ok(reveal); } } screen-api/src/main/java/com/moral/api/entity/HistoryAqi.java
New file @@ -0,0 +1,46 @@ package com.moral.api.entity; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; import java.util.Date; import com.baomidou.mybatisplus.extension.activerecord.Model; /** * <p> * 国控aqi数据表 * </p> * * @author moral * @since 2024-11-13 */ @Data @EqualsAndHashCode(callSuper = false) public class HistoryAqi extends Model<HistoryAqi> { private static final long serialVersionUID = 1L; /** * 国控/省控/县控站点id */ private String guid; /** * 时间 */ private Date time; /** * 数据 */ private String value; @Override protected Serializable pkVal() { return null; } } screen-api/src/main/java/com/moral/api/mapper/HistoryAqiMapper.java
New file @@ -0,0 +1,21 @@ package com.moral.api.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.moral.api.entity.HistoryAqi; import com.moral.api.pojo.dto.historyAqi.HistoryAqiDto; /** * <p> * 国控aqi数据表 Mapper 接口 * </p> * * @author moral * @since 2021-12-23 */ public interface HistoryAqiMapper extends BaseMapper<HistoryAqi> { List<HistoryAqiDto> query(String guid); } screen-api/src/main/java/com/moral/api/pojo/dto/historyAqi/HistoryAqiDto.java
New file @@ -0,0 +1,39 @@ package com.moral.api.pojo.dto.historyAqi; import lombok.Data; /** * Description //todo * * @author swb * @ClassName HistoryAqiDto * @date 2024.11.13 15:35 */ @Data public class HistoryAqiDto { //co private Double a21005; //o3 private Double a05024; //no2 private Double a21004; //so2 private Double a21026; //pm10 private Double a34002; //pm2.5 private Double a34004; //时间 private String dataTime; //风速 private Double a01007; //风向 private Double a01008; //tvoc private Double a99054; } screen-api/src/main/java/com/moral/api/service/GovMonitorPointService.java
@@ -44,4 +44,10 @@ Map<String, Object> queryGovMonitorPointHoutlyDatyByGuidsAndOrgid(Map map); List<Map<String, Object>> getGovMonitorPointsByOrganizationId(Integer organizationId); /** * 获取国控站信息 * @return */ List<GovMonitorPoint> selectPoint(); } screen-api/src/main/java/com/moral/api/service/HistoryAqiService.java
New file @@ -0,0 +1,20 @@ package com.moral.api.service; import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; import com.moral.api.entity.HistoryAqi; import com.moral.api.pojo.dto.historyAqi.HistoryAqiDto; /** * <p> * 国控aqi数据表 服务类 * </p> * * @author moral * @since 2024-11-13 */ public interface HistoryAqiService extends IService<HistoryAqi> { List<HistoryAqiDto> reveal(String guid); } screen-api/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java
@@ -1,6 +1,7 @@ package com.moral.api.service.impl; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.moral.api.entity.Device; @@ -19,6 +20,7 @@ import com.moral.pojo.AQI; import com.moral.util.AQIUtils; import com.moral.util.RegionCodeUtils; import com.moral.util.TokenUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; @@ -710,4 +712,27 @@ .in("city_code", cityCodes); return govMonitorPointMapper.selectMaps(govMonitorPointQueryWrapper); } /** * 获取国控站信息 * * @return */ @Override public List<GovMonitorPoint> selectPoint() { Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); Map<String, Object> orgInfo = (Map<String, Object>) userInfo.get("organization"); Integer orId =(Integer) orgInfo.get("id"); Integer code = null; LambdaQueryWrapper<GovMonitorPoint> wrapper = new LambdaQueryWrapper<>(); wrapper.select(GovMonitorPoint::getGuid,GovMonitorPoint::getLatitude,GovMonitorPoint::getLongitude,GovMonitorPoint::getName); if (orId!=24){ code = (Integer) orgInfo.get("locationLevelCode"); wrapper.eq(GovMonitorPoint::getAreaCode,code); } wrapper.eq(GovMonitorPoint::getIsDelete,Constants.NOT_DELETE); List<GovMonitorPoint> govMonitorPoints = govMonitorPointMapper.selectList(wrapper); return govMonitorPoints; } } screen-api/src/main/java/com/moral/api/service/impl/HistoryAqiServiceImpl.java
New file @@ -0,0 +1,43 @@ package com.moral.api.service.impl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; import java.util.List; import java.util.Map; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.entity.HistoryAqi; import com.moral.api.mapper.HistoryAqiMapper; import com.moral.api.pojo.dto.historyAqi.HistoryAqiDto; import com.moral.api.service.HistoryAqiService; import com.moral.util.TokenUtils; /** * <p> * 国控aqi数据表 服务实现类 * </p> * * @author moral * @since 2024-11-13 */ @Service public class HistoryAqiServiceImpl extends ServiceImpl<HistoryAqiMapper, HistoryAqi> implements HistoryAqiService { @Autowired private HistoryAqiMapper historyAqiMapper; /** * 显示国控站 * @return */ @Override public List<HistoryAqiDto> reveal(String guid) { if (ObjectUtils.isEmpty(guid)){ return null; } List<HistoryAqiDto> query = historyAqiMapper.query(guid); return query; } } screen-api/src/main/resources/mapper/HistoryAqiMapper.xml
New file @@ -0,0 +1,25 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.moral.api.mapper.HistoryAqiMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="com.moral.api.entity.HistoryAqi"> <result column="guid" property="guid"/> <result column="time" property="time"/> <result column="value" property="value"/> </resultMap> <select id="query" resultType="com.moral.api.pojo.dto.historyAqi.HistoryAqiDto"> SELECT `value` -> '$.co' as a21005, `value` -> '$.o3' as a05024, `value` -> '$.no2' as a21004, `value` -> '$.so2' as a21026, `value` -> '$.pm10' as a34002, `value` -> '$.pm2_5' as a34004, `value` -> '$.pubtime' as dataTime FROM history_aqi where guid=#{guid} and history_aqi.time =(SELECT MAX(time) FROM history_aqi) </select> </mapper>