From f2dfd5e6fbbb9c4e96e91c86be0bb6f7a44d87c3 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期一, 18 四月 2022 11:56:21 +0800
Subject: [PATCH] LED屏列表
---
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java | 31 --
dao/src/main/java/com/sandu/ximon/dao/mapper/PoleLightemitEntityMapper.java | 5
dao/src/main/resources/mapper/LedPlayerEntityMapper.xml | 21 +
dao/src/main/resources/mapper/PoleLightemitEntityMapper.xml | 49 ++-
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java | 153 ++++++-----
dao/src/main/java/com/sandu/ximon/dao/mapper/LedPlayerEntityMapper.java | 4
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java | 433 +++++++--------------------------
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java | 37 +
8 files changed, 269 insertions(+), 464 deletions(-)
diff --git a/dao/src/main/java/com/sandu/ximon/dao/mapper/LedPlayerEntityMapper.java b/dao/src/main/java/com/sandu/ximon/dao/mapper/LedPlayerEntityMapper.java
index 42b09cb..185fd36 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/mapper/LedPlayerEntityMapper.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/mapper/LedPlayerEntityMapper.java
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
+import java.util.List;
+
/**
* @Entity com.sandu.ximon.dao.domain.LedPlayerEntity
*/
@@ -11,6 +13,8 @@
public interface LedPlayerEntityMapper extends BaseMapper<LedPlayerEntity> {
boolean saveLed(LedPlayerEntity ledPlayerEntity);
+
+ List<LedPlayerEntity> ledPlayerEntityList(String keyword, Long userid);
}
diff --git a/dao/src/main/java/com/sandu/ximon/dao/mapper/PoleLightemitEntityMapper.java b/dao/src/main/java/com/sandu/ximon/dao/mapper/PoleLightemitEntityMapper.java
index 95580da..66dd645 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/mapper/PoleLightemitEntityMapper.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/mapper/PoleLightemitEntityMapper.java
@@ -5,6 +5,8 @@
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
/**
* @Entity com.sandu.ximon.dao.domain.PoleLightemitEntity
*/
@@ -13,8 +15,11 @@
void updateRequestBody(@Param("ledCode")String ledCode, @Param("postBody")String postBody);
+
+ List<PoleLightemitEntity> listLed(String keyword, Long userid);
}
+
diff --git a/dao/src/main/resources/mapper/LedPlayerEntityMapper.xml b/dao/src/main/resources/mapper/LedPlayerEntityMapper.xml
index b8e8260..3e43ce2 100644
--- a/dao/src/main/resources/mapper/LedPlayerEntityMapper.xml
+++ b/dao/src/main/resources/mapper/LedPlayerEntityMapper.xml
@@ -22,4 +22,25 @@
insert into led (player_name, player_id, sn, create_timestamp)
values (#{playerName}, #{playerId}, #{sn}, #{createTimestamp})
</insert>
+
+ <select id="ledPlayerEntityList" resultType="com.sandu.ximon.dao.domain.LedPlayerEntity">
+ SELECT
+ t1.*, t2.pole_id,
+ t3.pole_name, t3.id
+ FROM
+ led t1
+ LEFT JOIN pole_binding t2 ON t1.sn = t2.device_code
+ AND t2.device_type = 1
+ LEFT JOIN pole t3 ON t3.id = t2.pole_id
+ <where>
+ <if test="keyword != null and keyword != ''">
+ AND t1.name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ OR t1.sn LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ OR t1.id LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ </if>
+ <if test="userid != null">
+ AND (t3.user_id = #{userid} OR t3.client_id = #{userid})
+ </if>
+ </where>
+ </select>
</mapper>
diff --git a/dao/src/main/resources/mapper/PoleLightemitEntityMapper.xml b/dao/src/main/resources/mapper/PoleLightemitEntityMapper.xml
index c7147d0..f736cc0 100644
--- a/dao/src/main/resources/mapper/PoleLightemitEntityMapper.xml
+++ b/dao/src/main/resources/mapper/PoleLightemitEntityMapper.xml
@@ -5,20 +5,20 @@
<mapper namespace="com.sandu.ximon.dao.mapper.PoleLightemitEntityMapper">
<resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.PoleLightemitEntity">
- <id property="lightemitId" column="lightemit_id" jdbcType="BIGINT"/>
- <result property="lightemitName" column="lightemit_name" jdbcType="VARCHAR"/>
- <result property="lightemitControlCode" column="lightemit_control_code" jdbcType="VARCHAR"/>
- <result property="url" column="url" jdbcType="VARCHAR"/>
- <result property="playTime" column="play_time" jdbcType="INTEGER"/>
- <result property="addTime" column="add_time" jdbcType="TIMESTAMP"/>
- <result property="requestBody" column="request_body" jdbcType="VARCHAR"/>
- <result property="playerSetting" column="player_setting" jdbcType="TINYINT"/>
- <result property="status" column="status" jdbcType="TINYINT"/>
- <result property="remark" column="remark" jdbcType="VARCHAR"/>
- <result property="createUserId" column="create_user_id" jdbcType="BIGINT"/>
- <result property="clientId" column="client_id" jdbcType="BIGINT"/>
- <result property="userId" column="user_id" jdbcType="BIGINT"/>
- <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+ <id property="lightemitId" column="lightemit_id" jdbcType="BIGINT"/>
+ <result property="lightemitName" column="lightemit_name" jdbcType="VARCHAR"/>
+ <result property="lightemitControlCode" column="lightemit_control_code" jdbcType="VARCHAR"/>
+ <result property="url" column="url" jdbcType="VARCHAR"/>
+ <result property="playTime" column="play_time" jdbcType="INTEGER"/>
+ <result property="addTime" column="add_time" jdbcType="TIMESTAMP"/>
+ <result property="requestBody" column="request_body" jdbcType="VARCHAR"/>
+ <result property="playerSetting" column="player_setting" jdbcType="TINYINT"/>
+ <result property="status" column="status" jdbcType="TINYINT"/>
+ <result property="remark" column="remark" jdbcType="VARCHAR"/>
+ <result property="createUserId" column="create_user_id" jdbcType="BIGINT"/>
+ <result property="clientId" column="client_id" jdbcType="BIGINT"/>
+ <result property="userId" column="user_id" jdbcType="BIGINT"/>
+ <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_Column_List">
@@ -33,4 +33,25 @@
SET request_body = #{postBody}
WHERE lightemit_control_code = #{ledCode}
</update>
+
+ <select id="listLed" resultType="com.sandu.ximon.dao.domain.PoleLightemitEntity">
+ SELECT
+ t1.*, t2.pole_id,
+ t3.pole_name as streetlight_name , t3.id
+ FROM
+ pole_lightemit t1
+ LEFT JOIN pole_binding t2 ON t1.lightemit_control_code = t2.device_code
+ AND t2.device_type = 1
+ LEFT JOIN pole t3 ON t3.id = t2.pole_id
+ <where>
+ <if test="keyword != null and keyword != ''">
+ AND t1.lightemit_name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ OR t1.lightemit_control_code LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ OR t1.lightemit_id LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ </if>
+ <if test="userid != null">
+ AND (t3.user_id = #{userid} OR t3.client_id = #{userid})
+ </if>
+ </where>
+ </select>
</mapper>
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
index 96b6c1c..75668f4 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/VnnoxController.java
@@ -140,36 +140,7 @@
if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
}
- PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
- LambdaQueryWrapper<LedPlayerEntity> wrapper = Wrappers.lambdaQuery(LedPlayerEntity.class);
- if (AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
- //wrapper.eq(LedPlayerEntity::get)
- return ResponseUtil.success(""); // todo
- } else {
- wrapper.like(LedPlayerEntity::getPlayerName, keyword)
- .or(
- querywrapper -> {
- querywrapper.like(LedPlayerEntity::getName, keyword);
- }
- ).or(
- sn->{
- sn.like(LedPlayerEntity::getSn,keyword);
- }
- );
- List<LedPlayerEntity> list = ledPlayerEntityService.list(wrapper);
- List<LedPlayerEntity> entities = vnnoxService.setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
- entities.forEach(
- led -> {
- PoleBinding binding = bindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class)
- .eq(PoleBinding::getDeviceType, 1).eq(PoleBinding::getDeviceCode, led.getSn()));
- if (binding != null) {
- led.setPoleId(poleService.getById(binding.getPoleId()).getId());
- led.setPoleName(poleService.getById(binding.getPoleId()).getPoleName());
- }
- }
- );
- return ResponseUtil.success(entities);
- }
+ return ResponseUtil.successPage(ledPlayerEntityService.ledPlayerEntityList(baseConditionVO, keyword));
}
@GetMapping("/onLineList")
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
index c572062..db591c3 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -216,77 +216,90 @@
@GetMapping("/listLed")
public ResponseVO<Object> listLed(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword,
@RequestParam(value = "isOnLine", required = false) boolean isOnLine) {
- if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
- return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+
+ List<PoleLightemitEntity> poleLightemitEntityList = poleLightemitService.listLed(keyword, isOnLine);
+
+ CommonPage commonPage = CommonPage.restPage(poleLightemitEntityList);
+ int size = poleLightemitEntityList.size();
+ commonPage.setTotal((long) size);
+ commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
+ if (size % baseConditionVO.getPageSize() == 0) {
+ commonPage.setTotalPage(size / baseConditionVO.getPageSize());
}
- PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
- LambdaQueryWrapper<PoleLightemitEntity> wrapper = Wrappers.lambdaQuery(PoleLightemitEntity.class);
- if (AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
- boolean clientId = clientService.findClientId();
- if (clientId) {
- wrapper = wrapper.eq(PoleLightemitEntity::getUserId, SecurityUtils.getUserId());
- }
- wrapper = wrapper.eq(PoleLightemitEntity::getClientId, clientService.getClientId());
- }
- wrapper = Wrappers.lambdaQuery(PoleLightemitEntity.class);
- if (StrUtil.isNotBlank(keyword)) {
- wrapper.like(PoleLightemitEntity::getLightemitName, keyword).or(
- lambdaQueryWrapper -> {
- lambdaQueryWrapper.like(PoleLightemitEntity::getLightemitControlCode, keyword);
- }
- );
- }
- List<PoleBinding> bindings = bindingService.list(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceType, 1));
- List<PoleLightemitEntity> list = poleLightemitService.list(wrapper);
- if (isOnLine) {
- List<PoleLightemitEntity> results = poleLightemitService.ledOnline(list);
- results.forEach(
- led -> {
- bindings.forEach(
- bind -> {
- if (bind.getDeviceCode() != null && led.getLightemitControlCode() == bind.getDeviceCode()) {
- led.setStreetlightId(bind.getPoleId());
- System.out.println("鏈夋病鏈夎繍琛屽埌杩欓噷?---------------" + bind.getPoleId());
- led.setStreetlightName(poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, bind.getPoleId())).getPoleName());
- }
- }
- );
- }
- );
- CommonPage commonPage = CommonPage.restPage(results);
- int size = results.size();
- commonPage.setTotal((long) size);
- commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
- if (size % baseConditionVO.getPageSize() == 0) {
- commonPage.setTotalPage(size / baseConditionVO.getPageSize());
- }
- return ResponseUtil.success(commonPage);
- } else {
- poleLightemitService.ledOnlineCheck(list);
- list.forEach(
- led -> {
- bindings.forEach(
- bind -> {
- if (bind.getDeviceCode() != null && led.getLightemitControlCode().equals(bind.getDeviceCode())) {
- led.setStreetlightId(bind.getPoleId());
- System.out.println("鏈夋病鏈夎繍琛屽埌杩欓噷?---------------" + bind.getPoleId());
- led.setStreetlightName(poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, bind.getPoleId())).getPoleName());
- }
- }
- );
- }
- );
- CommonPage commonPage = CommonPage.restPage(list);
- int size = list.size();
- commonPage.setTotal((long) size);
- commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
- if (size % baseConditionVO.getPageSize() == 0) {
- commonPage.setTotalPage(size / baseConditionVO.getPageSize());
- }
- return ResponseUtil.success(commonPage);
- // return ResponseUtil.success(list);
- }
-// return ResponseUtil.success(poleLightemitService.list(wrapper));
+ return ResponseUtil.success(commonPage);
+
+
+// if (!permissionConfig.check(MenuEnum.LED_LIST.getCode())) {
+// return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+// }
+// PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+// LambdaQueryWrapper<PoleLightemitEntity> wrapper = Wrappers.lambdaQuery(PoleLightemitEntity.class);
+// if (AdministratorEnums.CUSTOMER.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
+// boolean clientId = clientService.findClientId();
+// if (clientId) {
+// wrapper = wrapper.eq(PoleLightemitEntity::getUserId, SecurityUtils.getUserId());
+// }
+// wrapper = wrapper.eq(PoleLightemitEntity::getClientId, clientService.getClientId());
+// }
+// wrapper = Wrappers.lambdaQuery(PoleLightemitEntity.class);
+// if (StrUtil.isNotBlank(keyword)) {
+// wrapper.like(PoleLightemitEntity::getLightemitName, keyword).or(
+// lambdaQueryWrapper -> {
+// lambdaQueryWrapper.like(PoleLightemitEntity::getLightemitControlCode, keyword);
+// }
+// );
+// }
+// List<PoleBinding> bindings = bindingService.list(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceType, 1));
+// List<PoleLightemitEntity> list = poleLightemitService.list(wrapper);
+// if (isOnLine) {
+// List<PoleLightemitEntity> results = poleLightemitService.ledOnline(list);
+// results.forEach(
+// led -> {
+// bindings.forEach(
+// bind -> {
+// if (bind.getDeviceCode() != null && led.getLightemitControlCode() == bind.getDeviceCode()) {
+// led.setStreetlightId(bind.getPoleId());
+// System.out.println("鏈夋病鏈夎繍琛屽埌杩欓噷?---------------" + bind.getPoleId());
+// led.setStreetlightName(poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, bind.getPoleId())).getPoleName());
+// }
+// }
+// );
+// }
+// );
+// CommonPage commonPage = CommonPage.restPage(results);
+// int size = results.size();
+// commonPage.setTotal((long) size);
+// commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
+// if (size % baseConditionVO.getPageSize() == 0) {
+// commonPage.setTotalPage(size / baseConditionVO.getPageSize());
+// }
+// return ResponseUtil.success(commonPage);
+// } else {
+// poleLightemitService.ledOnlineCheck(list);
+// list.forEach(
+// led -> {
+// bindings.forEach(
+// bind -> {
+// if (bind.getDeviceCode() != null && led.getLightemitControlCode().equals(bind.getDeviceCode())) {
+// led.setStreetlightId(bind.getPoleId());
+// System.out.println("鏈夋病鏈夎繍琛屽埌杩欓噷?---------------" + bind.getPoleId());
+// led.setStreetlightName(poleService.getOne(Wrappers.lambdaQuery(Pole.class).eq(Pole::getId, bind.getPoleId())).getPoleName());
+// }
+// }
+// );
+// }
+// );
+// CommonPage commonPage = CommonPage.restPage(list);
+// int size = list.size();
+// commonPage.setTotal((long) size);
+// commonPage.setTotalPage(size / baseConditionVO.getPageSize() + 1);
+// if (size % baseConditionVO.getPageSize() == 0) {
+// commonPage.setTotalPage(size / baseConditionVO.getPageSize());
+// }
+// return ResponseUtil.success(commonPage);
+// // return ResponseUtil.success(list);
+// }
+//// return ResponseUtil.success(poleLightemitService.list(wrapper));
}
/**
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
index 3a221d7..445080b 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
@@ -1,10 +1,14 @@
package com.sandu.ximon.admin.service;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.pagehelper.PageHelper;
+import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.common.util.SpringContextHolder;
+import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.VnnoxAPIUtil;
import com.sandu.ximon.dao.domain.LedPlayerEntity;
+import com.sandu.ximon.dao.domain.PoleBinding;
import com.sandu.ximon.dao.mapper.LedPlayerEntityMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
@@ -25,14 +29,15 @@
private final LedPlayerEntityMapper ledPlayerEntityMapper;
private VnnoxAPIUtil vnnoxAPIUtil;
- public LedPlayerEntity getBySn(String sn){
+ public LedPlayerEntity getBySn(String sn) {
return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, sn));
}
- public LedPlayerEntity getByPlayerId(String playerId){
- return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getPlayerId,playerId));
+
+ public LedPlayerEntity getByPlayerId(String playerId) {
+ return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getPlayerId, playerId));
}
- public boolean saveLed(LedPlayerEntity ledPlayerEntity){
+ public boolean saveLed(LedPlayerEntity ledPlayerEntity) {
return ledPlayerEntityMapper.saveLed(ledPlayerEntity);
}
@@ -40,26 +45,34 @@
/**
* 璇虹摝纭欢璁惧
*/
- public LedPlayerEntity getBySnAndPlayerSn(String sn){
+ public LedPlayerEntity getBySnAndPlayerSn(String sn) {
LedPlayerEntity one = getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, sn));
- if(one==null){
+ if (one == null) {
throw new RuntimeException("璇虹摝璁惧涓嶅瓨鍦�");
}
- List list=new ArrayList();
+ List list = new ArrayList();
list.add(one);
List<LedPlayerEntity> led = vnnoxAPIUtil.syncCurrentInfo(list);
Map<String, String> screenShotUrl = SpringContextHolder.getBean(VnnoxService.class).getScreenShotUrl(one.getId().intValue());
- if(screenShotUrl.get("code").equals("200")){
+ if (screenShotUrl.get("code").equals("200")) {
one.setScreenShotUrl(screenShotUrl.get("url"));
- }else {
+ } else {
one.setScreenShotUrl("缂╃暐鍥捐幏鍙栧け璐�");
}
return one;
}
-
-
-
+ public List<LedPlayerEntity> ledPlayerEntityList(BaseConditionVO baseConditionVO, String keyword) {
+ PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+ List<LedPlayerEntity> list;
+ //瓒呯
+ if (SecurityUtils.getClientId() == null) {
+ list = ledPlayerEntityMapper.ledPlayerEntityList(keyword, null);
+ } else {
+ list = ledPlayerEntityMapper.ledPlayerEntityList(keyword, SecurityUtils.getUserId());
+ }
+ return SpringContextHolder.getBean(VnnoxService.class).setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
+ }
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
index bb903df..c76fa4e 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleLightemitService.java
@@ -2,13 +2,16 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.pagehelper.PageHelper;
import com.google.gson.Gson;
import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.admin.config.NginxConfigBean;
import com.sandu.ximon.admin.config.RealtimeServerBean;
import com.sandu.ximon.admin.entity.*;
import com.sandu.ximon.admin.param.PoleBindingParam;
+import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.Constant;
import com.sandu.ximon.admin.utils.FileUtil;
import com.sandu.ximon.admin.utils.HtmlTemplateUtils;
@@ -38,8 +41,6 @@
@Autowired
private PoleBindingService poleBindingService;
- // @Autowired
-// PoleStreetlightLightemitService poleStreetlightLightemitService;
LightemitUtils lightemitUtils;
@Autowired
@@ -48,10 +49,6 @@
private String port;
@Autowired
ApplicationContext applicationContext;
- // @Autowired
-// FfmpegUtils ffmpegUtils;
-// @Autowired
-// FileUploadPathBean fileUploadPathBean;
@Autowired
NginxConfigBean nginxConfigBean;
@@ -64,127 +61,28 @@
lightemitUtils = applicationContext.getBean(LightemitUtils.class);
}
- /*@Override
- public PageUtils queryPage(Map<String, Object> params, Long userId) {
-
- String key = (String)params.get("key");
-
- Long groupId = StringUtils.isNotBlank((String)params.get("group"))? Long.valueOf((String)params.get("group")): null;
-
- String order = (String)params.get("order");
-
- String column = (String)params.get("sortby");
-
- IPage<PoleLightemitEntity> page = new Page<>();
- //鑾峰彇瑙掕壊鍒楄〃
- Long roleId = (sysUserRoleService.queryRoleId(userId));
-
- if(roleId == null || roleId == 0){
- return null;
+ /**
+ * 鐔欒list
+ *
+ * @param keyword
+ * @param isOnLine
+ * @return
+ */
+ public List<PoleLightemitEntity> listLed(String keyword, boolean isOnLine) {
+ List<PoleLightemitEntity> poleLightemitEntityList;
+ //瓒呯
+ if (SecurityUtils.getClientId() == null) {
+ poleLightemitEntityList = poleLightemitDao.listLed(keyword, null);
+ } else {
+ poleLightemitEntityList = poleLightemitDao.listLed(keyword, SecurityUtils.getUserId());
}
-
- if(roleId.longValue() == Constant.SUPER_ADMIN){
-// page = this.page(
-// new Query<PoleLightemitEntity>().getPage(params),
-// new QueryWrapper<PoleLightemitEntity>().like(StringUtils.isNotBlank(key),"lightemit_name", key));
- if (order != null && order.equals("ASC") && column.equals("isOpen")) {
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.superAdminSelectPageVo(PageTransform.transformPage(params),key,groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(true)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else if (order != null && order.equals("DESC") && column.equals("isOpen")){
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.superAdminSelectPageVo(PageTransform.transformPage(params),key,groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(false)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else {
- page = baseMapper.superAdminSelectPageVo(PageTransform.transformPage(params), key, groupId,order,column);
- }
-
- }else if(roleId.longValue() == Constant.ADMIN){
- if (order != null && order.equals("ASC") && column.equals("isOpen")) {
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.adminSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(true)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else if (order != null && order.equals("DESC") && column.equals("isOpen")){
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.adminSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(false)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else {
- page = baseMapper.adminSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- }
-
- }else if(roleId.longValue() == Constant.USER){
- if (order != null && order.equals("ASC") && column.equals("isOpen")) {
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.userSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(true)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else if (order != null && order.equals("DESC") && column.equals("isOpen")){
- Map<String, Object> map = new HashMap<>();
- Integer pg = 1;
- Integer size = 200;
- map.put("page",pg);
- params.put("limit",size);
- page = baseMapper.userSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- ledOnlineCheck(page.getRecords());
- page.setRecords(page.getRecords().stream().filter(h-> h.getIsOpen().equals(false)).collect(Collectors.toList()));
- return new PageUtils(page);
- }else {
- page = baseMapper.userSelectPageVo(PageTransform.transformPage(params), userId, key, groupId,order,column);
- }
-
+ if (isOnLine) {
+ return ledOnline(poleLightemitEntityList);
+ } else {
+ ledOnlineCheck(poleLightemitEntityList);
+ return poleLightemitEntityList;
}
- ledOnlineCheck(page.getRecords());
- return new PageUtils(page);
}
-*//*
- @Override
- public List<PoleLightemitEntity> getAll(Long userId) {
- //鑾峰彇瑙掕壊鍒楄〃
- Long roleId = (sysUserRoleService.queryRoleId(userId));
-
- if(roleId == null || roleId == 0){
- return null;
- }
- List<PoleLightemitEntity> list = null;
- if(roleId.longValue() == Constant.SUPER_ADMIN){
- list = poleLightemitDao.selectAll();
- }else if(roleId.longValue() == Constant.ADMIN){
- list = poleLightemitDao.selectAllByCompany(userId);
- }else if(roleId.longValue() == Constant.USER){
- list = poleLightemitDao.selectAllByUser(userId);
- }
- return list;
- }
-*/
public List<PoleLightemitEntity> ledOnline(List<PoleLightemitEntity> list) {
List<PoleLightemitEntity> onLineList = new ArrayList<>();
@@ -208,16 +106,17 @@
/**
* 鏌ヨ鍗曚釜LED
+ *
* @param lightControlCode
* @return
*/
public PoleLightemitEntity getLedByLightControlCode(String lightControlCode) {
PoleLightemitEntity xiXun = getOne(Wrappers.lambdaQuery(PoleLightemitEntity.class).eq(PoleLightemitEntity::getLightemitControlCode, lightControlCode));
- if(xiXun==null){
+ if (xiXun == null) {
return null;
}
String isScreenOpen = lightemitUtils.getIsScreenOpen(xiXun.getLightemitControlCode());
- if(isScreenOpen.contains("true")){
+ if (isScreenOpen.contains("true")) {
xiXun.setIsOpen(true);
}
xiXun.setIsOpen(false);
@@ -282,40 +181,13 @@
}
/**
- * 鏌ヨ鏉冮檺鑼冨洿鍐呯殑鎵�鏈塴ed灞忎俊鎭�
+ * led涓婁紶鍥剧墖
*
- * @param
- * @return
- */
- /* public List<PoleLightemitEntity> selectLightemitByUserId(Long userId) {
- List<PoleLightemitEntity> list = new ArrayList<>();
-
- Long roleId = sysUserRoleService.queryRoleId(userId);
-
- if(roleId == null || roleId == 0){
- return new ArrayList<>();
- }
- if(roleId.longValue() == Constant.SUPER_ADMIN){
- list = this.list();
- }else if(roleId.longValue() == Constant.ADMIN){
- list = baseMapper.selectCompanyLightemitByUserId(userId);
- }else if(roleId.longValue() == Constant.USER){
- list = baseMapper.selectLightemitByUserId(userId);
- }
- return list;
- }
-*/
- /*
- 閫氳繃灞忓箷缂栫爜鏌ヨ
- */
- public PoleLightemitEntity selectByLightemitControlCode(String lightemitControlCode) {
- QueryWrapper<PoleLightemitEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("lightemit_control_code", lightemitControlCode);
- return this.getOne(queryWrapper);
- }
-
- /*
- led涓婁紶鍥剧墖
+ * @param lightemitControlCode
+ * @param path
+ * @param filenameList
+ * @param userName
+ * @throws IOException
*/
@Async("taskExecutor")
public void photoUpload(String lightemitControlCode, String path, List<String> filenameList, String userName) throws IOException {
@@ -352,10 +224,15 @@
}
}
- /*
- led涓婁紶瑙嗛
+ /**
+ * led涓婁紶瑙嗛
+ *
+ * @param lightemitControlCode
+ * @param filename
+ * @param path
+ * @param userName
+ * @throws IOException
*/
-
@Async("taskExecutor")
public void videoUpload(String lightemitControlCode, String filename, String path, String userName) throws IOException {
//鑾峰彇灞忓箷瀹�
@@ -405,21 +282,6 @@
}
}
- /*
- 鍒犻櫎
- */
-
- /* public void deleteByIds(List<Long> lightemitIds) {
- this.removeByIds(lightemitIds);
- //鍒犻櫎鍏崇郴琛ㄤ腑鐨勬暟鎹�
- poleStreetlightLightemitService.remove(
- new UpdateWrapper<PoleStreetlightLightemitEntity>().in("lightemit_id", lightemitIds.toArray()));
- }*/
-
- /*
- 鐔欒瑙嗛璁剧疆
- */
-
@Async("taskExecutor")
public void videoXixunPlayer(String lightemitControlCode, String ip, String filename, Long filesize, Integer videoTime) {
//鑾峰彇灞忓箷瀹�
@@ -432,13 +294,20 @@
ProgramsTask task = new ProgramsTask();
Command command = new Command();
XixunPlayer xixun = new XixunPlayer();
- source.set_id(UUID.randomUUID().toString());//鎵�鏈塤id閮藉彲鐢║UID闅忔満鐢熸垚
- source.setId(filename);//璇锋眰澶存嫾鎺ヨID涓鸿璧勬簮鐨勫畬鏁翠笅杞藉湴鍧�
- source.set_type("Video"); //璁剧疆璧勬簮绫诲瀷锛屽叾浠栬祫婧愮被鍨嬭鍙傝�儀ixunplayer鑺傜洰json璇存槑鏂囨。
- source.setFileExt(".mp4"); //璧勬簮鍚庣紑鍚�
- source.setHeight(screenHeight); //璧勬簮楂樺害
- source.setWidth(screenWidth); //璧勬簮瀹藉害
- source.setLeft(0); //璺濆乏
+ //鎵�鏈塤id閮藉彲鐢║UID闅忔満鐢熸垚
+ source.set_id(UUID.randomUUID().toString());
+ //璇锋眰澶存嫾鎺ヨID涓鸿璧勬簮鐨勫畬鏁翠笅杞藉湴鍧�
+ source.setId(filename);
+ //璁剧疆璧勬簮绫诲瀷锛屽叾浠栬祫婧愮被鍨嬭鍙傝�儀ixunplayer鑺傜洰json璇存槑鏂囨。
+ source.set_type("Video");
+ //璧勬簮鍚庣紑鍚�
+ source.setFileExt(".mp4");
+ //璧勬簮楂樺害
+ source.setHeight(screenHeight);
+ //璧勬簮瀹藉害
+ source.setWidth(screenWidth);
+ //璺濆乏
+ source.setLeft(0);
source.setMd5("dd135d5d2d44d619a542db773ab529a4");
source.setMime("video/mp4");
source.setName(filename);
@@ -483,112 +352,54 @@
lightemitUtils.post(realtimeServerBean.getCommand() + lightemitControlCode, jsondata);
}
- /*
- 鎺ㄩ�佸ぉ姘旀暟鎹�
+ /**
+ * 鏇存柊璇锋眰鏁版嵁
+ *
+ * @param ledCode
+ * @param postBody
*/
-
- //@Async("taskExecutor")
- /* public Boolean pushWeather(String lightemitControlCode, PoleSensorEntity sensorEntity, PoleStreetlightEntity streetlightEntity) {
- if(StringUtils.isBlank(lightemitControlCode)){
- return Boolean.valueOf(false);
- }
- Integer screenHeight = Integer.parseInt(lightemitUtils.getScreenHeight(lightemitControlCode));
- String size = String.valueOf(screenHeight/18);
- //瀛楀箷涓讳綋鎷兼帴
- String body =
- "<head><style type=\"text/css\">body{background-color:#000;}</style></head>" +
- "<p style=\"font-size:" + size + "px;line-height:17px;color:#fff\">" +
- (streetlightEntity == null || streetlightEntity.getCity() == null? "": streetlightEntity.getCity().replace("甯�", "")) + "<br/>" +
- "娓╁害锛�" + (sensorEntity == null || sensorEntity.getTemperature() == null? "-": sensorEntity.getTemperature()) + "鈩�<br/>" +
- "婀垮害锛�" + (sensorEntity == null || sensorEntity.getHumidity() == null? "-": sensorEntity.getHumidity()) + "%RH<br/>" +
- "浜害锛�" + (sensorEntity == null || sensorEntity.getBrightness() == null? "-": sensorEntity.getBrightness()) + "lux<br/>" +
- "椋庨�燂細" + (sensorEntity == null || sensorEntity.getWindSpeed() == null? "-": sensorEntity.getWindSpeed()) + "m/s<br/>" +
- "CO2锛�" + (sensorEntity == null || sensorEntity.getEco2() == null? "-": sensorEntity.getEco2()) + "ppm<br/>" +
- "鐢查啗锛�" + (sensorEntity == null || sensorEntity.getEch2o() == null? "-": sensorEntity.getEch2o()) + "mg/m鲁<br/>" +
- "TVOC锛�" + (sensorEntity == null || sensorEntity.getTvoc() == null? "-": sensorEntity.getTvoc()) + "mg/m鲁<br/>" +
- "PM25锛�" + (sensorEntity == null || sensorEntity.getPm25() == null? "-": sensorEntity.getPm25()) + "mg/m鲁<br/>" +
- "PM10锛�" + (sensorEntity == null || sensorEntity.getPm10() == null? "-": sensorEntity.getPm10()) + "mg/m鲁<br/>";
-
- //缁勮璇锋眰鍙傛暟
- SubTitleSet subTitleSet = new SubTitleSet();
- subTitleSet.html = body;
- subTitleSet.num = 1;
-
- //娓呭睆鎿嶄綔
- lightemitUtils.clear(lightemitControlCode);
- //娓呴櫎鎾斁鍒楄〃
- lightemitUtils.clearVideoPlay(lightemitControlCode);
- //娓呴櫎鑺傜洰鍒楄〃
- lightemitUtils.clearPlayerTask(lightemitControlCode);
- try{
- lightemitUtils.subTitleSet(subTitleSet, lightemitControlCode, false);
- return true;
- }catch (Exception e){
- return false;
- }finally {
- //涓�鍒嗛挓鍚庢竻闄ゅ睆骞�
- new Timer().schedule(new TimerTask() {
- @Override
- public void run() {
- lightemitUtils.clear(lightemitControlCode);
- //娓呴櫎鎾斁鍒楄〃
- lightemitUtils.clearVideoPlay(lightemitControlCode);
- //娓呴櫎鑺傜洰鍒楄〃
- lightemitUtils.clearPlayerTask(lightemitControlCode);
- //鎺ㄩ�佹渶鍚庡懡浠�
- lightemitUtils.sendLastCommand(lightemitControlCode);
- }
- }, 60*1000);
- }
- }*/
-
- /*
- 鏇存柊璇锋眰鏁版嵁
- */
-
public void updateRequestBody(String ledCode, String postBody) {
baseMapper.updateRequestBody(ledCode, postBody);
}
- /*
- 鏍规嵁led灞忕紪鐮佽幏鍙栫伅鏉嗘墍鏈変俊鎭�
- */
-
+// /**
+// * 鏍规嵁led灞忕紪鐮佽幏鍙栫伅鏉嗘墍鏈変俊鎭�
+// *
+// * @param ledCode
+// * @return
+// */
// public PoleStreetlightEntity getStreetlightByLedCode(String ledCode) {
// return baseMapper.getStreetlightByLedCode(ledCode);
// }
- /*
- 鏍规嵁led灞忕紪鐮佽缃煶閲�
- */
+ /**
+ * 鏍规嵁led灞忕紪鐮佽缃煶閲�
+ *
+ * @param lightemitControlCode
+ * @param volume
+ */
@Async("taskExecutor")
public void setVolume(String lightemitControlCode, Integer volume) {
lightemitUtils.setVoiume(lightemitControlCode, volume);
}
- /*
- 鏍规嵁led灞忕紪鐮佽缃煶閲�
- */
+ /**
+ * 鏍规嵁led灞忕紪鐮佽缃煶閲�
+ *
+ * @param lightemitControlCode
+ * @param brightness
+ */
@Async("taskExecutor")
public void setBrightness(String lightemitControlCode, Integer brightness) {
lightemitUtils.setBrightness(lightemitControlCode, brightness);
}
-
-
-// public List<PoleLightemitEntity> listOfStreetlight(String streetlightId) {
-// return baseMapper.listOfStreetlight(streetlightId);
-// }
-
-
-// public List<PoleLightemitEntity> selectLedByStreetlightId(String streetlightId) {
-// return baseMapper.getLedByStreetlightId(streetlightId);
-// }
-
- /*
- 涓婁紶姘村钩婊氬姩鍗曡瀛楀箷
- */
+ /**
+ * 涓婁紶姘村钩婊氬姩鍗曡瀛楀箷
+ *
+ * @param subTitleSetEntity
+ */
private void BuildHorizonSingSubTitleText(SubTitleSetEntity subTitleSetEntity) {
//鎷艰LED灞忓箷璁剧疆璇锋眰body
SubTitleSet subTitleSet = new SubTitleSet();
@@ -624,8 +435,13 @@
}
}
- /*
- 涓婁紶鍨傜洿婊氬姩鍗曡瀛楀箷
+ /**
+ * 涓婁紶鍨傜洿婊氬姩鍗曡瀛楀箷
+ *
+ * @param subTitleSetEntity
+ * @param path
+ * @param userName
+ * @throws IOException
*/
private void BuildVerticalSingSubTitleText(SubTitleSetEntity subTitleSetEntity, String path, String userName) throws IOException {
//html鍦板潃
@@ -684,9 +500,13 @@
}
}
-
- /*
- 涓婁紶鍨傜洿婊氬姩澶氳瀛楀箷
+ /**
+ * 涓婁紶鍨傜洿婊氬姩澶氳瀛楀箷
+ *
+ * @param subTitleSetEntity
+ * @param path
+ * @param userName
+ * @throws IOException
*/
private void BuildVerticalMultiSubTitleText(SubTitleSetEntity subTitleSetEntity, String path, String userName) throws IOException {
//html鍦板潃
@@ -738,68 +558,5 @@
}
}
}
- }
-
- // @Override
- public void xixunplaySetting(String lightemitControlCode) {
- //鑾峰彇灞忓箷瀹�
-// Integer screenWidth = Integer.valueOf(lightemitUtils.getScreenWidth(lightemitControlCode));
-// Integer screenHeight = Integer.valueOf(lightemitUtils.getScreenHeight(lightemitControlCode));
-// Source source = new Source();
-// Layer layer = new Layer();
-// Program pro = new Program();
-// TaskItem items = new TaskItem();
-// ProgramsTask task = new ProgramsTask();
-// Command payload = new Command();
-// XixunPlayer xixun = new XixunPlayer();
-// source.set_id(UUID.randomUUID().toString());//鎵�鏈塤id閮藉彲鐢║UID闅忔満鐢熸垚
-// source.setId(filename);//璇锋眰澶存嫾鎺ヨID涓鸿璧勬簮鐨勫畬鏁翠笅杞藉湴鍧�
-// source.set_type("Video"); //璁剧疆璧勬簮绫诲瀷锛屽叾浠栬祫婧愮被鍨嬭鍙傝�儀ixunplayer鑺傜洰json璇存槑鏂囨。
-// source.setFileExt(".mp4"); //璧勬簮鍚庣紑鍚�
-// source.setHeight(screenHeight); //璧勬簮楂樺害
-// source.setWidth(screenWidth); //璧勬簮瀹藉害
-// source.setLeft(0); //璺濆乏
-// source.setMd5("dd135d5d2d44d619a542db773ab529a4");
-// source.setMime("video/mp4");
-// source.setName(filename);
-// source.setPlayTime(0); //鎾斁璧峰鏃堕棿
-// source.setSize(filesize); //璧勬簮瀛楄妭鏁帮紝瑕佺簿鍑�
-// source.setTimeSpan(videoTime); //璇ヨ祫婧愭挱鏀炬椂闀�
-// source.setTop(0); //璺濋《
-// List<Source> list = new ArrayList<Source>();
-// list.add(source);
-// layer.setSources(list);
-// pro.set_id(UUID.randomUUID().toString());
-// pro.setHeight(screenHeight); //鑺傜洰楂樺害
-// List<Layer> list1=new ArrayList<Layer>();
-// list1.add(layer);
-// pro.setLayers(list1);
-// pro.setName("demo"); //鑺傜洰鍚嶇О
-// pro.setOthers(true);//濡傛灉涓簍rue锛屽垯璇ヨ妭鐩潵鑷涓夋柟鎺ュ彛锛屼笉鏄潵鑷垜浠嚜宸辩殑web锛屼簩娆″紑鍙戣鍔″繀璧嬪�间负true
-// pro.setTotalSize(filesize); //鎵�鏈夎祫婧愭�诲瓧鑺傛暟
-// pro.setVersion(0); //楂樼骇鑺傜洰=0锛岀畝鏄撹妭鐩�=2
-// pro.setWidth(screenWidth); //鑺傜洰瀹藉害
-// items.set_id(UUID.randomUUID().toString());
-// items.set_program(pro);
-// items.setRepeatTimes(1);
-// items.setSchedules(null);//瀹氭椂娈碉紝涓嶅仛瀹氭椂鍙负null
-// task.set_id(UUID.randomUUID().toString());
-// task.setName("杩欐槸涓�涓ず渚�");
-// List<TaskItem> list2=new ArrayList<TaskItem>();
-// list2.add(items);
-// task.setItems(list2);
-// payload.setId(UUID.randomUUID().toString());
-// //杩欓噷鏄笅鏂圭殑post鍥炶皟鍦板潃锛岄渶瑕佷慨鏀笽P鍦板潃
-// payload.setNotificationURL("http://" + ip + ":" + port + "/machine-fast/serv/download/getJSON");
-// //璧勬簮涓嬭浇閾炬帴鐨勮姹傚ご
-// payload.setPreDownloadURL("http://" + ip + ":" + port + "/machine-fast/serv/download/downloadFile/");
-// payload.setTask(task);
-// xixun.set_id(UUID.randomUUID().toString());
-// xixun.setCommand(payload);
-// xixun.setType("commandXixunPlayer"); //鍛戒护鍥哄畾绫诲瀷锛屼笉鍙洿鏀�
-// String jsondata = new Gson().toJson(xixun);
-// lightemitUtils.clear(lightemitControlCode);
-// this.updateRequestBody(lightemitControlCode,jsondata);
-// lightemitUtils.post(realtimeServerBean.getCommand() + lightemitControlCode,jsondata);
}
}
\ No newline at end of file
--
Gitblit v1.9.3