예제 #1
0
        public void Excluir_Item_Inexistente()
        {
            ItemPerdido item = service.Buscar().FirstOrDefault();

            item.Id = -9;
            ActionResult response = controller.Excluir(item.Id);

            Assert.IsType <NotFoundObjectResult>(response);
        }
예제 #2
0
        public void Excluir_Item_Existente()
        {
            ItemPerdido  item     = service.Buscar().FirstOrDefault();
            ActionResult response = controller.Excluir(item.Id);

            Assert.IsType <OkObjectResult>(response);
            ItemPerdido itemExcluido = service.Buscar(item.Id);

            Assert.Null(itemExcluido);
            service.Inserir(item);
        }
예제 #3
0
        public void Buscar_Por_Id_Retorna_Ok()
        {
            ItemPerdido  item     = service.Buscar().FirstOrDefault();
            ActionResult response = controller.BuscarPerdido(item.Id);

            Assert.IsType <OkObjectResult>(response);
            OkObjectResult okResult    = response as OkObjectResult;
            ItemPerdidoDto itemRetorno = okResult.Value as ItemPerdidoDto;

            Assert.Equal(itemRetorno.Id, item.Id);
        }
예제 #4
0
        public void Atualizar_Item_Existente()
        {
            ItemPerdido item = service.Buscar().FirstOrDefault();

            item.Recuperado = true;
            ActionResult response = controller.Atualizar(item);

            Assert.IsType <OkObjectResult>(response);
            ItemPerdido atualizado = service.Buscar(item.Id);

            Assert.True(atualizado.Recuperado);
        }
 public ActionResult Salvar([FromBody] ItemPerdido itemPerdido)
 {
     try
     {
         itemPerdidoService.Inserir(itemPerdido);
         itemPerdidoService.AtualizarItensCompativeis(itemPerdido);
         return(Ok(new RequestResponse()
         {
             message = "Item cadastrado com sucesso", status = "200"
         }));
     }
     catch (Exception e)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, e));
     }
 }
        public ActionResult Atualizar([FromBody] ItemPerdido itemPerdido, [FromServices] IItemMatchService itemMatchService,
                                      [FromServices] IItemAchadoService itemAchadoService)
        {
            try
            {
                if (itemPerdido == null)
                {
                    return(BadRequest("Item não informado"));
                }

                itemPerdidoService.Atualizar(itemPerdido);
                List <ItemMatch> matchs = itemMatchService.BuscarMatchsPerdidos(itemPerdido.UsuarioId, itemPerdido.Id);

                if (itemPerdido.Recuperado)
                {
                    matchs.ForEach(match =>
                    {
                        match.ItemAchado.Devolvido = true;
                    });
                }
                else
                {
                    matchs.ForEach(match =>
                    {
                        match.ItemAchado.Devolvido = false;
                    });
                }

                itemAchadoService.Atualizar(matchs.Select(match => match.ItemAchado).ToList());
                itemPerdidoService.AtualizarItensCompativeis(itemPerdido);
                return(Ok(new RequestResponse()
                {
                    message = "Item Atualizado com sucesso", status = "200"
                }));
            }
            catch (EntityNotFoundException ex)
            {
                return(NotFound(ex.Message));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex));
            }
        }
        public ActionResult BuscarPerdido(long id)
        {
            try
            {
                if (id <= 0)
                {
                    return(BadRequest("Id inválido"));
                }

                ItemPerdido perdido = itemPerdidoService.Buscar(id);

                if (perdido == null)
                {
                    return(NotFound("Item não existe"));
                }

                ItemPerdidoDto itemDto = mapper.Map <ItemPerdidoDto>(perdido);
                return(Ok(itemDto));
            }
            catch (Exception e)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, e));
            }
        }