export interface DocumentVO {
  /**
   * 序号
   */
  id: string | number;

  /**
   * 所属文件夹
   */
  folderId: string | number;

  /**
   * 文档标识
   */
  specification?: string;

  /**
   * 计划文件名称/文件名称
   */
  name: string;

  /**
   * 文件名
   */
  fileName?: string;

  /**
   * 计划文件类型
   */
  planType?: string;

  /**
   * 状态
   */
  status?: number;

  /**
   * 递交截止时间
   */
  submitDeadline?: string;

  /**
   * 文档本体URL
   */
  url?: string;

  /**
   * 文件本体OSS ID
   */
  ossId?: string | number;

  /**
   * 递交时间
   */
  submitTime?: string;

  /**
   * 备注
   */
  note?: string;

  /**
   * 创建时间
   */
  createTime?: string;

  /**
   * 更新时间
   */
  updateTime?: string;

  /**
   * 计划递交人
   */
  submitter?: string;

  /**
   * 递交人ID
   */
  submitterId?: string | number;

  /**
   * 文档类型：0-非计划文档，1-计划文档
   */
  type?: number;
}

export interface DocumentForm extends BaseEntity {
  /**
   * 序号
   */
  id?: string | number;

  /**
   * 名称/计划名称
   */
  name?: string;

  /**
   * 文档类型：0-非计划文档，1-计划文档
   */
  type?: number;

  /**
   * 递交人ID
   */
  submitterId?: string | number;

  /**
   * 所属文件夹ID
   */
  folderId?: string | number;

  /**
   * 递交截止日期
   */
  submitDeadline?: string;

  /**
   * 计划文件类型
   */
  planType?: string;

  /**
   * 文件本体OSS ID
   */
  ossId?: string | number;

  /**
   * 状态
   */
  status?: number;

  /**
   * 递交时间
   */
  submitTime?: string;

  /**
   * 项目ID
   */
  projectId?: string | number;

  /**
   * 备注
   */
  note?: string;
}

export interface DocumentQuery extends PageQuery {
  /**
   * 文件名（模糊检索）
   */
  name?: string;

  /**
   * 文件夹ID
   */
  folderId?: string | number;
}

/**
 * 文档标识表单
 */
export interface DocumentMarkForm {
  /**
   * 文档ID
   */
  id: string | number;

  /**
   * 文档标识类型
   */
  type: string;
}

/**
 * 文档审核表单
 */
export interface DocumentAuditForm {
  /**
   * 文档ID
   */
  documentId: string | number;

  /**
   * 审核结果：3-通过，2-驳回
   */
  result: number;

  /**
   * 驳回理由
   */
  rejectReason?: string;
}

/**
 * 文档递交表单
 */
export interface DocumentSubmitForm {
  /**
   * 文档ID
   */
  documentId: string | number;

  /**
   * 文件本体OSS ID
   */
  ossId: string | number;
}
