public void AtualizarItem(PedidoItem item) { if (!item.EhValido()) { return; } item.AssociarPedido(Id); var itemExistente = PedidoItems.FirstOrDefault(p => p.ProdutoId == item.ProdutoId); VerificarItemExistente(itemExistente); _pedidoItems.Remove(itemExistente); _pedidoItems.Add(item); CalcularValorPedido(); }
public void AtualizarItem(PedidoItem item) { if (!item.EhValido()) { return; } item.AssociarPedido(Id); var itemExistente = PedidoItems.FirstOrDefault(p => p.ProdutoId == item.ProdutoId); if (itemExistente == null) { throw new DomainException("O item não pertence ao pedido"); } _pedidoItems.Remove(itemExistente); _pedidoItems.Add(item); CalcularValorPedido(); }
public void AdicionarItem(PedidoItem item) { if (!item.EhValido()) { return; } item.AssociarPedido(Id); if (PedidoItemExistente(item)) { var itemExistente = _pedidoItems.FirstOrDefault(p => p.ProdutoId == item.ProdutoId); itemExistente.AdicionarUnidades(item.Quantidade); item = itemExistente; _pedidoItems.Remove(itemExistente); } item.CalcularValor(); _pedidoItems.Add(item); CalcularValorPedido(); }