Browse Source

暂存设备和社区信息

feature/hk_device
zhangyuan 4 years ago
parent
commit
3992397f8a
  1. 0
      epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/.gitkeep
  2. 94
      epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/HikCommunityInfoDTO.java
  3. 94
      epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/HikDeviceInfoDTO.java
  4. 27
      epmet-plugins-module/pli-power-base/pli-power-base-server/pom.xml
  5. 54
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/config/HikCloudProperties.java
  6. 82
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/controller/HikCommunityInfoController.java
  7. 82
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/controller/HikDeviceInfoController.java
  8. 16
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/dao/HikCommunityInfoDao.java
  9. 16
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/dao/HikDeviceInfoDao.java
  10. 64
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/entity/HikCommunityInfoEntity.java
  11. 64
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/entity/HikDeviceInfoEntity.java
  12. 63
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/excel/HikCommunityInfoExcel.java
  13. 63
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/excel/HikDeviceInfoExcel.java
  14. 30
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/redis/HikCommunityInfoRedis.java
  15. 30
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/redis/HikDeviceInfoRedis.java
  16. 78
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/HikCommunityInfoService.java
  17. 78
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/HikDeviceInfoService.java
  18. 87
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/impl/HikCommunityInfoServiceImpl.java
  19. 87
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/impl/HikDeviceInfoServiceImpl.java
  20. 9
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java
  21. 1
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/RentTenantInfoService.java
  22. 0
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/.gitkeep
  23. 86
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java
  24. 6
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/bootstrap.yml
  25. 25
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/hik/HikCommunityInfoDao.xml
  26. 25
      epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/hik/HikDeviceInfoDao.xml

0
epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/.gitkeep

94
epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/HikCommunityInfoDTO.java

@ -0,0 +1,94 @@
package com.epmet.plugin.power.dto.hik;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
public class HikCommunityInfoDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 删除标记 0未删除1已删除
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
/**
* 客户ID
*/
private String customerId;
/**
* 社区ID
*/
private String communityId;
/**
* 社区名称
*/
private String communityName;
/**
* 省代号
*/
private String provinceCode;
/**
* 市代号
*/
private String cityCode;
/**
* 区代号
*/
private String countyCode;
/**
* 经度坐标值
*/
private String longitude;
/**
* 维度坐标值
*/
private String latitude;
}

94
epmet-plugins-module/pli-power-base/pli-power-base-client/src/main/java/com/epmet/plugin/power/dto/hik/HikDeviceInfoDTO.java

@ -0,0 +1,94 @@
package com.epmet.plugin.power.dto.hik;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
public class HikDeviceInfoDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 删除标记 0未删除1已删除
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
/**
* 客户ID
*/
private String customerId;
/**
* 社区ID
*/
private String communityId;
/**
* 设备ID
*/
private String deviceId;
/**
* 设备名称
*/
private String deviceName;
/**
* 设备型号
*/
private String deviceModel;
/**
* 设备序列号
*/
private String deviceSerial;
/**
* 设备状态0离线1在线
*/
private String deviceStatus;
/**
* 设备路径
*/
private String devicePath;
}

27
epmet-plugins-module/pli-power-base/pli-power-base-server/pom.xml

