Files
lcbp3/frontend/lib/services/search.service.ts
2025-11-27 17:08:49 +07:00

26 lines
862 B
TypeScript

// File: lib/services/search.service.ts
import apiClient from "@/lib/api/client";
import { SearchQueryDto } from "@/types/dto/search/search-query.dto";
export const searchService = {
/**
* ค้นหาเอกสารทั้งระบบ (Full-text Search)
* ใช้ Elasticsearch ผ่าน Backend
*/
search: async (query: SearchQueryDto) => {
// ส่ง params แบบ flat ตาม DTO
// GET /search?q=...&type=...&projectId=...
const response = await apiClient.get("/search", {
params: query
});
return response.data;
},
/**
* (Optional) Re-index ข้อมูลใหม่ กรณีข้อมูลไม่ตรง (Admin Only)
*/
reindex: async (type?: string) => {
const response = await apiClient.post("/search/reindex", { type });
return response.data;
}
};