diff --git a/src/main/java/com/inspect/nvr/controller/IvsServerController.java b/src/main/java/com/inspect/nvr/controller/IvsServerController.java index 4f48f608..5f5491c5 100644 --- a/src/main/java/com/inspect/nvr/controller/IvsServerController.java +++ b/src/main/java/com/inspect/nvr/controller/IvsServerController.java @@ -369,11 +369,21 @@ public class IvsServerController { .build()) .build(); + // 相机状态同步读取 cameraBriefInfosV2.cameraBriefInfoList.cameraBriefInfo。 + IvsDeviceListResponse.CameraBriefInfosV2 cameraBriefInfosV2 = + IvsDeviceListResponse.CameraBriefInfosV2.builder() + .total(page.getTotal()) + .cameraBriefInfoList(IvsDeviceListResponse.CameraBriefInfoList.builder() + .cameraBriefInfo(page.getCameras()) + .build()) + .build(); + // 只要有 NVR 同步失败就返回非零结果码,同时仍保留成功同步的摄像机数据。 int resultCode = page.getSyncResult().getFailedNvrCount() == 0 ? 0 : 1; // 组装 IVS 子设备列表响应,包含分页范围、总数和摄像机扩展信息。 return ResponseEntity.ok(IvsDeviceListResponse.builder() .resultCode(resultCode) + .cameraBriefInfosV2(cameraBriefInfosV2) .cameraBriefExInfos(cameraBriefExInfos) .build()); } diff --git a/src/main/java/com/inspect/nvr/domain/ivs/IvsDeviceListResponse.java b/src/main/java/com/inspect/nvr/domain/ivs/IvsDeviceListResponse.java index 154e231e..dcabcb6c 100644 --- a/src/main/java/com/inspect/nvr/domain/ivs/IvsDeviceListResponse.java +++ b/src/main/java/com/inspect/nvr/domain/ivs/IvsDeviceListResponse.java @@ -28,7 +28,7 @@ public class IvsDeviceListResponse implements Serializable { private Object alarmBriefInfos; - private Object cameraBriefInfosV2; + private CameraBriefInfosV2 cameraBriefInfosV2; private Object shadowCameraBriefInfos; @@ -36,6 +36,31 @@ public class IvsDeviceListResponse implements Serializable { private List exceptionDomain; + /** 摄像机 V2 列表,状态同步解析路径。 */ + @Data + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class CameraBriefInfosV2 implements Serializable { + + private static final long serialVersionUID = 1L; + + private int total; + + private CameraBriefInfoList cameraBriefInfoList; + } + + @Data + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class CameraBriefInfoList implements Serializable { + + private static final long serialVersionUID = 1L; + + private List cameraBriefInfo; + } + @Data @Builder @NoArgsConstructor