@ -164,6 +164,11 @@
</dingTalk.robot.webHook>
<dingTalk.robot.secret>SECfcc020bdc83bb17a2c00f39977b1fbc409ef4188c7beaea11c5caa90eeaf87fd
</dingTalk.robot.secret>
<!--海康云眸-->
<hik.cloud.url>https://api2.hik-cloud.com</hik.cloud.url>
<hik.cloud.client>90688b09bb9d40088f7be404ccb347c7</hik.cloud.client>
<hik.cloud.secret>7b1940707a4240be9c794c5a967a30c9</hik.cloud.secret>
</properties>
</profile>
<profile>
@ -193,7 +198,7 @@
<nacos.config.namespace></nacos.config.namespace>
<nacos.config.group></nacos.config.group>
<nacos.config-enabled>false</nacos.config-enabled>
<nacos.ip>192.168.43.104</nacos.ip>
<nacos.ip>192.168.43.186</nacos.ip>
<!--是否开启服务列表变更监听-->
<nacos.service-list-changed-listening.enable>false</nacos.service-list-changed-listening.enable>
@ -214,6 +219,11 @@
</dingTalk.robot.webHook>
<dingTalk.robot.secret>SECfcc020bdc83bb17a2c00f39977b1fbc409ef4188c7beaea11c5caa90eeaf87fd
</dingTalk.robot.secret>
<!--海康云眸-->
<hik.cloud.url>https://api2.hik-cloud.com</hik.cloud.url>
<hik.cloud.client>90688b09bb9d40088f7be404ccb347c7</hik.cloud.client>
<hik.cloud.secret>7b1940707a4240be9c794c5a967a30c9</hik.cloud.secret>
</properties>
</profile>
<profile>
@ -268,6 +278,11 @@
</dingTalk.robot.webHook>
<dingTalk.robot.secret>SECfcc020bdc83bb17a2c00f39977b1fbc409ef4188c7beaea11c5caa90eeaf87fd
</dingTalk.robot.secret>
<!--海康云眸-->
<hik.cloud.url>https://api2.hik-cloud.com</hik.cloud.url>
<hik.cloud.client>90688b09bb9d40088f7be404ccb347c7</hik.cloud.client>
<hik.cloud.secret>7b1940707a4240be9c794c5a967a30c9</hik.cloud.secret>
</properties>
</profile>
<profile>
@ -317,6 +332,11 @@
</dingTalk.robot.webHook>
<dingTalk.robot.secret>SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
</dingTalk.robot.secret>
<!--海康云眸-->
<hik.cloud.url>https://api2.hik-cloud.com</hik.cloud.url>
<hik.cloud.client>90688b09bb9d40088f7be404ccb347c7</hik.cloud.client>
<hik.cloud.secret>7b1940707a4240be9c794c5a967a30c9</hik.cloud.secret>
</properties>
</profile>
<profile>
@ -369,6 +389,11 @@
<thread.threadPool.keep-alive-seconds>60</thread.threadPool.keep-alive-seconds>
<thread.threadPool.thread-name-prefix>epmet-user</thread.threadPool.thread-name-prefix>
<thread.threadPool.rejected-execution-handler>callerRunsPolicy</thread.threadPool.rejected-execution-handler>
<!--海康云眸-->
<hik.cloud.url>https://api2.hik-cloud.com</hik.cloud.url>
<hik.cloud.client>90688b09bb9d40088f7be404ccb347c7</hik.cloud.client>
<hik.cloud.secret>7b1940707a4240be9c794c5a967a30c9</hik.cloud.secret>
</properties>
</profile>
</profiles>

54
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/config/HikCloudProperties.java

@ -0,0 +1,54 @@
package com.epmet.plugin.power.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
/**
* 海康设备参数
*
* @author zhy
* @date 2022/5/20 14:59
*/
@Configuration
@ConfigurationProperties(prefix = "hik.cloud")
public class HikCloudProperties {
/**
* 应用ID
*/
private String url;
/**
* 应用KEY
*/
private String client;
/**
* 生成AccessToken密钥
*/
private String secret;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getClient() {
return client;
}
public void setClient(String client) {
this.client = client;
}
public String getSecret() {
return secret;
}
public void setSecret(String secret) {
this.secret = secret;
}
}

82
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/controller/HikCommunityInfoController.java

@ -0,0 +1,82 @@
package com.epmet.plugin.power.modules.hik.controller;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.plugin.power.dto.hik.HikCommunityInfoDTO;
import com.epmet.plugin.power.modules.hik.excel.HikCommunityInfoExcel;
import com.epmet.plugin.power.modules.hik.service.HikCommunityInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@RestController
@RequestMapping("hikCommunityInfo")
public class HikCommunityInfoController {
@Autowired
private HikCommunityInfoService hikCommunityInfoService;
@RequestMapping("page")
public Result<PageData<HikCommunityInfoDTO>> page(@RequestParam Map<String, Object> params){
PageData<HikCommunityInfoDTO> page = hikCommunityInfoService.page(params);
return new Result<PageData<HikCommunityInfoDTO>>().ok(page);
}
@RequestMapping(value = "{id}", method = {RequestMethod.POST, RequestMethod.GET})
public Result<HikCommunityInfoDTO> get(@PathVariable("id") String id){
HikCommunityInfoDTO data = hikCommunityInfoService.get(id);
return new Result<HikCommunityInfoDTO>().ok(data);
}
@NoRepeatSubmit
@PostMapping("save")
public Result save(@RequestBody HikCommunityInfoDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
hikCommunityInfoService.save(dto);
return new Result();
}
@NoRepeatSubmit
@PostMapping("update")
public Result update(@RequestBody HikCommunityInfoDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
hikCommunityInfoService.update(dto);
return new Result();
}
@RequestMapping(value = "delete", method = {RequestMethod.POST, RequestMethod.DELETE})
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
hikCommunityInfoService.delete(ids);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<HikCommunityInfoDTO> list = hikCommunityInfoService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, HikCommunityInfoExcel.class);
}
}

