package com.ruoyi.system.domain.neo4j;

import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Property;
import org.springframework.data.neo4j.core.schema.GeneratedValue;
import java.util.Map;

/**
 * 知识图谱节点实体
 *
 * @author jackeyhuang
 * @version 1.0.0
 * @date 2025-01-27
 */
@Node("KnowledgeNode")
public class GraphNode
{
    @Id
    @GeneratedValue
    private Long id;

    @Property("label")
    private String label;

    @Property("type")
    private String type;

    @Property("description")
    private String description;

    @Property("properties")
    private Map<String, Object> properties;

    public GraphNode()
    {
    }

    public GraphNode(Long id, String label, String type, String description)
    {
        this.id = id;
        this.label = label;
        this.type = type;
        this.description = description;
    }

    public Long getId()
    {
        return id;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public String getLabel()
    {
        return label;
    }

    public void setLabel(String label)
    {
        this.label = label;
    }

    public String getType()
    {
        return type;
    }

    public void setType(String type)
    {
        this.type = type;
    }

    public String getDescription()
    {
        return description;
    }

    public void setDescription(String description)
    {
        this.description = description;
    }

    public Map<String, Object> getProperties()
    {
        return properties;
    }

    public void setProperties(Map<String, Object> properties)
    {
        this.properties = properties;
    }
}
