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(x => x.ProdutoId == item.ProdutoId); item.AdicionarUnidades(item.Quantidade); item = itemExistente; _pedidoItems.Remove(itemExistente); } item.CalcularValor(); _pedidoItems.Add(item); CalcularValorPedido(); }
public void AdicionarItem(PedidoItem pedidoItem) { ValidarQuantidadeItemPermitida(pedidoItem); if (pedidoItem.Quantidade < MIN_UNIDADES_ITEM) { throw new DomainException($"Mínimo de {MIN_UNIDADES_ITEM} unidades permitidas"); } if (PedidoItemExistente(pedidoItem)) { var itemExistente = _pedidoItems.FirstOrDefault(p => p.ProdutoId == pedidoItem.ProdutoId); itemExistente.AdicionarUnidades(pedidoItem.Quantidade); pedidoItem = itemExistente; _pedidoItems.Remove(itemExistente); } _pedidoItems.Add(pedidoItem); CalcularValorPedido(); }
public void AtualizarUnidades(PedidoItem item, int unidades) { item.AtualizarUnidades(unidades); AtualizarItem(item); }
public bool PedidoItemExistente(PedidoItem item) { return(_pedidosItens.Any(p => p.ProdutoId == item.ProdutoId)); }
private bool ExisteItemPedido(PedidoItem pedidoItem) => _pedidoItems.Any(x => x.ProdutoId == pedidoItem.ProdutoId);
public bool PedidoItemExistente(PedidoItem item) { return(_pedidoItems.Any(c => c.ProdutoId == item.ProdutoId)); }
public void RemoverItem(PedidoItem pedidoItem) { ValidarPedidoItemInexistente(pedidoItem); _pedidoItens.Remove(pedidoItem); CalcularValorPedido(); }
private bool PedidoItemExistente(PedidoItem item) => _pedidoItems.Any(p => p.Id == item.Id);
public void AtualizarUnidades(PedidoItem item, int quantidade) { item.AtualizarUnidades(quantidade); AtualizarItem(item); }
public bool PedidoItemExistente(PedidoItem pedidoItem) { return(_pedidoItems.Any(x => x.ProdutoId == pedidoItem.ProdutoId)); }