From ae786534c602e0bb157bcc8d99a3e9b2d02ab7aa Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: Mon, 23 Nov 2020 18:17:20 +0800 Subject: [PATCH] =?UTF-8?q?[UI]=20=E5=AE=8C=E6=88=90=E5=9B=BD=E6=A0=87?= =?UTF-8?q?=E7=BA=A7=E8=81=94=E7=9A=84CURD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + .../iot/vmp/gb28181/bean/ParentPlatform.java | 14 + .../redis/VideoManagerRedisStoragerImpl.java | 2 +- .../vmanager/platform/PlatformController.java | 42 +- src/main/resources/application.yml | 12 +- web_src/src/components/ParentPlatformList.vue | 243 ++++------- web_src/src/components/UiHeader.vue | 3 +- web_src/src/components/platformEdit.vue | 382 ++++++++++++++++++ web_src/src/router/index.js | 2 +- 9 files changed, 519 insertions(+), 182 deletions(-) create mode 100644 web_src/src/components/platformEdit.vue diff --git a/README.md b/README.md index 50ca236b..232b5c53 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ https://gitee.com/18010473990/wvp-GB28181.git - [ ] 通道选择 - [ ] 通道推送 - [ ] 点播 + - [ ] 云台控制 - [ ] 添加RTSP视频 - [ ] 添加ONVIF探测局域网内的设备 - [ ] 添加RTMP视频 diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/ParentPlatform.java b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/ParentPlatform.java index d6a97cf0..ddd964bb 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/ParentPlatform.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/ParentPlatform.java @@ -85,9 +85,15 @@ public class ParentPlatform { /** * RTCP流保活 + * TODO 预留, 暂不实现 */ private boolean rtcp; + /** + * 在线状态 + */ + private boolean status; + public boolean isEnable() { return enable; @@ -224,4 +230,12 @@ public class ParentPlatform { public void setRtcp(boolean rtcp) { this.rtcp = rtcp; } + + public boolean isStatus() { + return status; + } + + public void setStatus(boolean status) { + this.status = status; + } } diff --git a/src/main/java/com/genersoft/iot/vmp/storager/redis/VideoManagerRedisStoragerImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/redis/VideoManagerRedisStoragerImpl.java index f704d567..0e21167f 100644 --- a/src/main/java/com/genersoft/iot/vmp/storager/redis/VideoManagerRedisStoragerImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/storager/redis/VideoManagerRedisStoragerImpl.java @@ -567,7 +567,7 @@ public class VideoManagerRedisStoragerImpl implements IVideoManagerStorager { @Override public boolean deleteParentPlatform(ParentPlatform parentPlatform) { - return false; + return redis.del(VideoManagerConstants.PLATFORM_PREFIX + parentPlatform.getDeviceGBId()); } @Override diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java index 9f35dd80..27dbdd44 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/platform/PlatformController.java @@ -11,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; +import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; @CrossOrigin @@ -23,8 +24,8 @@ public class PlatformController { @Autowired private IVideoManagerStorager storager; - @GetMapping("/platforms") - public PageResult platforms(int page, int count){ + @GetMapping("/platforms/{count}/{page}") + public PageResult platforms(@PathVariable int page, @PathVariable int count){ if (logger.isDebugEnabled()) { logger.debug("查询所有上级设备API调用"); @@ -32,12 +33,26 @@ public class PlatformController { return storager.queryParentPlatformList(page, count); } - @PostMapping("/platforms/add") - public ResponseEntity addPlatform(ParentPlatform parentPlatform){ + @RequestMapping("/platforms/save") + @ResponseBody + public ResponseEntity savePlatform(@RequestBody ParentPlatform parentPlatform){ if (logger.isDebugEnabled()) { logger.debug("查询所有上级设备API调用"); } + if (StringUtils.isEmpty(parentPlatform.getName()) + ||StringUtils.isEmpty(parentPlatform.getServerGBId()) + ||StringUtils.isEmpty(parentPlatform.getServerGBDomain()) + ||StringUtils.isEmpty(parentPlatform.getServerIP()) + ||StringUtils.isEmpty(parentPlatform.getServerPort()) + ||StringUtils.isEmpty(parentPlatform.getDeviceGBId()) + ||StringUtils.isEmpty(parentPlatform.getExpires()) + ||StringUtils.isEmpty(parentPlatform.getKeepTimeout()) + ||StringUtils.isEmpty(parentPlatform.getTransport()) + ||StringUtils.isEmpty(parentPlatform.getCharacterSet()) + ){ + return new ResponseEntity<>("missing parameters", HttpStatus.BAD_REQUEST); + } boolean updateResult = storager.updateParentPlatform(parentPlatform); if (updateResult) { return new ResponseEntity<>("success", HttpStatus.OK); @@ -45,4 +60,23 @@ public class PlatformController { return new ResponseEntity<>("fail", HttpStatus.OK); } } + + @RequestMapping("/platforms/delete") + @ResponseBody + public ResponseEntity deletePlatform(@RequestBody ParentPlatform parentPlatform){ + + if (logger.isDebugEnabled()) { + logger.debug("查询所有上级设备API调用"); + } + if (StringUtils.isEmpty(parentPlatform.getDeviceGBId()) + ){ + return new ResponseEntity<>("missing parameters", HttpStatus.BAD_REQUEST); + } + boolean deleteResult = storager.deleteParentPlatform(parentPlatform); + if (deleteResult) { + return new ResponseEntity<>("success", HttpStatus.OK); + }else { + return new ResponseEntity<>("fail", HttpStatus.OK); + } + } } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 463548a2..fd7509e0 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -7,12 +7,12 @@ spring: communicate: http redis: # Redis服务器IP - host: 127.0.0.1 + host: 192.168.1.141 #端口号 port: 6379 database: 6 #访问密码,若你的redis服务器没有设置密码,就不需要用密码去连接 - password: + password: 4767cb971b40a1300fa09b7f87b09d1c #超时时间 timeout: 10000 datasource: @@ -25,7 +25,7 @@ spring: server: port: 18080 sip: - ip: 192.168.1.44 + ip: 192.168.1.20 port: 5060 # 根据国标6.1.2中规定,domain宜采用ID统一编码的前十位编码。国标附录D中定义前8位为中心编码(由省级、市级、区级、基层编号组成,参照GB/T 2260-2007) # 后两位为行业编码,定义参照附录D.3 @@ -40,9 +40,9 @@ auth: #32位小写md5加密(默认密码为admin) password: 21232f297a57a5a743894a0e4a801fc3 media: #zlm服务器的ip与http端口, 重点: 这是http端口 - ip: 192.168.1.44 - wanIp: - port: 80 + ip: 127.0.0.1 + wanIp: 192.168.1.20 + port: 6080 secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc streamNoneReaderDelayMS: 600000 # 无人观看多久自动关闭流 # 关闭等待收到流编码信息后在返回, diff --git a/web_src/src/components/ParentPlatformList.vue b/web_src/src/components/ParentPlatformList.vue index 947adec7..98b0b41e 100644 --- a/web_src/src/components/ParentPlatformList.vue +++ b/web_src/src/components/ParentPlatformList.vue @@ -8,49 +8,45 @@
上级平台列表
- +
+ 添加 +
- - - - - - - - + + + + + + + - - - - + + + + + - - - - - - @@ -64,30 +60,26 @@ layout="total, sizes, prev, pager, next" :total="total"> - + - - diff --git a/web_src/src/components/UiHeader.vue b/web_src/src/components/UiHeader.vue index 3c264cdf..fa57b263 100644 --- a/web_src/src/components/UiHeader.vue +++ b/web_src/src/components/UiHeader.vue @@ -3,8 +3,7 @@ 控制台 设备列表 - 国标级联 - + 国标级联 退出 diff --git a/web_src/src/components/platformEdit.vue b/web_src/src/components/platformEdit.vue new file mode 100644 index 00000000..faacdde1 --- /dev/null +++ b/web_src/src/components/platformEdit.vue @@ -0,0 +1,382 @@ + + + + + diff --git a/web_src/src/router/index.js b/web_src/src/router/index.js index fa4df8c4..73a57810 100644 --- a/web_src/src/router/index.js +++ b/web_src/src/router/index.js @@ -37,7 +37,7 @@ export default new VueRouter({ component: channelList, },, { - path: '/parentPlatformList/:platformId/:count/:page', + path: '/parentPlatformList/:count/:page', name: 'parentPlatformList', component: parentPlatformList, },