export interface CameraIPItem {
  /** 相机IP */
  cameraIp: string;
  /**	相机协议类型 */
  cameraType: string;
  /** 相机端口 */
  cameraPort: string;
  /** 相机ID */
  code: string;
  /** 工位场景Id */
  workspaceId: string;
  /** 工位负责人 */
  principal?: string;
  /** 描述 */
  remark?: string;
  /** 相机名称 */
  name: string;
  /** id */
  id?: number;
  /** 用户名 */
  username?: string;
  /** 密码 */
  password?: string;
  /** 相机工位code */
  workspaceCode?: string;
  /** 推流地址 */
  pushstreamIp: string;
  rtspurl: string;
  //服务类型
  videoServiceType: VideoServiceType;
  //视频编码类型
  videoStandard: VideoStandardType;
}

export interface CameraShowItem extends CameraIPItem {
  /** 相机MAC地址 */
  cameraMac: string;
  /** 车间场景名称 */
  workshopName: string;
  /** 工位场景名称 */
  workspaceName: string;
  /** 联网状态: 0-启用, 1-禁用 */
  networkingState: number;
  /** 状态: 0-启用, 1-禁用 */
  status: number;
  /** 工位code */
  workspaceCode: string;
  //添加方式
  sourceType: string;
}

export interface CameraRangeItem {
  /** 启用IP地址 */
  startIp: string;
  /** 结束IP地址 */
  endIp: string;
  /** 协议类型 */
  cameraType: string;
  /** 相机端口 */
  port?: string;
  /** 用户名 */
  userName?: string;
  /** 密码 */
  password: string;
}

export interface CameraShareItem {
  /** 企业账号 */
  tenantCode: string | undefined;
  toTenantId?: number;
  /** 权限设置 */
  permission: string;
  /** 企业名称 */
  tenantName: string;
  /** 分享时间 */
  time?: string;
  /** 分享的有限期时间 */
  days?: number;
  /** 备注 */
  remark?: string;
  /** 密码 */
  // shareList: CompanyShareItem[];
  //分享的结束时间
  endTime: string;
}

export interface CameraSRS {
  name: string;
  /** 相机ID */
  code: string;
  /** 工位场景Id */
  workspaceId: string;
  /** 相机工位code */
  workspaceCode?: string;
  /** 流媒体地址 */
  rtspurl: string;
  /** 工位负责人 */
  principal?: string;
  /** 描述 */
  remark?: string;
  //服务类型
  videoServiceType: VideoServiceType;
  //视频编码类型
  videoStandard: VideoStandardType;
}

export enum VideoServiceType {
  UDP = 'UDP',
  TCP = 'TCP',
  AUTO = 'AUTO',
}

export enum VideoStandardType {
  H264 = 'H264',
  H265 = 'H265',
}

export interface CameraNVRItem {
  //名称
  name: string;
  //ip地址
  nvrIp: string;
  //端口
  cameraPort: string;
  //协议类型
  cameraType: string;
  //nvr平台用户名
  nvrUsername: string;
  //场景
  workspaceCode: string;
  workspaceId: string;
  //nvr平台密码
  nvrPassword: string;
  //工位负责人
  principal?: string;
  //设备id号
  code: string;
  //备注
  remark?: string;
  //nvr平台通道号
  nvrChannel: string;
  //服务类型
  videoServiceType: VideoServiceType;
  //视频编码类型
  videoStandard: VideoStandardType;
}
