package com.yuchen.saas.integration.feign.api.util;

/**
 * @author 刘通
 * @date 2020/12/22 1:34
 */
public class HikApiUtil {

    // ----------------------- 摄像头 相关 ----------------------------
    /**
     * 摄像头 获取根区域信息
     */
    public static final String RESGIONS_ROOT = "/api/resource/v1/regions/root";
    /**
     * 摄像头 查询监控点列表
     */
    public static final String CAMERA_LIST = "/api/resource/v1/camera/advance/cameraList";
    /**
     * 摄像头 获取 取流URL列表
     */
    public static final String PREVIEW_URL = "/api/video/v1/cameras/previewURLs";
    /**
     * 摄像头 获取 存储设备在线状态
     */
    public static final String ONLINE_STORAGE = "/api/nms/v1/online/storage_device/get";
    /**
     * 摄像头 获取 获取监控点在线状态
     */
    public static final String ONLINE_CAMERA = "/api/nms/v1/online/camera/get";
    /**
     * 摄像头 分页获取编码设备列表，主要用于资源信息的全量同步。
     */
    public static final String GET_ENCODE_DEVICE = "/api/resource/v1/encodeDevice/get";
    /**
     * 摄像头 根据条件获取编码设备在线状态接口
     */
    public static final String ONLINE_ENCODE_DEVICE = "/api/nms/v1/online/encode_device/get";
    /**
     * 摄像头 根据条件获取解码设备在线状态接口
     */
    public static final String ONLINE_DECODE_DEVICE = "/api/nms/v1/online/decode_device/get";
    /**
     * 摄像头 按条件查询识别资源
     */
    public static final String GET_RESOURCE = "/api/frs/v1/resource/recognition";
    /**
     * 通过监控点ID获取流 1
     */
    public static final String GET_Url_V1 = "/api/video/v1/cameras/previewURLs";
    /**
     * 通过监控点ID获取流 2
     */
    public static final String GET_Url_V2 = "/api/video/v2/cameras/previewURLs";

    // ----------------------- 人脸 相关 ----------------------------
    /**
     * 人脸操作 添加分组
     */
    public static final String ADD_FACE_GROUP = "/api/frs/v1/face/group/single/addition";
    /**
     * 人脸操作 按条件查询人脸分组
     */
    public static final String GET_FACE_GROUP = "/api/frs/v1/face/group";
    /**
     * 人脸操作 删除人脸分组
     */
    public static final String DEL_FACE_GROUP = "/api/frs/v1/face/group/batch/deletion";
    /**
     * 人脸操作 修改人脸分组
     */
    public static final String UPDATE_FACE_GROUP = "/api/frs/v1/face/group/single/update";
    /**
     * 人脸操作 单个添加人脸
     */
    public static final String ADD_FACE = "/api/frs/v1/face/single/addition";
    /**
     * 人脸操作 单个修改人脸
     */
    public static final String UPDATE_FACE = "/api/frs/v1/face/single/update";
    /**
     * 人脸操作 单个修改人脸
     */
    public static final String SINGLE_UPDATE_FACE = "/api/resource/v1/face/single/update";
    /**
     * 人脸操作 批量删除人脸
     */
    public static final String DEL_FACE = "/api/frs/v1/face/deletion";
    /**
     * 人脸操作 按条件批量查询人脸
     */
    public static final String GET_FACE = "/api/frs/v1/face";
    /**
     * 人脸管理接口-添加人脸信息
     */
    public static final String FACE_SINGLE_ADD = "/api/resource/v1/face/single/add";
    /**
     * 人脸管理接口-修改人脸信息
     */
    public static final String FACE_SINGLE_UPDATE = "/api/resource/v1/face/single/update";

    /**
     * 卡片操作: 批量开卡
     */
    public static final String CARD_BINDS = "/api/cis/v1/card/bindings";
    /**
     * 卡片操作: 获取单个卡片信息
     */
    public static final String CARD_INFO = "/api/irds/v1/card/cardInfo";
    /**
     * 卡片操作: 卡片退卡
     */
    public static final String CARD_DELETION = "/api/cis/v1/card/deletion";




    // ----------------------- 人员组织架构 相关 ----------------------------

    /**
     * 人员基础信息上传
     */
    public static final String POST_PEOPLE_INFO = "/api/resource/v2/person/single/add";
    /**
     * 查询hik组织信息
     */
    public static final String POST_ORG_INFO = "/api/resource/v1/org/advance/orgList";
    /**
     * 获取组织列表
     */
    public static final String POST_ORG_LIST = "/api/resource/v1/org/orgList";
    /**
     * 根据父类组织编号获得下级组织信息
     */
    public static final String POST_ORG_CHILD = "/api/resource/v1/org/parentOrgIndexCode/subOrgList";
    /**
     * 修改人员信息
     */
    public static final String PERSON_SINGLE_UPDATE = "/api/resource/v1/person/single/update";
    /**
     * 删除人员信息
     */
    public static final String PERSON_BATCH_DELETE = "/api/resource/v1/person/batch/delete";

