리포트 템플릿 저장 구현
This commit is contained in:
@@ -147,4 +147,56 @@ export const reportApi = {
|
||||
}>(`${BASE_URL}/external-connections`);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
// 현재 리포트를 템플릿으로 저장
|
||||
saveAsTemplate: async (
|
||||
reportId: string,
|
||||
data: {
|
||||
templateNameKor: string;
|
||||
templateNameEng?: string;
|
||||
description?: string;
|
||||
},
|
||||
) => {
|
||||
const response = await apiClient.post<{
|
||||
success: boolean;
|
||||
data: { templateId: string };
|
||||
message: string;
|
||||
}>(`${BASE_URL}/${reportId}/save-as-template`, data);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
// 레이아웃 데이터로 직접 템플릿 생성 (리포트 저장 불필요)
|
||||
createTemplateFromLayout: async (data: {
|
||||
templateNameKor: string;
|
||||
templateNameEng?: string;
|
||||
templateType?: string;
|
||||
description?: string;
|
||||
layoutConfig: {
|
||||
width: number;
|
||||
height: number;
|
||||
orientation: string;
|
||||
margins: {
|
||||
top: number;
|
||||
bottom: number;
|
||||
left: number;
|
||||
right: number;
|
||||
};
|
||||
components: any[];
|
||||
};
|
||||
defaultQueries?: Array<{
|
||||
name: string;
|
||||
type: "MASTER" | "DETAIL";
|
||||
sqlQuery: string;
|
||||
parameters: string[];
|
||||
externalConnectionId?: number | null;
|
||||
displayOrder?: number;
|
||||
}>;
|
||||
}) => {
|
||||
const response = await apiClient.post<{
|
||||
success: boolean;
|
||||
data: { templateId: string };
|
||||
message: string;
|
||||
}>(`${BASE_URL}/templates/create-from-layout`, data);
|
||||
return response.data;
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user