From d019a929fc220ac5395d409f6c2ab4fab7653658 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期四, 24 十一月 2022 10:53:55 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/newnova/led/NewNovaLedController.java |  288 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 271 insertions(+), 17 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/newnova/led/NewNovaLedController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/newnova/led/NewNovaLedController.java
index 703ae72..496a9c0 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/newnova/led/NewNovaLedController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/newnova/led/NewNovaLedController.java
@@ -1,22 +1,24 @@
 package com.sandu.ximon.admin.newnova.led;
 
 import com.sandu.common.domain.ResponseVO;
+import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.util.ResponseUtil;
+import com.sandu.ximon.admin.newnova.grouping.NewNovaGroupService;
 import com.sandu.ximon.admin.newnova.param.NewNovaLedParam;
+import com.sandu.ximon.admin.newnova.param.NewNovaStatusParam;
+import com.sandu.ximon.admin.newnova.program.LEDInfoParam;
 import com.sandu.ximon.admin.newnova.utils.NovaAPIUtil;
-import com.sandu.ximon.admin.newnova.vo.StatusVO;
 import com.sandu.ximon.admin.security.PermissionConfig;
-import com.sandu.ximon.dao.domain.LedV2RegisterResultEntity;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.dao.domain.NewNovaGroup;
+import com.sandu.ximon.dao.domain.NewNovaLed;
 import com.sandu.ximon.dao.enums.MenuEnum;
 import lombok.AllArgsConstructor;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
-import java.net.URISyntaxException;
-import java.util.Map;
+import java.util.List;
 
 /**
  * @author LiuHaoNan
@@ -28,20 +30,272 @@
 public class NewNovaLedController {
     private final PermissionConfig permissionConfig;
     private final NewNovaLedService newNovaLedService;
-    private final NovaAPIUtil novaApiUtil;
+    private final NewNovaGroupService groupService;
 
+
+    /**
+     * 灞忓箷娉ㄥ唽
+     *
+     * @param param
+     * @return
+     */
     @PostMapping("/validateSN")
-    public ResponseVO<Object> validateSN(@RequestBody @Validated NewNovaLedParam param)  {
-        if (!permissionConfig.check(MenuEnum.VNNOX_ADD.getCode())) {
+    public ResponseVO<Object> validateSN(@RequestBody @Validated NewNovaLedParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_ADD.getCode())) {
             return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
         }
-       boolean b= newNovaLedService.saveLed(param);
-        return ResponseUtil.success("ledV2RegisterResultEntity");
+        boolean b = newNovaLedService.saveLed(param);
+        return ResponseUtil.success(b);
     }
-    @PostMapping("/test")
-    public ResponseVO<Object> validateSN()  {
-        StatusVO mzva51930N2113017308 = novaApiUtil.login("MZVA51930N2113017308");
-        return ResponseUtil.success(mzva51930N2113017308);
+
+    /**
+     * 缂栬緫灞忓箷鍚嶇О
+     */
+    @PostMapping("/editLed")
+    public ResponseVO editLed(@RequestBody NewNovaLedParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_EDIT.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.editLed(param));
     }
 
