/**
 * 评查结果数据模型
 */

import type { ReviewStatus } from './file';

export interface ReviewResult {
  id: string;
  fileId: string;
  fileName?: string; // 关联查询
  totalPoints: number;
  passPoints: number;
  warningPoints: number;
  errorPoints: number;
  score: number;
  reviewStatus: ReviewStatus;
  reviewedAt: string;
  reviewerId: string;
  reviewerName?: string; // 关联查询
  createdAt: string;
  updatedAt: string;
}

export type RuleCheckStatus = 'pass' | 'warning' | 'fail';

export interface RuleCheckResult {
  id: string;
  reviewResultId: string;
  ruleId: string;
  ruleName?: string; // 关联查询
  status: RuleCheckStatus;
  location: string;
  content: string;
  suggestion: string;
  manualReviewed: boolean;
  createdAt: string;
  updatedAt: string;
}

export interface AIAnalysis {
  id: string;
  reviewResultId: string;
  content: string;
  riskLevel: 'low' | 'medium' | 'high';
  suggestions: string[];
  createdAt: string;
}

// 评查点结果映射颜色
export const RULE_CHECK_STATUS_COLORS: Record<RuleCheckStatus, string> = {
  pass: 'success',
  warning: 'warning',
  fail: 'error'
};

// 评查点结果映射标签
export const RULE_CHECK_STATUS_LABELS: Record<RuleCheckStatus, string> = {
  pass: '通过',
  warning: '警告',
  fail: '错误'
}; 