public async Task DeleteRole(AppDiscordRole role) { var userRole = await _userRoleRepo.GetRoleByDiscordRoleId(role.Id); if (userRole == null) { throw new ArgumentException("User role doesn't exist"); } await _userRoleRepo.DeleteRole(userRole.Id); }
public RoleMap DeleteRole(int roleId) { m_userRoleRepository.DeleteRole(roleId); return(GetRoles()); }
public void DeleteRole(UserRole userRole) { _userRoleRepository.DeleteRole(userRole); }
public override async Task <int> HandleCommand(ChangeRolesCommand request, CancellationToken cancellationToken) { var user = await userQueries.Get(request.UserId); if (user == null) { throw new BusinessException("NotExistedAccount"); } if (user.IsExternalUser) { throw new BusinessException("ExternalAccount"); } var rs = -1; using (var conn = DalHelper.GetConnection()) { conn.Open(); using (var trans = conn.BeginTransaction()) { try { userRoleRepository.JoinTransaction(conn, trans); roleQueries.JoinTransaction(conn, trans); await userRoleRepository.DeleteRole(user.Id); foreach (var item in request.RoleIds) { var role = await roleQueries.Get(item); if (role != null && role.IsActive && !role.IsExternalRole && role.Id != 1) // != Administrator { await userRoleRepository.Add(new UI.Models.UserAccountRole() { RoleId = role.Id, UserId = user.Id }); } } return(rs = 0); } finally { if (rs == 0) { trans.Commit(); } else { try { trans.Rollback(); } catch (Exception ex) { LogHelper.GetLogger().Error(ex); } } } } } }