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

  /**
   * 所属项目
   */
  projectId: string | number;

  /**
   * 父级
   */
  parentId: string | number;

  /**
   * 类型
   */
  type: number;

  /**
   * 名称
   */
  name: string;

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

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

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

}

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

  /**
   * 所属项目
   */
  projectId?: string | number;

  /**
   * 父级
   */
  parentId?: string | number;

  /**
   * 类型
   */
  type?: number;

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

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

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

  /**
   * 限制层级
   */
  restrictionLevel?: number;

}

export interface FolderQuery extends PageQuery {

  /**
   * 所属项目
   */
  projectId?: string | number;

  /**
   * 类型
   */
  type?: number;

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

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

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

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

  /**
   * 日期范围参数
   */
  params?: any;
}

/**
 * 项目VO
 */
export interface ProjectVO {
  /**
   * 序号
   */
  id: string | number;

  /**
   * 项目编号
   */
  code: string;

  /**
   * 名称
   */
  name: string;

  /**
   * 项目语言
   */
  language: string;

  /**
   * 项目类型
   */
  type: number;

  /**
   * 状态
   */
  status: string;

  /**
   * 开始时间
   */
  startTime: string;

  /**
   * 结束时间
   */
  endTime: string;

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

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

/**
 * 项目查询参数
 */
export interface ProjectQuery extends PageQuery {
  /**
   * 项目名
   */
  name?: string;

  /**
   * 项目编号
   */
  code?: string;

  /**
   * 项目语言
   */
  language?: string;

  /**
   * 项目类型
   */
  type?: number;

  /**
   * 项目状态
   */
  status?: string;

  /**
   * 日期范围参数
   */
  params?: any;
}

/**
 * 文件夹树形列表VO
 */
export interface FolderListVO {
  /**
   * 序号
   */
  id: string | number;

  /**
   * 名称
   */
  name: string;

  /**
   * 类型
   */
  type: number;

  /**
   * 子节点
   */
  children?: FolderListVO[];
}
