public User CreateEntityFromRequest(AdminDemoteRequest request, User entity) { entity.UpdatedBy = request.CurrentUserId; entity.IsAdmin = false; return(entity); }
public async Task <AdminDemoteResponse> DemoteToUser(AdminDemoteRequest request) { var response = new AdminDemoteResponse(); var currentUser = _cacheManager.GetCachedCurrentUser(request.CurrentUserId); if (!currentUser.IsSuperAdmin) { response.SetInvalid(); return(response); } var user = await _userRepository.Select(x => x.Uid == request.UserUid); if (user.IsNotExist()) { response.SetInvalidBecauseNotFound("user"); return(response); } user.IsSuperAdmin = false; var result = await _userRepository.Update(request.CurrentUserId, user); if (result) { _cacheManager.UpsertUserCache(user, _userFactory.MapCurrentUser(user)); response.Item = _userFactory.CreateDtoFromEntity(user); response.Status = ResponseStatus.Success; return(response); } response.SetFailed(); return(response); }
public async Task <IActionResult> DegradeToUser(Guid id) { var commonResult = new CommonResult { IsOk = false }; var adminUid = id; if (adminUid.IsEmptyGuid()) { return(Json(commonResult)); } var request = new AdminDemoteRequest(CurrentUser.Id, adminUid); var response = await _adminService.DemoteToUser(request); if (response.Status.IsNotSuccess) { commonResult.Messages = response.ErrorMessages; return(Json(commonResult)); } commonResult.IsOk = true; return(Json(commonResult)); }
public static AdminDemoteRequest GetAdminDemoteRequest() { var request = new AdminDemoteRequest(CurrentUserId, UidOne); return(request); }