87 lines
1.7 KiB
TypeScript
87 lines
1.7 KiB
TypeScript
import { getApiClient } from "./client";
|
|
import { getConfig } from "@common/config";
|
|
import { ENDPOINT } from "../config";
|
|
|
|
export interface SiteInfo {
|
|
siteId: string;
|
|
siteNm: string;
|
|
siteExpln: string;
|
|
siteKndCd: string;
|
|
siteKindNm: string;
|
|
siteAddr: string;
|
|
faxNumber: string;
|
|
dmnAddr: string;
|
|
telNo: string;
|
|
lwndCn: string;
|
|
basicSiteYn: string;
|
|
bkmkIcon: string;
|
|
useYn: string;
|
|
siteSkn: string;
|
|
regDt: string;
|
|
rgTr: string;
|
|
mdfcnDt: string;
|
|
mdFr: string;
|
|
rgTrNm: string;
|
|
mdfrNm: string;
|
|
}
|
|
|
|
export interface SiteListResponse {
|
|
content: SiteInfo[];
|
|
pageable: {
|
|
sort: {
|
|
empty: boolean;
|
|
sorted: boolean;
|
|
unsorted: boolean;
|
|
};
|
|
offset: number;
|
|
pageNumber: number;
|
|
pageSize: number;
|
|
paged: boolean;
|
|
unpaged: boolean;
|
|
};
|
|
last: boolean;
|
|
totalElements: number;
|
|
totalPages: number;
|
|
size: number;
|
|
number: number;
|
|
first: boolean;
|
|
sort: {
|
|
empty: boolean;
|
|
sorted: boolean;
|
|
unsorted: boolean;
|
|
};
|
|
numberOfElements: number;
|
|
empty: boolean;
|
|
}
|
|
|
|
const { PROXY_HOST } = getConfig();
|
|
const BASE_URL = `${PROXY_HOST}/server`;
|
|
|
|
export const getSiteInfo = async (siteId: string) => {
|
|
const response = await fetch(
|
|
`${BASE_URL}${ENDPOINT.CMS_SERVICE.SITES}/${siteId}`,
|
|
{
|
|
method: "GET",
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
},
|
|
},
|
|
);
|
|
return response.json() as Promise<SiteInfo>;
|
|
};
|
|
|
|
const client = getApiClient();
|
|
|
|
export const getSiteList = async () => {
|
|
const response = await client.get<SiteListResponse>(
|
|
`${BASE_URL}${ENDPOINT.CMS_SERVICE.SITE_LIST}`,
|
|
{
|
|
method: "GET",
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
},
|
|
},
|
|
);
|
|
return response.data;
|
|
};
|