Beispiel #1
0
        public async Task CreateRoleAsync(MRoleDto roleDto)
        {
            var role = _mapper.Map <MRole>(roleDto);
            await DbContext.Roles.AddAsync(role);

            await DbContext.SaveChangesAsync();

            EventDispatcher.DispatchCreatedEvent("IDPRoles", _mapper.Map <MRoleListDto>(role));
        }
Beispiel #2
0
        //public async Task UpdateRoleAsync(MRole updated)
        //{
        //    //var roleModel = _mapper.Map<MRole>(updated);
        //    var userIds = updated.Users.Select(ur => ur.Id).ToList();
        //    var availableUsers = DbContext.Users.AsQueryable().Where(r => userIds.Contains(r.Id)).Select(r => r.Id).ToList();

        //    updated.Users = updated.Users.Where(ur => availableUsers.Contains(ur.Id)).ToList();

        //    await DbContext.SaveChangesAsync();

        //    EventDispatcher.DispatchUpdatedEvent("IDPRoles", _mapper.Map<MRoleListDto>(updated));
        //}

        public async Task UpdateRoleAsync(MRoleDto updated)
        {
            var roleInDb = await GetRoleAsync(updated.Id);

            _mapper.Map(updated, roleInDb);
            //var roleModel = _mapper.Map<MRole>(updated);
            var userIds        = updated.Users.Select(ur => ur.Id).ToList();
            var availableUsers = DbContext.Users.Where(r => userIds.Contains(r.Id)).ToList();

            roleInDb.Users = availableUsers;

            await DbContext.SaveChangesAsync();

            EventDispatcher.DispatchUpdatedEvent("IDPRoles", _mapper.Map <MRoleListDto>(roleInDb));
        }
Beispiel #3
0
        public async Task <IActionResult> UpdateRole(MRoleDto roleDto)
        {
            await RolesService.UpdateRoleAsync(roleDto);

            return(Ok());
        }