Пример #1
0
        public ActionResult SaveInfected([FromBody] InfectedDTO dto)
        {
            var infected = new Infected(dto.birthDate, dto.gender, dto.latitude, dto.longitude);

            _infectedCollection.InsertOne(infected);
            return(StatusCode(201, "Infected added in the collection"));
        }
Пример #2
0
        public ActionResult SaveInfected([FromBody] InfectedDTO dto)
        {
            var infected = new Infected(dto.BornDate, dto.Gender, dto.Latitude, dto.Longitude);

            _infectedCollection.InsertOne(infected);
            return(StatusCode(201, "Infected has been added"));
        }
Пример #3
0
        public ActionResult UpdateInfected([FromBody] InfectedDTO dto)
        {
            var infected = new Infected(dto.BornDate, dto.Gender, dto.Latitude, dto.Longitude);

            _infectedCollection.UpdateOne(Builders <Infected> .Filter.Where(inf => inf.BornDate == dto.BornDate),
                                          Builders <Infected> .Update.Set("gender", dto.Gender));
            return(Ok(infected));
        }
Пример #4
0
        public ActionResult InfectedSave([FromBody] InfectedDTO infectedDTO)
        {
            var infected = new Infected(infectedDTO.Cpf, infectedDTO.DateBith, infectedDTO.Genre, infectedDTO.Latitude, infectedDTO.Longitude);

            infected.Status = true;
            _InfectedCollection.InsertOne(infected);

            return(StatusCode(201, "Infected sucessfull save!"));
        }
        public async Task <bool> Add(InfectedDTO model)
        {
            var infected = _mapper.Map <Infected>(model);

            infected.UserId = _userService.CurrentUser.Id;

            await _context.Infecteds.AddAsync(infected);

            BackgroundJob.Enqueue <NotificationJob>(x => x.Run($"Infected {model.Name} {model.Surname} added!"));

            return(await _context.SaveChangesAsync() > 0);
        }
Пример #6
0
        public async Task <IActionResult> Update([FromQuery] Guid id, [FromBody] InfectedDTO model)
        {
            var result = await _infectedService.Update(id, model);

            if (result)
            {
                return(Ok());
            }
            else
            {
                return(NotFound());
            }
        }
Пример #7
0
        public async Task <IActionResult> Add(InfectedDTO model)
        {
            var result = await _infectedService.Add(model);

            if (result)
            {
                return(CreatedAtAction(nameof(Add), null));
            }
            else
            {
                return(BadRequest());
            }
        }
        public async Task <bool> Update(Guid id, InfectedDTO model)
        {
            var infected = await _context.Infecteds.SingleOrDefaultAsync(x => x.Id == id && !x.IsDeleted);

            if (infected == null)
            {
                return(false);
            }

            _mapper.Map(model, infected);

            infected.UserId = _userService.CurrentUser.Id;

            BackgroundJob.Enqueue <NotificationJob>(x => x.Run($"Infected {model.Name} {model.Surname} updated!"));

            return(await _context.SaveChangesAsync() > 0);
        }
Пример #9
0
        public ActionResult FlagAsDelete(InfectedDTO dto)
        {
            bool valid = EmailValidator.Validar(dto.Cpf);

            if (!valid)
            {
                return(StatusCode(403, "CPF inválido."));
            }

            var deleted = _repository.RemoveInfected(dto);

            if (!deleted)
            {
                return(StatusCode(500, "Não foi possível remover este registro. Tente novamente mais tarde"));
            }
            return(StatusCode(201, "Registro removido com sucesso"));
        }
Пример #10
0
        public async Task <ActionResult> ConfigureData([FromBody] InfectedDTO dto)
        {
            bool valid = EmailValidator.Validar(dto.Cpf);

            if (!valid)
            {
                return(StatusCode(403, "CPF inválido."));
            }

            var changed = await _repository.ConfigureData(dto);

            if (!changed)
            {
                return(StatusCode(500, "Não foi possível fazer esta mudança agora. Tente novamente mais tarde"));
            }
            return(StatusCode(201, "Dados Atualizados"));
        }
Пример #11
0
        public bool AddInfected(InfectedDTO dto)
        {
            try{
                var newInfected = new Infected(
                    dto.Cpf,
                    dto.DataNascimento,
                    dto.Sexo,
                    dto.Latitude,
                    dto.Longitude
                    );

                _infectedCollection.InsertOne(newInfected);
                return(true);
            }catch (Exception)
            {
                return(false);
            }
        }
Пример #12
0
        public ActionResult RegisterInfected([FromBody] InfectedDTO dto)
        {
            bool valid = EmailValidator.Validar(dto.Cpf);

            if (!valid)
            {
                return(StatusCode(403, "CPF inválido."));
            }

            var infectedSaved = _repository.AddInfected(dto);

            if (!infectedSaved)
            {
                return(StatusCode(501, "Erro ao registrar novo infectado. Tente novamente mais tarde"));
            }

            return(StatusCode(201, "Infectado registrado com sucesso!"));
        }
Пример #13
0
        public bool RemoveInfected(InfectedDTO dto)
        {
            var newInfected = new Infected(
                dto.Cpf,
                dto.DataNascimento,
                dto.Sexo,
                dto.Latitude,
                dto.Longitude
                );

            try{
                _infectedCollection.UpdateOne(Builders <Infected> .Filter.Where(_ => _.Cpf == dto.Cpf), Builders <Infected> .Update.Set("IsDeleted", dto.IsDeleted));

                return(true);
            }catch
            {
                return(false);
            }
        }
Пример #14
0
        public void RegistrarNovoInfectado()
        {
            var mockInfected = new Moq <IInfected>();
            //Average
            var infected = new InfectedDTO(
                cpf: "123.456.789-00",
                dataNascimento: 1997 - 06 - 03,
                sexo: "M",
                latitude: -25.2940369,
                longitude: -54.0937847
                );

            //Act
            var teste = mockInfected.AddInfected(infected);

            //Assert
            Assert.NotNull(teste);
            Assert.True(teste);
        }
Пример #15
0
        public async Task <bool> ConfigureData(InfectedDTO dto)
        {
            var newData = new Infected(
                dto.Cpf,
                dto.DataNascimento,
                dto.Sexo,
                dto.Latitude,
                dto.Longitude
                );

            try{
                await _infectedCollection.FindOneAndDeleteAsync(Builders <Infected> .Filter.Where(_ => _.Cpf == dto.Cpf));

                _infectedCollection.InsertOne(newData);

                //_infectedCollection.UpdateOne(Builders<Infected>.Filter.Where(_ => _.Cpf == dto.Cpf), Builders<Infected>.Update.Set("Latitude", dto.Latitude).Set("Longitude", dto.Longitude));

                return(true);
            }catch
            {
                return(false);
            }
        }