/**
 *  设备授权管理 - 软件包管理
 *  数据对象的Dto
 * */


import {columnsProps, pageInput} from "/@/api/admin/shareDto/shareDto";

/**
 * 软件包管理查询条件
 */
export  interface softwarePackageManagement_SearchFilter{
  /**软件类型 */
  softwareType?: string | number,
  /**软件名称 */
  softwareName?: string,
  /**版本 */
  version?: string,
  /**设备类型*/
  equipmentType?: string | number,
  /**开始的时间 */
  BeginTime?: string | null,
  /**开始的时间 */
  EndTime?: string | null,
}

/**
 * 软件包列表  表格信息
 */
export  interface softwarePackageManagement_TableData{
  /**id*/
  guid: number,
  /**日期*/
  date?: string,
  /**软件类型*/
  softwareType?: number | null | string,
  /**设备类型*/
  equipmentType?: number | null | string,
  /**软件名称*/
  softwareName?: string | null,
  /**版本号*/
  version?: string | null,
  /**说明*/
  explain?: string | null,
  /**状态*/
  state?: string | null | number,
  /**下载次数*/
  numberOfDownloads?: number | null,
  /**备注*/
  remark?: string | null
  /**发布日期*/
  releaseTime?: string | null
  /**上传日期*/
  uploadTime?: string | null
  /**下载地址*/
  downloadUrl?: string | null
  /**文件名*/
  fileName?: string | null,
  /**数字签名*/
  digitalSignature?: string | null,
}

/**
 * 软件包管理数据对象
 */

export  interface softwarePackageManagement_AllDto{
  time: string,
  /**加载显示 */
  loading: boolean,
  /**条件查询模块 */
  Filter: softwarePackageManagement_SearchFilter,
  /**表格信息 */
  tableModel: softwarePackageManagement_TableData [] | [],
  /**动态表头 */
  dynamicColumns: columnsProps [] | [],
  /**分页标识 */
  pageInput: pageInput,
  /**分页总数 */
  total: number,
}

/**结果输出*/
export interface softwarePackageManagement_DtoResult {
  /** 是否成功标记 */
  success?: boolean
  /** 编码 */
  code?: string | null
  /** 消息 */
  msg?: string | null
  /** 分页信息输出 */
  data?: softwarePackageManagement_PageOutput
}

/** 分页信息输出*/
export interface softwarePackageManagement_PageOutput{
  /**
   * 数据总数
   * @format int64
   */
  total?: number
  /** 数据 */
  list?: softwarePackageManagement_TableData[] | null
}

/** 分页信息输入 */
export interface softwarePackageManagement_PageInput {
  /**
   * 当前页标
   * @format int32
   */
  CurrentPage?: number
  /**
   * 每页大小
   * @format int32
   */
  PageSize?: number
  Filter?: softwarePackageManagement_SearchFilter
}

/**
 * And=0,Or=1
 * @format int32
 */
export type DynamicFilterLogic = 0 | 1

/**
 * Contains=0,StartsWith=1,EndsWith=2,NotContains=3,NotStartsWith=4,NotEndsWith=5,Equal=6,Equals=7,Eq=8,NotEqual=9,GreaterThan=10,GreaterThanOrEqual=11,LessThan=12,LessThanOrEqual=13,Range=14,DateRange=15,Any=16,NotAny=17,Custom=18
 * @format int32
 */
export type DynamicFilterOperator = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18
export interface DynamicFilterInfo {
  field?: string | null
  /** Contains=0,StartsWith=1,EndsWith=2,NotContains=3,NotStartsWith=4,NotEndsWith=5,Equal=6,Equals=7,Eq=8,NotEqual=9,GreaterThan=10,GreaterThanOrEqual=11,LessThan=12,LessThanOrEqual=13,Range=14,DateRange=15,Any=16,NotAny=17,Custom=18 */
  operator?: DynamicFilterOperator
  value?: string
  /** And=0,Or=1 */
  logic?: DynamicFilterLogic
  filters?: DynamicFilterInfo[] | null
}
/**
 * 软件包下载记录列表信息
 */
export  interface DownloadRecordDto{
  /**id*/
  fileId: number,
  /**文件名称*/
  fileName?: string,
  /**文件路径*/
  filePath?: string,
  /**下载时间*/
  downloadTime?: string,
  /**下载人员*/
  downloadedBy?: string,
}

/** 分页信息输出*/
export interface PageOutputDownloadRecordDto{
  /**
   * 数据总数
   * @format int64
   */
  total?: number
  /** 数据 */
  list?: DownloadRecordDto[] | null
}

/**结果输出*/
export interface ResultOutputPageOutputDownloadRecordDto{
  /** 是否成功标记 */
  success?: boolean
  /** 编码 */
  code?: string | null
  /** 消息 */
  msg?: string | null
  /** 分页信息输出 */
  data?: PageOutputDownloadRecordDto
}

/** 分页信息输入 */
export interface pageInputDownloadRecordDto{
  /**
   * 当前页标
   * @format int32
   */
  CurrentPage?: number
  /**
   * 每页大小
   * @format int32
   */
  PageSize?: number
  dynamicFilter?: DynamicFilterInfo
  filter?: DownloadRecordDto
}
