import request from './request' import type { ApiResponse } from '@/types/api' export function listSensitiveWords(page = 1, size = 20, keyword?: string, category?: string, level?: number, sortField?: string, sortOrder?: string): Promise { let path = `/sensitive-word/list?page=${page}&size=${size}` if (keyword) path += `&keyword=${encodeURIComponent(keyword)}` if (category) path += `&category=${encodeURIComponent(category)}` if (level !== undefined && level !== null) path += `&level=${level}` if (sortField) path += `&sortField=${sortField}` if (sortOrder) path += `&sortOrder=${sortOrder}` return request.get(path).then(r => r.data) } export function createSensitiveWord(data: any): Promise { return request.post('/sensitive-word', data).then(r => r.data) } export function updateSensitiveWord(id: string, data: any): Promise { return request.put(`/sensitive-word/${id}`, data).then(r => r.data) } /** 切换启用/禁用(复用 update 接口,仅传 isActive 字段) */ export function toggleSensitiveWord(id: string, isActive: boolean): Promise { return updateSensitiveWord(id, { isActive }) } export function deleteSensitiveWord(id: string): Promise { return request.delete(`/sensitive-word/${id}`).then(r => r.data) } export function batchImportSensitiveWords(data: { words: string[]; category: string; level: number }): Promise { return request.post('/sensitive-word/batch-import', data).then(r => r.data) } export function listAuditLogs(page = 1, size = 20, sessionId?: string, sortField?: string, sortOrder?: string): Promise { let path = `/sensitive-word/audit-log?page=${page}&size=${size}` if (sessionId) path += `&sessionId=${encodeURIComponent(sessionId)}` if (sortField) path += `&sortField=${sortField}` if (sortOrder) path += `&sortOrder=${sortOrder}` return request.get(path).then(r => r.data) }