forked from baron/baron-sso
조직도 기능 추가
This commit is contained in:
@@ -139,6 +139,12 @@ export async function deleteTenant(tenantId: string) {
|
||||
await apiClient.delete(`/v1/admin/tenants/${tenantId}`);
|
||||
}
|
||||
|
||||
export async function deleteTenantsBulk(ids: string[]) {
|
||||
await apiClient.delete("/v1/admin/tenants/bulk", {
|
||||
data: { ids },
|
||||
});
|
||||
}
|
||||
|
||||
export async function approveTenant(tenantId: string) {
|
||||
const { data } = await apiClient.post<TenantSummary>(
|
||||
`/v1/admin/tenants/${tenantId}/approve`,
|
||||
@@ -260,11 +266,31 @@ export async function removeGroupMember(
|
||||
);
|
||||
}
|
||||
|
||||
export async function importOrgChart(tenantId: string, file: File) {
|
||||
export interface ImportResult {
|
||||
totalRows: number;
|
||||
processed: number;
|
||||
userCreated: number;
|
||||
userUpdated: number;
|
||||
tenantCreated: number;
|
||||
errors: string[];
|
||||
}
|
||||
|
||||
export async function fetchImportProgress(tenantId: string, progressId: string) {
|
||||
const { data } = await apiClient.get<{ current: number; total: number }>(
|
||||
`/v1/admin/tenants/${tenantId}/organization/import/progress/${progressId}`
|
||||
);
|
||||
return data;
|
||||
}
|
||||
|
||||
export async function importOrgChart(tenantId: string, file: File, progressId?: string) {
|
||||
const formData = new FormData();
|
||||
formData.append("file", file);
|
||||
const { data } = await apiClient.post(
|
||||
`/v1/admin/tenants/${tenantId}/organization/import`,
|
||||
const url = progressId
|
||||
? `/v1/admin/tenants/${tenantId}/organization/import?progressId=${progressId}`
|
||||
: `/v1/admin/tenants/${tenantId}/organization/import`;
|
||||
|
||||
const { data } = await apiClient.post<{ data: ImportResult }>(
|
||||
url,
|
||||
formData,
|
||||
{
|
||||
headers: {
|
||||
@@ -272,7 +298,7 @@ export async function importOrgChart(tenantId: string, file: File) {
|
||||
},
|
||||
},
|
||||
);
|
||||
return data;
|
||||
return data.data;
|
||||
}
|
||||
|
||||
export type GroupRole = {
|
||||
@@ -354,6 +380,7 @@ export type UserSummary = {
|
||||
role: string;
|
||||
status: string;
|
||||
tenantSlug?: string;
|
||||
companyCode?: string;
|
||||
tenant?: TenantSummary;
|
||||
joinedTenants?: TenantSummary[]; // [New] 다중 소속 테넌트 목록
|
||||
metadata?: Record<string, unknown>;
|
||||
|
||||
Reference in New Issue
Block a user