82
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/controller/HikDeviceInfoController.java

@ -0,0 +1,82 @@
package com.epmet.plugin.power.modules.hik.controller;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.plugin.power.dto.hik.HikDeviceInfoDTO;
import com.epmet.plugin.power.modules.hik.excel.HikDeviceInfoExcel;
import com.epmet.plugin.power.modules.hik.service.HikDeviceInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@RestController
@RequestMapping("hikDeviceInfo")
public class HikDeviceInfoController {
@Autowired
private HikDeviceInfoService hikDeviceInfoService;
@RequestMapping("page")
public Result<PageData<HikDeviceInfoDTO>> page(@RequestParam Map<String, Object> params){
PageData<HikDeviceInfoDTO> page = hikDeviceInfoService.page(params);
return new Result<PageData<HikDeviceInfoDTO>>().ok(page);
}
@RequestMapping(value = "{id}", method = {RequestMethod.POST, RequestMethod.GET})
public Result<HikDeviceInfoDTO> get(@PathVariable("id") String id){
HikDeviceInfoDTO data = hikDeviceInfoService.get(id);
return new Result<HikDeviceInfoDTO>().ok(data);
}
@NoRepeatSubmit
@PostMapping("save")
public Result save(@RequestBody HikDeviceInfoDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
hikDeviceInfoService.save(dto);
return new Result();
}
@NoRepeatSubmit
@PostMapping("update")
public Result update(@RequestBody HikDeviceInfoDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
hikDeviceInfoService.update(dto);
return new Result();
}
@RequestMapping(value = "delete", method = {RequestMethod.POST, RequestMethod.DELETE})
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
hikDeviceInfoService.delete(ids);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<HikDeviceInfoDTO> list = hikDeviceInfoService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, HikDeviceInfoExcel.class);
}
}

16
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/dao/HikCommunityInfoDao.java

@ -0,0 +1,16 @@
package com.epmet.plugin.power.modules.hik.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.plugin.power.modules.hik.entity.HikCommunityInfoEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Mapper
public interface HikCommunityInfoDao extends BaseDao<HikCommunityInfoEntity> {
}

16
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/dao/HikDeviceInfoDao.java

@ -0,0 +1,16 @@
package com.epmet.plugin.power.modules.hik.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.plugin.power.modules.hik.entity.HikDeviceInfoEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Mapper
public interface HikDeviceInfoDao extends BaseDao<HikDeviceInfoEntity> {
}

64
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/entity/HikCommunityInfoEntity.java

@ -0,0 +1,64 @@
package com.epmet.plugin.power.modules.hik.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("pli_hik_community_info")
public class HikCommunityInfoEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户ID
*/
private String customerId;
/**
* 社区ID
*/
private String communityId;
/**
* 社区名称
*/
private String communityName;
/**
* 省代号
*/
private String provinceCode;
/**
* 市代号
*/
private String cityCode;
/**
* 区代号
*/
private String countyCode;
/**
* 经度坐标值
*/
private String longitude;
/**
* 维度坐标值
*/
private String latitude;
}

64
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/entity/HikDeviceInfoEntity.java

@ -0,0 +1,64 @@
package com.epmet.plugin.power.modules.hik.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("pli_hik_device_info")
public class HikDeviceInfoEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户ID
*/
private String customerId;
/**
* 社区ID
*/
private String communityId;
/**
* 设备ID
*/
private String deviceId;
/**
* 设备名称
*/
private String deviceName;
/**
* 设备型号
*/
private String deviceModel;
/**
* 设备序列号
*/
private String deviceSerial;
/**
* 设备状态0离线1在线
*/
private String deviceStatus;
/**
* 设备路径
*/
private String devicePath;
}

63
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/excel/HikCommunityInfoExcel.java

