|
|
@@ -1,17 +1,21 @@
|
|
|
package com.yunfeiyun.agmp.iotm.web.controller;
|
|
|
|
|
|
import com.yunfeiyun.agmp.common.core.controller.BaseController;
|
|
|
+import com.yunfeiyun.agmp.common.core.domain.AjaxResult;
|
|
|
import com.yunfeiyun.agmp.common.core.page.TableDataInfo;
|
|
|
import com.yunfeiyun.agmp.common.utils.StringUtils;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindBlockVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindLandVo;
|
|
|
+import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindStatisticVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.IotDeviceBindVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.reqvo.IotDeviceBindListReqVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.resvo.FmsBlockListByDeviceBindResVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.domain.resvo.FmsLandListByDeviceBindResVo;
|
|
|
+import com.yunfeiyun.agmp.iotm.web.domain.resvo.IotDeviceBindStatisticResVo;
|
|
|
import com.yunfeiyun.agmp.iotm.web.service.FmsBlockService;
|
|
|
import com.yunfeiyun.agmp.iotm.web.service.FmsLandService;
|
|
|
import com.yunfeiyun.agmp.iotm.web.service.IIotDeviceBindService;
|
|
|
+import com.yunfeiyun.agmp.iotm.web.service.ITosDevicetypeService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
@@ -40,6 +44,9 @@ public class IotDeviceBindController extends BaseController {
|
|
|
@Autowired
|
|
|
private FmsBlockService fmsBlockService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ITosDevicetypeService tosDeviceService;
|
|
|
+
|
|
|
/**
|
|
|
* 查询基地列表
|
|
|
*/
|
|
|
@@ -147,4 +154,59 @@ public class IotDeviceBindController extends BaseController {
|
|
|
return getDataTable(iotDeviceBindVoList);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取设备绑定统计信息
|
|
|
+ */
|
|
|
+ @GetMapping("/statistic")
|
|
|
+ public AjaxResult statistic() {
|
|
|
+ List<IotDeviceBindStatisticVo> iotDeviceBindStatisticVoList = iIotDeviceBindService.selectDeviceBindStatistic();
|
|
|
+ List<IotDeviceBindStatisticVo> iotDeviceBindTypeStatisticVoList = new ArrayList<>();
|
|
|
+ int totalNum = 0;
|
|
|
+ int bindNum = 0;
|
|
|
+
|
|
|
+ for (IotDeviceBindStatisticVo iotDeviceBindStatisticVo : iotDeviceBindStatisticVoList) {
|
|
|
+ if (iotDeviceBindStatisticVo.getBindNum() > 0) {
|
|
|
+ bindNum = iotDeviceBindStatisticVo.getBindNum();
|
|
|
+ }
|
|
|
+
|
|
|
+ int devTypeNum = iotDeviceBindStatisticVo.getDevTypeNum();
|
|
|
+ IotDeviceBindStatisticVo d = new IotDeviceBindStatisticVo();
|
|
|
+ d.setDevtypeBid(iotDeviceBindStatisticVo.getDevtypeBid());
|
|
|
+ d.setDevTypeNum(devTypeNum);
|
|
|
+ d.setDevtypeName(iotDeviceBindStatisticVo.getDevtypeName());
|
|
|
+ iotDeviceBindTypeStatisticVoList.add(d);
|
|
|
+ totalNum += devTypeNum;
|
|
|
+ }
|
|
|
+
|
|
|
+ IotDeviceBindStatisticVo dHead = new IotDeviceBindStatisticVo();
|
|
|
+ dHead.setDevTypeNum(totalNum);
|
|
|
+ dHead.setDevtypeName("全部");
|
|
|
+ iotDeviceBindTypeStatisticVoList.add(0, dHead);
|
|
|
+
|
|
|
+
|
|
|
+ IotDeviceBindStatisticVo bHead = new IotDeviceBindStatisticVo();
|
|
|
+ bHead.setBindName("已绑定");
|
|
|
+ bHead.setBindNum(bindNum);
|
|
|
+ bHead.setBindStatus("1");
|
|
|
+
|
|
|
+ IotDeviceBindStatisticVo uHead = new IotDeviceBindStatisticVo();
|
|
|
+ uHead.setBindName("未绑定");
|
|
|
+ uHead.setBindNum(totalNum - bindNum);
|
|
|
+ uHead.setBindStatus("0");
|
|
|
+
|
|
|
+ IotDeviceBindStatisticVo aHead = new IotDeviceBindStatisticVo();
|
|
|
+ aHead.setBindName("全部");
|
|
|
+ aHead.setBindNum(totalNum);
|
|
|
+
|
|
|
+ List<IotDeviceBindStatisticVo> iotDeviceBindStatusStatisticVoList = new ArrayList<>();
|
|
|
+ iotDeviceBindStatusStatisticVoList.add(aHead);
|
|
|
+ iotDeviceBindStatusStatisticVoList.add(bHead);
|
|
|
+ iotDeviceBindStatusStatisticVoList.add(uHead);
|
|
|
+
|
|
|
+ IotDeviceBindStatisticResVo responseInfo = new IotDeviceBindStatisticResVo();
|
|
|
+ responseInfo.setIotDeviceBindTypeStatisticVoList(iotDeviceBindTypeStatisticVoList);
|
|
|
+ responseInfo.setIotDeviceBindStatusStatisticVoList(iotDeviceBindStatusStatisticVoList);
|
|
|
+ return success(responseInfo);
|
|
|
+ }
|
|
|
+
|
|
|
}
|