// 供应商年度结果模块 dao 接口

declare namespace supplierAnnualResult {
  // 基础分页请求参数
  interface BasePageRequest {
    pageNo: number;
    pageSize: number;
    [property: string]: any;
  }

  // 一级列表接口 - 年度结果任务列表请求参数
  interface TaskListRequest {
    basePageRequest: BasePageRequest;
    [property: string]: any;
  }

  // 一级列表接口 - 年度结果任务列表响应
  interface TaskListResponse {
    code: number;
    data: TaskListData;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 年度结果任务列表数据
  interface TaskListData {
    countId: null;
    current: number;
    hitCount: boolean;
    maxLimit: null;
    optimizeCountSql: boolean;
    orders: any[];
    pages: number;
    records: TaskRecord[];
    searchCount: boolean;
    size: number;
    total: number;
    [property: string]: any;
  }

  // 年度结果任务记录
  interface TaskRecord {
    annualreviewTheme: string;
    basePageRequest: null;
    deptName: string;
    endTime: string;
    id: string;
    startTime: string;
    status: string;
    statusName: string;
    [property: string]: any;
  }

  // 二级列表接口 - 供应商列表请求参数
  interface SupplierListRequest {
    annualreviewTaskId: string;
    basePageRequest: BasePageRequest;
    [property: string]: any;
  }

  // 二级列表接口 - 供应商列表响应
  interface SupplierListResponse {
    code: number;
    data: SupplierListData;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 供应商列表数据
  interface SupplierListData {
    countId: null;
    current: number;
    hitCount: boolean;
    maxLimit: null;
    optimizeCountSql: boolean;
    orders: any[];
    pages: number;
    records: SupplierRecord[];
    searchCount: boolean;
    size: number;
    total: number;
    [property: string]: any;
  }

  // 供应商记录
  interface SupplierRecord {
    annualreviewTaskId: string;
    basePageRequest: null;
    category: null;
    deptName: string;
    name: string;
    reviewResult: null;
    reviewResultName: string;
    supplierId: string;
    [property: string]: any;
  }

  // 三级列表接口 - 审查详情列表请求参数
  interface ReviewListRequest {
    basePageRequest: BasePageRequest;
    userId: string;
    [property: string]: any;
  }

  // 三级列表接口 - 审查详情列表响应
  interface ReviewListResponse {
    code: number;
    data: ReviewListData;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 审查详情列表数据
  interface ReviewListData {
    countId: null;
    current: number;
    hitCount: boolean;
    maxLimit: null;
    optimizeCountSql: boolean;
    orders: string[];
    pages: number;
    records: ReviewRecord[];
    searchCount: boolean;
    size: number;
    total: number;
    [property: string]: any;
  }

  // 审查详情记录
  interface ReviewRecord {
    annualreviewTheme: string;
    basePageRequest: null;
    deptName: string;
    endTime: string;
    id: string;
    name: string;
    reviewStatus: string;
    reviewStatusName: string;
    startTime: string;
    status: string;
    statusName: string;
    userId: null;
    userName: string;
    [property: string]: any;
  }

  // 详情接口 - 评审详情响应
  interface ReviewDetailResponse {
    code: number;
    data: ReviewDetailData;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 评审详情数据
  interface ReviewDetailData {
    category: null;
    name: string;
    taskIndicatorVo: TaskIndicatorVo[];
    [property: string]: any;
  }

  // 评分项
  interface TaskIndicatorVo {
    examineResult: null;
    id: string;
    isStar: string;
    itemName: string;
    remark: null;
    [property: string]: any;
  }
}
