251127:1700 Frontend Start Build
This commit is contained in:
54
frontend/lib/services/circulation.service.ts
Normal file
54
frontend/lib/services/circulation.service.ts
Normal file
@@ -0,0 +1,54 @@
|
||||
// File: lib/services/circulation.service.ts
|
||||
import apiClient from "@/lib/api/client";
|
||||
|
||||
// Import DTO ที่สร้างไว้
|
||||
import { CreateCirculationDto } from "@/types/dto/circulation/create-circulation.dto";
|
||||
import { SearchCirculationDto } from "@/types/dto/circulation/search-circulation.dto";
|
||||
import { UpdateCirculationRoutingDto } from "@/types/dto/circulation/update-circulation-routing.dto";
|
||||
|
||||
export const circulationService = {
|
||||
/**
|
||||
* ดึงรายการใบเวียนทั้งหมด (รองรับ Search & Filter)
|
||||
*/
|
||||
getAll: async (params?: SearchCirculationDto) => {
|
||||
// GET /circulations
|
||||
const response = await apiClient.get("/circulations", { params });
|
||||
return response.data;
|
||||
},
|
||||
|
||||
/**
|
||||
* ดึงรายละเอียดใบเวียนตาม ID
|
||||
*/
|
||||
getById: async (id: string | number) => {
|
||||
// GET /circulations/:id
|
||||
const response = await apiClient.get(`/circulations/${id}`);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
/**
|
||||
* สร้างใบเวียนใหม่ (Create Circulation)
|
||||
*/
|
||||
create: async (data: CreateCirculationDto) => {
|
||||
// POST /circulations
|
||||
const response = await apiClient.post("/circulations", data);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
/**
|
||||
* อัปเดตสถานะการเวียน (เช่น รับทราบ / ดำเนินการเสร็จสิ้น)
|
||||
* มักจะใช้ routingId หรือ circulationId ขึ้นอยู่กับการออกแบบ API หลังบ้าน
|
||||
*/
|
||||
updateRouting: async (id: string | number, data: UpdateCirculationRoutingDto) => {
|
||||
// PATCH /circulations/:id/routing (หรือ endpoint ที่ Backend กำหนด)
|
||||
const response = await apiClient.patch(`/circulations/${id}/routing`, data);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
/**
|
||||
* ลบ/ยกเลิกใบเวียน
|
||||
*/
|
||||
delete: async (id: string | number) => {
|
||||
const response = await apiClient.delete(`/circulations/${id}`);
|
||||
return response.data;
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user