import request from '@/utils/request'

/**
 * 查询所有实体
 * @param {Object} data - 请求参数
 * @returns {Promise} - 请求Promise对象
 */
export function getEntityList(data) {
  return request({
    url: '/kgqa/entity/getAllEntities',
    method: 'get',
    data: data
  })
}

/**
 * 获取图数据库中的所有实体类名称
 * @param {Object} data - 请求参数（可选，若有参数可传入）
 * @returns {Promise} - 请求Promise对象
 */
export function getAllEntityClass(data) {
  return request({
    url: '/kgqa/entity/getAllEntityClass',
    method: 'get',
    data: data // 保留data参数位，方便后续扩展传参
  })
}

/**
 * 新增实体结点
 * @param {Object} data - 实体结点信息
 * @returns {Promise} - 请求Promise对象
 */
export function addEntity(data) {
  return request({
    url: '/kgqa/entity/add',
    method: 'post',
    data: data
  })
}

/**
 * 修改实体结点
 * @param {Object} data - 待修改的实体结点信息
 * @returns {Promise} - 请求Promise对象
 */
export function updateEntity(data) {
  return request({
    url: '/kgqa/entity/update',
    method: 'post',
    data: data
  })
}

/**
 * 查询实体结点
 * @param {Object} data - 查询条件参数
 * @returns {Promise} - 请求Promise对象
 */
export function checkEntity(data) {
  return request({
    url: '/kgqa/entity/Check',
    method: 'post',
    data: data
  })
}

/**
 * 删除实体结点
 * @param {Object} data - 包含删除条件的参数（如实体ID等）
 * @returns {Promise} - 请求Promise对象
 */
export function deleteEntity(data) {
  return request({
    url: '/kgqa/entity/delete',
    method: 'post',
    data: data
  })
}
