/**
 * 评查点数据模型
 */

export type RuleType = 'essential' | 'content' | 'format' | 'legal' | 'business';
export type RulePriority = 'high' | 'medium' | 'low';

export interface Rule {
  id: string;
  code: string;
  name: string;
  ruleGroupId: string;
  groupName?: string; // 关联查询名称
  ruleType: RuleType;
  priority: RulePriority;
  description: string;
  checkMethod: 'automatic' | 'manual' | 'mixed';
  prompt: string;
  isActive: boolean;
  createdAt: string;
  updatedAt: string;
}

export interface RuleGroup {
  id: string;         // 分组ID
  name: string;       // 分组名称
  code: string;       // 分组编码
  description: string; // 分组描述
  status: 'active' | 'inactive'; // 分组状态
  sortOrder: number;  // 排序顺序
  createdAt: string;  // 创建时间
  updatedAt: string;  // 更新时间
}

export const RULE_TYPE_LABELS: Record<RuleType, string> = {
  essential: '基本要素类',
  content: '内容合规类',
  format: '格式规范类',
  legal: '法律风险类',
  business: '业务专项类'
};

export const RULE_TYPE_COLORS: Record<RuleType, string> = {
  essential: 'blue',
  content: 'purple',
  format: 'green',
  legal: 'cyan',
  business: 'orange'
};

export const RULE_PRIORITY_LABELS: Record<RulePriority, string> = {
  high: '高',
  medium: '中',
  low: '低'
};

export const RULE_PRIORITY_COLORS: Record<RulePriority, string> = {
  high: 'red',
  medium: 'orange',
  low: 'green'
}; 