public ActionResult SalvarInfectado([FromBody] InfectadoViewModel viewModel)
        {
            var infectado = new Infectado(viewModel.DataNascimento, viewModel.Sexo, viewModel.Latitude, viewModel.Longitude);

            _infectadosCollection.InsertOne(infectado);
            return(Created("Infectado adicionado com sucesso", viewModel));
        }
        public ActionResult Put([FromBody] InfectadoViewModel infectadoViewModel)
        {
            _infectadosCollection.UpdateOne(Builders <Infectado> .Filter
                                            .Where(i => i.DataNascimento == infectadoViewModel.DataNascimento), Builders <Infectado> .Update.Set("sexo", infectadoViewModel.Sexo));

            return(Ok("Atualizado com sucesso"));
        }
        public IActionResult SalvarInfectado([FromBody] InfectadoViewModel infectadoViewModel)
        {
            var infectado = new Infectados(infectadoViewModel.DataNascimento, infectadoViewModel.Sexo, infectadoViewModel.Latitude, infectadoViewModel.Longitude);

            _colletionsInfectados.InsertOne(infectado);
            return(StatusCode(201, "Infectado inserido com sucesso"));
        }
        public ActionResult Post([FromBody] InfectadoViewModel infectadoViewModel)
        {
            var infectado = new Infectado(infectadoViewModel.DataNascimento, infectadoViewModel.Sexo, infectadoViewModel.Latitude, infectadoViewModel.Longitude);

            _infectadosCollection.InsertOne(infectado);

            return(StatusCode(201, "Infectado adicionado com sucesso"));
        }
        public ActionResult SalvarInfectado([FromBody] InfectadoViewModel dto) //DTO = objetos de transferência de dados
        {
            var infectado = new Infectado(dto.DataNascimento, dto.Sexo, dto.Latitude, dto.Longitude);

            _infectadosCollection.InsertOne(infectado);

            return(StatusCode(201, "Infectado adicionado com sucesso"));
        }
        public ActionResult AtualizarInfectado([FromBody] InfectadoViewModel viewModel, string Id)
        {
            // Atualizar apenas um campo

            _infectadosCollection.UpdateOne(Builders <Infectado> .Filter.Where(r => r.Id == Id),
                                            Builders <Infectado> .Update.Set("sexo", viewModel.Sexo));


            return(Ok("Infectado atualizado com sucesso"));
        }
        public async Task <IActionResult> SalvarInfectado([FromBody] InfectadoViewModel infectadoViewModel)
        {
            try
            {
                await _infectadoRepository.SalvarInfectado(infectadoViewModel);

                return(StatusCode(201, "Infectado adicionado com sucesso"));
            }
            catch (Exception e)
            {
                return(Conflict(e.Message));
            }
        }
        public async Task SalvarInfectado(InfectadoViewModel infectadoViewModel)
        {
            var infectado = new Infectado(infectadoViewModel.DataNascimento, infectadoViewModel.Genero, infectadoViewModel.Latitude, infectadoViewModel.Longitude);

            await _infectadosCollection.InsertOneAsync(infectado);
        }
 public IActionResult AtualizarInfectado([FromBody] InfectadoViewModel infectadoViewModel)
 {
     _colletionsInfectados.UpdateOne(Builders <Infectados> .Filter.Where(i => i.DataNascimento == infectadoViewModel.DataNascimento), Builders <Infectados> .Update.Set("sexo", infectadoViewModel));
     return(Ok("Atualizado com sucesso"));
 }