private void btn_delete_produto_selecionar_Click(object sender, EventArgs e) { if (resultado_produtos_grid.DataSource != null) { var lista = (List <ListarProdutoDto>)resultado_produtos_grid.DataSource; if (resultado_produtos_grid.SelectedRows.Count == 1) { var id = (int)resultado_produtos_grid.SelectedRows[0].Cells[0].Value; var produto = lista.FirstOrDefault(c => c.Codigo == id); lista.Remove(produto); } var consumo = _instanciarConsumoService.RecuperarConsumo(txt_comanda.Text); if (consumo != null) { consumo.Lancamentos = lista.Select(c => new Dominio.Lancamentos.Lancamento { CodigoDaComanda = txt_comanda.Text, ConsumoId = consumo.Id, ProdutoId = c.Codigo, DataDeLancamento = DateTime.Now }).ToList(); _consumoRepositorio.Salvar(); } GridProdutosHelper.MontarGridProdutosReduzida(resultado_produtos_grid, lista); } }
private void btn_adicionar_produto_comanda_Click(object sender, System.EventArgs e) { if (string.IsNullOrEmpty(txt_comanda.Text)) { MetroMessageBox.Show(this, "Entre com o código da comanda primeiro!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { var consumo = _instanciarConsumoService.RecuperarConsumo(txt_comanda.Text); lb_status_comanda.Text = ((SituacaoConsumoEnum)consumo.Situacao).ToString(); lb_status_comanda.ForeColor = consumo.Situacao == SituacaoConsumoEnum.Aberto.GetHashCode() ? Color.Green : Color.Red; if (selecionar_produtos_grid.SelectedRows.Count == 1) { var produto = _produtoRepositorio .ObtemPorId((int)selecionar_produtos_grid.SelectedRows[0].Cells[0].Value); if (int.TryParse(txt_qtd.Text, out var qtd)) { for (int i = 0; i < qtd; i++) { consumo.Lancamentos.Add(new Dominio.Lancamentos.Lancamento { ProdutoId = produto.Id, CodigoDaComanda = consumo.CodigoDaComanda, DataDeLancamento = DateTime.Now }); } } else { consumo.Lancamentos.Add(new Dominio.Lancamentos.Lancamento { ProdutoId = produto.Id, CodigoDaComanda = consumo.CodigoDaComanda, DataDeLancamento = DateTime.Now }); } _consumoRepositorio.Salvar(); } GridProdutosHelper.MontarGridProdutosReduzida(resultado_produtos_grid, consumo.Lancamentos.Select(l => new ListarProdutoDto { Codigo = l.Produto.Id, DataDeCadastro = l.Produto.DataDeCadastro.ToString("dd/MM/yyy"), Descricao = l.Produto.Descricao, Nome = l.Produto.Nome, Valor = l.Produto.Valor }).ToList()); } }