    // ----------------------- 识别计划 相关 ----------------------------
    /**
     * 识别计划配置 单个添加重点人员识别计划
     */
    public static final String ADD_PLAN_BLACK = "/api/frs/v1/plan/recognition/black/addition";
    /**
     * 识别计划配置 单个查询重点人员识别计划详情
     */
    public static final String GET_PLAN_BLACK_DETAIL = "/api/frs/v1/plan/recognition/black/detail";
    /**
     * 识别计划配置 单个修改重点人员识别计划
     */
    public static final String UPDATE_PLAN_BLACK = "/api/frs/v1/plan/recognition/black/update";
    /**
     * 识别计划配置 删除重点人员识别计划
     */
    public static final String DEL_PLAN_BLACK = "/api/frs/v1/plan/recognition/black/deletion";

    // ----------------------- 事件订阅 相关 ----------------------------
    /**
     * 该接口用于满足应用方按事件类型码订阅事件，同一个用户重复订阅相同的事件，接口内部逻辑自动去重，确保不重复投递事件。
     * 事件订阅接口， 支持订阅平台的所有业务的各种事件类型，具体参考附录D
     * 本接口要求，三方订阅的时候，要求三方指定的http/https接收事件的服务地址。后续平台产生对应的事件，会推送到此http/https服务地址。
     */
    public static final String SUBSCRIPTION_EVENT = "/api/eventService/v1/eventSubscriptionByEventTypes";
    /**
     * 简述：场内车停车信息即为某一停车库或部分停车库内未出场车辆的信息，包括车牌号、车辆入场时间、车辆图片等，是用于停车场缴费、场内找车等业务的前置业务场景。
     * 支持：支持通过停车库的唯一标识、车牌号码（模糊）、停车时长及停车库信息查询场内车停车信息。
     */
    public static final String TEMP_CAR_IN_RECORDS = "/api/pms/v1/tempCarInRecords/page";


    // ----------------------- 停车场信息查询 ----------------------------

    /**
     * 获取停车库列表
     */
    public static final String GET_PARK_PARK_LIST = "/api/resource/v1/park/parkList";
    /**
     *获取出入口列表
     */
    public static final String ENTRANCE_LIST = "/api/resource/v1/entrance/entranceList";
    /**
     *获取出车道列表
     */
    public static final String ROADWAY_LIST = "/api/resource/v1/roadway/roadwayList";
    /**
     * 车牌校正
     */
    public static final String CHANGE_CROSS_RECORD = "/api/pms/v1/changeCrossRecord";

    /**
     * 获取车位信息
     */
    public static final String PARKING_SPACE = "/api/pms/v1/parkingSpace/spaceNo";
    /**
     * 获取车位信息
     */
    public static final String REMAIN_SPACE_NUM = "/api/pms/v1/park/remainSpaceNum";
    /**
     * 查询停车账单(根据停车库和车牌号)
     */
    public static final String PAY_QUICK_PRE_BILL = "/api/pms/v1/pay/quickPreBill";
    /**
     * 查询过车记录
     */
    public static final String GET_CROSS_RECORDS = "/api/pms/v1/crossRecords/page";
    /**
     * 查询收费规则
     */
    public static final String GET_CHARGE_RULES = "/api/pms/v1/chargeRules";
    /**
     * 查询车辆缴费记录
     */
    public static final String GET_PAY_RECORD_SEARCH = "/api/pms/v1/charge_bill/record/search";
    /**
     * 账单支付确认
     */
    public static final String GET_PAY_RECEIPT = "/api/pms/v2/pay/receipt";
    /**
     * LED设备控屏
     */
    public static final String SCREEN_CONTROL = "/api/pms/v1/device/led/control";
    /**
     * 下发语音播报
     */
    public static final String VOICE_CONTROL = "/api/pms/v1/device/voice/control";
    /**
     * 根据车道编码反控道闸
     */
    public static final String PARKING_DEVICE_CONTROL = "/api/pms/v1/deviceControl";
    /**
     * 获取出入口列表
     */
    public static final String GET_ENTRANCE_ENTRANCE_LIST = "/api/resource/v1/entrance/entranceList";
    /**
     * 获取车道列表
     */
    public static final String GET_ROADWAY_ROADWAY_LIST = "/api/resource/v1/roadway/roadwayList";
    /**
     * 批量添加车辆
     */
    public static final String ADD_VEHICLE_BATCH = "/api/resource/v1/vehicle/batch/add";
    /**
     * 修改车辆
     */
    public static final String UPDATE_VEHICLE_SINGLE = "/api/resource/v1/vehicle/single/update";
    /**
     * 批量删除车辆
     */
    public static final String DEL_VEHICLE_BATCH = "/api/resource/v1/vehicle/batch/delete";
    /**
     * 查询车辆列表
     */
    public static final String GET_VEHICLE_ADVANCE_LIST = "/api/resource/v1/vehicle/advance/vehicleList";
    /**
     * 获取单个车辆信息
     */
    public static final String GET_VEHICLE_PLATE_INFO = "/api/resource/v1/vehicle/plateNo/vehicleInfo";

    // ----------------------- 消防信息查询 ----------------------------
    public static final String GET_FIRE_DEVICE_LIST = "/api/resource/v1/fireDevice/search";

}
