// 供应商年度审查模块 dao 接口

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

  // 年度审查列表请求参数
  interface ReviewListRequest {
    basePageRequest: BasePageRequest;
    [property: string]: any;
  }

  // 年度审查列表响应
  interface ReviewListResponse {
    code: number;
    data: ReviewListResponseData;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 年度审查列表响应数据
  interface ReviewListResponseData {
    countId: null;
    current: number;
    hitCount: boolean;
    maxLimit: null;
    optimizeCountSql: boolean;
    orders: any[];
    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: ReviewRecord;
    message: string;
    success: boolean;
    [property: string]: any;
  }

  // 打分项
  interface ScoreItem {
    id: string;
    name: string;
    description: string;
    examineResult: string;
    remark: string;
    [property: string]: any;
  }

  // 打分请求
  interface ScoreRequest {
    id: string;
    scoreVoList: ScoreItem[];
    [property: string]: any;
  }

  // 通用API响应
  interface ApiResponse<T = any> {
    code: number;
    data: T;
    message: string;
    success: boolean;
    [property: string]: any;
  }
}
