package com.persagy.labsl.models.entities.pbs

import com.persagy.labsl.models.entities.tpt.Pos
import com.persagy.service.models.SBaseEntity
import io.swagger.v3.oas.annotations.media.Schema
import java.io.Serializable
import javax.persistence.Column
import javax.persistence.Id
import javax.persistence.Table

/**
 * 对象信息
 *
 * @author wx
 */
@Schema(description = "对象信息")
@Table(name = "qibaishi_gallery.qbs_obj_ext_info")
open class ObjExtInfo : SBaseEntity(), Serializable {

    /** 系统图对象id */
    @Schema(description = "系统图对象id",required = true )
    @Id
    @Column(name = "id")
    var id: String? = null

    /** 系统图 id */
    @Schema(description = "系统图 id",required = true)
    @Id
    @Column(name = "graph_id")
    var graphId: String? = null

    /** 节点id */
    @Schema(description = "节点id",required = true )
    @Id
    @Column(name = "info_id")
    var ObjExtInfoId: String? = null

    /** 节点名称 */
    @Schema(description = "图例节点名称",required = true )
    @Column(name = "name")
    var name: String? = null

    /** 节点类型(image / zone) */
    @Schema(description = "节点类型(image / zone)")
    @Column(name = "type")
    var type: String? = null

    /** 位置信息 */
    @Schema(description = "位置信息")
    @Column(name = "pos")
    var pos: Pos? = null

    @Schema(description = "应用自定义")
    @Column(name = "properties")
    var properties : HashMap<String,Any?>? = null

    @Schema(description = "对象 id 列表 ")
    @Column(name = "attach_object_ids")
    var attachObjectIds: ArrayList<String>? = null


}