Commit 5f78f109 by chenjunxiong

build(hikvision-sdk):

response构造函数调整
视频预览 - 根据监控点 UUID 集和网域 UUID 分页获取录像计划
parent 02fc7f8c
...@@ -4,6 +4,7 @@ import lombok.Data; ...@@ -4,6 +4,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.exception.JeecgBootException;
/** /**
* <p> * <p>
...@@ -23,6 +24,12 @@ public abstract class HikvisionPageModel extends HikvisionBodyModel { ...@@ -23,6 +24,12 @@ public abstract class HikvisionPageModel extends HikvisionBodyModel {
} }
public HikvisionPageModel(Integer pageNo, Integer pageSize) { public HikvisionPageModel(Integer pageNo, Integer pageSize) {
if (pageNo < 1) {
throw new JeecgBootException("当前页码不可小于1!");
}
if (pageSize > 1000) {
throw new JeecgBootException("每页数据记录不可大于1000");
}
this.pageNo = pageNo; this.pageNo = pageNo;
this.pageSize = pageSize; this.pageSize = pageSize;
} }
......
package org.jeecg.pm.hikvision.sdk.entity.body.vss.playback;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.pm.hikvision.sdk.entity.body.HikvisionPageModel;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/24
*/
@Slf4j
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class HikvisionGetRecordPlansByCameraUuids extends HikvisionPageModel {
public HikvisionGetRecordPlansByCameraUuids(Integer pageNo, Integer pageSize, String cameraUuids, String netZoneUuid) {
super(pageNo, pageSize);
this.cameraUuids = cameraUuids;
this.netZoneUuid = netZoneUuid;
}
/**
* 监控点 UUID 集
*/
private String cameraUuids;
/**
* 网域 UUID
*/
private String netZoneUuid;
}
...@@ -104,4 +104,13 @@ public abstract class Constant implements Serializable { ...@@ -104,4 +104,13 @@ public abstract class Constant implements Serializable {
public static final List<String> IS_SMART_LIST = Arrays.asList( public static final List<String> IS_SMART_LIST = Arrays.asList(
"32800", "32800",
"32816"); "32816");
public static final List<Integer> PLAN_TYPE_LIST = Arrays.asList(
// 设备存储
1,
// CVR 存储
3,
// CVM 存储
4
);
} }
package org.jeecg.pm.hikvision.sdk.request.vss.playback;
import com.chanjx.utils.HttpMethod;
import org.apache.http.entity.ContentType;
import org.jeecg.pm.hikvision.sdk.entity.body.HikvisionBodyModel;
import org.jeecg.pm.hikvision.sdk.entity.body.vss.playback.HikvisionGetRecordPlansByCameraUuids;
import org.jeecg.pm.hikvision.sdk.request.HikvisionAbstractRequest;
import org.jeecg.pm.hikvision.sdk.response.vss.playback.HikvisionGetRecordPlansByCameraUuidsResponse;
import org.jeecg.pm.hikvision.sdk.result.vss.playback.HikvisionGetRecordPlansByCameraUuidsResult;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/24
*/
public class HikvisionGetRecordPlansByCameraUuidsRequest extends HikvisionAbstractRequest<HikvisionGetRecordPlansByCameraUuidsResponse, HikvisionGetRecordPlansByCameraUuidsResult> {
private HikvisionGetRecordPlansByCameraUuids hikvisionGetRecordPlansByCameraUuids;
public HikvisionGetRecordPlansByCameraUuidsRequest(HikvisionGetRecordPlansByCameraUuids hikvisionGetRecordPlansByCameraUuids) {
this.hikvisionGetRecordPlansByCameraUuids = hikvisionGetRecordPlansByCameraUuids;
}
@Override
public ContentType getContentType() {
return ContentType.APPLICATION_JSON;
}
@Override
public Class<HikvisionGetRecordPlansByCameraUuidsResponse> getResponseClazz() {
return HikvisionGetRecordPlansByCameraUuidsResponse.class;
}
@Override
public Class<HikvisionGetRecordPlansByCameraUuidsResult> getResultClazz() {
return HikvisionGetRecordPlansByCameraUuidsResult.class;
}
@Override
public HttpMethod getHttpMethod() {
return HttpMethod.POST;
}
@Override
public String getReqPath() {
return "/openapi/service/vss/playback/getRecordPlansByCameraUuids";
}
@Override
public HikvisionBodyModel getModel() {
return hikvisionGetRecordPlansByCameraUuids;
}
@Override
public void setModel(HikvisionBodyModel model) {
this.hikvisionGetRecordPlansByCameraUuids = (HikvisionGetRecordPlansByCameraUuids) model;
}
}
...@@ -10,6 +10,6 @@ import org.jeecg.pm.hikvision.sdk.result.base.netzone.HikvisionGetNetZonesResult ...@@ -10,6 +10,6 @@ import org.jeecg.pm.hikvision.sdk.result.base.netzone.HikvisionGetNetZonesResult
public class HikvisionGetNetZonesResponse extends HikvisionAbstractResponse<HikvisionGetNetZonesResult> { public class HikvisionGetNetZonesResponse extends HikvisionAbstractResponse<HikvisionGetNetZonesResult> {
public HikvisionGetNetZonesResponse() { public HikvisionGetNetZonesResponse() {
super(HikvisionGetNetZonesResult.class, false); super(HikvisionGetNetZonesResult.class);
} }
} }
...@@ -10,6 +10,6 @@ import org.jeecg.pm.hikvision.sdk.result.base.user.HikvisionGetDefaultUserUuidBa ...@@ -10,6 +10,6 @@ import org.jeecg.pm.hikvision.sdk.result.base.user.HikvisionGetDefaultUserUuidBa
public class HikvisionGetDefaultUserUuidResponse extends HikvisionAbstractResponse<HikvisionGetDefaultUserUuidBaseResult> { public class HikvisionGetDefaultUserUuidResponse extends HikvisionAbstractResponse<HikvisionGetDefaultUserUuidBaseResult> {
public HikvisionGetDefaultUserUuidResponse() { public HikvisionGetDefaultUserUuidResponse() {
super(HikvisionGetDefaultUserUuidBaseResult.class, false); super(HikvisionGetDefaultUserUuidBaseResult.class);
} }
} }
package org.jeecg.pm.hikvision.sdk.response.vss.playback;
import org.jeecg.pm.hikvision.sdk.response.HikvisionAbstractResponse;
import org.jeecg.pm.hikvision.sdk.result.vss.playback.HikvisionGetRecordPlansByCameraUuidsResult;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/24
*/
public class HikvisionGetRecordPlansByCameraUuidsResponse extends HikvisionAbstractResponse<HikvisionGetRecordPlansByCameraUuidsResult> {
public HikvisionGetRecordPlansByCameraUuidsResponse() {
super(HikvisionGetRecordPlansByCameraUuidsResult.class);
}
}
...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.preview.HikvisionPreviewParamByCame ...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.preview.HikvisionPreviewParamByCame
public class HikvisionPreviewParamByCameraUuidResponse extends HikvisionAbstractResponse<HikvisionPreviewParamByCameraUuidResult> { public class HikvisionPreviewParamByCameraUuidResponse extends HikvisionAbstractResponse<HikvisionPreviewParamByCameraUuidResult> {
public HikvisionPreviewParamByCameraUuidResponse() { public HikvisionPreviewParamByCameraUuidResponse() {
super(HikvisionPreviewParamByCameraUuidResult.class, false); super(HikvisionPreviewParamByCameraUuidResult.class);
} }
} }
...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.res.HikvisionGetCamerasExResult; ...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.res.HikvisionGetCamerasExResult;
public class HikvisionGetCamerasExResponse extends HikvisionAbstractResponse<HikvisionGetCamerasExResult> { public class HikvisionGetCamerasExResponse extends HikvisionAbstractResponse<HikvisionGetCamerasExResult> {
public HikvisionGetCamerasExResponse() { public HikvisionGetCamerasExResponse() {
super(HikvisionGetCamerasExResult.class, false); super(HikvisionGetCamerasExResult.class);
} }
} }
...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.res.HikvisionGetEncodersResult; ...@@ -14,6 +14,6 @@ import org.jeecg.pm.hikvision.sdk.result.vss.res.HikvisionGetEncodersResult;
public class HikvisionGetEncodersResponse extends HikvisionAbstractResponse<HikvisionGetEncodersResult> { public class HikvisionGetEncodersResponse extends HikvisionAbstractResponse<HikvisionGetEncodersResult> {
public HikvisionGetEncodersResponse() { public HikvisionGetEncodersResponse() {
super(HikvisionGetEncodersResult.class, false); super(HikvisionGetEncodersResult.class);
} }
} }
package org.jeecg.pm.hikvision.sdk.result.vss.playback;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.pm.hikvision.sdk.result.HikvisionBaseResult;
import org.jeecg.pm.hikvision.sdk.result.HikvisionPageResultData;
/**
* <p>
*
* </p>
*
* @author 陈俊雄
* @since 2022/3/24
*/
@Slf4j
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class HikvisionGetRecordPlansByCameraUuidsResult extends HikvisionBaseResult {
private HikvisionPageResultData<RecordPlan> data;
@Slf4j
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public static class RecordPlan {
/**
* 录像计划 UUID
*/
private String recordPlanUuid;
/**
* 是否启用录像计划
*/
@JsonFormat(shape = JsonFormat.Shape.NUMBER)
private Boolean enabled;
/**
* 录像计划名称
*/
private String planName;
/**
* 录像计划类型
* @see org.jeecg.pm.hikvision.sdk.entity.body.vss.res.Constant#PLAN_TYPE_LIST
*/
private Integer planType;
/**
* 监控点 UUID
*/
private String cameraUuid;
/**
* 编码设备 UUID
*/
private String encoderUuid;
}
}
...@@ -6,8 +6,6 @@ import lombok.experimental.Accessors; ...@@ -6,8 +6,6 @@ import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jeecg.pm.hikvision.sdk.result.HikvisionBaseResult; import org.jeecg.pm.hikvision.sdk.result.HikvisionBaseResult;
import java.io.Serializable;
/** /**
* <p> * <p>
* *
...@@ -22,14 +20,10 @@ import java.io.Serializable; ...@@ -22,14 +20,10 @@ import java.io.Serializable;
@Accessors(chain = true) @Accessors(chain = true)
public class HikvisionPreviewParamByCameraUuidResult extends HikvisionBaseResult { public class HikvisionPreviewParamByCameraUuidResult extends HikvisionBaseResult {
/**
* 预览参数 XML 报文,直接给OCX平台
*/
private String data; private String data;
@Slf4j
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public static class Preview implements Serializable {
}
} }
import org.jeecg.pm.hikvision.sdk.client.HikvisionBaseClient; import org.jeecg.pm.hikvision.sdk.client.HikvisionBaseClient;
import org.jeecg.pm.hikvision.sdk.client.HikvisionClient; import org.jeecg.pm.hikvision.sdk.client.HikvisionClient;
import org.jeecg.pm.hikvision.sdk.entity.body.vss.playback.HikvisionGetRecordPlansByCameraUuids;
import org.jeecg.pm.hikvision.sdk.entity.body.vss.preview.HikvisiongetPreviewParamByCameraUuid; import org.jeecg.pm.hikvision.sdk.entity.body.vss.preview.HikvisiongetPreviewParamByCameraUuid;
import org.jeecg.pm.hikvision.sdk.entity.body.vss.res.HikvisionGetCamerasEx; import org.jeecg.pm.hikvision.sdk.entity.body.vss.res.HikvisionGetCamerasEx;
import org.jeecg.pm.hikvision.sdk.entity.body.vss.res.HikvisionGetEncoders; import org.jeecg.pm.hikvision.sdk.entity.body.vss.res.HikvisionGetEncoders;
import org.jeecg.pm.hikvision.sdk.request.base.netzone.HikvisionGetNetZonesRequest; import org.jeecg.pm.hikvision.sdk.request.base.netzone.HikvisionGetNetZonesRequest;
import org.jeecg.pm.hikvision.sdk.request.base.user.HikvisionGetDefaultUserUuidRequest; import org.jeecg.pm.hikvision.sdk.request.base.user.HikvisionGetDefaultUserUuidRequest;
import org.jeecg.pm.hikvision.sdk.request.vss.playback.HikvisionGetRecordPlansByCameraUuidsRequest;
import org.jeecg.pm.hikvision.sdk.request.vss.preview.HikvisionPreviewParamByCameraUuidRequest; import org.jeecg.pm.hikvision.sdk.request.vss.preview.HikvisionPreviewParamByCameraUuidRequest;
import org.jeecg.pm.hikvision.sdk.request.vss.res.HikvisionGetCamerasExRequest; import org.jeecg.pm.hikvision.sdk.request.vss.res.HikvisionGetCamerasExRequest;
import org.jeecg.pm.hikvision.sdk.request.vss.res.HikvisionGetEncodersRequest; import org.jeecg.pm.hikvision.sdk.request.vss.res.HikvisionGetEncodersRequest;
import org.jeecg.pm.hikvision.sdk.response.base.netzone.HikvisionGetNetZonesResponse; import org.jeecg.pm.hikvision.sdk.response.base.netzone.HikvisionGetNetZonesResponse;
import org.jeecg.pm.hikvision.sdk.response.base.user.HikvisionGetDefaultUserUuidResponse; import org.jeecg.pm.hikvision.sdk.response.base.user.HikvisionGetDefaultUserUuidResponse;
import org.jeecg.pm.hikvision.sdk.response.vss.playback.HikvisionGetRecordPlansByCameraUuidsResponse;
import org.jeecg.pm.hikvision.sdk.response.vss.preview.HikvisionPreviewParamByCameraUuidResponse; import org.jeecg.pm.hikvision.sdk.response.vss.preview.HikvisionPreviewParamByCameraUuidResponse;
import org.jeecg.pm.hikvision.sdk.response.vss.res.HikvisionGetCamerasExResponse; import org.jeecg.pm.hikvision.sdk.response.vss.res.HikvisionGetCamerasExResponse;
import org.jeecg.pm.hikvision.sdk.response.vss.res.HikvisionGetEncodersResponse; import org.jeecg.pm.hikvision.sdk.response.vss.res.HikvisionGetEncodersResponse;
...@@ -76,4 +79,21 @@ public class HikvisionSdkTest { ...@@ -76,4 +79,21 @@ public class HikvisionSdkTest {
System.out.println(response.getResult()); System.out.println(response.getResult());
}); });
} }
@Test
void getRecordPlansByCameraUuids() {
final HikvisionGetCamerasEx camerasEx = new HikvisionGetCamerasEx(1, 10);
final HikvisionGetCamerasExResponse camerasExResponse = CLIENT.execute(new HikvisionGetCamerasExRequest(camerasEx));
final HikvisionGetCamerasExResult camerasExResult = camerasExResponse.getResult();
final String cameraUuid = camerasExResult.getData().getList().get(0).getCameraUuid();
final HikvisionGetNetZonesResponse netZonesResponse = CLIENT.execute(new HikvisionGetNetZonesRequest());
final List<HikvisionGetNetZonesResult.NetZone> netZones = netZonesResponse.getResult().getData();
netZones.forEach(netZone -> {
final HikvisionGetRecordPlansByCameraUuidsResponse response = CLIENT.execute(
new HikvisionGetRecordPlansByCameraUuidsRequest(
new HikvisionGetRecordPlansByCameraUuids(1, 10, cameraUuid, netZone.getNetZoneUuid())));
System.out.println(response.getResult());
});
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment