export interface IArea {
  serialNo: number;
  ID: string;
  compilationID: string;
  name: string;
}

export interface IInfoLib {
  ID: string;
  name: string;
  period: string; // 期数 eg: 2020年-05月
  compilationID: string;
  createDate: number;
}

export interface IInfoSearch {
  areaID: string;
  period: string;
  keyword: string;
  classTree: boolean;
  classID?: string; // 所属分类
  code?: string; // 编码
  commonAreaID?: string; // 通用地区ID
  classCode?: string;
}

export interface IAreaClass {
  ID: string;
  parentID: string;
  seq: number;
  name: string;
  areaID: string;
  libID: string;
}

// 关键字
export interface IInfoKeyword {
  keyword: string; // 关键字
  unit: string; // 单位
  coe: string; // 系数（关键字效果）
  group: string; // 组别
  optionCode: string; // 选项号
}

export interface IInfoPriceItem {
  ID: string;
  libID: string;
  classID: string; // 分类
  code: string;
  name: string;
  specs: string;
  unit: string;
  taxPrice: string; // 含税价格
  noTaxPrice: string; // 不含税价格
  classCode: string; // 别名编码
  expString: string; // 计算式
  dateRemark: string; // 月份备注
  keywordList?: IInfoKeyword[]; // 关键字
  // 以下冗余数据为方便前台信息价功能处理
  period: string; // 期数 eg: 2020-05
  areaID: string; // 地区
  compilationID: string; // 费用定额
  remark: string;
  matchString?: string; // 临时变量关键词匹配时用到
}

export interface IInfoPriceClass {
  compilationID: string;
  class: number; // 42
  code: string;
  name: string;
  specs: string;
  unit: string;
  classCode: string; // 00030A01 (5位+3位+3位)
}
