mpt 페이지 추가
This commit is contained in:
105
frontend/src/lib/api/mpt.api.ts
Normal file
105
frontend/src/lib/api/mpt.api.ts
Normal file
@@ -0,0 +1,105 @@
|
||||
import apiClient from "../api-client";
|
||||
|
||||
/**
|
||||
* MPT(혈액화학검사) 결과 DTO
|
||||
*/
|
||||
export interface MptDto {
|
||||
pkMptNo: number;
|
||||
cowShortNo: string;
|
||||
fkFarmNo: number;
|
||||
testDt: string;
|
||||
monthAge: number;
|
||||
milkYield: number;
|
||||
parity: number;
|
||||
// 에너지 대사
|
||||
glucose: number;
|
||||
cholesterol: number;
|
||||
nefa: number;
|
||||
bcs: number;
|
||||
// 단백질 대사
|
||||
totalProtein: number;
|
||||
albumin: number;
|
||||
globulin: number;
|
||||
agRatio: number;
|
||||
bun: number;
|
||||
// 간기능
|
||||
ast: number;
|
||||
ggt: number;
|
||||
fattyLiverIdx: number;
|
||||
// 미네랄
|
||||
calcium: number;
|
||||
phosphorus: number;
|
||||
caPRatio: number;
|
||||
magnesium: number;
|
||||
creatinine: number;
|
||||
// Relations
|
||||
farm?: {
|
||||
pkFarmNo: number;
|
||||
farmerName: string;
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* MPT(혈액화학검사) 관련 API
|
||||
*/
|
||||
export const mptApi = {
|
||||
/**
|
||||
* GET /mpt - 전체 검사 결과 목록
|
||||
*/
|
||||
findAll: async (): Promise<MptDto[]> => {
|
||||
return await apiClient.get("/mpt");
|
||||
},
|
||||
|
||||
/**
|
||||
* GET /mpt?farmId=:farmId - 특정 농장의 검사 결과
|
||||
*/
|
||||
findByFarmId: async (farmId: number): Promise<MptDto[]> => {
|
||||
return await apiClient.get("/mpt", {
|
||||
params: { farmId },
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* GET /mpt?cowShortNo=:cowShortNo - 특정 개체의 검사 결과
|
||||
*/
|
||||
findByCowShortNo: async (cowShortNo: string): Promise<MptDto[]> => {
|
||||
return await apiClient.get("/mpt", {
|
||||
params: { cowShortNo },
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* GET /mpt/:id - 검사 결과 상세 조회
|
||||
*/
|
||||
findOne: async (id: number): Promise<MptDto> => {
|
||||
return await apiClient.get(`/mpt/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* POST /mpt - 검사 결과 생성
|
||||
*/
|
||||
create: async (data: Partial<MptDto>): Promise<MptDto> => {
|
||||
return await apiClient.post("/mpt", data);
|
||||
},
|
||||
|
||||
/**
|
||||
* POST /mpt/bulk - 검사 결과 일괄 생성
|
||||
*/
|
||||
bulkCreate: async (data: Partial<MptDto>[]): Promise<MptDto[]> => {
|
||||
return await apiClient.post("/mpt/bulk", data);
|
||||
},
|
||||
|
||||
/**
|
||||
* PUT /mpt/:id - 검사 결과 수정
|
||||
*/
|
||||
update: async (id: number, data: Partial<MptDto>): Promise<MptDto> => {
|
||||
return await apiClient.put(`/mpt/${id}`, data);
|
||||
},
|
||||
|
||||
/**
|
||||
* DELETE /mpt/:id - 검사 결과 삭제
|
||||
*/
|
||||
remove: async (id: number): Promise<void> => {
|
||||
return await apiClient.delete(`/mpt/${id}`);
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user