Beispiel #1
0
        public async Task <ResponseViewModel> UpdateAsync(UserUpdateRequestViewModel request)
        {
            using (_unitOfWork)
            {
                // Inicia a transação
                _unitOfWork.BeginTransaction();

                // Atualiza o Perfil
                ProfileUpdateCommand profileUpdateCommand  = new ProfileUpdateCommand(Convert.ToInt32(request.IdType), request.GuidProfile, request.Avatar, request.CpfCnpj, request.Address);
                ResponseCommand      profileUpdateResponse = await _mediator.Send(profileUpdateCommand, CancellationToken.None).ConfigureAwait(true);

                if (!profileUpdateResponse.Success)
                {
                    return(new ResponseViewModel(false, profileUpdateResponse.Object));
                }

                // Atualiza o Usuário
                UserUpdateCommand userUpdateCommand  = new UserUpdateCommand(request.GuidUser, request.Name, request.Email);
                ResponseCommand   userUpdateResponse = await _mediator.Send(userUpdateCommand, CancellationToken.None).ConfigureAwait(true);

                if (!userUpdateResponse.Success)
                {
                    return(new ResponseViewModel(false, userUpdateResponse.Object));
                }

                // Comita e Retorna
                _unitOfWork.CommitTransaction();
                return(new ResponseViewModel(true, "User updated"));
            }
        }
Beispiel #2
0
        public IActionResult Put([FromBody] UserUpdateRequestViewModel inputModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(new ApiBadRequestResponse(ModelState)));
                }

                ResponseViewModel <UserUpdateResponseViewModel> response = userService.UpdateUser(inputModel);

                if (response.Status)
                {
                    return(Ok(new ApiOkResponse((int)HttpStatusCode.OK, true, response.Message, response.Result)));
                }
                else
                {
                    return(Ok(new ApiBadResponse(response.StatusCode, response.Status, response.Message, "", response.Errors)));
                }
            }
            catch (Exception ex)
            {
                if (ex.InnerException != null)
                {
                    loggerService.LogError(1, "## [UserController][Put] innerexception :" + ex.InnerException.ToString());

                    if (ex.InnerException.Message != null)
                    {
                        loggerService.LogError(1, "## [UserController][Put] innerexception message :" + ex.InnerException.Message.ToString());
                    }
                }
                else
                {
                    loggerService.LogError(1, "## [UserController][Put] exception :" + ex.Message.ToString());
                }

                var Message = errorMessageService.GetErrorMessagesData("501");
                return(StatusCode((int)HttpStatusCode.InternalServerError, new ApiInternalServerErrorResponse((int)HttpStatusCode.InternalServerError, false, Message, "")));
            }
        }
        public async Task <IActionResult> Put([FromBody] UserUpdateRequestViewModel request)
        {
            ResponseViewModel response = await _userAppService.UpdateAsync(request).ConfigureAwait(true);

            return(Ok(response));
        }
Beispiel #4
0
        public ResponseViewModel <UserUpdateResponseViewModel> UpdateUser(UserUpdateRequestViewModel inputModel)
        {
            ResponseViewModel <UserUpdateResponseViewModel> response = new ResponseViewModel <UserUpdateResponseViewModel>();
            List <Error> lstError = new List <Error>();
            UserUpdateResponseViewModel objUserResponseViewModel = new UserUpdateResponseViewModel();

            try
            {
                _loggerService.LogInformation(1, "## [UserService][UpdateUser]- Start calling UpdateUser method for userId : " + inputModel.userid);

                byte[] passwordHash, passwordSalt;
                _securityHelper.CreatePasswordHash(inputModel.password, out passwordHash, out passwordSalt);

                Users objuser = new Users()
                {
                    UserId        = inputModel.userid,
                    Address       = inputModel.address,
                    BirthDate     = DateTimeOffset.Parse(inputModel.birthdate).UtcDateTime,
                    ContactNumber = inputModel.contactnumber,
                    Email         = inputModel.email,
                    FirstName     = inputModel.firstname,
                    LastName      = inputModel.lastname,
                    Status        = inputModel.status,
                    UserType      = inputModel.usertype,
                    PasswordHash  = passwordHash,
                    PasswordSalt  = passwordSalt,
                    CreatedBy     = "admin",
                    UpdatedBy     = "admin",
                    CreatedOn     = DateTime.UtcNow,
                    UpdatedOn     = DateTime.UtcNow
                };

                _loggerService.LogInformation(1, "## [UserService][UpdateUser]- Update user Email : " + objuser.Email + " , FirstName  : " + objuser.FirstName + " , LastName : " + objuser.LastName);

                bool result = _userRepository.Update(objuser);
                if (result)
                {
                    string birthDate = Convert.ToString(inputModel.birthdate);

                    objUserResponseViewModel = new UserUpdateResponseViewModel()
                    {
                        userid        = inputModel.userid,
                        address       = inputModel.address,
                        birthdate     = string.Format("{0:yyyy-MM-ddTHH:mm:ssZ}", birthDate),
                        contactnumber = inputModel.contactnumber,
                        email         = inputModel.email,
                        firstname     = inputModel.firstname,
                        lastname      = inputModel.lastname,
                        status        = inputModel.status,
                        usertype      = inputModel.usertype
                    };

                    _loggerService.LogInformation(1, "## [UserService][UpdateUser]- User updated sucessfully : " + objUserResponseViewModel.email);
                }
                else
                {
                    _loggerService.LogInformation(1, "## [UserService][UpdateUser]- User not updated in userRepository for email id : " + inputModel.email);
                    var errorMessage = _errorMessageService.GetErrorMessagesData("120");
                    var objError     = new Error {
                        Code = "120", Message = errorMessage
                    };
                    lstError.Add(objError);
                }


                if (lstError.Count == 0)
                {
                    response.Status     = true;
                    response.Message    = "User updated sucessfully";
                    response.StatusCode = (int)HttpStatusCode.OK;
                    response.Result     = objUserResponseViewModel;
                }
                else
                {
                    response.Status     = false;
                    response.Errors     = lstError;
                    response.StatusCode = (int)HttpStatusCode.BadRequest;
                }
            }
            catch (Exception ex)
            {
                if (ex.InnerException != null)
                {
                    _loggerService.LogError(1, "## [UserService][UpdateUser] innerexception :" + ex.InnerException.ToString());

                    if (ex.InnerException.Message != null)
                    {
                        _loggerService.LogError(1, "## [UserService][UpdateUser] innerexception message :" + ex.InnerException.Message.ToString());
                    }
                }
                else
                {
                    _loggerService.LogError(1, "## [UserService][UpdateUser] exception :" + ex.Message.ToString());
                }

                response.Status     = false;
                response.Message    = _errorMessageService.GetErrorMessagesData("501");
                response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(response);
            }
            return(response);
        }