Ejemplo n.º 1
0
        }         // fim de GravarComanda

        /// <summary>
        /// Gravar informações de Comanda e seus itens, antes de imprimir Comanda no Bar
        /// </summary>
        /// <returns></returns>
        public string GravarComanda(
            out int vendaID,
            bool trabalharComIngresso,
            int caixaID,
            int apresentacaoID,
            int setorID,
            string codigo,
            int garconID,
            DataTable comandaItemTabelaMemoria)
        {
            int     comandaID;
            Comanda comanda = new Comanda(usuarioID);

            try{
                vendaID = 0;
                // Gravar na tabela Comanda
                comanda.CaixaID.Valor = caixaID;
                comanda.VendaID.Valor = 0;
                Ingresso ingresso = new Ingresso();
                if (trabalharComIngresso)
                {
                    comanda.IngressoID.Valor = IngressoID(apresentacaoID, setorID, codigo);
                    comanda.GarconID.Valor   = garconID;
                }
                else
                {
                    comanda.IngressoID.Valor = 0;
                    comanda.GarconID.Valor   = 0;
                }
                int incremento = comanda.Ultima() + 1;
                comanda.Ordem.Valor = incremento.ToString();
                comanda.Inserir();                      // *****
                comandaID = comanda.Control.ID;         // retornar ID da Comanda
                foreach (DataRow linha in comandaItemTabelaMemoria.Rows)
                {
                    // Gravar os itens
                    ComandaItem comandaItem = new ComandaItem(usuarioID);
                    comandaItem.ComandaID.Valor  = comandaID;
                    comandaItem.ProdutoID.Valor  = Convert.ToInt32(linha["ProdutoID"]);
                    comandaItem.Quantidade.Valor = Convert.ToInt32(linha["Quantidade"]);
                    // Pesquisar PrecoVenda
                    Produto produto = new Produto();
                    produto.Ler(Convert.ToInt32(linha["ProdutoID"]));
                    comandaItem.PrecoVenda.Valor = produto.PrecoVenda.Valor;
                    // Inserir o item de comanda
                    comandaItem.Inserir();
                    // Atualizar quantidade no estoque para cada item de venda
                    Caixa caixa = new Caixa(usuarioID);
                    caixa.Ler(caixaID);
                    Loja loja = new Loja(usuarioID);
                    loja.Ler(caixa.LojaID.Valor);
                    EstoqueItem estoqueItem = new EstoqueItem(usuarioID);
                    estoqueItem.ProdutoID.Valor = Convert.ToInt32(linha["ProdutoID"]);
                    estoqueItem.EstoqueID.Valor = loja.EstoqueID.Valor;
                    estoqueItem.DefinirID();
                    estoqueItem.AtualizarSaldo(-1 * Convert.ToInt32(linha["Quantidade"]));
                }
                // Em sistema de Ticket, assim que imprimiu a comanda, salva a venda
                if (!trabalharComIngresso)
                {
                    // Chame um mehtodo que cria um registro de Venda e atualiza VendaID nesta Comanda
                    vendaID = InserirVenda(caixaID, comanda.IngressoID.Valor, comandaID);
                }
            }catch (Exception erro) {
                throw erro;
            }
            return(comanda.Ordem.Valor);
        }         // fim de GravarComanda
Ejemplo n.º 2
0
        }         // fim de GravarComandaPagamento

        /// <summary>
        /// Gravar informações de Comanda e seus itens, antes de imprimir Comanda no Bar
        /// Usa como parâmetro Matriz em vez de DataTable
        /// </summary>
        /// <returns></returns>
        public string GravarComanda(
            out int vendaID,
            bool trabalharComIngresso,
            int caixaID,
            int apresentacaoID,
            int setorID,
            string codigo,
            int garconID,
            int [,] comandaItemMatrizMemoria)
        {
            //

            int     comandaID;
            Comanda comanda = new Comanda(usuarioID);

            try{
                vendaID = 0;
                // Gravar na tabela Comanda
                comanda.CaixaID.Valor = caixaID;
                comanda.VendaID.Valor = 0;
                Ingresso ingresso = new Ingresso();
                if (trabalharComIngresso)
                {
                    comanda.IngressoID.Valor = IngressoID(apresentacaoID, setorID, codigo);
                    comanda.GarconID.Valor   = garconID;
                }
                else
                {
                    comanda.IngressoID.Valor = 0;
                    comanda.GarconID.Valor   = 0;
                }
                int incremento = comanda.Ultima() + 1;
                comanda.Ordem.Valor = incremento.ToString();
                comanda.Inserir();                                      // *****
                comandaID = comanda.Control.ID;                         // retornar ID da Comanda
                int tamanho = (int)comandaItemMatrizMemoria.Length / 2; // 2 colunas
                for (int conta = 0; conta < tamanho; conta++)
                {
                    // Gravar os itens
                    int         produtoID   = Convert.ToInt32(comandaItemMatrizMemoria[conta, 0]);
                    int         quantidade  = Convert.ToInt32(comandaItemMatrizMemoria[conta, 1]);
                    ComandaItem comandaItem = new ComandaItem(usuarioID);
                    comandaItem.ComandaID.Valor  = comandaID;
                    comandaItem.ProdutoID.Valor  = produtoID;
                    comandaItem.Quantidade.Valor = quantidade;
                    // Pesquisar PrecoVenda
                    Produto produto = new Produto();
                    produto.Ler(produtoID);                     // *****
                    comandaItem.PrecoVenda.Valor = produto.PrecoVenda.Valor;
                    // Inserir o item de comanda
                    comandaItem.Inserir();                      // *****
                    // Atualizar quantidade no estoque para cada item de venda
                    Caixa caixa = new Caixa(usuarioID);
                    caixa.Ler(caixaID);                         // *****
                    Loja loja = new Loja(usuarioID);
                    loja.Ler(caixa.LojaID.Valor);
                    EstoqueItem estoqueItem = new EstoqueItem(usuarioID);
                    estoqueItem.ProdutoID.Valor = produtoID;
                    estoqueItem.EstoqueID.Valor = loja.EstoqueID.Valor;
                    estoqueItem.DefinirID();                            // *****
                    estoqueItem.AtualizarSaldo(-1 * quantidade);        // *****
                }
                // Em sistema de Ticket, assim que imprimiu a comanda, salva a venda
                if (!trabalharComIngresso)
                {
                    // Chame um mehtodo que cria um registro de Venda e atualiza VendaID nesta Comanda
                    vendaID = InserirVenda(caixaID, comanda.IngressoID.Valor, comandaID);                       // *****
                }
            }catch (Exception erro) {
                throw erro;
            }
            return(comanda.Ordem.Valor);
        }         // fim de GravarComanda