import { DataState,FieldInfo } from 'model-util-base'
/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnLabel{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * 描述
    * @type { string }
    */
    describe?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnLabelMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get DESCRIBE(): FieldInfo{  
        return new FieldInfo('describe','描述');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnGateway{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 服务中心ID
    * @type { string }
    */
    serviceCenterId?: string;
    /**
    * 应用ID
    * @type { string }
    */
    appId?: string;
    /**
    * 环境ID
    * @type { string }
    */
    envId?: string;
    /**
    * TEST/PROD...
    * @type { string }
    */
    envCode?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * K8S集群ID
    * @type { string }
    */
    k8sId?: string;
    /**
    * 容器启动脚本：sleep 6000
    * @type { string }
    */
    startScript?: string;
    /**
    * 容器规格id
    * @type { string }
    */
    specTemplateId?: string;
    /**
    * 弹性伸缩模板ID
    * @type { string }
    */
    metricsTemplateId?: string;
    /**
    * 最小实例数
    * @type { number }
    */
    minInstance?: number;
    /**
    * 最大实例数
    * @type { number }
    */
    maxInstance?: number;
    /**
    * cpu
    * @type { string }
    */
    cpu?: string;
    /**
    * 内存
    * @type { string }
    */
    memory?: string;
    /**
    * 域名
    * @type { string }
    */
    domain?: string;
    /**
    * URI
    * @type { string }
    */
    uri?: string;
    /**
    * 应用选项配置JSON
    * @type { string }
    */
    appOptionsConfig?: string;
    /**
    * 0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败
    * @type { number }
    */
    deployStatus?: number;
    /**
    * 部署日志信息
    * @type { string }
    */
    deployMsg?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * k8s_name
    * @type { string }
    */
    k8sName?: string;
    /**
    * spec_template_name
    * @type { string }
    */
    specTemplateName?: string;
    /**
    * metrics_template_name
    * @type { string }
    */
    metricsTemplateName?: string;
    /**
    * 0:固定实例，1:弹性实例
    * @type { string }
    */
    elasticType?: string;
    /**
    * 阿里云/华为云SLBID
    * @type { string }
    */
    cnSlbId?: string;
    /**
    * deploy_tag
    * @type { string }
    */
    deployTag?: string;
    /**
    * 配置中心JSON
    * @type { string }
    */
    configCenter?: string;
    /**
    * 基础镜像ID
    * @type { string }
    */
    imageId?: string;
    /**
    * 基础镜像信息
    * @type { string }
    */
    imageInfo?: string;
    /**
    * SLB端口配置JSON
    * @type { string }
    */
    slbPortMapping?: string;
    /**
    * SLB映射管理端口号
    * @type { number }
    */
    slbAdminPort?: number;
    /**
    * SLB映射服务端口号
    * @type { number }
    */
    slbServicePort?: number;
    /**
    * k8s部署参数
    * @type { string }
    */
    k8sDeployParams?: string;
    /**
    * describe
    * @type { string }
    */
    describe?: string;
    /**
    * extend field in CnSLB
    * 名称
    * @type { string }
    */
    slbName?: string;
    /**
    * extend field in CnSLB
    * 服务地址
    * @type { string }
    */
    slbIp?: string;
    /**
    * 子表 CnLabelRef 
    * @type { CnLabelRef[] }
    */
    cnLabelRef?:CnLabelRef[];
    /**
    * 子表 CnK8sPod 
    * @type { CnK8sPod[] }
    */
    cnK8sPod?:CnK8sPod[];

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnGatewayMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SERVICE_CENTER_ID(): FieldInfo{  
        return new FieldInfo('serviceCenterId','服务中心ID');
    }
    static get APP_ID(): FieldInfo{  
        return new FieldInfo('appId','应用ID');
    }
    static get ENV_ID(): FieldInfo{  
        return new FieldInfo('envId','环境ID');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','TEST/PROD...');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','K8S集群ID');
    }
    static get START_SCRIPT(): FieldInfo{  
        return new FieldInfo('startScript','容器启动脚本：sleep 6000');
    }
    static get SPEC_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('specTemplateId','容器规格id');
    }
    static get METRICS_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('metricsTemplateId','弹性伸缩模板ID');
    }
    static get MIN_INSTANCE(): FieldInfo{  
        return new FieldInfo('minInstance','最小实例数');
    }
    static get MAX_INSTANCE(): FieldInfo{  
        return new FieldInfo('maxInstance','最大实例数');
    }
    static get CPU(): FieldInfo{  
        return new FieldInfo('cpu','cpu');
    }
    static get MEMORY(): FieldInfo{  
        return new FieldInfo('memory','内存');
    }
    static get DOMAIN(): FieldInfo{  
        return new FieldInfo('domain','域名');
    }
    static get URI(): FieldInfo{  
        return new FieldInfo('uri','URI');
    }
    static get APP_OPTIONS_CONFIG(): FieldInfo{  
        return new FieldInfo('appOptionsConfig','应用选项配置JSON');
    }
    static get DEPLOY_STATUS(): FieldInfo{  
        return new FieldInfo('deployStatus','0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败');
    }
    static get DEPLOY_MSG(): FieldInfo{  
        return new FieldInfo('deployMsg','部署日志信息');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get K8S_NAME(): FieldInfo{  
        return new FieldInfo('k8sName','k8s_name');
    }
    static get SPEC_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('specTemplateName','spec_template_name');
    }
    static get METRICS_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('metricsTemplateName','metrics_template_name');
    }
    static get ELASTIC_TYPE(): FieldInfo{  
        return new FieldInfo('elasticType','0:固定实例，1:弹性实例');
    }
    static get CN_SLB_ID(): FieldInfo{  
        return new FieldInfo('cnSlbId','阿里云/华为云SLBID');
    }
    static get DEPLOY_TAG(): FieldInfo{  
        return new FieldInfo('deployTag','deploy_tag');
    }
    static get CONFIG_CENTER(): FieldInfo{  
        return new FieldInfo('configCenter','配置中心JSON');
    }
    static get IMAGE_ID(): FieldInfo{  
        return new FieldInfo('imageId','基础镜像ID');
    }
    static get IMAGE_INFO(): FieldInfo{  
        return new FieldInfo('imageInfo','基础镜像信息');
    }
    static get SLB_PORT_MAPPING(): FieldInfo{  
        return new FieldInfo('slbPortMapping','SLB端口配置JSON');
    }
    static get SLB_ADMIN_PORT(): FieldInfo{  
        return new FieldInfo('slbAdminPort','SLB映射管理端口号');
    }
    static get SLB_SERVICE_PORT(): FieldInfo{  
        return new FieldInfo('slbServicePort','SLB映射服务端口号');
    }
    static get K8S_DEPLOY_PARAMS(): FieldInfo{  
        return new FieldInfo('k8sDeployParams','k8s部署参数');
    }
    static get DESCRIBE(): FieldInfo{  
        return new FieldInfo('describe','describe');
    }
    static get SLB_NAME(): FieldInfo{  
        return new FieldInfo('slbName','名称');
    }
    static get SLB_IP(): FieldInfo{  
        return new FieldInfo('slbIp','服务地址');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnOpsLog{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 记录实体ID
    * @type { string }
    */
    entityId?: string;
    /**
    * 操作前记录
    * @type { string }
    */
    opsBefore?: string;
    /**
    * 操作后记录
    * @type { string }
    */
    opsAfter?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnOpsLogMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get ENTITY_ID(): FieldInfo{  
        return new FieldInfo('entityId','记录实体ID');
    }
    static get OPS_BEFORE(): FieldInfo{  
        return new FieldInfo('opsBefore','操作前记录');
    }
    static get OPS_AFTER(): FieldInfo{  
        return new FieldInfo('opsAfter','操作后记录');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnDeployLog{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * k8s_id
    * @type { string }
    */
    k8sId?: string;
    /**
    * pod_id
    * @type { string }
    */
    podId?: string;
    /**
    * pod_ip
    * @type { string }
    */
    podIp?: string;
    /**
    * pvc_id
    * @type { string }
    */
    pvcId?: string;
    /**
    * pvc状态
    * @type { number }
    */
    pvcStatus?: number;
    /**
    * 启动时间
    * @type { Date }
    */
    startTime?: Date;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 部署ID
    * @type { string }
    */
    deployId?: string;
}
export class CnDeployLogMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','k8s_id');
    }
    static get POD_ID(): FieldInfo{  
        return new FieldInfo('podId','pod_id');
    }
    static get POD_IP(): FieldInfo{  
        return new FieldInfo('podIp','pod_ip');
    }
    static get PVC_ID(): FieldInfo{  
        return new FieldInfo('pvcId','pvc_id');
    }
    static get PVC_STATUS(): FieldInfo{  
        return new FieldInfo('pvcStatus','pvc状态');
    }
    static get START_TIME(): FieldInfo{  
        return new FieldInfo('startTime','启动时间');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get DEPLOY_ID(): FieldInfo{  
        return new FieldInfo('deployId','部署ID');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnBaseService{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 服务中心ID
    * @type { string }
    */
    serviceCenterId?: string;
    /**
    * 应用ID
    * @type { string }
    */
    appId?: string;
    /**
    * 环境ID
    * @type { string }
    */
    envId?: string;
    /**
    * TEST/PROD...
    * @type { string }
    */
    envCode?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * K8S集群ID
    * @type { string }
    */
    k8sId?: string;
    /**
    * 容器启动脚本：/opt/app/start.sh
    * @type { string }
    */
    startScript?: string;
    /**
    * SLB设置主键
    * @type { string }
    */
    cnSlbId?: string;
    /**
    * slb1:pod1,slb2:pod2(例：80:81,33:38)
    * @type { string }
    */
    slbPortMapping?: string;
    /**
    * 容器规格id
    * @type { string }
    */
    specTemplateId?: string;
    /**
    * 弹性伸缩模板ID
    * @type { string }
    */
    metricsTemplateId?: string;
    /**
    * 1
    * @type { number }
    */
    minInstance?: number;
    /**
    * 8
    * @type { number }
    */
    maxInstance?: number;
    /**
    * cpu
    * @type { string }
    */
    cpu?: string;
    /**
    * 内存
    * @type { string }
    */
    memory?: string;
    /**
    * 进程关键字
    * @type { string }
    */
    progressKeyword?: string;
    /**
    * 应用选项配置JSON
    * @type { string }
    */
    appOptionsConfig?: string;
    /**
    * 0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败
    * @type { number }
    */
    deployStatus?: number;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 部署日志信息
    * @type { string }
    */
    deployMsg?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * k8s_name
    * @type { string }
    */
    k8sName?: string;
    /**
    * spec_template_name
    * @type { string }
    */
    specTemplateName?: string;
    /**
    * metrics_template_name
    * @type { string }
    */
    metricsTemplateName?: string;
    /**
    * deploy_tag
    * @type { string }
    */
    deployTag?: string;
    /**
    * 配置中心JSON
    * @type { string }
    */
    configCenter?: string;
    /**
    * 基础镜像ID
    * @type { string }
    */
    imageId?: string;
    /**
    * 基础镜像信息
    * @type { string }
    */
    imageInfo?: string;
    /**
    * k8s部署参数
    * @type { string }
    */
    k8sDeployParams?: string;
    /**
    * describe
    * @type { string }
    */
    describe?: string;
    /**
    * extend field in CnSLB
    * 名称
    * @type { string }
    */
    slbName?: string;
    /**
    * 子表 CnLabelRef 
    * @type { CnLabelRef[] }
    */
    cnLabelRef?:CnLabelRef[];
    /**
    * 子表 CnK8sPod 
    * @type { CnK8sPod[] }
    */
    cnK8sPod?:CnK8sPod[];

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnBaseServiceMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SERVICE_CENTER_ID(): FieldInfo{  
        return new FieldInfo('serviceCenterId','服务中心ID');
    }
    static get APP_ID(): FieldInfo{  
        return new FieldInfo('appId','应用ID');
    }
    static get ENV_ID(): FieldInfo{  
        return new FieldInfo('envId','环境ID');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','TEST/PROD...');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','K8S集群ID');
    }
    static get START_SCRIPT(): FieldInfo{  
        return new FieldInfo('startScript','容器启动脚本：/opt/app/start.sh');
    }
    static get CN_SLB_ID(): FieldInfo{  
        return new FieldInfo('cnSlbId','SLB设置主键');
    }
    static get SLB_PORT_MAPPING(): FieldInfo{  
        return new FieldInfo('slbPortMapping','slb1:pod1,slb2:pod2(例：80:81,33:38)');
    }
    static get SPEC_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('specTemplateId','容器规格id');
    }
    static get METRICS_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('metricsTemplateId','弹性伸缩模板ID');
    }
    static get MIN_INSTANCE(): FieldInfo{  
        return new FieldInfo('minInstance','1');
    }
    static get MAX_INSTANCE(): FieldInfo{  
        return new FieldInfo('maxInstance','8');
    }
    static get CPU(): FieldInfo{  
        return new FieldInfo('cpu','cpu');
    }
    static get MEMORY(): FieldInfo{  
        return new FieldInfo('memory','内存');
    }
    static get PROGRESS_KEYWORD(): FieldInfo{  
        return new FieldInfo('progressKeyword','进程关键字');
    }
    static get APP_OPTIONS_CONFIG(): FieldInfo{  
        return new FieldInfo('appOptionsConfig','应用选项配置JSON');
    }
    static get DEPLOY_STATUS(): FieldInfo{  
        return new FieldInfo('deployStatus','0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get DEPLOY_MSG(): FieldInfo{  
        return new FieldInfo('deployMsg','部署日志信息');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get K8S_NAME(): FieldInfo{  
        return new FieldInfo('k8sName','k8s_name');
    }
    static get SPEC_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('specTemplateName','spec_template_name');
    }
    static get METRICS_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('metricsTemplateName','metrics_template_name');
    }
    static get DEPLOY_TAG(): FieldInfo{  
        return new FieldInfo('deployTag','deploy_tag');
    }
    static get CONFIG_CENTER(): FieldInfo{  
        return new FieldInfo('configCenter','配置中心JSON');
    }
    static get IMAGE_ID(): FieldInfo{  
        return new FieldInfo('imageId','基础镜像ID');
    }
    static get IMAGE_INFO(): FieldInfo{  
        return new FieldInfo('imageInfo','基础镜像信息');
    }
    static get K8S_DEPLOY_PARAMS(): FieldInfo{  
        return new FieldInfo('k8sDeployParams','k8s部署参数');
    }
    static get DESCRIBE(): FieldInfo{  
        return new FieldInfo('describe','describe');
    }
    static get SLB_NAME(): FieldInfo{  
        return new FieldInfo('slbName','名称');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnK8sPod{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 部署ID
    * @type { string }
    */
    deployId?: string;
    /**
    * IP地址
    * @type { string }
    */
    ip?: string;
    /**
    * POD_ID
    * @type { string }
    */
    podId?: string;
    /**
    * K8S_ID
    * @type { string }
    */
    k8sId?: string;
    /**
    * 环境代码
    * @type { string }
    */
    envCode?: string;
    /**
    * CNBS-基础服务、CNGATEWAY-网关服务、CNPRJ-原生项目
    * @type { string }
    */
    appType?: string;
    /**
    * 环境变量
    * @type { string }
    */
    envMap?: string;
    /**
    * Pending、Running、Succeeded、Failed、Unknown
    * @type { string }
    */
    status?: string;
    /**
    * 最近活跃时间
    * @type { Date }
    */
    lastActiveTime?: Date;
    /**
    * 最近轮询时间
    * @type { Date }
    */
    lastPollingTime?: Date;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 云厂商
    * @type { string }
    */
    cloudProvider?: string;
}
export class CnK8sPodMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get DEPLOY_ID(): FieldInfo{  
        return new FieldInfo('deployId','部署ID');
    }
    static get IP(): FieldInfo{  
        return new FieldInfo('ip','IP地址');
    }
    static get POD_ID(): FieldInfo{  
        return new FieldInfo('podId','POD_ID');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','K8S_ID');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','环境代码');
    }
    static get APP_TYPE(): FieldInfo{  
        return new FieldInfo('appType','CNBS-基础服务、CNGATEWAY-网关服务、CNPRJ-原生项目');
    }
    static get ENV_MAP(): FieldInfo{  
        return new FieldInfo('envMap','环境变量');
    }
    static get STATUS(): FieldInfo{  
        return new FieldInfo('status','Pending、Running、Succeeded、Failed、Unknown');
    }
    static get LAST_ACTIVE_TIME(): FieldInfo{  
        return new FieldInfo('lastActiveTime','最近活跃时间');
    }
    static get LAST_POLLING_TIME(): FieldInfo{  
        return new FieldInfo('lastPollingTime','最近轮询时间');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get CLOUD_PROVIDER(): FieldInfo{  
        return new FieldInfo('cloudProvider','云厂商');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnBuildTool{
    /**
    * id
    * @type { string }
    */
    id?: string;
    /**
    * 名称：maven、gradle、nodejs、go
    * @type { string }
    */
    name?: string;
    /**
    * 版本号：3.6.5、2.6、14、...
    * @type { string }
    */
    version?: string;
    /**
    * deleted
    * @type { string }
    */
    deleted?: string;
    /**
    * create_user_id
    * @type { string }
    */
    createUserId?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_user_id
    * @type { string }
    */
    updateUserId?: string;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 默认构建指令
    * @type { string }
    */
    buildCmd?: string;
}
export class CnBuildToolMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','id');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称：maven、gradle、nodejs、go');
    }
    static get VERSION(): FieldInfo{  
        return new FieldInfo('version','版本号：3.6.5、2.6、14、...');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','create_user_id');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','update_user_id');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
    static get BUILD_CMD(): FieldInfo{  
        return new FieldInfo('buildCmd','默认构建指令');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnRunningTarget{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 部署ID
    * @type { string }
    */
    deployId?: string;
    /**
    * K8S环境ID
    * @type { string }
    */
    k8sId?: string;
    /**
    * 网关ID
    * @type { string }
    */
    gatewayId?: string;
    /**
    * 网关API地址
    * @type { string }
    */
    gatewayAdminUrl?: string;
    /**
    * pod_id
    * @type { string }
    */
    podId?: string;
    /**
    * 环境代码
    * @type { string }
    */
    envCode?: string;
    /**
    * IP
    * @type { string }
    */
    ip?: string;
    /**
    * 端口号
    * @type { string }
    */
    port?: string;
    /**
    * 云厂商
    * @type { string }
    */
    cloudProvider?: string;
    /**
    * 最近活跃时间
    * @type { Date }
    */
    lastActiveTime?: Date;
    /**
    * 最近轮询时间
    * @type { Date }
    */
    lastPollingTime?: Date;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * gateway_route
    * @type { string }
    */
    gatewayRoute?: string;
    /**
    * healthy_url
    * @type { string }
    */
    healthyUrl?: string;
    /**
    * project_type
    * @type { string }
    */
    projectType?: string;
    /**
    * pid
    * @type { string }
    */
    pid?: string;
    /**
    * version
    * @type { string }
    */
    version?: string;
    /**
    * extend field in CnProjectDeploy
    * 灰度比例
    * @type { number }
    */
    weight?: number;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnRunningTargetMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get DEPLOY_ID(): FieldInfo{  
        return new FieldInfo('deployId','部署ID');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','K8S环境ID');
    }
    static get GATEWAY_ID(): FieldInfo{  
        return new FieldInfo('gatewayId','网关ID');
    }
    static get GATEWAY_ADMIN_URL(): FieldInfo{  
        return new FieldInfo('gatewayAdminUrl','网关API地址');
    }
    static get POD_ID(): FieldInfo{  
        return new FieldInfo('podId','pod_id');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','环境代码');
    }
    static get IP(): FieldInfo{  
        return new FieldInfo('ip','IP');
    }
    static get PORT(): FieldInfo{  
        return new FieldInfo('port','端口号');
    }
    static get CLOUD_PROVIDER(): FieldInfo{  
        return new FieldInfo('cloudProvider','云厂商');
    }
    static get LAST_ACTIVE_TIME(): FieldInfo{  
        return new FieldInfo('lastActiveTime','最近活跃时间');
    }
    static get LAST_POLLING_TIME(): FieldInfo{  
        return new FieldInfo('lastPollingTime','最近轮询时间');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get GATEWAY_ROUTE(): FieldInfo{  
        return new FieldInfo('gatewayRoute','gateway_route');
    }
    static get HEALTHY_URL(): FieldInfo{  
        return new FieldInfo('healthyUrl','healthy_url');
    }
    static get PROJECT_TYPE(): FieldInfo{  
        return new FieldInfo('projectType','project_type');
    }
    static get PID(): FieldInfo{  
        return new FieldInfo('pid','pid');
    }
    static get VERSION(): FieldInfo{  
        return new FieldInfo('version','version');
    }
    static get WEIGHT(): FieldInfo{  
        return new FieldInfo('weight','灰度比例');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnProjectDeploy{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 服务中心ID
    * @type { string }
    */
    serviceCenterId?: string;
    /**
    * 应用ID
    * @type { string }
    */
    appId?: string;
    /**
    * 环境ID
    * @type { string }
    */
    envId?: string;
    /**
    * TEST/PROD...
    * @type { string }
    */
    envCode?: string;
    /**
    * K8S集群ID
    * @type { string }
    */
    k8sId?: string;
    /**
    * K8S集群名称
    * @type { string }
    */
    k8sName?: string;
    /**
    * 项目ID
    * @type { string }
    */
    projectId?: string;
    /**
    * 网关ID
    * @type { string }
    */
    gatewayId?: string;
    /**
    * 项目版本
    * @type { string }
    */
    projectVersion?: string;
    /**
    * 容器规格id
    * @type { string }
    */
    specTemplateId?: string;
    /**
    * 弹性伸缩模板ID
    * @type { string }
    */
    metricsTemplateId?: string;
    /**
    * 弹性伸缩模板名称
    * @type { string }
    */
    metricsTemplateName?: string;
    /**
    * 容器规格名称
    * @type { string }
    */
    specTemplateName?: string;
    /**
    * 1
    * @type { number }
    */
    minInstance?: number;
    /**
    * 8
    * @type { number }
    */
    maxInstance?: number;
    /**
    * cpu
    * @type { string }
    */
    cpu?: string;
    /**
    * 内存
    * @type { string }
    */
    memory?: string;
    /**
    * 应用选项配置JSON
    * @type { string }
    */
    appOptionsConfig?: string;
    /**
    * Kafka配置
    * @type { string }
    */
    kafkaConfig?: string;
    /**
    * 0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败
    * @type { number }
    */
    deployStatus?: number;
    /**
    * 部署日志信息
    * @type { string }
    */
    deployMsg?: string;
    /**
    * 部署标记
    * @type { string }
    */
    deployTag?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 灰度比例
    * @type { number }
    */
    grayScale?: number;
    /**
    * project_version_id
    * @type { string }
    */
    projectVersionId?: string;
    /**
    * project_build_id
    * @type { string }
    */
    projectBuildId?: string;
    /**
    * k8s部署参数
    * @type { string }
    */
    k8sDeployParams?: string;
    /**
    * pid
    * @type { string }
    */
    pid?: string;
    /**
    * extend field in CnProjectBuild
    * 构建文件OSS文件名称
    * @type { string }
    */
    buildOssFilename?: string;
    /**
    * extend field in CnProject
    * 名称
    * @type { string }
    */
    projectName?: string;
    /**
    * extend field in CnProject
    * 健康检查url
    * @type { string }
    */
    healthyUrl?: string;
    /**
    * extend field in CnProject
    * 主类
    * @type { string }
    */
    mainClass?: string;
    /**
    * extend field in CnProject
    * 启动方式：0-java wrapper、1-springboot jar、2-tomcat、3-自定义shell
    * @type { number }
    */
    startType?: number;
    /**
    * extend field in CnProject
    * 自定义启动脚本
    * @type { string }
    */
    startScript?: string;
    /**
    * extend field in CnProject
    * 构建类型:jar、war、node、go
    * @type { string }
    */
    buildType?: string;
    /**
    * extend field in CnProject
    * kafka_topic
    * @type { string }
    */
    projectKafkaTopic?: string;
    /**
    * 子表 CnProjectContext 
    * @type { CnProjectContext[] }
    */
    cnProjectContext?:CnProjectContext[];

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnProjectDeployMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SERVICE_CENTER_ID(): FieldInfo{  
        return new FieldInfo('serviceCenterId','服务中心ID');
    }
    static get APP_ID(): FieldInfo{  
        return new FieldInfo('appId','应用ID');
    }
    static get ENV_ID(): FieldInfo{  
        return new FieldInfo('envId','环境ID');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','TEST/PROD...');
    }
    static get K8S_ID(): FieldInfo{  
        return new FieldInfo('k8sId','K8S集群ID');
    }
    static get K8S_NAME(): FieldInfo{  
        return new FieldInfo('k8sName','K8S集群名称');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','项目ID');
    }
    static get GATEWAY_ID(): FieldInfo{  
        return new FieldInfo('gatewayId','网关ID');
    }
    static get PROJECT_VERSION(): FieldInfo{  
        return new FieldInfo('projectVersion','项目版本');
    }
    static get SPEC_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('specTemplateId','容器规格id');
    }
    static get METRICS_TEMPLATE_ID(): FieldInfo{  
        return new FieldInfo('metricsTemplateId','弹性伸缩模板ID');
    }
    static get METRICS_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('metricsTemplateName','弹性伸缩模板名称');
    }
    static get SPEC_TEMPLATE_NAME(): FieldInfo{  
        return new FieldInfo('specTemplateName','容器规格名称');
    }
    static get MIN_INSTANCE(): FieldInfo{  
        return new FieldInfo('minInstance','1');
    }
    static get MAX_INSTANCE(): FieldInfo{  
        return new FieldInfo('maxInstance','8');
    }
    static get CPU(): FieldInfo{  
        return new FieldInfo('cpu','cpu');
    }
    static get MEMORY(): FieldInfo{  
        return new FieldInfo('memory','内存');
    }
    static get APP_OPTIONS_CONFIG(): FieldInfo{  
        return new FieldInfo('appOptionsConfig','应用选项配置JSON');
    }
    static get KAFKA_CONFIG(): FieldInfo{  
        return new FieldInfo('kafkaConfig','Kafka配置');
    }
    static get DEPLOY_STATUS(): FieldInfo{  
        return new FieldInfo('deployStatus','0-已部署、1-待部署、2-部署中、3-部署失败、4-待释放、5-停止中、6-已释放、7-释放失败');
    }
    static get DEPLOY_MSG(): FieldInfo{  
        return new FieldInfo('deployMsg','部署日志信息');
    }
    static get DEPLOY_TAG(): FieldInfo{  
        return new FieldInfo('deployTag','部署标记');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get GRAY_SCALE(): FieldInfo{  
        return new FieldInfo('grayScale','灰度比例');
    }
    static get PROJECT_VERSION_ID(): FieldInfo{  
        return new FieldInfo('projectVersionId','project_version_id');
    }
    static get PROJECT_BUILD_ID(): FieldInfo{  
        return new FieldInfo('projectBuildId','project_build_id');
    }
    static get K8S_DEPLOY_PARAMS(): FieldInfo{  
        return new FieldInfo('k8sDeployParams','k8s部署参数');
    }
    static get PID(): FieldInfo{  
        return new FieldInfo('pid','pid');
    }
    static get BUILD_OSS_FILENAME(): FieldInfo{  
        return new FieldInfo('buildOssFilename','构建文件OSS文件名称');
    }
    static get PROJECT_NAME(): FieldInfo{  
        return new FieldInfo('projectName','名称');
    }
    static get HEALTHY_URL(): FieldInfo{  
        return new FieldInfo('healthyUrl','健康检查url');
    }
    static get MAIN_CLASS(): FieldInfo{  
        return new FieldInfo('mainClass','主类');
    }
    static get START_TYPE(): FieldInfo{  
        return new FieldInfo('startType','启动方式：0-java wrapper、1-springboot jar、2-tomcat、3-自定');
    }
    static get START_SCRIPT(): FieldInfo{  
        return new FieldInfo('startScript','自定义启动脚本');
    }
    static get BUILD_TYPE(): FieldInfo{  
        return new FieldInfo('buildType','构建类型:jar、war、node、go');
    }
    static get PROJECT_KAFKA_TOPIC(): FieldInfo{  
        return new FieldInfo('projectKafkaTopic','kafka_topic');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnProject{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 服务中心主键
    * @type { string }
    */
    serviceCenterId?: string;
    /**
    * 应用主键
    * @type { string }
    */
    appId?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * 描述
    * @type { string }
    */
    describe?: string;
    /**
    * GitLab地址：
    * @type { string }
    */
    gitlabUrl?: string;
    /**
    * tapdId
    * @type { string }
    */
    tapdId?: string;
    /**
    * 健康检查url
    * @type { string }
    */
    healthyUrl?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 主类
    * @type { string }
    */
    mainClass?: string;
    /**
    * 开发语言:Java、Nodejs、Go
    * @type { string }
    */
    language?: string;
    /**
    * 构建类型:jar、war、node、go
    * @type { string }
    */
    buildType?: string;
    /**
    * 构建输出路径地址
    * @type { string }
    */
    buildOutPath?: string;
    /**
    * 构建命令脚本
    * @type { string }
    */
    buildScript?: string;
    /**
    * 启动方式：0-java wrapper、1-springboot jar、2-tomcat、3-自定义shell
    * @type { number }
    */
    startType?: number;
    /**
    * 自定义启动脚本
    * @type { string }
    */
    startScript?: string;
    /**
    * 自定义启动参数：-Dxxxxxx=aaa
    * @type { string }
    */
    startParams?: string;
    /**
    * 构建工具ID
    * @type { string }
    */
    buildToolId?: string;
    /**
    * kafka_topic
    * @type { string }
    */
    kafkaTopic?: string;
    /**
    * 进程关键字
    * @type { string }
    */
    progressKeyword?: string;
}
export class CnProjectMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get SERVICE_CENTER_ID(): FieldInfo{  
        return new FieldInfo('serviceCenterId','服务中心主键');
    }
    static get APP_ID(): FieldInfo{  
        return new FieldInfo('appId','应用主键');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get DESCRIBE(): FieldInfo{  
        return new FieldInfo('describe','描述');
    }
    static get GITLAB_URL(): FieldInfo{  
        return new FieldInfo('gitlabUrl','GitLab地址：');
    }
    static get TAPD_ID(): FieldInfo{  
        return new FieldInfo('tapdId','tapdId');
    }
    static get HEALTHY_URL(): FieldInfo{  
        return new FieldInfo('healthyUrl','健康检查url');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get MAIN_CLASS(): FieldInfo{  
        return new FieldInfo('mainClass','主类');
    }
    static get LANGUAGE(): FieldInfo{  
        return new FieldInfo('language','开发语言:Java、Nodejs、Go');
    }
    static get BUILD_TYPE(): FieldInfo{  
        return new FieldInfo('buildType','构建类型:jar、war、node、go');
    }
    static get BUILD_OUT_PATH(): FieldInfo{  
        return new FieldInfo('buildOutPath','构建输出路径地址');
    }
    static get BUILD_SCRIPT(): FieldInfo{  
        return new FieldInfo('buildScript','构建命令脚本');
    }
    static get START_TYPE(): FieldInfo{  
        return new FieldInfo('startType','启动方式：0-java wrapper、1-springboot jar、2-tomcat、3-自定');
    }
    static get START_SCRIPT(): FieldInfo{  
        return new FieldInfo('startScript','自定义启动脚本');
    }
    static get START_PARAMS(): FieldInfo{  
        return new FieldInfo('startParams','自定义启动参数：-Dxxxxxx=aaa');
    }
    static get BUILD_TOOL_ID(): FieldInfo{  
        return new FieldInfo('buildToolId','构建工具ID');
    }
    static get KAFKA_TOPIC(): FieldInfo{  
        return new FieldInfo('kafkaTopic','kafka_topic');
    }
    static get PROGRESS_KEYWORD(): FieldInfo{  
        return new FieldInfo('progressKeyword','进程关键字');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnProjectVersion{
    /**
    * id
    * @type { string }
    */
    id?: string;
    /**
    * 项目ID
    * @type { string }
    */
    projectId?: string;
    /**
    * 版本号
    * @type { string }
    */
    versionNo?: string;
    /**
    * 发布标签
    * @type { string }
    */
    releaseTag?: string;
    /**
    * 发布状态：0-未发布、1-已发布
    * @type { string }
    */
    releaseStatus?: string;
    /**
    * 备注
    * @type { string }
    */
    remark?: string;
    /**
    * deleted
    * @type { string }
    */
    deleted?: string;
    /**
    * create_user_id
    * @type { string }
    */
    createUserId?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 显示顺序
    * @type { number }
    */
    seqNo?: number;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnProjectVersionMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','id');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','项目ID');
    }
    static get VERSION_NO(): FieldInfo{  
        return new FieldInfo('versionNo','版本号');
    }
    static get RELEASE_TAG(): FieldInfo{  
        return new FieldInfo('releaseTag','发布标签');
    }
    static get RELEASE_STATUS(): FieldInfo{  
        return new FieldInfo('releaseStatus','发布状态：0-未发布、1-已发布');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','备注');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','create_user_id');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get SEQ_NO(): FieldInfo{  
        return new FieldInfo('seqNo','显示顺序');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnProjectBuild{
    /**
    * id
    * @type { string }
    */
    id?: string;
    /**
    * 项目ID
    * @type { string }
    */
    projectId?: string;
    /**
    * 版本ID
    * @type { string }
    */
    versionId?: string;
    /**
    * GIT commitId
    * @type { string }
    */
    commitId?: string;
    /**
    * 构建标签：b1、b2...
    * @type { string }
    */
    buildTag?: string;
    /**
    * 构建序号
    * @type { number }
    */
    buildSeq?: number;
    /**
    * 发布标签：1.0.0-Release
    * @type { string }
    */
    releaseTag?: string;
    /**
    * 发布状态：0-未发布、1-已发布
    * @type { string }
    */
    releaseStatus?: string;
    /**
    * 构建状态:0-待构建、1-构建成功、2-构建失败
    * @type { string }
    */
    buildStatus?: string;
    /**
    * 构建日志
    * @type { string }
    */
    buildLog?: string;
    /**
    * deleted
    * @type { string }
    */
    deleted?: string;
    /**
    * create_user_id
    * @type { string }
    */
    createUserId?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 构建文件OSS文件名称
    * @type { string }
    */
    ossFilename?: string;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnProjectBuildMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','id');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','项目ID');
    }
    static get VERSION_ID(): FieldInfo{  
        return new FieldInfo('versionId','版本ID');
    }
    static get COMMIT_ID(): FieldInfo{  
        return new FieldInfo('commitId','GIT commitId');
    }
    static get BUILD_TAG(): FieldInfo{  
        return new FieldInfo('buildTag','构建标签：b1、b2...');
    }
    static get BUILD_SEQ(): FieldInfo{  
        return new FieldInfo('buildSeq','构建序号');
    }
    static get RELEASE_TAG(): FieldInfo{  
        return new FieldInfo('releaseTag','发布标签：1.0.0-Release');
    }
    static get RELEASE_STATUS(): FieldInfo{  
        return new FieldInfo('releaseStatus','发布状态：0-未发布、1-已发布');
    }
    static get BUILD_STATUS(): FieldInfo{  
        return new FieldInfo('buildStatus','构建状态:0-待构建、1-构建成功、2-构建失败');
    }
    static get BUILD_LOG(): FieldInfo{  
        return new FieldInfo('buildLog','构建日志');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','deleted');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','create_user_id');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','create_time');
    }
    static get OSS_FILENAME(): FieldInfo{  
        return new FieldInfo('ossFilename','构建文件OSS文件名称');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','update_time');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnDeployPodSeq{
    /**
    * id
    * @type { string }
    */
    id?: string;
    /**
    * curr_seq_no
    * @type { number }
    */
    currSeqNo?: number;
    /**
    * deleted
    * @type { string }
    */
    deleted?: string;
    /**
    * create_time
    * @type { Date }
    */
    createTime?: Date;
    /**
    * update_time
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnDeployPodSeqMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','id');
    }
    static get CURR_SEQ_NO(): FieldInfo{  
        return new FieldInfo('currSeqNo','curr_seq_no');
    }
    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-12-01 15:15
 */
export interface CnEnum{
    /**
    * 代码
    * @type { string }
    */
    code?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * 值
    * @type { string }
    */
    value?: string;
    /**
    * 顺序号
    * @type { number }
    */
    seqNo?: number;
    /**
    * 描述
    * @type { string }
    */
    description?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class CnEnumMI{ 
    static get CODE(): FieldInfo{  
        return new FieldInfo('code','代码');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get VALUE(): FieldInfo{  
        return new FieldInfo('value','值');
    }
    static get SEQ_NO(): FieldInfo{  
        return new FieldInfo('seqNo','顺序号');
    }
    static get DESCRIPTION(): FieldInfo{  
        return new FieldInfo('description','描述');
    }
    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-12-01 15:15
 */
export interface CnSLB{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 名称
    * @type { string }
    */
    name?: string;
    /**
    * SLB主键id
    * @type { string }
    */
    slbId?: string;
    /**
    * 0：内网，1：外网
    * @type { number }
    */
    type?: number;
    /**
    * 服务地址
    * @type { string }
    */
    serviceIp?: string;
    /**
    * 配置信息
    * @type { string }
    */
    configuration?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新人
    * @type { string }
    */
    updateUserId?: string;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
    /**
    * 0:阿里云,1:华为云
    * @type { string }
    */
    cloudProvider?: string;
    /**
    * SLB URL
    * @type { string }
    */
    url?: string;
}
export class CnSLBMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get NAME(): FieldInfo{  
        return new FieldInfo('name','名称');
    }
    static get SLB_ID(): FieldInfo{  
        return new FieldInfo('slbId','SLB主键id');
    }
    static get TYPE(): FieldInfo{  
        return new FieldInfo('type','0：内网，1：外网');
    }
    static get SERVICE_IP(): FieldInfo{  
        return new FieldInfo('serviceIp','服务地址');
    }
    static get CONFIGURATION(): FieldInfo{  
        return new FieldInfo('configuration','配置信息');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_USER_ID(): FieldInfo{  
        return new FieldInfo('updateUserId','更新人');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
    static get CLOUD_PROVIDER(): FieldInfo{  
        return new FieldInfo('cloudProvider','0:阿里云,1:华为云');
    }
    static get URL(): FieldInfo{  
        return new FieldInfo('url','SLB URL');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnLabelRef{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 标签主键
    * @type { string }
    */
    labelId?: string;
    /**
    * 业务关联主键
    * @type { string }
    */
    bussinessId?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * extend field in CnLabel
    * 名称
    * @type { string }
    */
    labelName?: string;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnLabelRefMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get LABEL_ID(): FieldInfo{  
        return new FieldInfo('labelId','标签主键');
    }
    static get BUSSINESS_ID(): FieldInfo{  
        return new FieldInfo('bussinessId','业务关联主键');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get LABEL_NAME(): FieldInfo{  
        return new FieldInfo('labelName','名称');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-12-01 15:15
 */
export interface CnProjectContext{
    /**
    * 主键
    * @type { string }
    */
    id?: string;
    /**
    * 项目主键
    * @type { string }
    */
    projectId?: string;
    /**
    * 网关
    * @type { string }
    */
    gateway?: string;
    /**
    * URI
    * @type { string }
    */
    uri?: string;
    /**
    * 删除标记
    * @type { string }
    */
    deleted?: string;
    /**
    * 创建人
    * @type { string }
    */
    createUserId?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 环境ID
    * @type { string }
    */
    envId?: string;
    /**
    * TEST/PROD...
    * @type { string }
    */
    envCode?: string;
    /**
    * extend field in CnGateway
    * 阿里云/华为云SLBID
    * @type { string }
    */
    cnSlbId?: string;
    /**
    * extend field in CnGateway
    * 服务地址
    * @type { string }
    */
    slbIp?: string;
    /**
    * extend field in CnGateway
    * SLB映射管理端口号
    * @type { number }
    */
    slbAdminPort?: number;
    /**
    * extend field in CnGateway
    * SLB映射服务端口号
    * @type { number }
    */
    slbServicePort?: number;
    /**
    * extend field in CnGateway
    * 域名
    * @type { string }
    */
    domain?: string;

    /**
    * 数据状态 
    * @type { DataState }
    */
    _state?: DataState;
}
export class CnProjectContextMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','主键');
    }
    static get PROJECT_ID(): FieldInfo{  
        return new FieldInfo('projectId','项目主键');
    }
    static get GATEWAY(): FieldInfo{  
        return new FieldInfo('gateway','网关');
    }
    static get URI(): FieldInfo{  
        return new FieldInfo('uri','URI');
    }
    static get DELETED(): FieldInfo{  
        return new FieldInfo('deleted','删除标记');
    }
    static get CREATE_USER_ID(): FieldInfo{  
        return new FieldInfo('createUserId','创建人');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get ENV_ID(): FieldInfo{  
        return new FieldInfo('envId','环境ID');
    }
    static get ENV_CODE(): FieldInfo{  
        return new FieldInfo('envCode','TEST/PROD...');
    }
    static get CN_SLB_ID(): FieldInfo{  
        return new FieldInfo('cnSlbId','阿里云/华为云SLBID');
    }
    static get SLB_IP(): FieldInfo{  
        return new FieldInfo('slbIp','服务地址');
    }
    static get SLB_ADMIN_PORT(): FieldInfo{  
        return new FieldInfo('slbAdminPort','SLB映射管理端口号');
    }
    static get SLB_SERVICE_PORT(): FieldInfo{  
        return new FieldInfo('slbServicePort','SLB映射服务端口号');
    }
    static get DOMAIN(): FieldInfo{  
        return new FieldInfo('domain','域名');
    }
}


