From 5d901b5e3f033e8b04e53420d68626cbd87431c8 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期五, 06 五月 2022 10:12:34 +0800
Subject: [PATCH] 使用阿里代码规范。规范代码写法

---
 src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java |  230 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 229 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
index 84d246f..faed2c8 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
@@ -1,19 +1,36 @@
 package com.genersoft.iot.vmp.vmanager.server;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.genersoft.iot.vmp.VManageBootstrap;
+import com.genersoft.iot.vmp.common.VersionPo;
+import com.genersoft.iot.vmp.conf.DynamicTask;
+import com.genersoft.iot.vmp.conf.SipConfig;
+import com.genersoft.iot.vmp.conf.UserSetting;
+import com.genersoft.iot.vmp.conf.VersionInfo;
+import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.service.IMediaServerService;
 import com.genersoft.iot.vmp.utils.SpringBeanFactory;
+import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
 import gov.nist.javax.sip.SipStackImpl;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.sip.ListeningPoint;
 import javax.sip.ObjectInUseException;
 import javax.sip.SipProvider;
 import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
 
+@SuppressWarnings("rawtypes")
 @Api(tags = "鏈嶅姟鎺у埗")
 @CrossOrigin
 @RestController
@@ -23,9 +40,146 @@
     @Autowired
     private ConfigurableApplicationContext context;
 
+    @Autowired
+    private IMediaServerService mediaServerService;
+
+    @Autowired
+    private VersionInfo versionInfo;
+
+    @Autowired
+    private SipConfig sipConfig;
+
+    @Autowired
+    private UserSetting userSetting;
+
+    @Autowired
+    private DynamicTask dynamicTask;
+
+    @Value("${server.port}")
+    private int serverPort;
+
+
+    @ApiOperation("娴佸獟浣撴湇鍔″垪琛�")
+    @GetMapping(value = "/media_server/list")
+    @ResponseBody
+    public WVPResult<List<MediaServerItem>> getMediaServerList(boolean detail){
+        WVPResult<List<MediaServerItem>> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        result.setData(mediaServerService.getAll());
+        return result;
+    }
+
+    @ApiOperation("鍦ㄧ嚎娴佸獟浣撴湇鍔″垪琛�")
+    @GetMapping(value = "/media_server/online/list")
+    @ResponseBody
+    public WVPResult<List<MediaServerItem>> getOnlineMediaServerList(){
+        WVPResult<List<MediaServerItem>> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        result.setData(mediaServerService.getAllOnline());
+        return result;
+    }
+
+    @ApiOperation("鑾峰彇娴佸獟浣撴湇鍔�")
+    @GetMapping(value = "/media_server/one/{id}")
+    @ResponseBody
+    public WVPResult<MediaServerItem> getMediaServer(@PathVariable String id){
+        WVPResult<MediaServerItem> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        result.setData(mediaServerService.getOne(id));
+        return result;
+    }
+
+    @ApiOperation("娴嬭瘯娴佸獟浣撴湇鍔�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="ip", value = "娴佸獟浣撴湇鍔P", dataTypeClass = String.class),
+            @ApiImplicitParam(name="port", value = "娴佸獟浣撴湇鍔TT绔彛", dataTypeClass = Integer.class),
+            @ApiImplicitParam(name="secret", value = "娴佸獟浣撴湇鍔ecret", dataTypeClass = String.class),
+    })
+    @GetMapping(value = "/media_server/check")
+    @ResponseBody
+    public WVPResult<MediaServerItem> checkMediaServer(@RequestParam String ip, @RequestParam int port, @RequestParam String secret){
+        return mediaServerService.checkMediaServer(ip, port, secret);
+    }
+
+    @ApiOperation("娴嬭瘯娴佸獟浣撳綍鍍忕鐞嗘湇鍔�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="ip", value = "娴佸獟浣撴湇鍔P", dataTypeClass = String.class),
+            @ApiImplicitParam(name="port", value = "娴佸獟浣撴湇鍔TT绔彛", dataTypeClass = Integer.class),
+            @ApiImplicitParam(name="secret", value = "娴佸獟浣撴湇鍔ecret", dataTypeClass = String.class),
+    })
+    @GetMapping(value = "/media_server/record/check")
+    @ResponseBody
+    public WVPResult<String> checkMediaRecordServer(@RequestParam String ip, @RequestParam int port){
+        boolean checkResult = mediaServerService.checkMediaRecordServer(ip, port);
+        WVPResult<String> result = new WVPResult<>();
+        if (checkResult) {
+            result.setCode(0);
+            result.setMsg("success");
+
+        }else {
+            result.setCode(-1);
+            result.setMsg("杩炴帴澶辫触");
+        }
+        return result;
+    }
+
+    @ApiOperation("淇濆瓨娴佸獟浣撴湇鍔�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="mediaServerItem", value = "娴佸獟浣撲俊鎭�", dataTypeClass = MediaServerItem.class)
+    })
+    @PostMapping(value = "/media_server/save")
+    @ResponseBody
+    public WVPResult<String> saveMediaServer(@RequestBody  MediaServerItem mediaServerItem){
+        MediaServerItem mediaServerItemInDatabase = mediaServerService.getOne(mediaServerItem.getId());
+
+        if (mediaServerItemInDatabase != null) {
+            if (StringUtils.isEmpty(mediaServerItemInDatabase.getSendRtpPortRange())
+                    && StringUtils.isEmpty(mediaServerItem.getSendRtpPortRange())){
+                mediaServerItem.setSendRtpPortRange("30000,30500");
+            }
+           mediaServerService.update(mediaServerItem);
+        }else {
+            if (StringUtils.isEmpty(mediaServerItem.getSendRtpPortRange())){
+                mediaServerItem.setSendRtpPortRange("30000,30500");
+            }
+            return mediaServerService.add(mediaServerItem);
+        }
+
+        WVPResult<String> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        return result;
+    }
+
+    @ApiOperation("绉婚櫎娴佸獟浣撴湇鍔�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="id", value = "娴佸獟浣揑D", dataTypeClass = String.class)
+    })
+    @DeleteMapping(value = "/media_server/delete")
+    @ResponseBody
+    public WVPResult<String> deleteMediaServer(@RequestParam  String id){
+        if (mediaServerService.getOne(id) != null) {
+            mediaServerService.delete(id);
+            mediaServerService.deleteDb(id);
+        }else {
+            WVPResult<String> result = new WVPResult<>();
+            result.setCode(-1);
+            result.setMsg("鏈壘鍒版鑺傜偣");
+            return result;
+        }
+        WVPResult<String> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        return result;
+    }
+
+
 
     @ApiOperation("閲嶅惎鏈嶅姟")
