From 6886f3d9f7e9848fd47da92637f28f46554179a7 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Fri, 18 Jun 2021 08:55:41 +0800
Subject: [PATCH] screen-api 增加kafka消费者以及websocket搭建
---
screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java | 22 ++++
screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java | 7 +
screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java | 8 +
screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java | 27 +++++
screen-manage/src/main/resources/mapper/OrganizationUnitAlarmMapper.xml | 19 +++
screen-manage/src/main/java/com/moral/api/entity/OrganizationUnitAlarm.java | 84 ++++++++++++++++
screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java | 26 +++++
screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java | 41 +++++--
screen-manage/src/main/java/com/moral/api/mapper/OrganizationUnitAlarmMapper.java | 16 +++
screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java | 7 +
screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmInsertForm.java | 34 ++++++
11 files changed, 278 insertions(+), 13 deletions(-)
diff --git a/screen-manage/src/main/java/com/moral/api/entity/OrganizationUnitAlarm.java b/screen-manage/src/main/java/com/moral/api/entity/OrganizationUnitAlarm.java
new file mode 100644
index 0000000..0993446
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/entity/OrganizationUnitAlarm.java
@@ -0,0 +1,84 @@
+package com.moral.api.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+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;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * ���������������������������������������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-06-17
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class OrganizationUnitAlarm extends Model<OrganizationUnitAlarm> {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ������
+ */
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ /**
+ * ������id
+ */
+ private Integer organizationId;
+
+ /**
+ * ������id
+ */
+ private Integer versionId;
+
+ /**
+ * ������code
+ */
+ private Integer sensorCode;
+
+ /**
+ * ���������������������
+ */
+ private String unitKey;
+
+ /**
+ * ���������������������key
+ */
+ private String showUnitKey;
+
+ /**
+ * ������������
+ */
+ private String alarmLevel;
+
+ /**
+ * ������������
+ */
+ private Date createTime;
+
+ /**
+ * ������������
+ */
+ private Date updateTime;
+
+ /**
+ * ������������
+ */
+ private String isDelete;
+
+
+ @Override
+ protected Serializable pkVal() {
+ return this.id;
+ }
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java b/screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java
index 0802b5c..33c428e 100644
--- a/screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java
+++ b/screen-manage/src/main/java/com/moral/api/entity/VersionSensorUnit.java
@@ -1,6 +1,7 @@
package com.moral.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
@@ -38,8 +39,14 @@
/**
* ������Id
*/
+ @TableField(exist = false)
private Integer sensorId;
+ /*
+ * ������code
+ * */
+ private String sensorCode;
+
/**
* ������������key
*/
diff --git a/screen-manage/src/main/java/com/moral/api/mapper/OrganizationUnitAlarmMapper.java b/screen-manage/src/main/java/com/moral/api/mapper/OrganizationUnitAlarmMapper.java
new file mode 100644
index 0000000..562b4de
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/mapper/OrganizationUnitAlarmMapper.java
@@ -0,0 +1,16 @@
+package com.moral.api.mapper;
+
+import com.moral.api.entity.OrganizationUnitAlarm;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * ��������������������������������������� Mapper ������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-06-17
+ */
+public interface OrganizationUnitAlarmMapper extends BaseMapper<OrganizationUnitAlarm> {
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java b/screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java
new file mode 100644
index 0000000..b0c53b2
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/pojo/dto/organizationUnitAlarm/OrganizationUnitAlarmDTO.java
@@ -0,0 +1,22 @@
+package com.moral.api.pojo.dto.organizationUnitAlarm;
+
+/**
+ * @ClassName OrganizationUnitAlramDTO
+ * @Description TODO
+ * @Author ���������
+ * @Date 2021/6/17 14:01
+ * @Version TODO
+ **/
+public class OrganizationUnitAlarmDTO {
+
+ /*
+ * ���������
+ * */
+ private Integer code;
+
+ /*
+ * ������������
+ * */
+ private String msg;
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmInsertForm.java b/screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmInsertForm.java
new file mode 100644
index 0000000..63e006d
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/pojo/form/organizationUnitAlarm/OrganizationUnitAlarmInsertForm.java
@@ -0,0 +1,34 @@
+package com.moral.api.pojo.form.organizationUnitAlarm;
+
+import com.moral.api.entity.OrganizationUnitAlarm;
+import lombok.Data;
+import org.springframework.util.ObjectUtils;
+
+import java.util.List;
+
+/**
+ * @ClassName OrganizationUnitAlarmInsertForm
+ * @Description TODO
+ * @Author ���������
+ * @Date 2021/6/17 14:12
+ * @Version TODO
+ **/
+@Data
+public class OrganizationUnitAlarmInsertForm {
+
+ private List<OrganizationUnitAlarm> organizationUnitAlarms;
+
+ public boolean valid(){
+ if(ObjectUtils.isEmpty(organizationUnitAlarms))
+ return false;
+ for (OrganizationUnitAlarm organizationUnitAlarm : organizationUnitAlarms) {
+ if(ObjectUtils.isEmpty(organizationUnitAlarm.getOrganizationId())||
+ ObjectUtils.isEmpty(organizationUnitAlarm.getVersionId())||
+ ObjectUtils.isEmpty(organizationUnitAlarm.getSensorCode())||
+ ObjectUtils.isEmpty(organizationUnitAlarm.getUnitKey())||
+ ObjectUtils.isEmpty(organizationUnitAlarm.getShowUnitKey()));
+ return false;
+ }
+ return true;
+ }
+}
diff --git a/screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java b/screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java
new file mode 100644
index 0000000..03814e2
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/service/OrganizationUnitAlarmService.java
@@ -0,0 +1,26 @@
+package com.moral.api.service;
+
+import com.moral.api.entity.OrganizationUnitAlarm;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmDTO;
+import com.moral.api.pojo.form.organizationUnitAlarm.OrganizationUnitAlarmInsertForm;
+
+/**
+ * <p>
+ * ��������������������������������������� ���������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-06-17
+ */
+public interface OrganizationUnitAlarmService extends IService<OrganizationUnitAlarm> {
+
+ /**
+ * @Description: ������������������������������������������
+ * @Param: [organizationInsertForm]
+ * @return: com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmDTO
+ * @Author: ���������
+ * @Date: 2021/6/17
+ */
+ OrganizationUnitAlarmDTO insertOrganizationUnitAlarm(OrganizationUnitAlarmInsertForm organizationInsertForm);
+}
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 6a972f9..76d4e8f 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
@@ -4,19 +4,8 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.moral.api.entity.Device;
-import com.moral.api.entity.ManageAccount;
-import com.moral.api.entity.MonitorPoint;
-import com.moral.api.entity.Organization;
-import com.moral.api.entity.SysDictData;
-import com.moral.api.entity.SysDictType;
-import com.moral.api.entity.Version;
-import com.moral.api.mapper.DeviceMapper;
-import com.moral.api.mapper.ManageAccountMapper;
-import com.moral.api.mapper.MonitorPointMapper;
-import com.moral.api.mapper.OrganizationMapper;
-import com.moral.api.mapper.SysDictDataMapper;
-import com.moral.api.mapper.SysDictTypeMapper;
+import com.moral.api.entity.*;
+import com.moral.api.mapper.*;
import com.moral.api.pojo.vo.device.DeviceVO;
import com.moral.api.service.DeviceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -31,6 +20,7 @@
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -80,6 +70,11 @@
@Autowired
private RedisTemplate redisTemplate;
+ @Autowired
+ private OrganizationUnitAlarmMapper organizationUnitAlarmMapper;
+
+ @Autowired
+ private VersionSensorUnitMapper versionSensorUnitMapper;
/*
* ���redis������������������
@@ -127,6 +122,26 @@
device.setOrganizationId(orgId);
deviceMapper.insert(device);
Map<String, Object> deviceInfo = selectDeviceInfoById(device.getId());
+ //���������������������������
+ QueryWrapper<OrganizationUnitAlarm> queryOrganizationVersionWrapper = new QueryWrapper<>();
+ queryOrganizationVersionWrapper.eq("organization_id",orgId);
+ queryOrganizationVersionWrapper.eq("version_id",device.getDeviceVersionId());
+ queryOrganizationVersionWrapper.eq("is_delete",Constants.NOT_DELETE);
+ List<OrganizationUnitAlarm> organizationUnitAlarms = organizationUnitAlarmMapper.selectList(queryOrganizationVersionWrapper);
+ if(ObjectUtils.isEmpty(organizationUnitAlarms)){
+ QueryWrapper<VersionSensorUnit> queryVersionSensorUnitWrapper =new QueryWrapper<>();
+ queryVersionSensorUnitWrapper.eq("version_id",device.getDeviceVersionId());
+ queryVersionSensorUnitWrapper.eq("is_delete",Constants.NOT_DELETE);
+ List<VersionSensorUnit> versionSensorUnits = versionSensorUnitMapper.selectList(queryVersionSensorUnitWrapper);
+ if(!ObjectUtils.isEmpty(versionSensorUnits)){
+ for (VersionSensorUnit versionSensorUnit : versionSensorUnits) {
+ OrganizationUnitAlarm organizationUnitAlarm = new OrganizationUnitAlarm();
+ organizationUnitAlarm.setOrganizationId(orgId);
+ organizationUnitAlarm.setVersionId(device.getDeviceVersionId());
+
+ }
+ }
+ }
//������������������������redis
String mac = device.getMac();
//���redis���������������������
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java
new file mode 100644
index 0000000..e321a69
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/OrganizationUnitAlarmServiceImpl.java
@@ -0,0 +1,27 @@
+package com.moral.api.service.impl;
+
+import com.moral.api.entity.OrganizationUnitAlarm;
+import com.moral.api.mapper.OrganizationUnitAlarmMapper;
+import com.moral.api.pojo.dto.organizationUnitAlarm.OrganizationUnitAlarmDTO;
+import com.moral.api.pojo.form.organizationUnitAlarm.OrganizationUnitAlarmInsertForm;
+import com.moral.api.service.OrganizationUnitAlarmService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * ��������������������������������������� ���������������
+ * </p>
+ *
+ * @author moral
+ * @since 2021-06-17
+ */
+@Service
+public class OrganizationUnitAlarmServiceImpl extends ServiceImpl<OrganizationUnitAlarmMapper, OrganizationUnitAlarm> implements OrganizationUnitAlarmService {
+
+ @Override
+ public OrganizationUnitAlarmDTO insertOrganizationUnitAlarm(OrganizationUnitAlarmInsertForm organizationInsertForm) {
+
+ return null;
+ }
+}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java
index a94e894..75593af 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java
@@ -1,5 +1,6 @@
package com.moral.api.service.impl;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -181,4 +182,10 @@
dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
return dto;
}
+
+ public static void main(String[] args) {
+ int[] array = new int[]{1,2,3,4,5,};
+ String s = JSON.toJSONString(array);
+ System.out.println(s);
+ }
}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
index d81b12f..780bc84 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
@@ -8,6 +8,7 @@
import com.moral.api.entity.User;
import com.moral.api.entity.Version;
import com.moral.api.entity.VersionSensorUnit;
+import com.moral.api.mapper.SensorMapper;
import com.moral.api.mapper.VersionMapper;
import com.moral.api.mapper.VersionSensorUnitMapper;
import com.moral.api.pojo.dto.version.VersionDTO;
@@ -41,6 +42,8 @@
VersionMapper versionMapper;
@Autowired
VersionSensorUnitMapper versionSensorUnitMapper;
+ @Autowired
+ SensorMapper sensorMapper;
@Override
public VersionQueryDTO query(VersionQueryForm form) {
@@ -193,6 +196,11 @@
deleteWrapper.eq("version_id", versionId);
deleteWrapper.set("is_delete", Constants.DELETE);
versionSensorUnitMapper.update(null, deleteWrapper);
+ //������������������id������code
+ for (VersionSensorUnit sensorUnit : sensorUnits) {
+ Sensor sensor = sensorMapper.selectById(sensorUnit.getId());
+ sensorUnit.setSensorCode(sensor.getCode());
+ }
//���������������������������������
for (VersionSensorUnit sensorUnit : sensorUnits) {
sensorUnit.setVersionId(versionId);
diff --git a/screen-manage/src/main/resources/mapper/OrganizationUnitAlarmMapper.xml b/screen-manage/src/main/resources/mapper/OrganizationUnitAlarmMapper.xml
new file mode 100644
index 0000000..61a8a0d
--- /dev/null
+++ b/screen-manage/src/main/resources/mapper/OrganizationUnitAlarmMapper.xml
@@ -0,0 +1,19 @@
+<?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.OrganizationUnitAlarmMapper">
+
+ <!-- ������������������������ -->
+ <resultMap id="BaseResultMap" type="com.moral.api.entity.OrganizationUnitAlarm">
+ <id column="id" property="id" />
+ <result column="organization_id" property="organizationId" />
+ <result column="version_id" property="versionId" />
+ <result column="sensor_code" property="sensorCode" />
+ <result column="unit_key" property="unitKey" />
+ <result column="show_unit_key" property="showUnitKey" />
+ <result column="alarm_level" property="alarmLevel" />
+ <result column="create_time" property="createTime" />
+ <result column="update_time" property="updateTime" />
+ <result column="is_delete" property="isDelete" />
+ </resultMap>
+
+</mapper>
\ No newline at end of file
--
Gitblit v1.8.0