public IActionResult Cadastrar(Medico medico) { _repository.Adicionar(medico); _repository.Salvar(); TempData["msg"] = "Cadastrado!"; return(RedirectToAction("Cadastrar")); }
public async Task <IActionResult> Post([FromBody] ToEntityMedicoViewModel medicoViewModel) { 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 médico."); var medico = _mapper.Map <Medico>(medicoViewModel); if (!_medicoValidator.Validate(medico).IsValid) { _logger.Error($"Erro: {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress} - Entidade inválida."); return(StatusCode(400, _medicoValidator.Validate(medico).Errors.ToList())); } _medicoRepository.Adicionar(medico); return(Ok(new { message = "Médico cadastrado com sucesso.", data = medico.Id })); } catch (Exception ex) { _logger.Error($"Erro: {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress} - Algo deu errado ao cadastrar o médico: {ex.Message}"); return(StatusCode(500, "Internal server error")); } }
public IActionResult Post([FromBody] Medico medico) { try { medico.Validate(); if (!medico.EhValido) { return(BadRequest(medico.ObterMensagensValidacao())); } var medicoCadastrado = _medicoRepository.ObterTodos(medico.Crm); if (medicoCadastrado != null) { return(BadRequest("Médico já cadastrado no sistema.")); } if (medico.IdMedico > 0) { _medicoRepository.Atualizar(medico); } else { _medicoRepository.Adicionar(medico); } return(Created("api/medico", medico)); } catch (Exception ex) { return(BadRequest(ex.ToString())); } }
public async Task Adicionar(Medico medico) { if (!ExecutarValidacao(new MedicoValidation(), medico)) { return; } await _medicoRepository.Adicionar(medico); }
public async Task <Guid> Cadastrar(Medico medico) { if (!ValidarCadastro(medico)) { return(Guid.Empty); } await _medicoRepository.Adicionar(medico); await _medicoRepository.SaveChanges(); return(medico.Id); }
public async Task <IActionResult> Create(MedicoViewModel medicoViewModel) { if (!ModelState.IsValid) { return(View(medicoViewModel)); } medicoViewModel.CPF = medicoViewModel.CPF.ApenasNumeros(); medicoViewModel.Telefone = medicoViewModel.Telefone.ApenasNumeros(); var medico = _mapper.Map <Medico>(medicoViewModel); if ((await _medicoRepository.Buscar(m => Equals(m.CPF, medicoViewModel.CPF))).Any()) { ModelState.AddModelError(string.Empty, "CPF já cadastrado!"); } if ((await _medicoRepository.ObtenhaMedicoPorCRM(medico.CRM) != null)) { ModelState.AddModelError(string.Empty, "CRM já cadastrado!"); } if (ModelState.ErrorCount > 0) { return(View(medicoViewModel)); } var usuarioIdentity = await _usuarioService.CadastrarMedico(medicoViewModel.Email, medicoViewModel.Email, medicoViewModel.Senha); if (usuarioIdentity == null) { ModelState.AddModelError(string.Empty, "Email já em utilização!"); return(View(medicoViewModel)); } medico.UsuarioId = Guid.Parse(usuarioIdentity.Id); await _medicoRepository.Adicionar(medico); return(RedirectToAction("Index")); }
public Medico Adicionar(Medico entidade) { return(_medicoRepository.Adicionar(entidade)); }