public int insert(Mesa mesa)
        {
            ConnectionFactory.open();
            string select = "SELECT * FROM mesa";

            select += $" WHERE mesa.numero ={mesa.Numero}";
            var data = ConnectionFactory.command(select);

            if (data.HasRows == true && data.Read())
            {
                MessageBox.Show("Essa mesa já é cadastrada!");
                ConnectionFactory.close();
                return(mesa.Numero);
            }
            else
            {
                ConnectionFactory.close();
                int    numero;
                string insertSQL = $"INSERT INTO mesa (numero, identificacao_garcom) ";
                insertSQL += $" VALUES ({mesa.Numero}, '{mesa.Garcom.Identificacao}') ";
                insertSQL += $" RETURNING numero ";
                try
                {
                    ConnectionFactory.open();
                    data = ConnectionFactory.command(insertSQL);
                    data.Read();

                    numero = data.GetInt32(0);
                    ConnectionFactory.close();
                    MessageBox.Show("Mesa inserida com sucesso!");
                }
                catch (Exception e)
                {
                    ConnectionFactory.close();
                    throw e;
                }

                return(numero);
            }
        }
Example #2
0
        public List <Pedido> find(int codigo)
        {
            List <Pedido> lista = new List <Pedido>();

            lista.Clear();
            try
            {
                var query = "SELECT cliente_pedido.cpf, pedido.numero_mesa, pedido.codigo, to_char(pedido.data,'DD/MM/YYYY HH24:MI:SS'), ";
                query += "pedido.preco_total, pedido.pagamento_confirmado FROM pedido ";
                query += $"LEFT JOIN cliente_pedido ON pedido.codigo=cliente_pedido.codigo_pedido ";
                if (codigo == -1)
                {
                    query += $" WHERE pedido.pagamento_confirmado = true";
                }
                else
                {
                    query += $" WHERE pedido.codigo={codigo}";
                }

                ConnectionFactory.open();
                var data = ConnectionFactory.command(query);
                while (data.Read())
                {
                    Cliente cliente = new Cliente();
                    if (!data.IsDBNull(0))
                    {
                        cliente.CPF = data.GetString(0);
                    }
                    else
                    {
                        cliente.CPF = null;
                    }
                    Mesa mesa = new Mesa(null);
                    if (!data.IsDBNull(1))
                    {
                        mesa.Numero = data.GetInt32(1);
                    }
                    else
                    {
                        mesa.Numero = -1;
                    }
                    Pedido pedido = new Pedido(mesa, cliente);
                    pedido.Codigo = data.GetInt32(2);
                    pedido.Data   = data.GetString(3);
                    if (!data.IsDBNull(4))
                    {
                        pedido.PrecoTotal = data.GetDecimal(4);
                    }
                    else
                    {
                        pedido.PrecoTotal = -1;
                    }
                    pedido.PagamentoConfirmado = data.GetBoolean(5);

                    lista.Add(pedido);
                }
                ConnectionFactory.close();
            }
            catch (Exception e)
            {
                ConnectionFactory.close();
                throw e;
            }

            return(lista);
        }
 public Pedido(Mesa _mesa, Cliente _cliente)
 {
     this.mesa    = _mesa;
     this.cliente = _cliente;
 }