package com.persagy.server.datacenter.models.entities.graphtype.block

import com.alibaba.fastjson.annotation.JSONField
import com.persagy.server.datacenter.models.entities.base.RBaseInfo
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 = "revit_calc.connected_block")
open class ConnectedBlock : RBaseInfo() {
    /** id */
    @ApiModelProperty(value = "id")
    @Id
    @Column(name = "id")
    @JSONField(name = "Id")
    var id: Long? = null

    /** id1 */
    @ApiModelProperty(value = "id1")
    @Column(name = "id1")
    @JSONField(name = "Id1")
    var id1: String? = null

    /** type1 */
    @ApiModelProperty(value = "type1")
    @Column(name = "type1")
    @JSONField(name = "Type1")
    var type1: String? = null

    /** model_id1 */
    @ApiModelProperty(value = "model_id1")
    @Column(name = "model_id1")
    @JSONField(name = "ModelId1")
    var modelId1: String? = null

    /** id2 */
    @ApiModelProperty(value = "id2")
    @Column(name = "id2")
    @JSONField(name = "Id2")
    var id2: String? = null

    /** type2 */
    @ApiModelProperty(value = "type2")
    @Column(name = "type2")
    @JSONField(name = "Type2")
    var type2: String? = null

    /** model_id2 */
    @ApiModelProperty(value = "model_id2")
    @Column(name = "model_id2")
    @JSONField(name = "ModelId2")
    var modelId2: String? = null

    /** direction */
    @ApiModelProperty(value = "direction, 1表示从id1流向id2, -1 表示从id2流向id1, 0表示不确定流向")
    @Column(name = "direction")
    @JSONField(name = "Direction")
    var direction: Int? = null

    /** block_id */
    @ApiModelProperty(value = "block_id")
    @Column(name = "block_id")
    @JSONField(name = "BlockId")
    var blockId: String? = null

    /** project_id */
    @ApiModelProperty(value = "project_id")
    @Column(name = "project_id")
    @JSONField(name = "ProjectId")
    var projectId: String? = null

    /** depth */
    @ApiModelProperty(value = "depth")
    @Column(name = "depth")
    @JSONField(name = "Depth")
    var depth: String? = null

    /** mep_system_type */
    @ApiModelProperty(value = "mep_system_type")
    @Column(name = "mep_system_type")
    @JSONField(name = "MepSystemType")
    var mepSystemType: String? = null

    /** domain */
    @ApiModelProperty(value = "domain")
    @Column(name = "domain")
    @JSONField(name = "Domain")
    var domain: String? = null

    /** building_id */
    @ApiModelProperty(value = "building_id")
    @Column(name = "building_id")
    @JSONField(name = "BuildingId")
    var buildingId: String? = null

} // Class ConnectedBlock