diff --git a/apps/vue/src/api/identity/users/index.ts b/apps/vue/src/api/identity/users/index.ts index 4760fe92f..769a59cdd 100644 --- a/apps/vue/src/api/identity/users/index.ts +++ b/apps/vue/src/api/identity/users/index.ts @@ -6,9 +6,11 @@ import { UpdateUser, GetUserPagedRequest, UserClaim, + IdentityUserOrganizationUnitUpdateDto, } from './model'; import { CreateIdentityClaim, UpdateIdentityClaim } from '../claims/model'; import { Role } from '../roles/model'; +import { OrganizationUnit } from '../organization-units/model'; export const create = (input: CreateUser) => { return defHttp.post({ @@ -106,6 +108,19 @@ export const unlock = (id: string) => { }); }; +export const getOrganizationUnits = (id: string) => { + return defHttp.get>({ + url: `/api/identity/users/${id}/organization-units`, + }); +}; + +export const setOrganizationUnits = (id: string, input: IdentityUserOrganizationUnitUpdateDto) => { + return defHttp.put>({ + url: `/api/identity/users/${id}/organization-units`, + data: input, + }); +}; + export const removeOrganizationUnit = (id: string, ouId: string) => { return defHttp.delete({ url: `/api/identity/users/${id}/organization-units/${ouId}`, diff --git a/apps/vue/src/api/identity/users/model/index.ts b/apps/vue/src/api/identity/users/model/index.ts index c5494350f..8575d88f2 100644 --- a/apps/vue/src/api/identity/users/model/index.ts +++ b/apps/vue/src/api/identity/users/model/index.ts @@ -27,6 +27,10 @@ export interface SetPassword { password: string; } +export interface IdentityUserOrganizationUnitUpdateDto { + organizationUnitIds: string[] +} + /** 用户对象 */ export interface User extends FullAuditedEntityDto, IUser, IHasConcurrencyStamp { /** 租户标识 */ diff --git a/apps/vue/src/views/identity/user/components/UserModal.vue b/apps/vue/src/views/identity/user/components/UserModal.vue index 24a742b07..6d8cbba0f 100644 --- a/apps/vue/src/views/identity/user/components/UserModal.vue +++ b/apps/vue/src/views/identity/user/components/UserModal.vue @@ -45,6 +45,7 @@ + + + @@ -65,12 +78,14 @@