Example #1
0
        public async Task AtualizarDoacao(RegistroDoacaoDTO dto)
        {
            await Task.Run(() =>
            {
                var query = Query.And(Query <UsuarioMOD> .EQ(_ => _.Id, dto.IdUsuario),
                                      Query.EQ("Doacoes._id", dto.Doacao.Id));
                var update = Update.Set("Doacoes.$.NomeAnimal", dto.Doacao.NomeAnimal)
                             .Set("Doacoes.$.PorteAnimal", dto.Doacao.PorteAnimal)
                             .Set("Doacoes.$.TomouVermifugo", dto.Doacao.TomouVermifugo)
                             .Set("Doacoes.$.EhCastrado", dto.Doacao.EhCastrado)
                             .Set("Doacoes.$.EhVacinado", dto.Doacao.EhVacinado)
                             .Set("Doacoes.$.EspecieAnimal", dto.Doacao.EspecieAnimal)
                             .Set("Doacoes.$.Fotos", new BsonArray(dto.Doacao.Fotos));

                if (dto.Doacao.IdadeAnimal != null)
                {
                    update.Set("Doacoes.$.IdadeAnimal", dto.Doacao.IdadeAnimal.ToBsonDocument <AnimalIdadeMOD>());
                }

                if (!string.IsNullOrWhiteSpace(dto.Doacao.RacaAnimal))
                {
                    update.Set("Doacoes.$.RacaAnimal", dto.Doacao.RacaAnimal);
                }

                _conn.Conectar("mongodb://localhost", "napegada", "usuario").Update(query, update);
            });
        }
Example #2
0
        public async Task <RegistroDoacaoDTO> ConverterParaRegistroDoacaoDTO(ObjectId userId)
        {
            var dto = new RegistroDoacaoDTO();

            dto.IdUsuario = userId;
            dto.Doacao    = await Task.Run(() => ConverterParaDoacao());

            return(dto);
        }
Example #3
0
        private RegistroDoacaoDTO ObterRegistroDoacaoDTOAtualizacao()
        {
            var doacao = new DoacaoMOD();

            doacao.Id         = _doacaoDefault.Id;
            doacao.NomeAnimal = "Totó";

            var dto = new RegistroDoacaoDTO();

            dto.Doacao    = doacao;
            dto.IdUsuario = _usuarioLogado.Id;

            return(dto);
        }
Example #4
0
        private RegistroDoacaoDTO ObterRegistroDoacaoDTO()
        {
            var doacao = new DoacaoMOD();
            var id     = ObjectId.GenerateNewId();

            doacao.Id         = id;
            doacao.NomeAnimal = "Totó";

            var dto = new RegistroDoacaoDTO();

            dto.Doacao    = doacao;
            dto.IdUsuario = _usuarioLogado.Id;

            return(dto);
        }
Example #5
0
 public async Task AtualizarDoacao(RegistroDoacaoDTO dto)
 {
     await Task.Run(() =>
     {
         var doacao = _usuarios.Where(_ => _.Id == dto.IdUsuario)
                      .SelectMany(_ => _.Doacoes)
                      .FirstOrDefault(_ => _.Id == dto.Doacao.Id);
         doacao.Caracteristicas = dto.Doacao.Caracteristicas;
         doacao.EhCastrado      = dto.Doacao.EhCastrado;
         doacao.EhVacinado      = dto.Doacao.EhVacinado;
         doacao.EspecieAnimal   = dto.Doacao.EspecieAnimal;
         doacao.IdadeAnimal     = dto.Doacao.IdadeAnimal;
         doacao.NomeAnimal      = dto.Doacao.NomeAnimal;
         doacao.PorteAnimal     = dto.Doacao.PorteAnimal;
         doacao.RacaAnimal      = dto.Doacao.RacaAnimal;
         doacao.TomouVermifugo  = dto.Doacao.TomouVermifugo;
     });
 }
Example #6
0
 public async Task RegistrarDoacao(RegistroDoacaoDTO dto)
 {
     await _usuarioREP.RegistrarDoacao(dto);
 }
Example #7
0
 public async Task AtualizarDoacao(RegistroDoacaoDTO dto)
 {
     await _usuarioREP.AtualizarDoacao(dto);
 }
Example #8
0
 public async Task RegistrarDoacao(RegistroDoacaoDTO dto)
 {
     await Task.Run(() => _usuarios.FirstOrDefault(_ => _.Id == dto.IdUsuario).AdicionarDoacao(dto.Doacao));
 }
Example #9
0
 public async Task RegistrarDoacao(RegistroDoacaoDTO dto)
 {
     await Task.Run(() => _conn.Conectar("mongodb://localhost", "napegada", "usuario")
                    .Update(Query <UsuarioMOD> .EQ(_ => _.Id, dto.IdUsuario),
                            Update <UsuarioMOD> .Push <DoacaoMOD>(_ => _.Doacoes, dto.Doacao)));
 }