public async Task <IActionResult> Post([FromBody] ToEntityPacienteViewModel pacienteViewModel) { if (!ModelState.IsValid) { _logger.Error($"Erro: {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress} - Parâmetros inválidos."); return(StatusCode(400, "Parâmetros da chamada inválidos")); } try { _logger.Information("Inciando o processo de cadastro do paciente."); var paciente = _mapper.Map <Paciente>(pacienteViewModel); if (!_pacienteValidator.Validate(paciente).IsValid) { _logger.Error($"Erro: {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress} - Entidade inválida."); return(StatusCode(400, _pacienteValidator.Validate(paciente).Errors.ToList())); } _pacienteRepository.Adicionar(paciente); return(Ok(new { message = "Paciente cadastrado com sucesso.", data = paciente.Id })); } catch (Exception ex) { _logger.Error($"Erro: {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress} - Algo deu errado ao cadastrar o paciente: {ex.Message}"); return(StatusCode(500, "Internal server error")); } }
public async Task <IActionResult> Create(PacienteViewModel pacienteViewModel) { if (!ModelState.IsValid) { return(View(pacienteViewModel)); } pacienteViewModel.CPF = pacienteViewModel.CPF.ApenasNumeros(); pacienteViewModel.Telefone = pacienteViewModel.Telefone.ApenasNumeros(); var paciente = _mapper.Map <Paciente>(pacienteViewModel); if ((await _pacienteRepository.Buscar(m => Equals(m.CPF, pacienteViewModel.CPF))).Any()) { ModelState.AddModelError(string.Empty, "CPF já cadastrado!"); return(View(pacienteViewModel)); } var usuarioIdentity = await _usuarioService.CadastrarPaciente(pacienteViewModel.Email, pacienteViewModel.Email, pacienteViewModel.Senha); if (usuarioIdentity == null) { ModelState.AddModelError(string.Empty, "Email já em utilização!"); return(View(pacienteViewModel)); } paciente.UsuarioId = Guid.Parse(usuarioIdentity.Id); await _pacienteRepository.Adicionar(paciente); return(RedirectToAction("Index")); }
public async Task <IActionResult> Create(PacienteViewModel pacienteViewModel) { if (!ModelState.IsValid) { return(View(pacienteViewModel)); } var paciente = _mapper.Map <Paciente>(pacienteViewModel); await _pacienteRepository.Adicionar(paciente); return(RedirectToAction("Index")); }
public IActionResult Post([FromBody] Paciente paciente) { var p = new Paciente() { Nome = paciente.Nome, Telefone = paciente.Telefone, Email = paciente.Email }; _pacienteRep.Adicionar(p); return(RedirectToAction("Get")); }
public async Task <IActionResult> Novo(PacienteViewModel pacienteViewModel) { if (!ModelState.IsValid) { return(View(pacienteViewModel)); } var fornecedor = _mapper.Map <Paciente>(pacienteViewModel); fornecedor.DataCadastro = DateTime.Now; await _pacienteRepository.Adicionar(fornecedor); return(RedirectToAction("Index")); }
public async Task Adicionar(Paciente paciente) { if (!ExecutarValidacao(new PacienteValidation(), paciente)) { return; } if (_pacienteRepository.Buscar(p => p.Cpf == paciente.Cpf).Result.Any()) { Notificar("Já existe um paciente com o CPF informado."); return; } await _pacienteRepository.Adicionar(paciente); // Validar se a data de nascimento é valida }
public Paciente Adicionar(Paciente entidade) { return(_pacienteRepository.Adicionar(entidade)); }