import { AxiosResponse } from "axios"; import { client } from "@/shared/api"; import { ENDPOINT } from "@/shared/config"; import type { Attach, AttachService } from "../model/attach-interface"; async function findByAtflCd(atflCd: string): Promise { if (!atflCd) return []; const response = await client.get(`${ENDPOINT.ATTACH_SERVICE.ATTACHMENTS}/${atflCd}`); return response.data; } async function deleteAttachmentByAtflId(atflId: string): Promise { if (!atflId) return; await client.delete(`${ENDPOINT.ATTACH_SERVICE.ATTACHMENTS}/${atflId}`); } async function downloadAttachmentByAtflCd(atflCd: string): Promise { return await client.get(`${ENDPOINT.ATTACH_SERVICE.DOWNLOAD}/${atflCd}`, { responseType: "blob", }); } async function downloadAttachmentByAtflId(atflId: string): Promise { return await client.get(`${ENDPOINT.ATTACH_SERVICE.DOWNLOAD_BY_ATFL_ID}/${atflId}`, { responseType: "blob", }); } export const attachService = { findByAtflCd, deleteAttachmentByAtflId, downloadAttachmentByAtflCd, downloadAttachmentByAtflId, } satisfies AttachService;