import type { BaseModel, ReduceForSaveVO, ReduceForUpdateVO, ReduceForPageQuery } from '../../base'; export interface NdmNvrVO extends BaseModel { deviceId: string; name: string; manufacturer: string; state: boolean; model: string; ipAddress: string; manageUrl: string; manageUsername: string; managePassword: string; gbCode: string; gbPort: number; gbDomain: string; gb28181Enabled: boolean; onvifPort: number; onvifUsername: string; onvifPassword: string; onvifMajorIndex: number; onvifMinorIndex: number; diagFlag: string; diagParam: string; diagFormat: string; lastDiagInfo: string; lastDiagTime: string; icmpEnabled: boolean; description: string; deviceStatus: string; deviceType: string; community: string; frontendConfig: string; linkDescription: string; snmpEnabled: boolean; recordCheckEnabled: boolean; clusterList: string; } export type NdmNvrResultVO = Partial; export type NdmNvrSaveVO = Partial>; export type NdmNvrUpdateVO = Partial>; export type NdmNvrPageQuery = Partial>; export interface RecordSum { code: string; recordList: NdmRecordCheck[]; channel: ClientChannel; availableRecordList: UnixRecordItem[]; unavailableRecordList: UnixRecordItem[]; } export interface NdmRecordCheck extends BaseModel { gbCode: string; parentGbCode: string; name: string; ipAddress: string; diagInfo: string; // RecordInfo checkDate: string; } export interface ClientChannel { code: string; name: string; manufacture: string; model: string; owner: string; civilCode: string; block: string; address: string; parental: number; parentId: string; status: number; longitude: number; latitude: number; } export interface RecordInfo { deviceId: string; channelId: string; sn: string; name: string; sumNum: number; count: number; lastTime: number; recordList: RecordItem[]; } export interface RecordItem { startTime: string; endTime: string; } export interface UnixRecordItem { startTime: number; endTime: number; } export interface QueryGbRecordBody { code: string; start: string; end: string; } export interface QueryGbDeviceBody { code: string; time: string; } export interface QueryRecordCheckBody { parentId: string; start: string; end: string; } export interface QueryReloadCheckBody { code: string; name: string; manufacture: string; model: string; owner: string; civilCode: string; block: string; address: string; parental: number; parentId: string; status: number; longitude: number; latitude: number; dayOffset: number; }