@ -0,0 +1,63 @@
package com.epmet.plugin.power.modules.hik.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
public class HikCommunityInfoExcel {
@Excel(name = "主键")
private String id;
@Excel(name = "删除标记 0:未删除,1:已删除")
private String delFlag;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
@Excel(name = "客户ID")
private String customerId;
@Excel(name = "社区ID")
private String communityId;
@Excel(name = "社区名称")
private String communityName;
@Excel(name = "省代号")
private String provinceCode;
@Excel(name = "市代号")
private String cityCode;
@Excel(name = "区代号")
private String countyCode;
@Excel(name = "经度坐标值")
private String longitude;
@Excel(name = "维度坐标值")
private String latitude;
}

63
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/excel/HikDeviceInfoExcel.java

@ -0,0 +1,63 @@
package com.epmet.plugin.power.modules.hik.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Data
public class HikDeviceInfoExcel {
@Excel(name = "主键")
private String id;
@Excel(name = "删除标记 0:未删除,1:已删除")
private String delFlag;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
@Excel(name = "客户ID")
private String customerId;
@Excel(name = "社区ID")
private String communityId;
@Excel(name = "设备ID")
private String deviceId;
@Excel(name = "设备名称")
private String deviceName;
@Excel(name = "设备型号")
private String deviceModel;
@Excel(name = "设备序列号")
private String deviceSerial;
@Excel(name = "设备状态,0:离线,1:在线")
private String deviceStatus;
@Excel(name = "设备路径")
private String devicePath;
}

30
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/redis/HikCommunityInfoRedis.java

@ -0,0 +1,30 @@
package com.epmet.plugin.power.modules.hik.redis;
import com.epmet.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Component
public class HikCommunityInfoRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

30
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/redis/HikDeviceInfoRedis.java

@ -0,0 +1,30 @@
package com.epmet.plugin.power.modules.hik.redis;
import com.epmet.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Component
public class HikDeviceInfoRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

78
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/HikCommunityInfoService.java

