Files
lcbp3/frontend/lib/services/contract-drawing.service.ts
admin dcd126d704
Some checks failed
Spec Validation / validate-markdown (push) Has been cancelled
Spec Validation / validate-diagrams (push) Has been cancelled
Spec Validation / check-todos (push) Has been cancelled
251208:0010 Backend & Frontend Debug
2025-12-08 00:10:37 +07:00

51 lines
1.5 KiB
TypeScript

// File: lib/services/contract-drawing.service.ts
import apiClient from "@/lib/api/client";
import {
CreateContractDrawingDto,
UpdateContractDrawingDto,
SearchContractDrawingDto
} from "@/types/dto/drawing/contract-drawing.dto";
export const contractDrawingService = {
/**
* ดึงรายการแบบสัญญา (Contract Drawings)
*/
getAll: async (params: SearchContractDrawingDto) => {
// GET /drawings/contract?projectId=1&page=1...
const response = await apiClient.get("/drawings/contract", { params });
return response.data;
},
/**
* ดึงรายละเอียดตาม ID
*/
getById: async (id: string | number) => {
const response = await apiClient.get(`/drawings/contract/${id}`);
return response.data;
},
/**
* สร้างแบบสัญญาใหม่
*/
create: async (data: CreateContractDrawingDto) => {
const response = await apiClient.post("/drawings/contract", data);
return response.data;
},
/**
* แก้ไขข้อมูลแบบสัญญา
*/
update: async (id: string | number, data: UpdateContractDrawingDto) => {
const response = await apiClient.put(`/drawings/contract/${id}`, data);
return response.data;
},
/**
* ลบแบบสัญญา (Soft Delete)
*/
delete: async (id: string | number) => {
const response = await apiClient.delete(`/drawings/contract/${id}`);
return response.data;
}
};