From db2b30bbe239427a89521cd858b2b191d56086ef Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 14 Sep 2021 09:41:06 +0800
Subject: [PATCH] 获取有走航车数据日期,device修改,绑定国控站
---
screen-api/src/main/java/com/moral/api/service/SpecialDeviceService.java | 3
screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java | 51 +++--
screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java | 21 ++
screen-manage/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java | 119 ++++++++------
screen-api/src/main/java/com/moral/api/controller/CruiserController.java | 18 ++
screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml | 23 ++
screen-manage/src/main/java/com/moral/api/controller/DeviceController.java | 3
screen-api/src/main/java/com/moral/api/entity/HistorySecondCruiser.java | 55 ++++++
screen-manage/src/main/java/com/moral/api/service/GovMonitorPointService.java | 4
screen-manage/src/main/java/com/moral/api/pojo/vo/device/DeviceVO.java | 6
screen-api/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java | 20 ++
screen-manage/src/main/resources/mapper/DeviceMapper.xml | 11 +
screen-manage/src/main/java/com/moral/api/entity/Device.java | 5
screen-api/src/main/java/com/moral/api/service/HistorySecondCruiserService.java | 16 ++
screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java | 34 +++
screen-manage/src/main/java/com/moral/api/controller/GovMonitorPoionController.java | 65 +++++---
screen-manage/src/main/java/com/moral/api/entity/GovMonitorPoint.java | 1
17 files changed, 348 insertions(+), 107 deletions(-)
diff --git a/screen-api/src/main/java/com/moral/api/controller/CruiserController.java b/screen-api/src/main/java/com/moral/api/controller/CruiserController.java
index ee0ddcd..39012ba 100644
--- a/screen-api/src/main/java/com/moral/api/controller/CruiserController.java
+++ b/screen-api/src/main/java/com/moral/api/controller/CruiserController.java
@@ -43,6 +43,24 @@
}
/**
+ * @param mac ������mac
+ * @return ������������������������������������
+ */
+ @GetMapping("getDates")
+ @ApiOperation(value = "������������������������������", notes = "������������������������������")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"),
+ @ApiImplicitParam(name = "mac", value = "������mac", required = true, paramType = "query", dataType = "String")
+ })
+ public ResultMessage getDates(String mac) {
+ if (ObjectUtils.isEmpty(mac)) {
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ }
+ List<String> response = specialDeviceService.getDatesByMac(mac);
+ return ResultMessage.ok(response);
+ }
+
+ /**
* @param request ������������
* @return ������������������������������������
*/
diff --git a/screen-api/src/main/java/com/moral/api/entity/HistorySecondCruiser.java b/screen-api/src/main/java/com/moral/api/entity/HistorySecondCruiser.java
new file mode 100644
index 0000000..f1cc0f9
--- /dev/null
+++ b/screen-api/src/main/java/com/moral/api/entity/HistorySecondCruiser.java
@@ -0,0 +1,55 @@
+package com.moral.api.entity;
+
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * ���������������������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-09-13
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class HistorySecondCruiser extends Model<HistorySecondCruiser> {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ������mac
+ */
+ private String mac;
+
+ /**
+ * ������������
+ */
+ private Date time;
+
+ /**
+ * ������
+ */
+ private String value;
+
+ /**
+ * ���������������������id
+ */
+ private Integer organizationId;
+
+ /**
+ * ������������
+ */
+ private Date batch;
+
+
+ @Override
+ protected Serializable pkVal() {
+ return null;
+ }
+
+}
diff --git a/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
new file mode 100644
index 0000000..e8feb8d
--- /dev/null
+++ b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
@@ -0,0 +1,21 @@
+package com.moral.api.mapper;
+
+import java.util.List;
+import java.util.Map;
+
+import com.moral.api.entity.HistorySecondCruiser;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * ��������������������� Mapper ������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-09-13
+ */
+public interface HistorySecondCruiserMapper extends BaseMapper<HistorySecondCruiser> {
+
+ List<String> getDates(Map<String,Object> params);
+
+}
diff --git a/screen-api/src/main/java/com/moral/api/service/HistorySecondCruiserService.java b/screen-api/src/main/java/com/moral/api/service/HistorySecondCruiserService.java
new file mode 100644
index 0000000..1068494
--- /dev/null
+++ b/screen-api/src/main/java/com/moral/api/service/HistorySecondCruiserService.java
@@ -0,0 +1,16 @@
+package com.moral.api.service;
+
+import com.moral.api.entity.HistorySecondCruiser;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * ��������������������� ���������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-09-13
+ */
+public interface HistorySecondCruiserService extends IService<HistorySecondCruiser> {
+
+}
diff --git a/screen-api/src/main/java/com/moral/api/service/SpecialDeviceService.java b/screen-api/src/main/java/com/moral/api/service/SpecialDeviceService.java
index 7711c12..6d3705e 100644
--- a/screen-api/src/main/java/com/moral/api/service/SpecialDeviceService.java
+++ b/screen-api/src/main/java/com/moral/api/service/SpecialDeviceService.java
@@ -40,4 +40,7 @@
*/
SpecialDevice getSpecialDeviceByMac(String mac);
+ //���������������������������������������
+ List<String> getDatesByMac(String mac);
+
}
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
new file mode 100644
index 0000000..4583374
--- /dev/null
+++ b/screen-api/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
@@ -0,0 +1,20 @@
+package com.moral.api.service.impl;
+
+import com.moral.api.entity.HistorySecondCruiser;
+import com.moral.api.mapper.HistorySecondCruiserMapper;
+import com.moral.api.service.HistorySecondCruiserService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * ��������������������� ���������������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-09-13
+ */
+@Service
+public class HistorySecondCruiserServiceImpl extends ServiceImpl<HistorySecondCruiserMapper, HistorySecondCruiser> implements HistorySecondCruiserService {
+
+}
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java
index fd19d65..9448820 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java
@@ -2,10 +2,9 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.moral.api.entity.HistorySecondSpecial;
-import com.moral.api.entity.Organization;
import com.moral.api.entity.SpecialDevice;
import com.moral.api.entity.SpecialDeviceHistory;
+import com.moral.api.mapper.HistorySecondCruiserMapper;
import com.moral.api.mapper.HistorySecondSpecialMapper;
import com.moral.api.mapper.SpecialDeviceMapper;
import com.moral.api.service.OrganizationService;
@@ -14,6 +13,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.constant.Constants;
import com.moral.constant.RedisConstants;
+import com.moral.util.DateUtils;
import com.moral.util.GeodesyUtils;
import com.moral.util.TokenUtils;
@@ -23,6 +23,8 @@
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -48,6 +50,10 @@
@Autowired
SpecialDeviceMapper specialDeviceMapper;
+
+ @Autowired
+ private HistorySecondCruiserMapper historySecondCruiserMapper;
+
@Autowired
RedisTemplate redisTemplate;
@@ -98,21 +104,35 @@
}
@Override
- public Map<String,Object> getSpecialDeviceMapByMac(String mac) {
+ public Map<String, Object> getSpecialDeviceMapByMac(String mac) {
//������������������
- Map<String,Object> specialDeviceMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE,mac);
- return specialDeviceMap;
+ Map<String, Object> specialDeviceMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE, mac);
+ return specialDeviceMap;
}
@Override
public SpecialDevice getSpecialDeviceByMac(String mac) {
QueryWrapper<SpecialDevice> queryWrapper = new QueryWrapper();
- queryWrapper.eq("mac",mac);
- queryWrapper.eq("is_delete",Constants.NOT_DELETE);
+ queryWrapper.eq("mac", mac);
+ queryWrapper.eq("is_delete", Constants.NOT_DELETE);
SpecialDevice specialDevice = specialDeviceMapper.selectOne(queryWrapper);
return specialDevice;
}
+ @Override
+ public List<String> getDatesByMac(String mac) {
+ Map<String, Object> userInfo = (Map) TokenUtils.getUserInfo();
+ Map<String, Object> orgInfo = (Map) userInfo.get("organization");
+ Integer orgId = (Integer) orgInfo.get("id");
+
+ Map<String, Object> params = new HashMap<>();
+ params.put("orgId", orgId);
+ params.put("mac", mac);
+ Date start = DateUtils.addMonths(new Date(), -6);
+ params.put("start", DateUtils.dateToDateString(start));
+ return historySecondCruiserMapper.getDates(params);
+ }
+
//������������������������
private List<Map<String, Object>> filterData(List<Map<String, Object>> data) {
diff --git a/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
new file mode 100644
index 0000000..49a6cbc
--- /dev/null
+++ b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
@@ -0,0 +1,23 @@
+<?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.HistorySecondCruiserMapper">
+
+ <!-- ������������������������ -->
+ <resultMap id="BaseResultMap" type="com.moral.api.entity.HistorySecondCruiser">
+ <result column="mac" property="mac"/>
+ <result column="time" property="time"/>
+ <result column="value" property="value"/>
+ <result column="organization_id" property="organizationId"/>
+ <result column="batch" property="batch"/>
+ </resultMap>
+
+ <select id="getDates" resultType="java.lang.String">
+ SELECT DISTINCT DATE_FORMAT(`time`,'%Y-%m-%d') `time`
+ FROM history_second_cruiser
+ WHERE mac = #{mac}
+ AND organization_id = #{orgId}
+ AND `time` <![CDATA[>=]]> #{start}
+ ORDER BY `time`
+ </select>
+
+</mapper>
\ No newline at end of file
diff --git a/screen-manage/src/main/java/com/moral/api/controller/DeviceController.java b/screen-manage/src/main/java/com/moral/api/controller/DeviceController.java
index e86a967..fdfdb9d 100644
--- a/screen-manage/src/main/java/com/moral/api/controller/DeviceController.java
+++ b/screen-manage/src/main/java/com/moral/api/controller/DeviceController.java
@@ -6,6 +6,7 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -54,7 +55,7 @@
String mac = device.getMac();
Integer monitorPointId = device.getMonitorPointId();
Integer versionId = device.getDeviceVersionId();
- if (name == null || mac == null || monitorPointId == null || versionId == null) {
+ if (ObjectUtils.isEmpty(name) || ObjectUtils.isEmpty(mac) || ObjectUtils.isEmpty(monitorPointId) || ObjectUtils.isEmpty(versionId)) {
return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
}
diff --git a/screen-manage/src/main/java/com/moral/api/controller/GovMonitorPoionController.java b/screen-manage/src/main/java/com/moral/api/controller/GovMonitorPoionController.java
index 6bfbc14..0757047 100644
--- a/screen-manage/src/main/java/com/moral/api/controller/GovMonitorPoionController.java
+++ b/screen-manage/src/main/java/com/moral/api/controller/GovMonitorPoionController.java
@@ -9,12 +9,17 @@
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import com.moral.util.WebUtils;
+
import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
+
import java.util.List;
import java.util.Map;
@@ -39,31 +44,31 @@
@RequestMapping(value = "getGovMonitorPointByCondition", method = RequestMethod.GET)
@ResponseBody
public ResultMessage getSpecialDeviceByCondition(HttpServletRequest request) {
- Map<String,Object> parameters = WebUtils.getParametersStartingWith(request,null);
- Map<String,Object> resultMap = govMonitorPointService.getDataByCondition(parameters);
- if (!resultMap.containsKey("code")){
+ Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
+ Map<String, Object> resultMap = govMonitorPointService.getDataByCondition(parameters);
+ if (!resultMap.containsKey("code")) {
return ResultMessage.ok(resultMap);
}
- return ResultMessage.fail(Integer.parseInt(resultMap.get("code").toString()),resultMap.get("msg").toString());
+ return ResultMessage.fail(Integer.parseInt(resultMap.get("code").toString()), resultMap.get("msg").toString());
}
@RequestMapping(value = "insert", method = RequestMethod.POST)
@ResponseBody
- public ResultMessage insert(@RequestBody GovMonitorPoint govMonitorPoint){
+ public ResultMessage insert(@RequestBody GovMonitorPoint govMonitorPoint) {
String guid = govMonitorPoint.getGuid();
String name = govMonitorPoint.getName();
double longitude = govMonitorPoint.getLongitude();
double latitude = govMonitorPoint.getLatitude();
String station_level = govMonitorPoint.getStationLevel();
- if (ObjectUtils.isEmpty(guid) && ObjectUtils.isEmpty(name) && ObjectUtils.isEmpty(longitude) && ObjectUtils.isEmpty(latitude) && ObjectUtils.isEmpty(station_level)){
- return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ if (ObjectUtils.isEmpty(guid) && ObjectUtils.isEmpty(name) && ObjectUtils.isEmpty(longitude) && ObjectUtils.isEmpty(latitude) && ObjectUtils.isEmpty(station_level)) {
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
}
QueryWrapper<GovMonitorPoint> wrapper_govMonitorPoint = new QueryWrapper<>();
- wrapper_govMonitorPoint.eq("is_delete",Constants.NOT_DELETE);
- wrapper_govMonitorPoint.eq("guid",guid).or().eq("name",name);
+ wrapper_govMonitorPoint.eq("is_delete", Constants.NOT_DELETE);
+ wrapper_govMonitorPoint.eq("guid", guid).or().eq("name", name);
List<GovMonitorPoint> govMonitorPoints = govMonitorPointMapper.selectList(wrapper_govMonitorPoint);
- if (govMonitorPoints.size()>0){
- return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_EXIST.getCode(),ResponseCodeEnum.MONITOR_POINT_IS_EXIST.getMsg());
+ if (govMonitorPoints.size() > 0) {
+ return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_EXIST.getCode(), ResponseCodeEnum.MONITOR_POINT_IS_EXIST.getMsg());
}
govMonitorPointService.insert(govMonitorPoint);
return ResultMessage.ok();
@@ -71,17 +76,17 @@
@RequestMapping(value = "update", method = RequestMethod.POST)
@ResponseBody
- public ResultMessage update(@RequestBody GovMonitorPoint govMonitorPoint){
+ public ResultMessage update(@RequestBody GovMonitorPoint govMonitorPoint) {
int id = govMonitorPoint.getId();
- if (ObjectUtils.isEmpty(id)){
- return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ if (ObjectUtils.isEmpty(id)) {
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
}
QueryWrapper<GovMonitorPoint> wrapper_govMonitorPoint = new QueryWrapper<>();
- wrapper_govMonitorPoint.eq("is_delete",Constants.NOT_DELETE);
- wrapper_govMonitorPoint.eq("id",id);
+ wrapper_govMonitorPoint.eq("is_delete", Constants.NOT_DELETE);
+ wrapper_govMonitorPoint.eq("id", id);
List<GovMonitorPoint> govMonitorPoints = govMonitorPointMapper.selectList(wrapper_govMonitorPoint);
- if (govMonitorPoints.size()==0){
- return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getCode(),ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getMsg());
+ if (govMonitorPoints.size() == 0) {
+ return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getCode(), ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getMsg());
}
govMonitorPointService.update(govMonitorPoint);
return ResultMessage.ok();
@@ -89,19 +94,29 @@
@RequestMapping(value = "delete", method = RequestMethod.POST)
@ResponseBody
- public ResultMessage delete(@RequestBody Map map){
+ public ResultMessage delete(@RequestBody Map map) {
int id = Integer.parseInt(map.get("id").toString());
- if (ObjectUtils.isEmpty(id)){
- return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ if (ObjectUtils.isEmpty(id)) {
+ return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
}
QueryWrapper<GovMonitorPoint> wrapper_govMonitorPoint = new QueryWrapper<>();
- wrapper_govMonitorPoint.eq("is_delete",Constants.NOT_DELETE);
- wrapper_govMonitorPoint.eq("id",id);
+ wrapper_govMonitorPoint.eq("is_delete", Constants.NOT_DELETE);
+ wrapper_govMonitorPoint.eq("id", id);
List<GovMonitorPoint> govMonitorPoints = govMonitorPointMapper.selectList(wrapper_govMonitorPoint);
- if (govMonitorPoints.size()==0){
- return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getCode(),ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getMsg());
+ if (govMonitorPoints.size() == 0) {
+ return ResultMessage.fail(ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getCode(), ResponseCodeEnum.MONITOR_POINT_IS_NOT_EXIST.getMsg());
}
govMonitorPointService.delete(id);
return ResultMessage.ok();
}
+
+ @ApiOperation(value = "������������������������������/������/������������", notes = "������������������������������/������/������������")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String")
+ })
+ @GetMapping("govMonitorPoints")
+ public ResultMessage selectGovMonitorPoints(String regionCode) {
+ List<Map<String, Object>> response = govMonitorPointService.selectGovMonitorPoints(regionCode);
+ return ResultMessage.ok(response);
+ }
}
diff --git a/screen-manage/src/main/java/com/moral/api/entity/Device.java b/screen-manage/src/main/java/com/moral/api/entity/Device.java
index f933fe0..c978a90 100644
--- a/screen-manage/src/main/java/com/moral/api/entity/Device.java
+++ b/screen-manage/src/main/java/com/moral/api/entity/Device.java
@@ -78,6 +78,11 @@
private Integer organizationId;
/**
+ * ���������/���������/���������������������gov_monitor_point���guid������
+ */
+ private String guid;
+
+ /**
* ������������id
*/
private Integer deviceVersionId;
diff --git a/screen-manage/src/main/java/com/moral/api/entity/GovMonitorPoint.java b/screen-manage/src/main/java/com/moral/api/entity/GovMonitorPoint.java
index 192517b..cd56a6d 100644
--- a/screen-manage/src/main/java/com/moral/api/entity/GovMonitorPoint.java
+++ b/screen-manage/src/main/java/com/moral/api/entity/GovMonitorPoint.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/vo/device/DeviceVO.java b/screen-manage/src/main/java/com/moral/api/pojo/vo/device/DeviceVO.java
index ffb4c28..59dd119 100644
--- a/screen-manage/src/main/java/com/moral/api/pojo/vo/device/DeviceVO.java
+++ b/screen-manage/src/main/java/com/moral/api/pojo/vo/device/DeviceVO.java
@@ -6,6 +6,7 @@
import java.util.List;
import com.moral.api.entity.Device;
+import com.moral.api.entity.GovMonitorPoint;
import com.moral.api.entity.ManageAccount;
import com.moral.api.entity.MonitorPoint;
import com.moral.api.entity.Organization;
@@ -52,6 +53,11 @@
private MonitorPoint monitorPoint;
/*
+ * ������������
+ * */
+ private GovMonitorPoint govMonitorPoint;
+
+ /*
* ���������
* */
private List<ManageAccount> operators;
diff --git a/screen-manage/src/main/java/com/moral/api/service/GovMonitorPointService.java b/screen-manage/src/main/java/com/moral/api/service/GovMonitorPointService.java
index dc7c625..4f55fb7 100644
--- a/screen-manage/src/main/java/com/moral/api/service/GovMonitorPointService.java
+++ b/screen-manage/src/main/java/com/moral/api/service/GovMonitorPointService.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.transaction.annotation.Transactional;
+import java.util.List;
import java.util.Map;
/**
@@ -64,4 +65,7 @@
**/
GovMonitorPoint selectGovMonitorPointInfoById(int id);
+ //���������������������������������
+ List<Map<String, Object>> selectGovMonitorPoints(String regionCode);
+
}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
index b957e2d..4d4ea98 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -12,6 +12,7 @@
import com.moral.api.service.DeviceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.service.GovMonitorPointService;
import com.moral.api.service.SysDictDataService;
import com.moral.api.util.CacheUtils;
import com.moral.api.util.AdjustDataUtils;
@@ -391,6 +392,16 @@
mpInfo.put("provinceCode", monitorPoint.getProvinceCode());
deviceInfo.put("monitorPoint", mpInfo);
+ //������������
+ Map<String, Object> govMpInfo = new LinkedHashMap<>();
+
+ govMpInfo.put("guid", null);
+ govMpInfo.put("name", null);
+ if (device.getGovMonitorPoint() != null) {
+ govMpInfo.put("guid", device.getGovMonitorPoint().getGuid());
+ govMpInfo.put("name", device.getGovMonitorPoint().getName());
+ }
+ deviceInfo.put("govMonitorPoint", govMpInfo);
setDeviceInfoToRedis(mac, deviceInfo);
return deviceInfo;
}
@@ -431,14 +442,14 @@
Map<String, Object> adjustFormula = redisTemplate.opsForHash().entries(RedisConstants.ADJUST + "_" + mac);
if (!ObjectUtils.isEmpty(adjustFormula)) {
Map<String, Object> deviceInfo = getDeviceByMac(mac);
- Map<String, Object> monitorPoint = (Map<String, Object>) deviceInfo.get("monitorPoint");
- String areaCode = monitorPoint.get("areaCode").toString();
- String cityCode = monitorPoint.get("cityCode").toString();
-
- Map<String, Object> aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, areaCode);
- if (ObjectUtils.isEmpty(aqiMap)) {
- aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, cityCode);
+ //���������������������������������
+ Map<String, Object> govMpInfo = (Map) deviceInfo.get("govMonitorPoint");
+ if (ObjectUtils.isEmpty(govMpInfo.get("guid"))) {
+ return deviceData;
}
+ String guid = (String) govMpInfo.get("guid");
+ //���������������aqi������
+ Map<String, Object> aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, guid);
return adjustDataUtils.adjust(deviceData, adjustFormula, ObjectUtils.isEmpty(aqiMap) ? null : aqiMap);
}
deviceData.remove("DataTime");
@@ -518,12 +529,12 @@
}
/**
- * @Description: ���������������������������������������������������������������������������������������������
- * @Param: [orgId, versionId]
- * @return: void
- * @Author: ���������
- * @Date: 2021/9/6
- */
+ * @Description: ���������������������������������������������������������������������������������������������
+ * @Param: [orgId, versionId]
+ * @return: void
+ * @Author: ���������
+ * @Date: 2021/9/6
+ */
private void insertOrganizationUnitAlarm(Integer orgId, Integer versionId) {
//���������������������������
QueryWrapper<OrganizationUnitAlarm> queryOrganizationVersionWrapper = new QueryWrapper<>();
@@ -546,7 +557,7 @@
String sensorCode = versionSensorUnit.getSensorCode();
//���������������������
SysDictData alarm = sensorAlarms.get(sensorCode);
- if(alarm!=null)
+ if (alarm != null)
organizationUnitAlarm.setAlarmLevel(alarm.getDataValue());
organizationUnitAlarm.setOrganizationId(orgId);
organizationUnitAlarm.setVersionId(versionId);
@@ -560,12 +571,12 @@
}
/**
- * @Description: ������������������������������������������������������������������������������������������������������������������������������������
- * @Param: [orgId, versionId]
- * @return: void
- * @Author: ���������
- * @Date: 2021/9/6
- */
+ * @Description: ������������������������������������������������������������������������������������������������������������������������������������
+ * @Param: [orgId, versionId]
+ * @return: void
+ * @Author: ���������
+ * @Date: 2021/9/6
+ */
private void deleteOrganizationUnitAlarm(Integer orgId, Integer versionId) {
QueryWrapper<Device> queryOrganizationVersionWrapper = new QueryWrapper<>();
queryOrganizationVersionWrapper.eq("organization_id", orgId);
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java
index 9cac6b4..add7e7a 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/GovMonitorPointServiceImpl.java
@@ -15,6 +15,8 @@
import com.moral.constant.Constants;
import com.moral.constant.RedisConstants;
import com.moral.constant.ResponseCodeEnum;
+import com.moral.util.RegionCodeUtils;
+
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
@@ -23,13 +25,13 @@
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
-import java.lang.reflect.Field;
+
import java.text.SimpleDateFormat;
import java.util.*;
/**
* <p>
- * ���������������
+ * ���������������
* </p>
*
* @author moral
@@ -73,71 +75,71 @@
@Override
public Map<String, Object> getDataByCondition(Map map) {
- Map<String,Object> resultMap = new HashMap<>();
- if (!map.containsKey("current")||!map.containsKey("size")){
- resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
- resultMap.put("msg",ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ Map<String, Object> resultMap = new HashMap<>();
+ if (!map.containsKey("current") || !map.containsKey("size")) {
+ resultMap.put("code", ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
+ resultMap.put("msg", ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
return resultMap;
}
int current = Integer.parseInt(map.get("current").toString());
int size = Integer.parseInt(map.get("size").toString());
- Page<GovMonitorPoint> page = new Page<>(current,size);
+ Page<GovMonitorPoint> page = new Page<>(current, size);
QueryWrapper<GovMonitorPoint> wrapper_Condition = new QueryWrapper<>();
- wrapper_Condition.eq("is_delete",Constants.NOT_DELETE);
- if (!ObjectUtils.isEmpty(map.get("name"))){
- wrapper_Condition.like("name",map.get("name").toString());
+ wrapper_Condition.eq("is_delete", Constants.NOT_DELETE);
+ if (!ObjectUtils.isEmpty(map.get("name"))) {
+ wrapper_Condition.like("name", map.get("name").toString());
}
- if (!ObjectUtils.isEmpty(map.get("stationLevel"))){
- wrapper_Condition.like("station_level",map.get("stationLevel").toString());
+ if (!ObjectUtils.isEmpty(map.get("stationLevel"))) {
+ wrapper_Condition.like("station_level", map.get("stationLevel").toString());
}
wrapper_Condition.orderByDesc("create_time");
- Page resultPage = govMonitorPointMapper.selectPage(page,wrapper_Condition);
+ Page resultPage = govMonitorPointMapper.selectPage(page, wrapper_Condition);
int totalNumber = govMonitorPointMapper.selectCount(wrapper_Condition);
List<GovMonitorPoint> govMonitorPoints = resultPage.getRecords();
SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- List<Map<String,Object>> govMonitorPointList = new ArrayList<>();
- for (GovMonitorPoint govMonitorPoint:govMonitorPoints) {
- Map govMonitorPointMap = JSON.parseObject(JSON.toJSONString(govMonitorPoint),Map.class);
+ List<Map<String, Object>> govMonitorPointList = new ArrayList<>();
+ for (GovMonitorPoint govMonitorPoint : govMonitorPoints) {
+ Map govMonitorPointMap = JSON.parseObject(JSON.toJSONString(govMonitorPoint), Map.class);
String createTime = SDF.format(govMonitorPoint.getCreateTime());
String updateTime = SDF.format(govMonitorPoint.getUpdateTime());
- govMonitorPointMap.put("createTime",createTime);
- govMonitorPointMap.put("updateTime",updateTime);
+ govMonitorPointMap.put("createTime", createTime);
+ govMonitorPointMap.put("updateTime", updateTime);
String position = "";
- if (!ObjectUtils.isEmpty(govMonitorPoint.getProvinceCode())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getProvinceCode())) {
QueryWrapper<SysArea> wrapper_province = new QueryWrapper<>();
- wrapper_province.eq("area_code",govMonitorPoint.getProvinceCode());
+ wrapper_province.eq("area_code", govMonitorPoint.getProvinceCode());
SysArea sysArea_provice = sysAreaMapper.selectOne(wrapper_province);
- if (!ObjectUtils.isEmpty(sysArea_provice)){
- position = position+sysArea_provice.getAreaName();
- if (!ObjectUtils.isEmpty(govMonitorPoint.getCityCode())){
+ if (!ObjectUtils.isEmpty(sysArea_provice)) {
+ position = position + sysArea_provice.getAreaName();
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getCityCode())) {
QueryWrapper<SysArea> wrapper_city = new QueryWrapper<>();
- wrapper_city.eq("area_code",govMonitorPoint.getCityCode());
+ wrapper_city.eq("area_code", govMonitorPoint.getCityCode());
SysArea sysArea_city = sysAreaMapper.selectOne(wrapper_city);
- if (!ObjectUtils.isEmpty(sysArea_city)){
- position = position+"/"+sysArea_city.getAreaName();
- if (!ObjectUtils.isEmpty(govMonitorPoint.getAreaCode())){
+ if (!ObjectUtils.isEmpty(sysArea_city)) {
+ position = position + "/" + sysArea_city.getAreaName();
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getAreaCode())) {
QueryWrapper<SysArea> wrapper_area = new QueryWrapper<>();
- wrapper_area.eq("area_code",govMonitorPoint.getAreaCode());
+ wrapper_area.eq("area_code", govMonitorPoint.getAreaCode());
SysArea sysArea_area = sysAreaMapper.selectOne(wrapper_area);
- if (!ObjectUtils.isEmpty(sysArea_area)){
- position = position+"/"+sysArea_area.getAreaName();
+ if (!ObjectUtils.isEmpty(sysArea_area)) {
+ position = position + "/" + sysArea_area.getAreaName();
}
}
}
}
}
}
- govMonitorPointMap.put("position",position);
+ govMonitorPointMap.put("position", position);
govMonitorPointList.add(govMonitorPointMap);
}
- resultMap.put("govMonitorPointList",govMonitorPointList);
- resultMap.put("totalNumber",totalNumber);
- resultMap.put("current",current);
- int totalPageNumber = totalNumber/size;
- if(totalNumber%size != 0){
+ resultMap.put("govMonitorPointList", govMonitorPointList);
+ resultMap.put("totalNumber", totalNumber);
+ resultMap.put("current", current);
+ int totalPageNumber = totalNumber / size;
+ if (totalNumber % size != 0) {
totalPageNumber += 1;
}
- resultMap.put("totalPageNumber",totalPageNumber);
+ resultMap.put("totalPageNumber", totalPageNumber);
return resultMap;
}
@@ -146,12 +148,12 @@
public void insert(GovMonitorPoint govMonitorPoint) {
int count = govMonitorPointMapper.insert(govMonitorPoint);
//������������redis
- setGovMonitorPointInfoToRedis(govMonitorPoint.getId().toString(),selectGovMonitorPointInfoById(govMonitorPoint.getId()));
- if (count > 0){
+ setGovMonitorPointInfoToRedis(govMonitorPoint.getId().toString(), selectGovMonitorPointInfoById(govMonitorPoint.getId()));
+ if (count > 0) {
//������������������
HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
StringBuilder content = new StringBuilder();
- content.append("������������������������").append("id:").append(govMonitorPoint.getId()+";").append(govMonitorPoint.getName()+";").append(":").append("guid���").append(govMonitorPoint.getGuid()+";");
+ content.append("������������������������").append("id:").append(govMonitorPoint.getId() + ";").append(govMonitorPoint.getName() + ";").append(":").append("guid���").append(govMonitorPoint.getGuid() + ";");
logUtils.saveOperationForManage(request, content.toString(), Constants.INSERT_OPERATE_TYPE);
}
}
@@ -165,36 +167,36 @@
//������redis
delGovMonitorPointInfoFromRedis(id.toString());
//������redis
- setGovMonitorPointInfoToRedis(id.toString(),selectGovMonitorPointInfoById(id));
+ setGovMonitorPointInfoToRedis(id.toString(), selectGovMonitorPointInfoById(id));
//������������������
HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
StringBuilder content = new StringBuilder();
- content.append("������������������������").append("id:").append(govMonitorPoint.getId()+";");
- if (!ObjectUtils.isEmpty(govMonitorPoint.getGuid())){
+ content.append("������������������������").append("id:").append(govMonitorPoint.getId() + ";");
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getGuid())) {
content.append("guid:").append(oldGovMonitorPoint.getGuid()).append("->").append(govMonitorPoint.getGuid()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getName())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getName())) {
content.append("name:").append(oldGovMonitorPoint.getName()).append("->").append(govMonitorPoint.getName()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getLongitude())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getLongitude())) {
content.append("longitude:").append(oldGovMonitorPoint.getLongitude()).append("->").append(govMonitorPoint.getLongitude()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getLatitude())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getLatitude())) {
content.append("latitude:").append(oldGovMonitorPoint.getLatitude()).append("->").append(govMonitorPoint.getLatitude()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getProvinceCode())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getProvinceCode())) {
content.append("provinceCode:").append(oldGovMonitorPoint.getProvinceCode()).append("->").append(govMonitorPoint.getProvinceCode()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getCityCode())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getCityCode())) {
content.append("cityCode:").append(oldGovMonitorPoint.getCityCode()).append("->").append(govMonitorPoint.getCityCode()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getAreaCode())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getAreaCode())) {
content.append("areaCode:").append(oldGovMonitorPoint.getAreaCode()).append("->").append(govMonitorPoint.getAreaCode()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getStationLevel())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getStationLevel())) {
content.append("stationLevel:").append(oldGovMonitorPoint.getStationLevel()).append("->").append(govMonitorPoint.getStationLevel()).append(";");
}
- if (!ObjectUtils.isEmpty(govMonitorPoint.getDesc())){
+ if (!ObjectUtils.isEmpty(govMonitorPoint.getDesc())) {
content.append("desc:").append(oldGovMonitorPoint).append("->").append(govMonitorPoint.getDesc()).append(";");
}
logUtils.saveOperationForManage(request, content.toString(), Constants.UPDATE_OPERATE_TYPE);
@@ -203,8 +205,8 @@
@Override
public void delete(Integer id) {
UpdateWrapper<GovMonitorPoint> wrapper_delete = new UpdateWrapper<>();
- wrapper_delete.eq("id",id).set("is_delete",Constants.DELETE);
- govMonitorPointMapper.update(null,wrapper_delete);
+ wrapper_delete.eq("id", id).set("is_delete", Constants.DELETE);
+ govMonitorPointMapper.update(null, wrapper_delete);
//������redis
delGovMonitorPointInfoFromRedis(id.toString());
//������������������
@@ -219,4 +221,15 @@
GovMonitorPoint govMonitorPoint = govMonitorPointMapper.selectById(id);
return govMonitorPoint;
}
+
+ @Override
+ public List<Map<String, Object>> selectGovMonitorPoints(String regionCode) {
+ QueryWrapper<GovMonitorPoint> queryWrapper = new QueryWrapper<>();
+ queryWrapper.select("guid", "name").eq("is_delete", Constants.NOT_DELETE);
+ if (!ObjectUtils.isEmpty(regionCode)) {
+ String regionName = RegionCodeUtils.regionCodeConvertToName(Integer.parseInt(regionCode));
+ queryWrapper.eq(regionName, regionCode);
+ }
+ return govMonitorPointMapper.selectMaps(queryWrapper);
+ }
}
diff --git a/screen-manage/src/main/resources/mapper/DeviceMapper.xml b/screen-manage/src/main/resources/mapper/DeviceMapper.xml
index d1c0809..8b65e97 100644
--- a/screen-manage/src/main/resources/mapper/DeviceMapper.xml
+++ b/screen-manage/src/main/resources/mapper/DeviceMapper.xml
@@ -14,6 +14,7 @@
<result column="operate_ids" property="operateIds"/>
<result column="monitor_point_id" property="monitorPointId"/>
<result column="organization_id" property="organizationId"/>
+ <result column="guid" property="guid"/>
<result column="device_version_id" property="deviceVersionId"/>
<result column="profession" property="profession"/>
<result column="tech" property="tech"/>
@@ -52,6 +53,12 @@
<result column="mp_area_code" property="areaCode"/>
<result column="mp_city_code" property="cityCode"/>
<result column="mp_province_code" property="provinceCode"/>
+ </association>
+
+ <!--������������-->
+ <association property="govMonitorPoint" javaType="com.moral.api.entity.GovMonitorPoint">
+ <result column="gmp_guid" property="guid"/>
+ <result column="gmp_name" property="name"/>
</association>
<!--������-->
@@ -121,6 +128,8 @@
mp.area_code mp_area_code,
mp.city_code mp_city_code,
mp.province_code mp_province_code,
+ gmp.guid gmp_guid,
+ gmp.name gmp_name,
ma.id operate_id,
v.id version_id,
v.`name` version_name,
@@ -136,6 +145,8 @@
ON d.organization_id = o.id
LEFT JOIN `monitor_point` mp
ON mp.id = d.monitor_point_id
+ LEFT JOIN `gov_monitor_point` gmp
+ ON gmp.guid = d.guid
LEFT JOIN `manage_account` ma
ON FIND_IN_SET
(
--
Gitblit v1.8.0