/// <summary> /// Remove uma usuário. /// </summary> /// <param name="viewModel">ViewModel com as informações da usuário.</param> /// <returns></returns> public async Task <bool> DeleteUser(UserViewModel viewModel) { var user = viewModel.AutoMapear <UserViewModel, User>(); _repository.Delete(user); await Commit(); return(OperationSuccesful); }
/// <summary> /// Altera informações de uma usuário cadastrada. /// </summary> /// <param name="viewModel">ViewModel com as informações da usuário.</param> /// <returns></returns> public async Task <UserViewModel> UpdateUser(UserViewModel viewModel) { #region Validação da regra de negócios if (await _repository.Exists(p => p.Nome == viewModel.Nome && p.Sobrenome == viewModel.Sobrenome && p.UserId != viewModel.UserId)) { ModelError = string.Format(Criticas.Ja_Existe_0, "outro usuário com este nome."); return(viewModel); } #endregion var user = viewModel.AutoMapear <UserViewModel, User>(); _repository.Update(user); await Commit(); return(viewModel); }
/// <summary> /// Cadastra uma nova usuário. /// </summary> /// <param name="viewModel">ViewModel com as informações da usuário.</param> /// <returns></returns> public async Task <UserViewModel> AddUser(UserViewModel viewModel) { #region Validação da regra de negócios if (await _repository.Exists(p => p.Nome == viewModel.Nome && p.Sobrenome == viewModel.Sobrenome)) { ModelError = string.Format(Criticas.Ja_Cadastrado_0, "Usuário"); return(viewModel); } #endregion var user = viewModel.AutoMapear <UserViewModel, User>(); _repository.Insert(user); await Commit(); //Recuperando o valor recebido pelo UserId. viewModel.UserId = user.UserId; return(viewModel); }