public void Infra_Pedido_Editar_Deve_Editar_Com_Sucesso() { //Cenário pedido.Responsavel = "asd"; var novoPedido = _repository.Add(pedido); //Ação _repository.Update(pedido); //Saída var GetPedido = _repository.GetById(novoPedido.Id); GetPedido.Responsavel.Should().Be(pedido.Responsavel); }
private PedidoDto GetPedidoDtoById(int id) { var pedido = _repository.GetById(id).Select(x => new PedidoDto { Id = x.Id, Valor = x.Valor, DataCadastro = x.DataCadastro }).FirstOrDefault(); var listaItens = _repositoryPedidoItens.GetByIdPedido(id).ToList(); List <PedidoItemDto> listaItensDto = new List <PedidoItemDto>(); foreach (var item in listaItens) { var produto = _repositoryProduto.GetById(item.IdProduto).FirstOrDefault(); PedidoItemDto dto = new PedidoItemDto { Quantidade = item.Quantidade, ValorTotal = item.ValorTotal, ValorUnidade = item.ValorUnidade, NomeProduto = produto.Nome }; listaItensDto.Add(dto); } pedido.Itens = listaItensDto; return(pedido); }
public async Task <PedidoOutput> Get(long id, CancellationToken cancellationToken) { return(await Task.Run(() => { var pedido = PedidoRepository.GetById(id); return PedidoOutput.From(pedido); }, cancellationToken)); }
public PedidoDTO GetById(int id) { Pedido entity = _repository.GetById(id); if (entity == null) { throw new Exception("Este Pedido nao existe!"); } return(Mapper.Map <PedidoDTO>(entity)); }
public async Task Delete(long id, CancellationToken cancellationToken) { await Task.Run(() => { var pedido = PedidoRepository.GetById(id); if (pedido == null) { throw new Exception("Pedido não encontrado"); } PedidoRepository.Delete(pedido); }, cancellationToken); }
public void TestDelete() { Comanda comanda = new Comanda(0, "MESA 1", DateTime.Now); comandaRepository.Add(comanda); Assert.NotEqual(0, comanda.Id); Pedido pedido = new Pedido(0, comanda.Id, "Pedido 1"); pedidoRepository.Add(pedido); Assert.NotEqual(0, pedido.Id); pedidoRepository.Remove(pedido.Id); var consulta = pedidoRepository.GetById(pedido.Id); Assert.Null(consulta); }
public async Task <StatusOutput> AlterarStatus(StatusInput statusInput, CancellationToken cancellationToken) { return(await Task.Run(() => { StatusOutput statusOutput = new StatusOutput(); statusOutput.Pedido = statusInput.Pedido; Pedido pedido = PedidoRepository.GetById(statusInput.Pedido); if (pedido == null) { pedido = new Pedido(); } pedido.AlterarStatus(statusInput.Status, statusInput.ItensAprovados, statusInput.ValorAprovado); statusOutput.Status = pedido.GetStatusDetalhado(); return statusOutput; }, cancellationToken)); }
public async Task Edit(long pedidoId, PedidoInput pedidoInput, CancellationToken cancellationToken) { await Task.Run(() => { pedidoInput.Validar(); Pedido pedido = PedidoRepository.GetById(pedidoId); var itensRemovidos = pedido.Itens.Where(i => !pedidoInput.Itens.Any(ii => ii.ProdutoId == i.Produto.Id)); foreach (var item in itensRemovidos) { pedido.Itens.Remove(item); } foreach (var itemInput in pedidoInput.Itens) { var item = pedido.Itens.FirstOrDefault(i => i.Produto.Id == itemInput.ProdutoId); if (item == null) { Produto produto = ProdutoRepository.GetById(itemInput.ProdutoId); if (produto == null) { throw new Exception("Produto não encontrado"); } item.Produto = produto; item.Quantidade = itemInput.Qtd; pedido.Itens.Add(item); } else { item.Quantidade = itemInput.Qtd; } } PedidoRepository.Update(pedido); }, cancellationToken); }
public Pedido GetById(int pedidoId) { return(_pedidoRepository.GetById(pedidoId)); }