import request from '@/utils/request'

/**
 * 解析规则配置接口（统一处理解析规则相关数据交互）
 */

// 1. 查询解析规则配置列表（支持按模板ID、规则类型等筛选）
export function listAnalysisRuleSet(query) {
  return request({
    url: '/smartPlatform/analysisRuleSet/list',
    method: 'get',
    params: query
  })
}

export function listAnalysisRuleSetHistory(query) {
  return request({
    url: '/smartPlatform/analysisRuleSet/list/history',
    method: 'get',
    params: query
  })
}

// 2. 查询解析规则配置详情（携带解析规则ID，包含关联定位查询规则信息）
export function getAnalysisRuleSetDetail(params) {
  return request({
    url: '/smartPlatform/analysisRuleSet/detail',
    method: 'get',
    params: params
  })
}

// 3. 新增解析规则配置（携带解析名称、模板ID等基础信息）
export function addAnalysisRuleSet(data) {
  return request({
    url: '/smartPlatform/analysisRuleSet/add',
    method: 'post',
    data: data
  })
}

// 4. 修改解析规则配置（携带解析规则ID，更新配置信息）
export function updateAnalysisRuleSet(data) {
  return request({
    url: '/smartPlatform/analysisRuleSet/edit',
    method: 'post',
    data: data
  })
}

// 5. 删除解析规则配置（携带解析规则ID，级联删除关联的定位查询规则）
export function delAnalysisRuleSet(params) {
  return request({
    url: '/smartPlatform/analysisRuleSet/delete',
    method: 'post',
    data: params
  })
}

// 6. 校验解析规则名称唯一性（新增/编辑时使用，避免重复）
export function checkAnalysisNameUnique(params) {
  return request({
    url: '/smartPlatform/analysisRuleSet/checkNameUnique',
    method: 'get',
    params: params
  })
}