+    /**
+     * 鍒犻櫎灞忓箷
+     */
+    @PostMapping("/delLed")
+    public ResponseVO delLEd(@RequestBody List<Long> ids) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_DEL.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.delLed(ids));
+    }
+
+
+    /**
+     * 灞忓箷鍒楄〃
+     */
+    @GetMapping("/listLed")
+    public ResponseVO listLed(BaseConditionVO baseConditionVO, @RequestParam(required = false, value = "keyword") String keyword,
+                              @RequestParam(required = true, value = "onlineStatus", defaultValue = "false") boolean onlineStatus,
+                              @RequestParam(required = false, value = "groupId") Long groupId) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.listLed(baseConditionVO, keyword, groupId, onlineStatus));
+    }
+
+
+    /**
+     * 鐘舵�佸垪琛�
+     */
+    @PostMapping("/ledInfo")
+    public ResponseVO ledInfo(@RequestBody @Validated LEDInfoParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_LIST.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.infoList(param));
+    }
+
+    /**
+     * 璇︾粏淇℃伅
+     *
+     * @param ledId
+     * @return
+     */
+    @GetMapping("/getInfo")
+    public ResponseVO getInfo(@RequestParam(required = true, value = "ledId") Long ledId) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_INFO.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.getInfo(ledId));
+    }
+
+
+    /**
+     * 璁剧疆浜害
+     */
+    @PostMapping("/setBrightness")
+    public ResponseVO setScreenBrightness(@RequestBody @Validated NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_BRIGHTNESS.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getBrightness() == null) {
+            return ResponseUtil.fail("浜害涓嶈兘涓虹┖");
+        } else {
+            if (param.getBrightness() > 100 || param.getBrightness() < 0) {
+                return ResponseUtil.fail("浜害鑼冨洿涓�: 0-100");
+            }
+        }
+        NewNovaLed byId = newNovaLedService.getById(param.getId());
+        if (byId == null) {
+            return ResponseUtil.fail("璁惧涓嶅瓨鍦�");
+        } else {
+            if (!byId.getSn().equals(param.getSn())) {
+                return ResponseUtil.fail("sn涓巌d涓嶅尮閰�");
+            }
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().setScreenBrightness(param));
+    }
+
+
+    /**
+     * 璁剧疆闊抽噺
+     */
+    @PostMapping("/setVolume")
+    public ResponseVO setVolume(@RequestBody @Validated NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_VOL.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getVolume() == null) {
+            return ResponseUtil.fail("闊抽噺涓嶈兘涓虹┖");
+        } else {
+            if (param.getVolume() > 100 || param.getVolume() < 0) {
+                return ResponseUtil.fail("闊抽噺鑼冨洿涓�: 0-100");
+            }
+        }
+        NewNovaLed byId = newNovaLedService.getById(param.getId());
+        if (byId == null) {
+            return ResponseUtil.fail("璁惧涓嶅瓨鍦�");
+        } else {
+            if (!byId.getSn().equals(param.getSn())) {
+                return ResponseUtil.fail("sn涓巌d涓嶅尮閰�");
+            }
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().setVolume(param));
+    }
+
+    /**
+     * 璁剧疆鍚屾
+     */
+    @PostMapping("/setSync")
+    public ResponseVO setSync(@RequestBody NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_SYNC.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getNovaList() == null || param.getNovaList().isEmpty()) {
+            return ResponseUtil.fail("璇烽�夋嫨璁惧");
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().setSync(param));
+    }
+
+    /**
+     * 璁剧疆灞忓箷寮�鍏�
+     */
+    @PostMapping("/setPowerStatus")
+    public ResponseVO setPowerStatus(@RequestBody NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_POWER.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        NewNovaLed byId = newNovaLedService.getById(param.getId());
+        if (byId == null) {
+            return ResponseUtil.fail("璁惧涓嶅瓨鍦�");
+        } else {
+            if (!byId.getSn().equals(param.getSn())) {
+                return ResponseUtil.fail("sn涓巌d涓嶅尮閰�");
+            }
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().setPowerStatus(param));
+    }
+
+
+    /**
+     * 閲嶅惎
+     */
+    @PostMapping("/reboot")
+    public ResponseVO reboot(@RequestBody NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_REBOOT.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getNovaList() == null || param.getNovaList().isEmpty()) {
+            return ResponseUtil.fail("璇烽�夋嫨璁惧");
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().reboot(param));
+    }
+
+
+    /**
+     * ntp
+     */
+    @PostMapping("/ntp")
+    public ResponseVO ntp(@RequestBody NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_NTP.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getNovaList() == null || param.getNovaList().isEmpty()) {
+            return ResponseUtil.fail("璇烽�夋嫨璁惧");
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().ntp(param));
+    }
+
+    /**
+     * 鎴睆
+     */
+    @PostMapping("/screenShot")
+    public ResponseVO screenShot(@RequestBody NewNovaStatusParam param) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_SCREENSHOT.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (param.getScreenShotList() == null || param.getScreenShotList().isEmpty()) {
+            return ResponseUtil.fail("璇烽�夋嫨璁惧");
+        }
+        return ResponseUtil.success(NovaAPIUtil.getInstanceUtil().screenShot(param));
+    }
+
+    /**
+     * 鏍规嵁鍒嗙粍id鑾峰彇缁勫唴鐨勫睆骞�
+     */
+    @GetMapping("/getByGroupId")
+    public ResponseVO<Object> getByGroupId(@RequestParam(value = "groupId", required = true) Long groupId) {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_GROUB_INFO.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        if (groupId == null) {
+            throw new BusinessException("groupId涓嶈兘涓虹┖");
+        }
+        NewNovaGroup byId = groupService.getById(groupId);
+        if (SecurityUtils.getClientId() != null && !SecurityUtils.getUserId().equals(byId.getUserId())) {
+            throw new BusinessException("涓嶈兘鏌ョ湅涓嶅睘浜庤嚜宸卞垎缁勭殑鍐呭!");
+        }
+        if (byId == null) {
+            throw new BusinessException("鍒嗙粍涓嶅瓨鍦�");
+        }
+        return ResponseUtil.success(newNovaLedService.getListByGroupId(groupId));
+    }
+
+    /**
+     * 鎺ㄩ�佸ぇ姘�
+     */
+    @GetMapping("/pushAirData")
+    public ResponseVO<Object> pushAirData(@RequestParam(value = "id", required = true) Long id
+            , @RequestParam(value = "duration", required = true) Long duration
+            , @RequestParam(value = "fontSize", required = true) Long fontSize) throws InterruptedException {
+        if (!permissionConfig.check(MenuEnum.LED_NEW_PUSH_AIR.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
+        return ResponseUtil.success(newNovaLedService.pushAirData(id, duration, fontSize));
+    }
+
+
+//    @PostMapping("/tranPro")
+//    public ResponseVO<Object> tranPro(@RequestBody Map pageInfo) throws InterruptedException {
+//        NovaAPIUtil a = NovaAPIUtil.getInstanceUtil();
+//        StatusVO login = a.login("MZVA51930N2113017308", 0);
+//        if (login.getStatusCode() != 0) {
+//            return ResponseUtil.fail("genVO");
+//        }
+//        StatusVO createPro = a.createPro(new ProWHVO("jiemu 1", 128, 256));
+//        System.out.println(createPro + "createPro");
+//        StatusVO editPro = a.editProgram(Integer.valueOf(createPro.getStatusData()), pageInfo);
+//        StatusVO genVO = a.genrateProgram(Integer.valueOf(createPro.getStatusData()));
+//        ProgramPrarm page = new ProgramPrarm();
+//        page.setInsertPlay(true);
+//        page.setProgramID(Integer.valueOf(createPro.getStatusData()));
+//        page.setStartPlayAfterTransferred(true);
+//        List<String> sns = new ArrayList<String>();
+//        sns.add("MZVA51930N2113017308");
+//        page.setSnList(sns);
+//        List<TrasfromStatusVO> trasfromStatusVOS = a.trasfromProgram(page);
+//        return ResponseUtil.success(trasfromStatusVOS);
+//    }
+
 }

--
Gitblit v1.9.3