erp-platform/ui/src/services/organization-unit.service.ts
2025-08-12 12:39:09 +03:00

96 lines
2.6 KiB
TypeScript

import { IdentityRoleDto, IdentityUserDto } from '@/proxy/admin/models'
import { ListResultDto, PagedResultDto } from '../proxy'
import {
CreateUpdateOrganizationUnitDto,
OrganizationUnitDto,
} from '../proxy/admin/organization-unit/models'
import apiService from './api.service'
export const ouGet = (skipCount = 0, maxResultCount = 10) =>
apiService.fetchData<PagedResultDto<OrganizationUnitDto>>({
method: 'GET',
url: `/api/app/platform-ou?skipCount=${skipCount}&maxResultCount=${maxResultCount}`,
})
export const ouGetAll = () =>
apiService.fetchData<ListResultDto<OrganizationUnitDto>>({
method: 'GET',
url: `/api/app/platform-ou/all`,
})
export const ouGetById = (id: string) =>
apiService.fetchData<OrganizationUnitDto>({
method: 'GET',
url: `/api/app/platform-ou/${id}`,
})
export const ouPost = (data: CreateUpdateOrganizationUnitDto) =>
apiService.fetchData({
method: 'POST',
url: `/api/app/platform-ou`,
data: { ...data },
})
export const ouPut = (data: CreateUpdateOrganizationUnitDto) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/platform-ou/${data.id}`,
data,
})
export const ouDelete = (id: string) =>
apiService.fetchData({
method: 'DELETE',
url: `/api/app/platform-ou/${id}`,
})
export const ouPutMove = (id: string, newParentId?: string) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/platform-ou/${id}/move`,
params: { newParent: newParentId },
})
export const ouGetMembers = (id: string) =>
apiService.fetchData<ListResultDto<IdentityUserDto>>({
method: 'GET',
url: `/api/app/platform-ou/${id}/members`,
})
export const ouPutMembers = (id: string, userIds: string[]) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/platform-ou/${id}/members`,
data: userIds,
})
export const ouDeleteMembers = (id: string, userId: string) =>
apiService.fetchData({
method: 'DELETE',
url: `/api/app/platform-ou/${id}/members/${userId}`,
})
export const ouMoveAllUsers = (id: string, newId: string) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/platform-ou/${id}/move-all-users/${newId}`,
})
export const ouGetRoles = (id: string) =>
apiService.fetchData<ListResultDto<IdentityRoleDto>>({
method: 'GET',
url: `/api/app/platform-ou/${id}/roles`,
})
export const ouPutRoles = (id: string, userIds: string[]) =>
apiService.fetchData({
method: 'PUT',
url: `/api/app/platform-ou/${id}/roles`,
data: userIds,
})
export const ouDeleteRoles = (id: string, roleId: string) =>
apiService.fetchData({
method: 'DELETE',
url: `/api/app/platform-ou/${id}/roles/${roleId}`,
})