-    @RequestMapping(value = "/restart")
+    @GetMapping(value = "/restart")
     @ResponseBody
     public Object restart(){
         Thread restartThread = new Thread(new Runnable() {
@@ -56,4 +210,78 @@
         restartThread.start();
         return "success";
     }
+
+    @ApiOperation("鐗堟湰淇℃伅")
+    @GetMapping(value = "/version")
+    @ResponseBody
+    public WVPResult<VersionPo> getVersion(){
+        WVPResult<VersionPo> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+        result.setData(versionInfo.getVersion());
+        return result;
+    }
+
+    @ApiOperation("閰嶇疆淇℃伅")
+    @GetMapping(value = "/config")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="type", value = "閰嶇疆绫诲瀷锛坰ip, base锛�", dataTypeClass = String.class),
+    })
+    @ResponseBody
+    public WVPResult<JSONObject> getVersion(String type){
+        WVPResult<JSONObject> result = new WVPResult<>();
+        result.setCode(0);
+        result.setMsg("success");
+
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("server.port", serverPort);
+        if (StringUtils.isEmpty(type)) {
+            jsonObject.put("sip", JSON.toJSON(sipConfig));
+            jsonObject.put("base", JSON.toJSON(userSetting));
+        }else {
+            switch (type){
+                case "sip":
+                    jsonObject.put("sip", sipConfig);
+                    break;
+                case "base":
+                    jsonObject.put("base", userSetting);
+                    break;
+                default:
+                    break;
+            }
+        }
+        result.setData(jsonObject);
+        return result;
+    }
+
+//    @ApiOperation("褰撳墠杩涜涓殑鍔ㄦ�佷换鍔�")
+//    @GetMapping(value = "/dynamicTask")
+//    @ResponseBody
+//    public WVPResult<JSONObject> getDynamicTask(){
+//        WVPResult<JSONObject> result = new WVPResult<>();
+//        result.setCode(0);
+//        result.setMsg("success");
+//
+//        JSONObject jsonObject = new JSONObject();
+//
+//        Set<String> allKeys = dynamicTask.getAllKeys();
+//        jsonObject.put("server.port", serverPort);
+//        if (StringUtils.isEmpty(type)) {
+//            jsonObject.put("sip", JSON.toJSON(sipConfig));
+//            jsonObject.put("base", JSON.toJSON(userSetting));
+//        }else {
+//            switch (type){
+//                case "sip":
+//                    jsonObject.put("sip", sipConfig);
+//                    break;
+//                case "base":
+//                    jsonObject.put("base", userSetting);
+//                    break;
+//                default:
+//                    break;
+//            }
+//        }
+//        result.setData(jsonObject);
+//        return result;
+//    }
 }

--
Gitblit v1.8.0