@ -0,0 +1,78 @@
package com.epmet.plugin.power.modules.hik.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.plugin.power.dto.hik.HikCommunityInfoDTO;
import com.epmet.plugin.power.modules.hik.entity.HikCommunityInfoEntity;
import java.util.List;
import java.util.Map;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
public interface HikCommunityInfoService extends BaseService<HikCommunityInfoEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<HikCommunityInfoDTO>
* @author generator
* @date 2022-05-20
*/
PageData<HikCommunityInfoDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<HikCommunityInfoDTO>
* @author generator
* @date 2022-05-20
*/
List<HikCommunityInfoDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return HikCommunityInfoDTO
* @author generator
* @date 2022-05-20
*/
HikCommunityInfoDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2022-05-20
*/
void save(HikCommunityInfoDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2022-05-20
*/
void update(HikCommunityInfoDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2022-05-20
*/
void delete(String[] ids);
}

78
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/HikDeviceInfoService.java

@ -0,0 +1,78 @@
package com.epmet.plugin.power.modules.hik.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.plugin.power.dto.hik.HikDeviceInfoDTO;
import com.epmet.plugin.power.modules.hik.entity.HikDeviceInfoEntity;
import java.util.List;
import java.util.Map;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
public interface HikDeviceInfoService extends BaseService<HikDeviceInfoEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<HikDeviceInfoDTO>
* @author generator
* @date 2022-05-20
*/
PageData<HikDeviceInfoDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<HikDeviceInfoDTO>
* @author generator
* @date 2022-05-20
*/
List<HikDeviceInfoDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return HikDeviceInfoDTO
* @author generator
* @date 2022-05-20
*/
HikDeviceInfoDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2022-05-20
*/
void save(HikDeviceInfoDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2022-05-20
*/
void update(HikDeviceInfoDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2022-05-20
*/
void delete(String[] ids);
}

87
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/impl/HikCommunityInfoServiceImpl.java

@ -0,0 +1,87 @@
package com.epmet.plugin.power.modules.hik.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.plugin.power.modules.hik.dao.HikCommunityInfoDao;
import com.epmet.plugin.power.dto.hik.HikCommunityInfoDTO;
import com.epmet.plugin.power.modules.hik.entity.HikCommunityInfoEntity;
import com.epmet.plugin.power.modules.hik.redis.HikCommunityInfoRedis;
import com.epmet.plugin.power.modules.hik.service.HikCommunityInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 海康社区信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Service
public class HikCommunityInfoServiceImpl extends BaseServiceImpl<HikCommunityInfoDao, HikCommunityInfoEntity> implements HikCommunityInfoService {
@Autowired
private HikCommunityInfoRedis hikCommunityInfoRedis;
@Override
public PageData<HikCommunityInfoDTO> page(Map<String, Object> params) {
IPage<HikCommunityInfoEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, HikCommunityInfoDTO.class);
}
@Override
public List<HikCommunityInfoDTO> list(Map<String, Object> params) {
List<HikCommunityInfoEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, HikCommunityInfoDTO.class);
}
private QueryWrapper<HikCommunityInfoEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<HikCommunityInfoEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public HikCommunityInfoDTO get(String id) {
HikCommunityInfoEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, HikCommunityInfoDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(HikCommunityInfoDTO dto) {
HikCommunityInfoEntity entity = ConvertUtils.sourceToTarget(dto, HikCommunityInfoEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(HikCommunityInfoDTO dto) {
HikCommunityInfoEntity entity = ConvertUtils.sourceToTarget(dto, HikCommunityInfoEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

87
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/hik/service/impl/HikDeviceInfoServiceImpl.java

@ -0,0 +1,87 @@
package com.epmet.plugin.power.modules.hik.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.plugin.power.modules.hik.dao.HikDeviceInfoDao;
import com.epmet.plugin.power.dto.hik.HikDeviceInfoDTO;
import com.epmet.plugin.power.modules.hik.entity.HikDeviceInfoEntity;
import com.epmet.plugin.power.modules.hik.redis.HikDeviceInfoRedis;
import com.epmet.plugin.power.modules.hik.service.HikDeviceInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 海康设备信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-20
*/
@Service
public class HikDeviceInfoServiceImpl extends BaseServiceImpl<HikDeviceInfoDao, HikDeviceInfoEntity> implements HikDeviceInfoService {
@Autowired
private HikDeviceInfoRedis hikDeviceInfoRedis;
@Override
public PageData<HikDeviceInfoDTO> page(Map<String, Object> params) {
IPage<HikDeviceInfoEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, HikDeviceInfoDTO.class);
}
@Override
public List<HikDeviceInfoDTO> list(Map<String, Object> params) {
List<HikDeviceInfoEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, HikDeviceInfoDTO.class);
}
private QueryWrapper<HikDeviceInfoEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<HikDeviceInfoEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public HikDeviceInfoDTO get(String id) {
HikDeviceInfoEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, HikDeviceInfoDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(HikDeviceInfoDTO dto) {
HikDeviceInfoEntity entity = ConvertUtils.sourceToTarget(dto, HikDeviceInfoEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(HikDeviceInfoDTO dto) {
HikDeviceInfoEntity entity = ConvertUtils.sourceToTarget(dto, HikDeviceInfoEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

9
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/controller/RentTenantInfoController.java

@ -12,6 +12,7 @@ import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.plugin.power.dto.rent.RentTenantInfoDTO;
import com.epmet.plugin.power.modules.rent.excel.RentTenantInfoExcel;
import com.epmet.plugin.power.modules.rent.service.RentTenantInfoService;
import com.epmet.plugin.power.modules.utils.HkDeviceUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -33,6 +34,9 @@ public class RentTenantInfoController {
@Autowired
private RentTenantInfoService rentTenantInfoService;
@Autowired
private HkDeviceUtil hkDeviceUtil;
@RequestMapping("page")
public Result<PageData<RentTenantInfoDTO>> page(@RequestParam Map<String, Object> params) {
PageData<RentTenantInfoDTO> page = rentTenantInfoService.page(params);
@ -91,5 +95,10 @@ public class RentTenantInfoController {
ExcelUtils.exportExcelToTarget(response, null, list, RentTenantInfoExcel.class);
}
@GetMapping("test")
public Result<String> test(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
return new Result<String>().ok(hkDeviceUtil.getAccessToken());
}
}

1
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/rent/service/RentTenantInfoService.java

@ -106,4 +106,5 @@ public interface RentTenantInfoService extends BaseService<RentTenantInfoEntity>
* @date 2022/4/24 14:08
*/
void deletePhysical(Map<String, Object> params);
}

0
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/.gitkeep

86
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/java/com/epmet/plugin/power/modules/utils/HkDeviceUtil.java

@ -0,0 +1,86 @@
package com.epmet.plugin.power.modules.utils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result;
import com.epmet.plugin.power.config.HikCloudProperties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.Map;
/**
* 海康设备下放命令
*
* @author zhy
* @date 2022/5/20 9:36
*/
@Component
public class HkDeviceUtil {
private static Logger logger = LoggerFactory.getLogger(HkDeviceUtil.class);
@Autowired
private HikCloudProperties hikCloudProperties;
private final String GET_ACCESS_TOKEN = "/oauth/token";
private final String GET_DEVICES = "/api/v1/estate/devices";
private final String GRANT_TYPE = "client_credentials";
/**
* 获取accessToken
*
* @param
* @return void
* @author zhy
* @date 2022/5/20 16:40
*/
public String getAccessToken() {
String url = hikCloudProperties.getUrl().concat(GET_ACCESS_TOKEN);
Map<String, Object> paramsMap = new HashMap<>(8);
paramsMap.put("client_id", hikCloudProperties.getClient());
paramsMap.put("client_secret", hikCloudProperties.getSecret());
paramsMap.put("grant_type", GRANT_TYPE);
// paramsMap.put("scope", "app");
String data = HttpClientManager.getInstance().sendPost(url, paramsMap).getData();
if (null == data) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "AccessToken获取失败");
}
JSONObject toResult = JSON.parseObject(data);
if (!toResult.containsKey("access_token")) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "AccessToken获取失败");
}
return toResult.get("access_token").toString();
}
//
// public String getDevices() {
// String url = hikCloudProperties.getUrl().concat(GET_DEVICES);
// Map<String, Object> paramsMap = new HashMap<>(8);
// paramsMap.put("deviceId", hikCloudProperties.getClient());
//
//
// String data = HttpClientManager.getInstance().sendGet(ThirdApiConstant.THIRD_PAUSER_SAVEUSER, JSON.toJSONString(dto)).getData();
// JSONObject toResult = JSON.parseObject(data);
// Result result = ConvertUtils.mapToEntity(toResult, Result.class);
// if (null != toResult.get("code")) {
// result.setCode(((Integer) toResult.get("code")).intValue());
// }
// if (!result.success()) {
// throw new RenException(PublicUserLoginConstant.SAVE_USER_EXCEPTION);
// }
// Object RegisterResult = result.getData();
// JSONObject jsonObject = JSON.parseObject(RegisterResult.toString());
// SaveUserResultDTO resultDTO = ConvertUtils.mapToEntity(jsonObject, SaveUserResultDTO.class);
//
// }
}

6
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/bootstrap.yml

@ -127,6 +127,12 @@ dingTalk:
webHook: @dingTalk.robot.webHook@
secret: @dingTalk.robot.secret@
hik:
cloud:
url: @hik.cloud.url@
client: @hik.cloud.client@
secret: @hik.cloud.secret@
# 停机选项
shutdown:
graceful:

25
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/hik/HikCommunityInfoDao.xml

@ -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.epmet.plugin.power.modules.hik.dao.HikCommunityInfoDao">
<resultMap type="com.epmet.plugin.power.modules.hik.entity.HikCommunityInfoEntity" id="hikCommunityInfoMap">
<result property="id" column="ID"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="communityId" column="COMMUNITY_ID"/>
<result property="communityName" column="COMMUNITY_NAME"/>
<result property="provinceCode" column="PROVINCE_CODE"/>
<result property="cityCode" column="CITY_CODE"/>
<result property="countyCode" column="COUNTY_CODE"/>
<result property="longitude" column="LONGITUDE"/>
<result property="latitude" column="LATITUDE"/>
</resultMap>
</mapper>

25
epmet-plugins-module/pli-power-base/pli-power-base-server/src/main/resources/mapper/hik/HikDeviceInfoDao.xml

@ -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.epmet.plugin.power.modules.hik.dao.HikDeviceInfoDao">
<resultMap type="com.epmet.plugin.power.modules.hik.entity.HikDeviceInfoEntity" id="hikDeviceInfoMap">
<result property="id" column="ID"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="communityId" column="COMMUNITY_ID"/>
<result property="deviceId" column="DEVICE_ID"/>
<result property="deviceName" column="DEVICE_NAME"/>
<result property="deviceModel" column="DEVICE_MODEL"/>
<result property="deviceSerial" column="DEVICE_SERIAL"/>
<result property="deviceStatus" column="DEVICE_STATUS"/>
<result property="devicePath" column="DEVICE_PATH"/>
</resultMap>
</mapper>
Loading…
Cancel
Save