From 9dd4f3549911f1253ccd9b934e8a5a90a7b2ce8c Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期四, 28 四月 2022 18:24:56 +0800
Subject: [PATCH] 大气数据推送到LED

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java |   77 +++++++++++++++++++++++++++++++++++---
 1 files changed, 71 insertions(+), 6 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java
index 9683856..b27bcc6 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/LightController.java
@@ -1,20 +1,24 @@
 package com.sandu.ximon.admin.controller;
 
+import com.sandu.common.domain.CommonPage;
 import com.sandu.common.domain.ResponseVO;
 import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.util.ResponseUtil;
 import com.sandu.ximon.admin.param.LightControlParam;
 import com.sandu.ximon.admin.param.LightRemarkParam;
+import com.sandu.ximon.admin.security.PermissionConfig;
 import com.sandu.ximon.admin.service.LightReportDataService;
 import com.sandu.ximon.admin.service.LightReportErrorService;
 import com.sandu.ximon.admin.service.LightService;
 import com.sandu.ximon.dao.bo.LightBo;
 import com.sandu.ximon.dao.bo.LightReportDataBo;
 import com.sandu.ximon.dao.bo.LightReportErrorBo;
+import com.sandu.ximon.dao.enums.MenuEnum;
 import lombok.AllArgsConstructor;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -31,10 +35,14 @@
     private final LightService lightService;
     private final LightReportDataService lightReportDataService;
     private final LightReportErrorService lightReportErrorService;
+    private PermissionConfig permissionConfig;
 
 
     @GetMapping("/list")
     public ResponseVO<Object> listLight(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword) {
+        if (!permissionConfig.check(MenuEnum.LIGHT_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         List<LightBo> list = lightService.listLight(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword);
         return ResponseUtil.successPage(list);
     }
@@ -56,16 +64,48 @@
      * @return
      */
     @GetMapping("/report/list")
-    public ResponseVO<Object> listReportData(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword, @RequestParam(required = false) String deviceCode) {
-        List<LightReportDataBo> list = lightReportDataService.listReportData(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, deviceCode);
-        return ResponseUtil.successPage(list);
+    public ResponseVO<Object> listReportData(BaseConditionVO conditionVO
+            , @RequestParam(required = false) String keyword, @RequestParam(required = false) String deviceCode) {
+        if (!permissionConfig.check(MenuEnum.LIGHT_DATA.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        CommonPage commonPage = lightReportDataService.listReportData(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, deviceCode);
+        List<LightReportDataBo> lightReportDataBos = ( List<LightReportDataBo>)commonPage.getList();
+
+        if(lightReportDataBos == null){
+            return ResponseUtil.success(CommonPage.restPage(new ArrayList<>()));
+        }
+        CommonPage commonPage1 = CommonPage.restPage(lightReportDataBos);
+        commonPage1.setTotal(commonPage.getTotal());
+        commonPage1.setTotalPage(commonPage.getTotalPage());
+
+        return ResponseUtil.success(commonPage1);
+    }
+
+    /**
+     * 瀵煎嚭Excel
+     *
+     * @param conditionVO
+     * @param keyword
+     * @param deviceCode
+     * @return
+     */
+    @GetMapping("/report/exportList")
+    public ResponseVO<Object> exportList(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword, @RequestParam(required = false) String deviceCode) {
+        String url = lightReportDataService.exportList(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, deviceCode);
+        return ResponseUtil.success(url);
     }
 
     @GetMapping("/error/list")
-    public ResponseVO<Object> listReportError(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword) {
-        List<LightReportErrorBo> list = lightReportErrorService.listReportError(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword);
-        return ResponseUtil.successPage(list);
+    public ResponseVO<Object> listReportError(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword
+            , @RequestParam(required = false) Integer errorCode) {
+        if (!permissionConfig.check(MenuEnum.LIGHT_ERROR_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        List<LightReportErrorBo> list = lightReportErrorService.listReportError(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, errorCode);
+        return ResponseUtil.success(list);
     }
+
 
     // 浜害鎺у埗
     @PostMapping("/control")
@@ -73,4 +113,29 @@
         List<Map<String, Object>> list = lightService.controlBrightness(paramList);
         return ResponseUtil.success(list);
     }
+
+    @PostMapping("/EnergySaving")
+    public ResponseVO<Object> controlEnergySaving() {
+        return ResponseUtil.success(lightService.controlEnergySaving());
+    }
+
+//    /**
+//     * 鑾峰彇璁惧鐮�
+//     */
+//    @GetMapping("/deviceCode")
+//    public ResponseVO<Object> getDeviceCode(BaseConditionVO baseConditionVO) {
+//        return ResponseUtil.success(lightService.listDeviceCode(baseConditionVO.getPageNo() , baseConditionVO.getPageSize()));
+//    }
+
+    /**
+     * 璁剧疆鍔熺巼
+     */
+    @PostMapping("/setPower/{power1}/{power2}")
+    public ResponseVO<Object> setPower(@RequestBody  List<Long> ids, @PathVariable Integer power1,@PathVariable Integer power2) {
+        if(ids.isEmpty()||power1==null||power2==null){
+            return ResponseUtil.fail("id涓虹┖鎴栬�呭姛鐜囦负绌�");
+        }
+        boolean resule= lightService.setPower(ids,power1,power2);
+        return ResponseUtil.success(resule);
+    }
 }

--
Gitblit v1.9.3