linkedgeEnum.ts 4.23 KB
import { useI18n } from '/@/hooks/web/useI18n';

const { t } = useI18n(); // 加载国际化

/**
 * 运算符枚举值
 */

// 数字运算符或者时间运算符
export enum NumberOperationEnum {
  EQUAL = 'EQUAL',
  NOT_EQUAL = 'NOT_EQUAL',
  LESS = 'LESS',
  LESS_OR_EQUAL = 'LESS_OR_EQUAL',
  GREATER = 'GREATER',
  GREATER_OR_EQUAL = 'GREATER_OR_EQUAL',
}

export enum NumberOperationNameEnum {
  EQUAL = t('rule.linkedge.index.equal') as any,
  NOT_EQUAL = t('rule.linkedge.index.notEqual') as any,
  LESS = t('rule.linkedge.index.less') as any,
  LESS_OR_EQUAL = t('rule.linkedge.index.lessOrEqual') as any,
  GREATER = t('rule.linkedge.index.greater') as any,
  GREATER_OR_EQUAL = t('rule.linkedge.index.greaterOrEqual') as any,
}

export enum StringOperationEnum {
  EQUAL = 'EQUAL',
  NOT_EQUAL = 'NOT_EQUAL',
  STARTS_WITH = 'STARTS_WITH',
  ENDS_WITH = 'ENDS_WITH',
  CONTAINS = 'CONTAINS',
  NOT_CONTAINS = 'NOT_CONTAINS',
}

export enum StringOperationNameEnum {
  EQUAL = t('rule.linkedge.index.equal') as any,
  NOT_EQUAL = t('rule.linkedge.index.notEqual') as any,
  STARTS_WITH = t('rule.linkedge.index.startsWith') as any,
  ENDS_WITH = t('rule.linkedge.index.endsWith') as any,
  CONTAINS = t('rule.linkedge.index.contains') as any,
  NOT_CONTAINS = t('rule.linkedge.index.notContains') as any,
}

export enum BooleanOperationEnum {
  EQUAL = 'EQUAL',
  NOT_EQUAL = 'NOT_EQUAL',
}

export enum BooleanOperationNameEnum {
  EQUAL = t('rule.linkedge.index.equal') as any,
  NOT_EQUAL = t('rule.linkedge.index.notEqual') as any,
}

export enum BooleanOperationValueEnum {
  TRUE = 'true',
  FALSE = 'false',
}

export enum BooleanOperationValueNameEnum {
  TRUE = t('rule.linkedge.index.true') as any,
  FALSE = t('rule.linkedge.index.false') as any,
}

export enum FlipFlopTypeEnum {
  SIMPLE = 'SIMPLE',
  DURATION = 'DURATION',
  REPEATING = 'REPEATING',
}

export enum ScheduleTypeEnum {
  ANY_TIME = 'ANY_TIME',
  SPECIFIC_TIME = 'SPECIFIC_TIME',
  CUSTOM = 'CUSTOM',
}

export enum ScheduleTypeNameEnum {
  ANY_TIME = t('rule.linkedge.index.anyTime') as any,
  SPECIFIC_TIME = t('rule.linkedge.index.specificTime') as any,
  CUSTOM = t('rule.linkedge.index.custom') as any,
}

export enum FlipFlopTypeNameEnum {
  SIMPLE = t('rule.linkedge.index.simple') as any,
  DURATION = t('rule.linkedge.index.duration') as any,
  REPEATING = t('rule.linkedge.index.repetitions') as any,
}

export enum TriggerTypeEnum {
  DEVICE_TRIGGER = 'DEVICE_TRIGGER',
  SCHEDULE_TRIGGER = 'SCHEDULE_TRIGGER',
  SCENE_TRIGGER = 'SCENE_TRIGGER',
  HAND_ACT = 'HAND_ACT',
}

export enum TriggerTypeNameEnum {
  DEVICE_TRIGGER = t('rule.linkedge.index.deviceTrigger') as any,
  SCHEDULE_TRIGGER = t('rule.linkedge.index.scheduleTrigger') as any,
  SCENE_TRIGGER = t('rule.linkedge.index.sceneTrigger') as any,
  HAND_ACT = t('rule.linkedge.index.handTrigger') as any,
}

export enum DeviceTriggerTypeEum {
  TIME_SERIES = 'TIME_SERIES',
  DEVICE_EVENT = 'DEVICE_EVENT',
}

export enum DeviceTriggerTypeNameEum {
  TIME_SERIES = t('rule.linkedge.index.attrTrigger') as any,
  DEVICE_EVENT = t('rule.linkedge.index.eventTrigger') as any,
}

export enum TriggerEntityTypeEnum {
  ALL = 'ALL',
  PART = 'PART',
}

export enum TriggerEntityTypeNameEnum {
  ALL = t('rule.linkedge.index.all') as any,
  PART = t('rule.linkedge.index.part') as any,
}

export enum TriggerValueTypeEnum {
  NUMERIC = 'NUMERIC',
  BOOLEAN = 'BOOLEAN',
  STRING = 'STRING',
  DATE_TIME = 'DATE_TIME',
}

export enum TriggerValueTypeNameEnum {
  NUMERIC = t('rule.linkedge.index.number') as any,
  BOOLEAN = t('rule.linkedge.index.boolean') as any,
  STRING = t('rule.linkedge.index.string') as any,
  DATE_TIME = t('rule.linkedge.index.dataTime') as any,
}

export enum TriggerUnitEnum {
  SECONDS = 'SECONDS',
  MINUTES = 'MINUTES',
  HOURS = 'HOURS',
  DAYS = 'DAYS',
}

export enum TriggerUnitNameEnum {
  SECONDS = t('rule.linkedge.index.seconds') as any,
  MINUTES = t('rule.linkedge.index.minutes') as any,
  HOURS = t('rule.linkedge.index.hours') as any,
  DAYS = t('rule.linkedge.index.days') as any,
}

export enum ExecutionActionEnum {
  DEVICE_OUT = 'DEVICE_OUT',
  MSG_NOTIFY = 'MSG_NOTIFY',
}

export enum ExecutionActionNameEnum {
  DEVICE_OUT = t('rule.linkedge.index.deviceOut') as any,
  MSG_NOTIFY = t('rule.linkedge.index.msgNotify') as any,
}