import { PageResult, PageParams } from './common';

export interface RejectItem {
  id: number;
  /** 科目 */
  subject: string;
  /** 分组序号 */
  groupNo: number;
  /** 准考证号 */
  examNo: string;
  /** 密号 */
  secretNo: string;
  /** 打回原因 */
  rejectReason: string;
  /** 评卷员 */
  marker: string;
  /** 给分明细 */
  scoreDetails: string;
  /** 打回人 */
  rejectBy: string;
  /** 打回时间 */
  rejectTime: number;
}
export type RejectListPageRes = PageResult<RejectItem>;

export interface RejectListFilter {
  /** 科目 */
  subject: number | null;
  /** 分组序号 */
  groupNo: number;
  /** 打回原因 */
  rejectReason: string;
  /** 评卷员 */
  marker: string;
  /** 打回人 */
  rejectBy: string;
}
export type RejectListPageParams = PageParams<RejectListFilter>;

// 打回统计
export interface RejectStatisticsItem {
  /** 科目 */
  subject: string;
  /** 分组序号 */
  groupNo: number;
  /** 任务总数 */
  totalTasks: number;
  /** 已完成数量 */
  completedTasks: number;
  /** 打回数量 */
  rejectCount: number;
  /** 打回率 */
  rejectRate: number;
}
export type RejectStatisticsListRes = PageResult<RejectStatisticsItem>;

export interface RejectStatisticsFilter {
  /** 科目 */
  subject: number | null;
  /** 显示分组 */
  showGroupNo: boolean;
}
export type RejectStatisticsListParams = PageParams<RejectStatisticsFilter>;

// 打回卷分类
export interface RejectTypeItem {
  // 编号
  id: number;
  // 名称
  name: string;
  // 类型
  type: string;
}

export interface RejectTypeUpdateParam {
  id?: number;
  examId: number;
  name: string;
}
