import { DataState,FieldInfo } from 'model-util-base'
/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorHistory{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 模板id
    * @type { string }
    */
    templateId?: string;
    /**
    * 规则设置id
    * @type { string }
    */
    settingId?: string;
    /**
    * 实际告警值
    * @type { string }
    */
    actualAlertValue?: string;
    /**
    * 实际告警值单位
    * @type { string }
    */
    actualAlertValueUnit?: string;
    /**
    * 告警时间
    * @type { Date }
    */
    alertTime?: Date;
    /**
    * 报警级别
    * @type { string }
    */
    alarmLevel?: string;
    /**
    * 是否已通知
    * @type { boolean }
    */
    notified?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 日志类型（MMS-中台；FMS-前台；SMS-独立服务）
    * @type { string }
    */
    msType?: string;
}
export class MonitorHistoryMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('templateId','模板id');
    }
    static get SETTING_ID(): FieldInfo{  
        return new FieldInfo('settingId','规则设置id');
    }
    static get ACTUAL_ALERT_VALUE(): FieldInfo{  
        return new FieldInfo('actualAlertValue','实际告警值');
    }
    static get ACTUAL_ALERT_VALUE_UNIT(): FieldInfo{  
        return new FieldInfo('actualAlertValueUnit','实际告警值单位');
    }
    static get ALERT_TIME(): FieldInfo{  
        return new FieldInfo('alertTime','告警时间');
    }
    static get ALARM_LEVEL(): FieldInfo{  
        return new FieldInfo('alarmLevel','报警级别');
    }
    static get NOTIFIED(): FieldInfo{  
        return new FieldInfo('notified','是否已通知');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get MS_TYPE(): FieldInfo{  
        return new FieldInfo('msType','日志类型（MMS-中台；FMS-前台；SMS-独立服务）');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorHistoryContactRel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 告警历史id
    * @type { string }
    */
    historyId?: string;
    /**
    * 联系组id
    * @type { string }
    */
    contactGroupId?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorHistoryContactRelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get HISTORY_ID(): FieldInfo{  
        return new FieldInfo('historyId','告警历史id');
    }
    static get CONTACT_GROUP_ID(): FieldInfo{  
        return new FieldInfo('contactGroupId','联系组id');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorContactGroup{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 分组名
    * @type { string }
    */
    groupName?: string;
    /**
    * 备注
    * @type { string }
    */
    remark?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorContactGroupMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get GROUP_NAME(): FieldInfo{  
        return new FieldInfo('groupName','分组名');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','备注');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorContactGroupRel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 联系人id
    * @type { string }
    */
    contactId?: string;
    /**
    * 联系组id
    * @type { string }
    */
    groupId?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * extend field in SysUser
    * 电话
    * @type { string }
    */
    contactPhone?: string;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class MonitorContactGroupRelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get CONTACT_ID(): FieldInfo{  
        return new FieldInfo('contactId','联系人id');
    }
    static get GROUP_ID(): FieldInfo{  
        return new FieldInfo('groupId','联系组id');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get CONTACT_PHONE(): FieldInfo{  
        return new FieldInfo('contactPhone','电话');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRuleIndicators{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 指标编码
    * @type { string }
    */
    indicatorsCode?: string;
    /**
    * 指标名称
    * @type { string }
    */
    indicatorsName?: string;
    /**
    * 指标单位
    * @type { string }
    */
    indicatorsUnit?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorRuleIndicatorsMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get INDICATORS_CODE(): FieldInfo{  
        return new FieldInfo('indicatorsCode','指标编码');
    }
    static get INDICATORS_NAME(): FieldInfo{  
        return new FieldInfo('indicatorsName','指标名称');
    }
    static get INDICATORS_UNIT(): FieldInfo{  
        return new FieldInfo('indicatorsUnit','指标单位');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorHistoryServiceRel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 告警历史id
    * @type { string }
    */
    historyId?: string;
    /**
    * 服务分组id
    * @type { string }
    */
    serviceGroupId?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * service_project_id
    * @type { string }
    */
    serviceProjectId?: string;
}
export class MonitorHistoryServiceRelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get HISTORY_ID(): FieldInfo{  
        return new FieldInfo('historyId','告警历史id');
    }
    static get SERVICE_GROUP_ID(): FieldInfo{  
        return new FieldInfo('serviceGroupId','服务分组id');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get SERVICE_PROJECT_ID(): FieldInfo{  
        return new FieldInfo('serviceProjectId','service_project_id');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorServiceGroup{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 分组名
    * @type { string }
    */
    groupName?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorServiceGroupMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get GROUP_NAME(): FieldInfo{  
        return new FieldInfo('groupName','分组名');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorServiceProject{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 服务中心编码
    * @type { string }
    */
    serviceCenterCode?: string;
    /**
    * 服务中心名称
    * @type { string }
    */
    serviceCenterName?: string;
    /**
    * 应用编码
    * @type { string }
    */
    appCode?: string;
    /**
    * 应用名称
    * @type { string }
    */
    appName?: string;
    /**
    * env_code
    * @type { string }
    */
    envCode?: string;
    /**
    * project_id
    * @type { string }
    */
    projectId?: string;
    /**
    * project_type
    * @type { string }
    */
    projectType?: string;
    /**
    * pid
    * @type { string }
    */
    pid?: string;
    /**
    * service_group_id
    * @type { string }
    */
    serviceGroupId?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorServiceProjectMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SERVICE_CENTER_CODE(): FieldInfo{  
        return new FieldInfo('serviceCenterCode','服务中心编码');
    }
    static get SERVICE_CENTER_NAME(): FieldInfo{  
        return new FieldInfo('serviceCenterName','服务中心名称');
    }
    static get APP_CODE(): FieldInfo{  
        return new FieldInfo('appCode','应用编码');
    }
    static get APP_NAME(): FieldInfo{  
        return new FieldInfo('appName','应用名称');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','env_code');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','project_id');
    }
    static get PROJECT_TYPE(): FieldInfo{  
        return new FieldInfo('projectType','project_type');
    }
    static get PID(): FieldInfo{  
        return new FieldInfo('pid','pid');
    }
    static get SERVICE_GROUP_ID(): FieldInfo{  
        return new FieldInfo('serviceGroupId','service_group_id');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRulesettingServiceRel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 规则设置id
    * @type { string }
    */
    settingId?: string;
    /**
    * 服务分组id
    * @type { string }
    */
    serviceGroupId?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * extend field in MonitorServiceProject
    * 服务中心编码
    * @type { string }
    */
    serviceCenterCode?: string;
    /**
    * extend field in MonitorServiceProject
    * 服务中心名称
    * @type { string }
    */
    serviceCenterName?: string;
    /**
    * extend field in MonitorServiceProject
    * 应用编码
    * @type { string }
    */
    appCode?: string;
    /**
    * extend field in MonitorServiceProject
    * 应用名称
    * @type { string }
    */
    appName?: string;
    /**
    * extend field in MonitorServiceProject
    * env_code
    * @type { string }
    */
    envCode?: string;
    /**
    * extend field in MonitorServiceProject
    * project_id
    * @type { string }
    */
    projectId?: string;
    /**
    * extend field in MonitorServiceProject
    * project_type
    * @type { string }
    */
    projectType?: string;
    /**
    * extend field in MonitorServiceProject
    * pid
    * @type { string }
    */
    pid?: string;
    /**
    * extend field in MonitorServiceProject
    * 主键
    * @type { string }
    */
    serviceProjectId?: string;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class MonitorRulesettingServiceRelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SETTING_ID(): FieldInfo{  
        return new FieldInfo('settingId','规则设置id');
    }
    static get SERVICE_GROUP_ID(): FieldInfo{  
        return new FieldInfo('serviceGroupId','服务分组id');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get SERVICE_CENTER_CODE(): FieldInfo{  
        return new FieldInfo('serviceCenterCode','服务中心编码');
    }
    static get SERVICE_CENTER_NAME(): FieldInfo{  
        return new FieldInfo('serviceCenterName','服务中心名称');
    }
    static get APP_CODE(): FieldInfo{  
        return new FieldInfo('appCode','应用编码');
    }
    static get APP_NAME(): FieldInfo{  
        return new FieldInfo('appName','应用名称');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','env_code');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','project_id');
    }
    static get PROJECT_TYPE(): FieldInfo{  
        return new FieldInfo('projectType','project_type');
    }
    static get PID(): FieldInfo{  
        return new FieldInfo('pid','pid');
    }
    static get SERVICE_PROJECT_ID(): FieldInfo{  
        return new FieldInfo('serviceProjectId','主键');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface SysUser{
    /**
    * ID
    * @type { string }
    */
    id?: string;
    /**
    * 姓名
    * @type { string }
    */
    name?: string;
    /**
    * 邮箱地址
    * @type { string }
    */
    email?: string;
    /**
    * 昵称
    * @type { string }
    */
    nickname?: string;
    /**
    * 用户头像
    * @type { string }
    */
    avatar?: string;
    /**
    * 是否超级用户
    * @type { boolean }
    */
    isAdmin?: boolean;
    /**
    * 登录密码
    * @type { string }
    */
    password?: string;
    /**
    * 00 正常，01：失效
    * @type { string }
    */
    status?: string;
    /**
    * 电话
    * @type { string }
    */
    phone?: string;
    /**
    * 企业微信用户ID
    * @type { string }
    */
    wxUserId?: string;
    /**
    * 科拓统一登录用户ID
    * @type { string }
    */
    ktUserId?: string;
    /**
    * API秘钥
    * @type { string }
    */
    apiKey?: string;
    /**
    * 部门名称
    * @type { string }
    */
    departmentName?: string;
    /**
    * REMARK
    * @type { string }
    */
    remark?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class SysUserMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','ID');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','姓名');
    }
    static get EMAIL(): FieldInfo{  
        return new FieldInfo('email','邮箱地址');
    }
    static get NICKNAME(): FieldInfo{  
        return new FieldInfo('nickname','昵称');
    }
    static get AVATAR(): FieldInfo{  
        return new FieldInfo('avatar','用户头像');
    }
    static get IS_ADMIN(): FieldInfo{  
        return new FieldInfo('isAdmin','是否超级用户');
    }
    static get PASSWORD(): FieldInfo{  
        return new FieldInfo('password','登录密码');
    }
    static get STATUS(): FieldInfo{  
        return new FieldInfo('status','00 正常，01：失效');
    }
    static get PHONE(): FieldInfo{  
        return new FieldInfo('phone','电话');
    }
    static get WX_USER_ID(): FieldInfo{  
        return new FieldInfo('wxUserId','企业微信用户ID');
    }
    static get KT_USER_ID(): FieldInfo{  
        return new FieldInfo('ktUserId','科拓统一登录用户ID');
    }
    static get API_KEY(): FieldInfo{  
        return new FieldInfo('apiKey','API秘钥');
    }
    static get DEPARTMENT_NAME(): FieldInfo{  
        return new FieldInfo('departmentName','部门名称');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','REMARK');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRulesettingContactRel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 规则设置id
    * @type { string }
    */
    settingId?: string;
    /**
    * 联系组id
    * @type { string }
    */
    contactGroupId?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * extend field in MonitorContactGroupRel
    * 电话
    * @type { string }
    */
    contactPhone?: string;
    /**
    * extend field in MonitorContactGroupRel
    * 联系人id
    * @type { string }
    */
    contactId?: string;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class MonitorRulesettingContactRelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SETTING_ID(): FieldInfo{  
        return new FieldInfo('settingId','规则设置id');
    }
    static get CONTACT_GROUP_ID(): FieldInfo{  
        return new FieldInfo('contactGroupId','联系组id');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get CONTACT_PHONE(): FieldInfo{  
        return new FieldInfo('contactPhone','电话');
    }
    static get CONTACT_ID(): FieldInfo{  
        return new FieldInfo('contactId','联系人id');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRuleSetting{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 模板名称
    * @type { string }
    */
    templateId?: string;
    /**
    * 报警级别
    * @type { string }
    */
    alarmLevel?: string;
    /**
    * 是否启用
    * @type { boolean }
    */
    enable?: boolean;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * 是否变更
    * @type { boolean }
    */
    changed?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * extend field in MonitorRuleTemplate
    * 模板名称
    * @type { string }
    */
    templateName?: string;
    /**
    * extend field in MonitorRuleTemplate
    * 指标编码
    * @type { string }
    */
    indicatorsCode?: string;
    /**
    * extend field in MonitorRuleTemplate
    * 周期
    * @type { number }
    */
    period?: number;
    /**
    * extend field in MonitorRuleTemplate
    * 统计项目
    * @type { string }
    */
    statistics?: string;
    /**
    * extend field in MonitorRuleTemplate
    * 大小关系
    * @type { string }
    */
    relation?: string;
    /**
    * extend field in MonitorRuleTemplate
    * 阈值
    * @type { string }
    */
    threshold?: string;
    /**
    * 子表 MonitorRulesettingServiceRel 
    * @type { MonitorRulesettingServiceRel[] }
    */
    monitorRulesettingServiceRel?:MonitorRulesettingServiceRel[];
    /**
    * 子表 MonitorRulesettingContactRel 
    * @type { MonitorRulesettingContactRel[] }
    */
    monitorRulesettingContactRel?:MonitorRulesettingContactRel[];

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class MonitorRuleSettingMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('templateId','模板名称');
    }
    static get ALARM_LEVEL(): FieldInfo{  
        return new FieldInfo('alarmLevel','报警级别');
    }
    static get ENABLE(): FieldInfo{  
        return new FieldInfo('enable','是否启用');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CHANGED(): FieldInfo{  
        return new FieldInfo('changed','是否变更');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('templateName','模板名称');
    }
    static get INDICATORS_CODE(): FieldInfo{  
        return new FieldInfo('indicatorsCode','指标编码');
    }
    static get PERIOD(): FieldInfo{  
        return new FieldInfo('period','周期');
    }
    static get STATISTICS(): FieldInfo{  
        return new FieldInfo('statistics','统计项目');
    }
    static get RELATION(): FieldInfo{  
        return new FieldInfo('relation','大小关系');
    }
    static get THRESHOLD(): FieldInfo{  
        return new FieldInfo('threshold','阈值');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRuleTemplate{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 模板名称
    * @type { string }
    */
    templateName?: string;
    /**
    * 描述
    * @type { string }
    */
    remark?: string;
    /**
    * 指标编码
    * @type { string }
    */
    indicatorsCode?: string;
    /**
    * 周期
    * @type { number }
    */
    period?: number;
    /**
    * 统计项目
    * @type { string }
    */
    statistics?: string;
    /**
    * 大小关系
    * @type { string }
    */
    relation?: string;
    /**
    * 阈值
    * @type { string }
    */
    threshold?: string;
    /**
    * deleted
    * @type { boolean }
    */
    deleted?: boolean;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class MonitorRuleTemplateMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('templateName','模板名称');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','描述');
    }
    static get INDICATORS_CODE(): FieldInfo{  
        return new FieldInfo('indicatorsCode','指标编码');
    }
    static get PERIOD(): FieldInfo{  
        return new FieldInfo('period','周期');
    }
    static get STATISTICS(): FieldInfo{  
        return new FieldInfo('statistics','统计项目');
    }
    static get RELATION(): FieldInfo{  
        return new FieldInfo('relation','大小关系');
    }
    static get THRESHOLD(): FieldInfo{  
        return new FieldInfo('threshold','阈值');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-09-15 11:36
 */
export interface MonitorRuleRunLog{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 监控设置ID
    * @type { string }
    */
    settingId?: string;
    /**
    * 持续异常次数
    * @type { number }
    */
    errorCount?: number;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * template_id
    * @type { string }
    */
    templateId?: string;
    /**
    * template_threshold
    * @type { string }
    */
    templateThreshold?: string;
    /**
    * project_id
    * @type { string }
    */
    projectId?: string;
    /**
    * pid
    * @type { string }
    */
    pid?: string;
    /**
    * project_version
    * @type { string }
    */
    projectVersion?: string;
    /**
    * pod_id
    * @type { string }
    */
    podId?: string;
    /**
    * 最后执行时间
    * @type { Date }
    */
    lastRunTime?: Date;
    /**
    * 下次执行时间
    * @type { Date }
    */
    nextRunTime?: Date;
    /**
    * project_desc
    * @type { string }
    */
    projectDesc?: string;
    /**
    * 异常指标值
    * @type { string }
    */
    actualAlertValue?: string;
    /**
    * 最近告警时间
    * @type { Date }
    */
    lastAlertTime?: Date;
    /**
    * 下次告警时间
    * @type { Date }
    */
    nextAlertTime?: Date;
    /**
    * 告警次数
    * @type { number }
    */
    alertCount?: number;
    /**
    * service_group_id
    * @type { string }
    */
    serviceGroupId?: string;
    /**
    * project_type
    * @type { string }
    */
    projectType?: string;
}
export class MonitorRuleRunLogMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SETTING_ID(): FieldInfo{  
        return new FieldInfo('settingId','监控设置ID');
    }
    static get ERROR_COUNT(): FieldInfo{  
        return new FieldInfo('errorCount','持续异常次数');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('templateId','template_id');
    }
    static get TEMPLATE_THRESHOLD(): FieldInfo{  
        return new FieldInfo('templateThreshold','template_threshold');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','project_id');
    }
    static get PID(): FieldInfo{  
        return new FieldInfo('pid','pid');
    }
    static get PROJECT_VERSION(): FieldInfo{  
        return new FieldInfo('projectVersion','project_version');
    }
    static get POD_ID(): FieldInfo{  
        return new FieldInfo('podId','pod_id');
    }
    static get LAST_RUN_TIME(): FieldInfo{  
        return new FieldInfo('lastRunTime','最后执行时间');
    }
    static get NEXT_RUN_TIME(): FieldInfo{  
        return new FieldInfo('nextRunTime','下次执行时间');
    }
    static get PROJECT_DESC(): FieldInfo{  
        return new FieldInfo('projectDesc','project_desc');
    }
    static get ACTUAL_ALERT_VALUE(): FieldInfo{  
        return new FieldInfo('actualAlertValue','异常指标值');
    }
    static get LAST_ALERT_TIME(): FieldInfo{  
        return new FieldInfo('lastAlertTime','最近告警时间');
    }
    static get NEXT_ALERT_TIME(): FieldInfo{  
        return new FieldInfo('nextAlertTime','下次告警时间');
    }
    static get ALERT_COUNT(): FieldInfo{  
        return new FieldInfo('alertCount','告警次数');
    }
    static get SERVICE_GROUP_ID(): FieldInfo{  
        return new FieldInfo('serviceGroupId','service_group_id');
    }
    static get PROJECT_TYPE(): FieldInfo{  
        return new FieldInfo('projectType','project_type');
    }
}


