import createEnumUtils from "./createEnumUtils";

// 通用词条
export enum GeneralClause {
  STANDARD = "标准词",
  SYNONYMS = "同义词"
}

// 条文类型
export enum ArticleEnum {
  FIRST = 1,
  RELATED = 2,
  OHTER = 3
}
export const ArticleType = createEnumUtils([
  { label: "首见条文", value: ArticleEnum.FIRST },
  { label: "相关条文", value: ArticleEnum.RELATED },
  { label: "普通条文", value: ArticleEnum.OHTER }
]);

// 体裁编码
export const StyleId = createEnumUtils([
  { label: "一般条文", value: 1 },
  { label: "歌赋", value: 2 },
  { label: "医案", value: 3 },
  { label: "其他条文", value: 4 }
]);

// 溯源状态

export enum TraceStatusEnum {
  PENDING = 0,
  RESOLVE = 1
}

export const TraceStatus = createEnumUtils([
  { label: "待处理", value: TraceStatusEnum.PENDING, tagType: "" },
  { label: "已处理", value: TraceStatusEnum.RESOLVE, tagType: "success" }
  // { label: "已删除", value: 2 }
]);

// 标注状态
export enum AnnoStatusEnum {
  UNASSIGNED = 1,
  ASSIGNED = 2,
  ANNOED = 3,
  REJECTED = 4,
  PASSED = 5,
  UPLOADED = 6
}

export const AnnoStatus = createEnumUtils([
  { label: "待分工", value: AnnoStatusEnum.UNASSIGNED, tagType: "" },
  { label: "待标注", value: AnnoStatusEnum.ASSIGNED, tagType: "success" },
  { label: "待审核", value: AnnoStatusEnum.ANNOED, tagType: "info" },
  { label: "标注退回", value: AnnoStatusEnum.REJECTED, tagType: "warning" },
  { label: "审核通过", value: AnnoStatusEnum.PASSED, tagType: "danger" },
  { label: "已上传", value: AnnoStatusEnum.UPLOADED, tagType: "primary" }
]);

// 标注提交状态

export const SubmitStatus = createEnumUtils([
  { label: "无操作", value: 0 },
  { label: "草稿", value: 1 },
  { label: "已提交", value: 2 }
]);

// 通用标记状态
export const FlagStatus = createEnumUtils([
  { label: "否", value: 0 },
  { label: "是", value: 1 }
]);
// 标引状态
export enum MarkStatusEnum {
  All = 0,
  UNASSIGNED = 1,
  ASSIGNED = 2,
  ANNOED = 3,
  ANNOEDAGAIN = 31,
  REJECTED = 4,
  REJECTEDAGAIN = 7,
  PASSED = 5,
  UPLOADED = 6
}

export const MarkStatus = createEnumUtils([
  { label: "全部", value: MarkStatusEnum.All, tagType: "" },
  { label: "待分配", value: MarkStatusEnum.UNASSIGNED, tagType: "" },
  { label: "待标引", value: MarkStatusEnum.ASSIGNED, tagType: "success" },
  { label: "待一审", value: MarkStatusEnum.ANNOED, tagType: "info" },
  { label: "待二审", value: MarkStatusEnum.ANNOEDAGAIN, tagType: "info" },
  { label: "一审退回", value: MarkStatusEnum.REJECTED, tagType: "warning" },
  { label: "二审退回", value: MarkStatusEnum.REJECTEDAGAIN, tagType: "warning" },
  { label: "审核通过", value: MarkStatusEnum.PASSED, tagType: "danger" },
  { label: "已入库", value: MarkStatusEnum.UPLOADED, tagType: "primary" }
]);
