From f82e4d48bb1a2edfd530528c7ff6e41d1c1e47f7 Mon Sep 17 00:00:00 2001 From: htjcAdmin Date: Sat, 19 Jul 2025 15:50:16 +0800 Subject: [PATCH] =?UTF-8?q?/*NVR=E6=A8=A1=E5=9D=97=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E8=B0=83=E8=AF=95=E5=AE=8C=E6=AF=95=E5=B9=B6?= =?UTF-8?q?=E4=B8=94=E9=80=9A=E8=BF=87=E6=B5=81=E7=A8=8B=E9=AA=8C=E8=AF=81?= =?UTF-8?q?*/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nvr/controller/IvsCameraController.java | 10 +- .../nvr/controller/IvsServerController.java | 160 ------------------ .../nvr/domain/device/PtzControlParam.java | 22 ++- .../domain/device/SnapshotCommandParam.java | 16 +- .../domain/device/SnapshotCommandResult.java | 1 + .../domain/device/SnapshotInfoListParam.java | 16 +- .../domain/device/SnapshotInfoListResult.java | 1 + .../service/impl/IvsCameraServiceImpl.java | 17 +- 8 files changed, 65 insertions(+), 178 deletions(-) diff --git a/src/main/java/com/inspect/nvr/controller/IvsCameraController.java b/src/main/java/com/inspect/nvr/controller/IvsCameraController.java index c8db476..b43e569 100644 --- a/src/main/java/com/inspect/nvr/controller/IvsCameraController.java +++ b/src/main/java/com/inspect/nvr/controller/IvsCameraController.java @@ -2,18 +2,16 @@ package com.inspect.nvr.controller; import com.inspect.nvr.domain.device.*; import com.inspect.nvr.service.IvsCameraService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import lombok.extern.slf4j.Slf4j; import org.springframework.core.io.InputStreamResource; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.io.*; +@Slf4j @RestController -public class IvsCameraController implements Serializable { - private final Logger log = LoggerFactory.getLogger(this.getClass()); +public class IvsCameraController { @Resource private IvsCameraService ivsCameraService; @@ -47,7 +45,7 @@ public class IvsCameraController implements Serializable { @GetMapping("/downloadfile") public ResponseEntity downloadFile(@RequestParam("filesessionid") String fileSessionId) { - log.info("[GAB] get stream, fileSessionId: {}", fileSessionId); + log.info("Download File Get Stream, fileSessionId: {}", fileSessionId); return ResponseEntity .ok() .body(new InputStreamResource(ivsCameraService.downloadFile(fileSessionId))); diff --git a/src/main/java/com/inspect/nvr/controller/IvsServerController.java b/src/main/java/com/inspect/nvr/controller/IvsServerController.java index d8bee5f..1403b05 100644 --- a/src/main/java/com/inspect/nvr/controller/IvsServerController.java +++ b/src/main/java/com/inspect/nvr/controller/IvsServerController.java @@ -94,13 +94,6 @@ public class IvsServerController { ); } - @PostMapping({"/device/ptzcontrol2"}) - public ResponseEntity devicePtzControl(@RequestBody SipbPtzVo ptzVo) { - log.info("[GAB] devicePtzControl : {}", ptzVo.toString()); - return ResponseEntity - .ok() - .body(ResultEntity.builder().resultCode("0").build()); - } @GetMapping("/device/deviceList2/v1.0") public ResponseEntity getDeviceList(IvsDevChanListVo chanListVo) { @@ -110,160 +103,7 @@ public class IvsServerController { .body(ResultEntity.builder().resultCode("0").build()); } - private static int mCount = 0; - - @GetMapping("/platform/platformSnapshot2/{cameraCode}/{domainCode}") - public ResponseEntity getPlatformSnapshot( - @PathVariable("cameraCode") String cameraCode, - @PathVariable("domainCode") String domainCode, - IvsDevChanSnapVo chanSnapVo - ) { - log.info("[GAB] cameraCode: {}, domainCode: {}, platformSnapshot: {}", cameraCode, domainCode, chanSnapVo.toString()); - - mCount++; -// if(mCount % 2 == 0) - { - return ResponseEntity - .ok() - .body(ResultEntity - .builder() - .resultCode("0") - .resultBody(IvsSnapshotView - .builder() - .taskID(TASK_CODE) - .build() - ).build() - ); - } -// else { -// return ResponseEntity -// .ok().body(null); -// } - -// return ResponseEntity -// .ok() -// .body(ResultEntity -// .builder() -// .resultCode("0") -// .resultBody(IvsSnapshotView -// .builder() -// .taskID(TASK_CODE) -// .build() -// ).build() -// ); - } - private static int mCount2 = 0; - - @PostMapping("/platform/snapshotList2") - public ResponseEntity getPlatformSnapshotList(@RequestBody IvsChanSnapVo chanSnapVo) { - log.info("[GAB] chanSnapVo: {}", chanSnapVo.toString()); - - mCount2++; -// if(mCount2 % 4 == 0) - { - List snapshotInfos = new ArrayList<>(); - final String urlRes = platFormUrl + "/platform/snapshot/" + chanSnapVo.getCameraCode(); - //final String urlRes = "http://192.168.110.184:18530/platform/snapshot/" + chanSnapVo.getCameraCode(); - snapshotInfos.add( - IvsPlatformSnapshotView.SnapshotInfo - .builder() - .cameraCode(chanSnapVo.getCameraCode()) - .pictureName("test.png") - .previewUrl(urlRes) - .pictureUrl(urlRes) - .build() - ); - IvsPlatformSnapshotView.SnapshotInfoList snapshotInfoList = - IvsPlatformSnapshotView.SnapshotInfoList - .builder() - .total(1) - .indexRange(IndexRange.builder().fromIndex(0).toIndex(0).build()) - .snapshotInfos(snapshotInfos) - .build(); - IvsPlatformSnapshotView snapshotView - = IvsPlatformSnapshotView - .builder() - .resultCode("0") - .snapshotInfoList(snapshotInfoList) - .build(); - return ResponseEntity - .ok() - .body(snapshotView); - } -// else { -// return ResponseEntity -// .ok() -// .body(null); -// } - } - - @GetMapping("/platform/snapshot2/{cameraCode}") - public ResponseEntity getPlatformSnapshotByCameraCode(@PathVariable("cameraCode") String cameraCode, HttpServletResponse response) { - log.info("[GAB] get stream, cameraCode: {}", cameraCode); - try { - final String resourcePath = String.format("images/%s.jpg", cameraCode); - // InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(resourcePath); - final String userDir = System.getProperty("user.dir"); - final String absolutePath = userDir.endsWith("/") ? - userDir + resourcePath : - userDir + File.separator + resourcePath; - log.info("absolutePath: {}", absolutePath); - InputStream inputStream = Files.newInputStream(new File(absolutePath).toPath()); - int length = inputStream.available(); - log.info("[snapshot] inputStream length: {}", length); - //byte bytes[] = new byte[length]; - //response.setContentLength(length); - InputStreamResource resource = new InputStreamResource(inputStream); - return ResponseEntity.ok() - .contentType(MediaType.IMAGE_JPEG) - .body(resource) - ; - } catch (Exception e) { - //e.printStackTrace(); - log.info("[GAB] get stream cameraCode: {}, exception: {}", cameraCode, e.getMessage()); - return ResponseEntity.ok().body(null); - } - } - - @GetMapping("/platform/snapshot22/{cameraCode}") - public ResponseEntity getPlatformSnapshotByCameraCode2(@PathVariable("cameraCode") String cameraCode, HttpServletResponse response) { - log.info("[GAB] get stream2, cameraCode: {}", cameraCode); - try { - File path = new File(ResourceUtils.getURL("classpath:").getPath()); - if (!path.exists()) path = new File(""); - log.info("path1: {}", path.getAbsolutePath()); - log.info("path2: {}", System.getProperty("user.dir")); - String path1 = ClassUtils.getDefaultClassLoader().getResource("").getPath(); - log.info("path3: {}", URLDecoder.decode(path1, "utf-8")); - String path2 = ResourceUtils.getURL("classpath:").getPath(); - log.info("path4: {}", path2); - ApplicationHome h = new ApplicationHome(getClass()); - File jarF = h.getSource(); - log.info("path5: {}", jarF.getParentFile().toString()); - - final String resourcePath = String.format("images/%s.jpg", cameraCode); - final String userDir = System.getProperty("user.dir"); - log.info("!!!!!!!!!!!!!!userDir: {}", userDir); - final String absolutePath = userDir.endsWith("/") ? - userDir + resourcePath : - userDir + "/" + resourcePath; - log.info("absolutePath2: {}", absolutePath); - - InputStream inputStream = Files.newInputStream(new File(absolutePath).toPath()); - int length = inputStream.available(); - log.info("[snapshot] inputStream2 length: {}", length); - InputStreamResource resource = new InputStreamResource(inputStream); - return ResponseEntity.ok() - .contentType(MediaType.IMAGE_JPEG) - .body(resource) - ; - } catch (Exception e) { - //e.printStackTrace(); - log.info("[GAB] get stream cameraCode: {}, exception2: {}", cameraCode, e.getMessage()); - return ResponseEntity.ok().body(null); - } - } } diff --git a/src/main/java/com/inspect/nvr/domain/device/PtzControlParam.java b/src/main/java/com/inspect/nvr/domain/device/PtzControlParam.java index 96e143a..5112c85 100644 --- a/src/main/java/com/inspect/nvr/domain/device/PtzControlParam.java +++ b/src/main/java/com/inspect/nvr/domain/device/PtzControlParam.java @@ -1,15 +1,30 @@ package com.inspect.nvr.domain.device; +import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import lombok.Setter; +import java.io.Serializable; + @Getter @Setter -public class PtzControlParam { +@NoArgsConstructor +@AllArgsConstructor +public class PtzControlParam implements Serializable { + private String serial; + private String channel; + private String code; + private String command; private String cameraCode; private String controlCode; private String controlPara1; private String controlPara2; + private String host; + private String port; + private String address; + private String username; + private String password; @Override public String toString() { @@ -18,6 +33,11 @@ public class PtzControlParam { ", controlCode='" + controlCode + '\'' + ", controlPara1='" + controlPara1 + '\'' + ", controlPara2='" + controlPara2 + '\'' + + ", host='" + host + '\'' + + ", port='" + port + '\'' + + ", address='" + address + '\'' + + ", username='" + username + '\'' + + ", password='" + password + '\'' + '}'; } } diff --git a/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandParam.java b/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandParam.java index caa0c21..adad1fc 100644 --- a/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandParam.java +++ b/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandParam.java @@ -1,14 +1,14 @@ package com.inspect.nvr.domain.device; -import lombok.Builder; -import lombok.Getter; -import lombok.Setter; +import lombok.*; import java.io.Serializable; @Getter @Setter @Builder +@NoArgsConstructor +@AllArgsConstructor public class SnapshotCommandParam implements Serializable { private String code; private String cameraCode; @@ -18,6 +18,11 @@ public class SnapshotCommandParam implements Serializable { private boolean realtime; private boolean checkOutputs; private boolean timeout; + private String host; + private String port; + private String address; + private String username; + private String password; @Override public String toString() { @@ -30,6 +35,11 @@ public class SnapshotCommandParam implements Serializable { ", realtime=" + realtime + ", checkOutputs=" + checkOutputs + ", timeout=" + timeout + + ", host='" + host + '\'' + + ", port='" + port + '\'' + + ", address='" + address + '\'' + + ", username='" + username + '\'' + + ", password='" + password + '\'' + '}'; } } diff --git a/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandResult.java b/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandResult.java index 9bda4d9..7b78877 100644 --- a/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandResult.java +++ b/src/main/java/com/inspect/nvr/domain/device/SnapshotCommandResult.java @@ -11,4 +11,5 @@ import java.io.Serializable; @Builder public class SnapshotCommandResult implements Serializable { private String taskID; + private String resultCode; } diff --git a/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListParam.java b/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListParam.java index bf9c3c7..3f8d055 100644 --- a/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListParam.java +++ b/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListParam.java @@ -1,19 +1,24 @@ package com.inspect.nvr.domain.device; -import lombok.Builder; -import lombok.Getter; -import lombok.Setter; +import lombok.*; import java.io.Serializable; @Getter @Setter @Builder +@NoArgsConstructor +@AllArgsConstructor public class SnapshotInfoListParam implements Serializable { private String taskID; private String code; private String cameraCode; private String domainCode; + private String host; + private String port; + private String address; + private String username; + private String password; @Override public String toString() { @@ -22,6 +27,11 @@ public class SnapshotInfoListParam implements Serializable { ", code='" + code + '\'' + ", cameraCode='" + cameraCode + '\'' + ", domainCode='" + domainCode + '\'' + + ", host='" + host + '\'' + + ", port='" + port + '\'' + + ", address='" + address + '\'' + + ", username='" + username + '\'' + + ", password='" + password + '\'' + '}'; } } diff --git a/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListResult.java b/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListResult.java index 8af2fc4..f81b9d7 100644 --- a/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListResult.java +++ b/src/main/java/com/inspect/nvr/domain/device/SnapshotInfoListResult.java @@ -11,6 +11,7 @@ import java.util.List; @Setter @Builder public class SnapshotInfoListResult implements Serializable { + private String resultCode; private SnapshotInfoList snapshotInfoList; @Setter diff --git a/src/main/java/com/inspect/nvr/service/impl/IvsCameraServiceImpl.java b/src/main/java/com/inspect/nvr/service/impl/IvsCameraServiceImpl.java index eed0bc3..ba2a1c2 100644 --- a/src/main/java/com/inspect/nvr/service/impl/IvsCameraServiceImpl.java +++ b/src/main/java/com/inspect/nvr/service/impl/IvsCameraServiceImpl.java @@ -51,6 +51,11 @@ public class IvsCameraServiceImpl implements IvsCameraService { //跳转预置位 @Override public PtzControlResult ptzControl(PtzControlParam param) { + if(testMode) { + return PtzControlResult.builder() + .resultCode("0") + .build(); + } Camera camera = new Camera(); //赋值 @@ -61,7 +66,7 @@ public class IvsCameraServiceImpl implements IvsCameraService { camera.setChannel(39); camera.setPointNum(1); - lUserID = (Integer) redisService.redisTemplate.opsForValue().get(camera.getIp() + "_userId"); + //lUserID = (Integer) redisService.redisTemplate.opsForValue().get(camera.getIp() + "_userId"); if (ObjectUtil.isEmpty(lUserID)) { NvrInfo nvrInfo = new NvrInfo(); @@ -70,7 +75,7 @@ public class IvsCameraServiceImpl implements IvsCameraService { nvrInfo.setAccount(camera.getUserName()); nvrInfo.setPassword(camera.getPassword()); login_V40(nvrInfo); - lUserID = (Integer) redisService.redisTemplate.opsForValue().get(camera.getIp() + "_userId"); + //lUserID = (Integer) redisService.redisTemplate.opsForValue().get(camera.getIp() + "_userId"); } @@ -97,7 +102,8 @@ public class IvsCameraServiceImpl implements IvsCameraService { SnapshotCommandResult snapshotCommandResult = SnapshotCommandResult.builder() - .taskID("0123456789") + .taskID(param.getCameraCode()) + .resultCode("0") .build(); return snapshotCommandResult; } @@ -108,13 +114,14 @@ public class IvsCameraServiceImpl implements IvsCameraService { List infoList = new ArrayList<>(); infoList.add( SnapshotInfoListResult.SnapshotInfo.builder() - .pictureUrl("http://192.168.1.172:18539/downloadfile?filesessionid=HQ3HLF98QI6T645DSNVO4S066S00") - .cameraCode("01969538357008970118") + .pictureUrl("http://192.168.1.172:18539/downloadfile?filesessionid=" + param.getTaskID()) + .cameraCode(param.getCameraCode()) .build()); snapshotInfoList.setTotal(1); snapshotInfoList.setSnapshotInfos(infoList); SnapshotInfoListResult snapshotInfoListResult = SnapshotInfoListResult.builder() + .resultCode("0") .snapshotInfoList(snapshotInfoList) .build(); return snapshotInfoListResult;