package cn.sagacloud.server.datacenter.models.entities.dictdatacenter

import cn.sagacloud.server.datacenter.models.entities.base.RBaseInfo
import com.alibaba.fastjson.annotation.JSONField
import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty
import javax.persistence.Column
import javax.persistence.Id
import javax.persistence.Table

/**
 * 数据中心字典类型对应项目自定义转换
 *
 * @author 张维新
 */
@ApiModel(description = "数据中心字典类型对应项目自定义转换")
@Table(name = "dictcustom.dict_project_custom_datacenter")
open class DictProjectCustomDatacenterNew : RBaseInfo() {

    /** 方案ID */
    @ApiModelProperty(value = "方案ID")
    @Id
    @Column(name = "scheme_id")
    @JSONField(name = "SchemeId")
    var schemeId: String? = null

    /** 数据中心数据类型 */
    @ApiModelProperty(value = "数据中心数据类型")
    @Column(name = "dc_category")
    @JSONField(name = "DcCategory")
    var dcCategory: String? = null

    /** 项目自定义数据类型 */
    @ApiModelProperty(value = "项目自定义数据类型")
    @Id
    @Column(name = "custom_category")
    @JSONField(name = "CustomCategory")
    var customCategory: String? = null

    /** 类型1为专业 2为系统 3为设备 4为部件 */
    @ApiModelProperty(value = "数据中心数据类型")
    @Column(name = "type")
    @JSONField(name = "Type")
    var type: Int? = null

    /** 数据中心类型名称 */
    @ApiModelProperty(value = "数据中心类型名称")
    @Column(name = "dc_category_name")
    @JSONField(name = "DcCategoryName")
    var dcCategoryName: String? = null

    /** 项目自定义类型名称 */
    @ApiModelProperty(value = "项目自定义类型名称")
    @Column(name = "custom_category_name")
    @JSONField(name = "CustomCategoryName")
    var customCategoryName: String? = null

    /** 数据中心向物理世界转化脚本信息 */
    @ApiModelProperty(value = "数据中心向物理世界转化脚本信息")
    @Column(name = "switch_rule")
    @JSONField(name = "SwitchRule")
    var switchRule: String? = null

    /** 物理世界向数据中心转换脚本 */
    @ApiModelProperty(value = "物理世界向数据中心转换脚本")
    @Column(name = "switch_rule_dataplatform")
    @JSONField(name = "SwitchRuleDataplatform")
    var switchRuleDataplatform: String? = null

    /** 备注信息 */
    @ApiModelProperty(value = "备注信息")
    @Column(name = "note")
    @JSONField(name = "Note")
    var note: String? = null

    /** 自定义父类指针 */
    @ApiModelProperty(value = "自定义父类指针")
    @Column(name = "parent_id_custom")
    @JSONField(name = "ParentIdCustom")
    var parentIdCustom: String? = null

    /** 数据中心父指针 */
    @ApiModelProperty(value = "数据中心父指针")
    @Column(name = "parent_id_dc")
    @JSONField(name = "ParentIdDc")
    var parentIdDc: String? = null

    /** 设备族 */
    @ApiModelProperty(value = "设备族")
    @Column(name = "family")
    @JSONField(name = "Family")
    var family: String? = null


} // class DictDatacenterProjectcustom