浏览代码

新增 杀虫灯列表增加设备配置信息功能

zhaiyifei 1 年之前
父节点
当前提交
2cae4b2220

+ 33 - 4
src/main/java/com/yunfeiyun/agmp/iotm/device/scd/controller/IotDeviceScdController.java

@@ -10,6 +10,7 @@ import com.yunfeiyun.agmp.common.utils.StringUtils;
 import com.yunfeiyun.agmp.iot.common.constant.IotErrorCode;
 import com.yunfeiyun.agmp.iot.common.constant.devicetype.IotDeviceDictConst;
 import com.yunfeiyun.agmp.iot.common.domain.IotDevice;
+import com.yunfeiyun.agmp.iot.common.domain.IotDeviceconfig;
 import com.yunfeiyun.agmp.iot.common.enums.IotDeviceStatusTypeEnum;
 import com.yunfeiyun.agmp.iot.common.exception.IotBizException;
 import com.yunfeiyun.agmp.iotm.common.controller.BaseController;
@@ -21,10 +22,12 @@ import com.yunfeiyun.agmp.iotm.device.common.service.IotDeviceRefreshService;
 import com.yunfeiyun.agmp.iotm.device.scd.domain.IotScdClearPestDto;
 import com.yunfeiyun.agmp.iotm.device.scd.domain.IotScdConfig;
 import com.yunfeiyun.agmp.iotm.device.scd.domain.IotScdConfigEditReqVo;
+import com.yunfeiyun.agmp.iotm.device.scd.domain.IotYfScdDataVo;
 import com.yunfeiyun.agmp.iotm.util.ValidateUtil;
 import com.yunfeiyun.agmp.iotm.web.domain.reqvo.IotDeviceListReqVo;
 import com.yunfeiyun.agmp.iotm.web.domain.resvo.IotDeviceListResVo;
 import com.yunfeiyun.agmp.iotm.web.service.IIotDeviceService;
+import com.yunfeiyun.agmp.iotm.web.service.IIotDeviceconfigService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -32,10 +35,7 @@ import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
 
 /**
  * 杀虫灯设备控制器
@@ -54,6 +54,9 @@ public class IotDeviceScdController extends BaseController {
     @Resource
     private IotDeviceRefreshService iotDeviceRefreshService;
 
+    @Autowired
+    private IIotDeviceconfigService iIotDeviceconfigService;
+
     /**
      * 杀虫灯列表
      * /list  所有杀虫灯设备
@@ -81,7 +84,33 @@ public class IotDeviceScdController extends BaseController {
             devTypeList = new String[]{IotDeviceDictConst.TYPE_YF_JGFXSSCD};
         }
         reqVo.setDevtypeBidList(Arrays.asList(devTypeList));
+
         List<IotDeviceListResVo> list = iIotDeviceService.selectIotDeviceListByType(reqVo);
+
+        List<String> devBidList = new ArrayList<>();
+        for(IotDeviceListResVo iotDeviceListResVo : list) {
+            String devBid = iotDeviceListResVo.getDevBid();
+            devBidList.add(devBid);
+        }
+
+        Map<String, IotDeviceconfig> devConfigMap = iIotDeviceconfigService.selectIotDeviceConfigMapByDevBidList(devBidList);
+        for(IotDeviceListResVo iotDeviceListResVo : list) {
+            String devBid = iotDeviceListResVo.getDevBid();
+            if(devConfigMap.containsKey(devBid)){
+                IotDeviceconfig iotDeviceConfig = devConfigMap.get(devBid);
+                JSONObject devConfig = JSONObject.parseObject(iotDeviceConfig.getDevcfgContext());
+
+                IotYfScdDataVo iotYfScdDataVo = new IotYfScdDataVo();
+                iotYfScdDataVo.setTimingTime(devConfig.getString("tt"));
+                iotYfScdDataVo.setClearTime(devConfig.getString("clt_t"));
+                iotYfScdDataVo.setTimingMode(devConfig.getString("ts"));
+                iotYfScdDataVo.setStartHour(devConfig.getString("st"));
+                iotYfScdDataVo.setEndHour(devConfig.getString("et"));
+                iotYfScdDataVo.setIntervalTime(devConfig.getString("dat_f"));
+
+                iotDeviceListResVo.setIotYfScdDataVo(iotYfScdDataVo);
+            }
+        }
         return getDataTable(list);
     }
 

+ 3 - 2
src/main/java/com/yunfeiyun/agmp/iotm/web/domain/resvo/IotDeviceListResVo.java

@@ -1,9 +1,8 @@
 package com.yunfeiyun.agmp.iotm.web.domain.resvo;
 
-import com.yunfeiyun.agmp.common.annotation.Excel;
-import com.yunfeiyun.agmp.iot.common.constant.devicetype.IotDeviceTypeLv1Enum;
 import com.yunfeiyun.agmp.iot.common.domain.IotDevice;
 import com.yunfeiyun.agmp.iot.common.enums.IotDeviceStatusTypeEnum;
+import com.yunfeiyun.agmp.iotm.device.scd.domain.IotYfScdDataVo;
 import lombok.Data;
 
 @Data
@@ -22,4 +21,6 @@ public class IotDeviceListResVo extends IotDevice {
     private Long imgCount;
     private Object lastData;
 
+    private IotYfScdDataVo iotYfScdDataVo;
+
 }