public virtual async Task AddToOrganizationUnitAsync(Guid userId, Guid ouId) { var currentOu = await UserOrganizationUnitRepository.FindAsync(t => t.UserId == userId && t.OrganizationUnitId == ouId); if (currentOu != null) { return; } var user = await UserRepository.GetAsync(userId); await UserOrganizationUnitRepository.InsertAsync(new IdentityUserOrganizationUnit(user.TenantId, userId, ouId)); }
public async Task <PagedResultDto <OrganizationUnitUserListDto> > GetOrganizationUnitUsers(Guid id, PagedResultRequestDto input) { var items = from ouUser in await UserOrganizationUnitRepository.GetOuUserListAsync(id, input.MaxResultCount, input.SkipCount) join user in await UserRepository.GetListAsync() on ouUser.UserId equals user.Id select new { ouUser, user }; var totalCount = await UserOrganizationUnitRepository.GetOuUserCountAsync(id); return(new PagedResultDto <OrganizationUnitUserListDto>( totalCount, items.Select(item => { var organizationUnitRoleDto = ObjectMapper.Map <IdentityUser, OrganizationUnitUserListDto>(item.user); organizationUnitRoleDto.AddedTime = item.ouUser.CreationTime; return organizationUnitRoleDto; }).ToList())); }
public virtual async Task RemoveFromOrganizationUnitAsync(Guid userId, Guid ouId) { await UserOrganizationUnitRepository.DeleteAsync(uou => uou.UserId == userId && uou.OrganizationUnitId == ouId); }