public Task RemoveFromRoleAsync(UserAccount user, string roleName) { if (user != null) { return(Task.Factory.StartNew(() => { userRoleRepository.DeleteUserRole(user.Id, roleName); })); } else { throw new ArgumentNullException("user"); } }
public void Delete(int id) { UserRole userRole = _userRoles.GetUserRole(id); if (User.IsInRole(RoleNames.Host) || userRole.Role.Name != RoleNames.Host) { _userRoles.DeleteUserRole(id); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRole}", userRole); if (userRole.Role.Name == RoleNames.Host) { // add site specific user roles to preserve user access var role = _roles.GetRoles(_alias.SiteId).FirstOrDefault(item => item.Name == RoleNames.Registered); userRole = _userRoles.AddUserRole(new UserRole { UserId = userRole.UserId, RoleId = role.RoleId, EffectiveDate = null, ExpiryDate = null }); _logger.Log(LogLevel.Information, this, LogFunction.Create, "User Role Added {UserRole}", userRole); role = _roles.GetRoles(_alias.SiteId).FirstOrDefault(item => item.Name == RoleNames.Admin); userRole = _userRoles.AddUserRole(new UserRole { UserId = userRole.UserId, RoleId = role.RoleId, EffectiveDate = null, ExpiryDate = null }); _logger.Log(LogLevel.Information, this, LogFunction.Create, "User Role Added {UserRole}", userRole); } _syncManager.AddSyncEvent(_alias.TenantId, EntityNames.User, userRole.UserId); } }
public void Delete(int id) { UserRole userRole = _userRoles.GetUserRole(id); if (userRole != null && userRole.Role.SiteId == _alias.SiteId && (User.IsInRole(RoleNames.Host) || userRole.Role.Name != RoleNames.Host)) { _userRoles.DeleteUserRole(id); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRole}", userRole); if (userRole.Role.Name == RoleNames.Host) { // add site specific user roles to preserve user access var role = _roles.GetRoles(_alias.SiteId).FirstOrDefault(item => item.Name == RoleNames.Registered); userRole = _userRoles.AddUserRole(new UserRole { UserId = userRole.UserId, RoleId = role.RoleId, EffectiveDate = null, ExpiryDate = null }); _logger.Log(LogLevel.Information, this, LogFunction.Create, "User Role Added {UserRole}", userRole); role = _roles.GetRoles(_alias.SiteId).FirstOrDefault(item => item.Name == RoleNames.Admin); userRole = _userRoles.AddUserRole(new UserRole { UserId = userRole.UserId, RoleId = role.RoleId, EffectiveDate = null, ExpiryDate = null }); _logger.Log(LogLevel.Information, this, LogFunction.Create, "User Role Added {UserRole}", userRole); } _syncManager.AddSyncEvent(_alias.TenantId, EntityNames.User, userRole.UserId); } else { _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized User Role Delete Attempt {UserRoleId}", id); HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden; } }
public void Delete(int id) { UserRole userRole = _userRoles.GetUserRole(id); _userRoles.DeleteUserRole(id); _syncManager.AddSyncEvent(EntityNames.User, userRole.UserId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRole}", userRole); }
public async Task Delete(int id, string siteid) { int SiteId; User user = _users.GetUser(id); if (user != null && int.TryParse(siteid, out SiteId) && SiteId == _alias.SiteId) { // remove user roles for site foreach (UserRole userrole in _userRoles.GetUserRoles(user.UserId, SiteId).ToList()) { _userRoles.DeleteUserRole(userrole.UserRoleId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRole}", userrole); } // remove user folder for site var folder = _folders.GetFolder(SiteId, Utilities.PathCombine("Users", user.UserId.ToString(), Path.DirectorySeparatorChar.ToString())); if (folder != null) { if (Directory.Exists(_folders.GetFolderPath(folder))) { Directory.Delete(_folders.GetFolderPath(folder), true); } _folders.DeleteFolder(folder.FolderId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Folder Deleted {Folder}", folder); } // delete user if they are not a member of any other sites if (!_userRoles.GetUserRoles(user.UserId, -1).Any()) { // get identity user IdentityUser identityuser = await _identityUserManager.FindByNameAsync(user.Username); if (identityuser != null) { // delete identity user var result = await _identityUserManager.DeleteAsync(identityuser); if (result != null) { // delete user _users.DeleteUser(user.UserId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Deleted {UserId}", user.UserId); } else { _logger.Log(LogLevel.Error, this, LogFunction.Delete, "Error Deleting User {UserId}", user.UserId, result.ToString()); } } } } else { _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized User Delete Attempt {UserId}", id); HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden; } }
public async Task Delete(int id, string siteid) { User user = _users.GetUser(id); if (user != null) { // remove user roles for site foreach (UserRole userrole in _userRoles.GetUserRoles(user.UserId, Int32.Parse(siteid)).ToList()) { _userRoles.DeleteUserRole(userrole.UserRoleId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRole}", userrole); } // remove user folder for site var folder = _folders.GetFolder(Int32.Parse(siteid), Utilities.PathCombine("Users", user.UserId.ToString(), Path.DirectorySeparatorChar.ToString())); if (folder != null) { if (Directory.Exists(_folders.GetFolderPath(folder))) { Directory.Delete(_folders.GetFolderPath(folder), true); } _folders.DeleteFolder(folder.FolderId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Folder Deleted {Folder}", folder); } // delete user if they are not a member of any other sites if (!_userRoles.GetUserRoles(user.UserId, -1).Any()) { // get identity user IdentityUser identityuser = await _identityUserManager.FindByNameAsync(user.Username); if (identityuser != null) { // delete identity user var result = await _identityUserManager.DeleteAsync(identityuser); if (result != null) { // delete user _users.DeleteUser(user.UserId); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Deleted {UserId}", user.UserId); } else { _logger.Log(LogLevel.Error, this, LogFunction.Delete, "Error Deleting User {UserId}", user.UserId, result.ToString()); } } } } }
public async Task <object> DeleteUserRole([FromBody] AddUserRoleModel <TKey> model) { SuccessResult result = new SuccessResult(); try { result.Success = await _userRole.DeleteUserRole(model, this.UserId <TKey>()); } catch (Exception ext) { result.Success = false; } return(result); }
public async Task <CommandResult <Provider> > ExecuteAsync(string id) { var userId = _httpContextAccessor.HttpContext.User.Identity.Name; var userName = _userManager.FindByIdAsync(userId).Result.UserName; try { var newId = Guid.Parse(id); if (await _checkUserIsAdminQuery.ExecuteAsync(userId) || await _getPermissionActionQuery.ExecuteAsync(userId, ConstantFunctions.PROVIDER, ActionSetting.CanDelete)) { var getId = await _providerRepository.FindByIdAsync(newId); if (getId != null) { //Remove Provider Role var providerId = await _roleRepository.FindByNameAsync("Provider"); _userRoleRepository.DeleteUserRole(getId.UserId, providerId.Id); //End remove provider Role _providerRepository.Remove(newId); await _providerRepository.SaveAsync(); await Logging <DeleteProviderServiceCommand> . InformationAsync(ActionCommand.COMMAND_DELETE, userName, getId.ProviderName + "has been deleted"); return(new CommandResult <Provider> { isValid = true, myModel = getId }); } else { await Logging <DeleteProviderServiceCommand> . WarningAsync(ActionCommand.COMMAND_DELETE, userName, ErrorMessageConstant.ERROR_CANNOT_FIND_ID); return(new CommandResult <Provider> { isValid = false, errorMessage = ErrorMessageConstant.ERROR_CANNOT_FIND_ID }); } } else { await Logging <DeleteProviderServiceCommand> . WarningAsync(ActionCommand.COMMAND_DELETE, userName, ErrorMessageConstant.ERROR_DELETE_PERMISSION); return(new CommandResult <Provider> { isValid = false, errorMessage = ErrorMessageConstant.ERROR_DELETE_PERMISSION }); } } catch (System.Exception ex) { await Logging <DeleteProviderServiceCommand> . ErrorAsync(ex, ActionCommand.COMMAND_APPROVE, userName, "Has error"); return(new CommandResult <Provider> { isValid = false, errorMessage = ex.InnerException.ToString() }); } }
public void Delete(int id) { UserRoles.DeleteUserRole(id); }
public void Delete(int id) { _userRoles.DeleteUserRole(id); _logger.Log(LogLevel.Information, this, LogFunction.Delete, "User Role Deleted {UserRoleId}", id); }
public void DeleteUserRole(UserRole userRole) { _userRoleRepository.DeleteUserRole(userRole); }
public async Task <CommandResult <AppUserViewModelinUserService> > ExecuteAsync(AppUserViewModelinUserService userVm) { var userId = _httpContextAccessor.HttpContext.User.Identity.Name; var userName = _userManager.FindByIdAsync(userId).Result.UserName; try { if (await _checkUserIsAdminQuery.ExecuteAsync(userId) || await _getPermissionActionQuery.ExecuteAsync(userId, ConstantFunctions.USER, ActionSetting.CanUpdate)) { var user = await _userManager.FindByIdAsync(userVm.Id.ToString()); user.FullName = userVm.FullName; user.Status = userVm.Status; user.Email = userVm.Email; user.PhoneNumber = userVm.PhoneNumber; user.Avatar = userVm.Avatar; user.UserName = userVm.UserName; var userRoles = _userManager.GetRolesAsync(user); List <Guid> roleId = new List <Guid>(); foreach (var item in userRoles.Result.ToList()) { var getId = _roleRepository.FindByNameAsync(item).Result.Id; roleId.Add(getId); } foreach (var item in roleId) { _userRoleRepository.DeleteUserRole(user.Id, item); } var selectedRole = userVm.NewRoles.ToArray(); selectedRole = selectedRole ?? new string[] { }; await _userManager.AddToRolesAsync(user, selectedRole.Except(userRoles.Result).ToArray()); //var userRoles1 = await _userManager.GetRolesAsync(user); await _userManager.UpdateAsync(user); await Logging <UpdateUserAsyncCommand> .InformationAsync(ActionCommand.COMMAND_UPDATE, userName, JsonConvert.SerializeObject(user)); return(new CommandResult <AppUserViewModelinUserService> { isValid = true, myModel = new AppUserViewModelinUserService { FullName = userVm.FullName, Email = userVm.Email, PhoneNumber = userVm.PhoneNumber, Id = userVm.Id, Avatar = userVm.Avatar, DateCreated = user.DateCreated, UserName = user.UserName, Roles = userVm.Roles.ToList() } }); } else { await Logging <UpdateUserAsyncCommand> . WarningAsync(ActionCommand.COMMAND_UPDATE, userName, ErrorMessageConstant.ERROR_UPDATE_PERMISSION); return(new CommandResult <AppUserViewModelinUserService> { isValid = false, errorMessage = ErrorMessageConstant.ERROR_UPDATE_PERMISSION }); } } catch (Exception ex) { await Logging <UpdateUserAsyncCommand> . ErrorAsync(ex, ActionCommand.COMMAND_UPDATE, userName, "Has error"); return(new CommandResult <AppUserViewModelinUserService> { isValid = false, errorMessage = ex.InnerException.ToString() }); } }
public async Task <UserRoleResponse> DeleteUserRole(DeleteUserRoleRequest deleteUserRoleRequest) { return(await _userRoleRepository.DeleteUserRole(deleteUserRoleRequest)); }
public async Task <CommandResult <ProviderServiceViewModel> > ExecuteAsync(string providerId, string reason) { var userId = _httpContextAccessor.HttpContext.User.Identity.Name; var userName = _userRepository.FindByIdAsync(userId).Result.UserName; try { if (await _checkUserIsAdminQuery.ExecuteAsync(userId) || await _getPermissionActionQuery.ExecuteAsync(userId, ConstantFunctions.PROVIDER, ActionSetting.CanUpdate)) { var mappingProvider = await _providerRepository.FindByIdAsync(Guid.Parse(providerId)); if (mappingProvider == null) { return(new CommandResult <ProviderServiceViewModel> { isValid = false, errorMessage = ErrorMessageConstant.ERROR_CANNOT_FIND_ID }); } //Check user is Provider if (_checkUserIsProviderQuery.ExecuteAsync(userId).Result.isValid == true) { var providerRole = await _roleRepository.FindByNameAsync(ConstantRoles.Provider); _userRoleRepository.DeleteUserRole(mappingProvider.UserId, providerRole.Id); } mappingProvider.Status = Status.InActive; _providerRepository.Update(mappingProvider); await _providerRepository.SaveAsync(); var userMail = await _userRepository.FindByIdAsync(mappingProvider.UserId.ToString()); //Set content for email var getEmailContent = await _getAllEmailServiceQuery.ExecuteAsync(); var getFirstEmail = getEmailContent.Where(x => x.Name == EmailName.Reject_Provider).FirstOrDefault(); getFirstEmail.Message = getFirstEmail.Message.Replace(EmailKey.UserNameKey, userMail.Email).Replace(EmailKey.ReasonKey, reason); ContentEmail(_config.Value.SendGridKey, getFirstEmail.Subject, getFirstEmail.Message, userMail.Email).Wait(); await LoggingUser <RejectProviderServiceCommand> . InformationAsync(mappingProvider.UserId.ToString(), userName, userName + "Nhà cung cấp :" + mappingProvider.ProviderName + "của bạn đã bị từ chối.Kiểm tra mail để xem lí do"); await Logging <RejectProviderServiceCommand> . InformationAsync(ActionCommand.COMMAND_REJECT, userName, mappingProvider.ProviderName + "has been rejected"); return(new CommandResult <ProviderServiceViewModel> { isValid = true, }); } else { await Logging <RejectProviderServiceCommand> . WarningAsync(ActionCommand.COMMAND_REJECT, userName, ErrorMessageConstant.ERROR_UPDATE_PERMISSION); return(new CommandResult <ProviderServiceViewModel> { isValid = false, errorMessage = ErrorMessageConstant.ERROR_UPDATE_PERMISSION }); } } catch (Exception ex) { await Logging <RejectProviderServiceCommand> . ErrorAsync(ex, ActionCommand.COMMAND_REJECT, userName, "Has error"); return(new CommandResult <ProviderServiceViewModel> { isValid = false, errorMessage = ex.InnerException.ToString() }); } }
public async Task <ActionResult> Delete(int?id) { return(Ok(await _repository.DeleteUserRole(id))); }