/** 试卷状态（字典 tmsOpenClosedInvalid） */
export type PaperStatus = 'open' | 'closed' | 'invalid';

/** 试题排序（字典 tmsPaperSortMode） */
export type PaperSortMode = 'paper' | 'random';

export interface PaperQuestionItem {
  id?: string;
  sectionId?: string;
  questionId: string;
  questionNo?: string;
  stem?: string;
  questionType?: string;
  bankName?: string;
  score?: number | null;
  sortNo?: number;
}

export interface PaperSectionItem {
  /** 前端临时 key 或已保存 ID */
  id: string;
  sectionName: string;
  questionType?: string;
  sortNo?: number;
  questions: PaperQuestionItem[];
}

export interface PaperEntity {
  id?: string;
  /** 试卷编号，如 260001 */
  paperNo?: string;
  paperName: string;
  bizStatus: PaperStatus;
  durationMin?: number | null;
  examStart?: string | number | null;
  examEnd?: string | number | null;
  scorePublishTime?: string | number | null;
  passScore?: number | null;
  totalScore?: number | null;
  sortMode: PaperSortMode;
  hasSubjective?: string;
  remark?: string;
  creatorTime?: string;
  questionCount?: number;
  sections?: PaperSectionItem[];
}

export interface PaperPageQuery {
  currentPage?: number;
  pageSize?: number;
  bizStatus?: PaperStatus | '';
  keyword?: string;
}
