Example #1
0
        public PedidoColletion ConsultarPorSituacaoOuTodos(int idsituacao, string situacao)
        {
            try
            {
                PedidoColletion pedidoColletion = new PedidoColletion();
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@IdSituacao", idsituacao);
                acessoDadosSqlServer.AdicionarParametros("@Situacao", situacao);
                DataTable dataTable = acessoDadosSqlServer.ExecutarConsulta(CommandType.StoredProcedure, "uspPedidoConsultarPorSituacao");

                foreach (DataRow dataRow in dataTable.Rows)
                {
                    Pedido pedido = new Pedido();
                    pedido.IdPedido            = Convert.ToInt32(dataRow["IdPedido"]);
                    pedido.DataHora            = Convert.ToDateTime(dataRow["DataHora"]);
                    pedido.Situacao            = new Situacao();
                    pedido.Situacao.Descricao  = Convert.ToString(dataRow["Descricao"]);
                    pedido.Pessoa              = new Cliente();
                    pedido.Pessoa.NomeCompleto = Convert.ToString(dataRow["NomeCompleto"]);
                    pedido.TotalDesconto       = Convert.ToDecimal(dataRow["TotalDesconto"]);
                    pedido.TotalValor          = Convert.ToDecimal(dataRow["TotalValor"]);

                    pedidoColletion.Add(pedido);
                }

                return(pedidoColletion);
            }
            catch (Exception exception)
            {
                throw new Exception("Erro ao consultar por data. Detalhes:" + exception.Message);
            }
        }
        private void btnPedidoPesqCliente_Click(object sender, EventArgs e)
        {
            FrmPedidoSelecionarCliente frmPedidoSelecionarCliente = new FrmPedidoSelecionarCliente();
            DialogResult resultado = frmPedidoSelecionarCliente.ShowDialog();

            if (resultado == DialogResult.OK)
            {
                cliente = frmPedidoSelecionarCliente.clienteSelecionado;
                PedidoNegocios  pedidoNegocios   = new PedidoNegocios();
                PedidoColletion pedidoCollection = new PedidoColletion();
                Pedido          pedido           = new Pedido();

                /*string retorno = pedidoNegocios.Inserir(pedido);
                 * try
                 * {
                 *  int id = Convert.ToInt32(retorno);
                 * }
                 * catch(Exception exception)
                 * {
                 *  MessageBox.Show("Erro ao criar Pedido. Detalhes: " + exception);
                 * }
                 *
                 * pedidoCollection= pedidoNegocios.ConsultarPorId(Convert.ToInt32(retorno));*/
                dgwPedidoItens.DataSource = pedidoCollection;
                //textBoxPedidoId.Text =Convert.ToString(pedidoSelecionado.IdPedido);
                //textBoxPedidoCliente.Text = frmPedidoSelecionarCliente.clienteSelecionado.NomeCompleto;
            }
        }
        private void atualizarPedido()
        {
            //FrmPedidoCadastrar frmPedidoCadastrar = new FrmPedidoCadastrar();
            PedidoNegocios      pedidoNegocios       = new PedidoNegocios();
            PedidoColletion     pedidoCollection     = new PedidoColletion();
            PedidoItemColletion pedidoItemCollection = new PedidoItemColletion();
            PedidoItemNegocios  pedidoItemNegocios   = new PedidoItemNegocios();
            PedidoItem          pedidoItem           = new PedidoItem();

            pedidoItem.Pedido             = new Pedido();
            pedidoItem.Pedido.IdPedido    = int.Parse(textBoxPedidoId.Text);
            pedidoItem.Produto            = new Produto();
            pedidoItem.Produto.IdProduto  = produtoItem.IdProduto;
            pedidoItem.QtdProduto         = int.Parse(textBoxPedidoQtd.Text);
            pedidoItem.ValorUn            = decimal.Parse(textBoxPedidoValorUn.Text);
            pedidoItem.PorcentualDesconto = desconto;
            pedidoItem.ValorDesconto      = desValor;
            pedidoItem.ValorTotal         = valorTotalItem;


            string retorno = pedidoItemNegocios.Inserir(pedidoItem).ToString();

            try
            {
                int result = int.Parse(retorno);
                atualizarGrid();
            }
            catch
            {
                MessageBox.Show(retorno, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        public void carregarStatusPedido(int i)
        {
            if (i == 0)
            {
                i = 1;
            }

            mouseClick = "";
            posicao1   = 3;
            panelPedidoOrdem.Controls.Clear();

            PedidoNegocios    pedidoNegocios    = new PedidoNegocios();
            SituacaoColletion situacaoCollecion = new SituacaoColletion();

            situacaoCollecion = pedidoNegocios.ConsultarTiposSituacao(0, "");

            this.situacaoBindingSource.DataSource = situacaoCollecion;

            PedidoColletion pedidoCollection = new PedidoColletion();

            pedidoCollection = pedidoNegocios.ConsultarPorSituacaoOuTodos(i, null);


            //int posicao1 = 3;
            foreach (Pedido pedido in pedidoCollection)
            {
                //if (pedido.Situacao.Descricao == "Em preparo")
                //{
                //panelPedidoStatus = new Panel();
                //panelPedidoStatus.BackColor = Color.Purple;
                //panelPedidoStatus.Location = new Point(3, posicao1);
                //panelPedidoStatus.Name = "panelPedido"+posicao1;
                //panelPedidoStatus.Size = new Size(221, 78);
                //panelPedidoStatus.TabIndex = 15;
                //SetAutoScrollMargins();
                //panelPedidoOrdem.Controls.Add(panelPedidoStatus);

                //posicao1 += 84;
                string   descricao = pedido.Situacao.Descricao;
                string   nome      = pedido.Pessoa.NomeCompleto;
                DateTime dataTime  = Convert.ToDateTime(pedido.DataHora);
                string   id        = Convert.ToString(pedido.IdPedido);

                string data = dataTime.ToShortTimeString();
                //dateTime.ToString("hh:mm tt");

                painelPedido(descricao, nome, data, id);

                //}
            }
        }
        private void btnInserirCliente_Click(object sender, EventArgs e)
        {
            if (comboBoxCliente.Text == string.Empty)
            {
                MessageBox.Show("Nenhum cliente selecionado", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                ClienteNegocios   clienteNegocios   = new ClienteNegocios();
                ClienteCollection clienteCollection = new ClienteCollection();
                Cliente           clientePedido     = new Cliente();
                clienteCollection = clienteNegocios.ConsultarNome(comboBoxCliente.Text);

                comboBoxCliente.Enabled = false;

                PedidoNegocios  pedidoNegocios  = new PedidoNegocios();
                PedidoColletion pedidoColletion = new PedidoColletion();
                Pedido          pedido          = new Pedido();

                clientePedido              = clienteCollection.Find(x => x.NomeCompleto == comboBoxCliente.Text);
                pedido.Pessoa              = new Cliente();
                pedido.Pessoa.IdPessoa     = clientePedido.IdPessoa;
                pedido.Situacao            = new Situacao();
                pedido.Situacao.IdSituacao = 5;

                string retorno = pedidoNegocios.Inserir(pedido);

                textBoxPedidoId.Text = retorno;

                pedidoColletion = pedidoNegocios.ConsultarPorId(int.Parse(retorno));

                Pedido pedido1 = new Pedido();
                pedido1 = pedidoColletion.Find(x => x.IdPedido == int.Parse(textBoxPedidoId.Text));
                textBoxPedidoData.Text     = Convert.ToString(pedido1.DataHora);
                textBoxPedidoSituacao.Text = pedido1.Situacao.Descricao;

                gbxItens.Visible          = true;
                btnInserirCliente.Enabled = false;
                textBoxTotalItem.Text     = "0";
                textBoxValorTotal.Text    = string.Format("{0:c}", valorTotalItem);


                //carregarListaProduto();
            }
        }
        private void PANEL_MouseClick(object sender, MouseEventArgs e)
        {
            Panel painel = sender as Panel;

            if (Convert.ToString(painel.Tag) != mouseClick)
            {
                panelPedidoDetal.Visible = true;
                iconPrint.Visible        = true;
                painel.BorderStyle       = BorderStyle.Fixed3D;
                painel.BackColor         = Color.FromArgb(56, 24, 95);

                if (mouseClick != "")
                {
                    padraoPainelStatus(ativado);
                }


                mouseClick = Convert.ToString(painel.Tag);
                ativado    = painel;

                PedidoNegocios      pedidoNegocios       = new PedidoNegocios();
                PedidoColletion     pedidoCollection     = new PedidoColletion();
                ClienteNegocios     clienteNegocios      = new ClienteNegocios();
                ClienteCollection   clienteCollection    = new ClienteCollection();
                PedidoItemNegocios  pedidoItemNegocios   = new PedidoItemNegocios();
                PedidoItemColletion pedidoItemCollection = new PedidoItemColletion();
                Pedido  pedido  = new Pedido();
                Cliente cliente = new Cliente();

                Point pt = new Point();
                pt.X = 203;
                pt.Y = 44;

                Control idtext = painel.GetChildAtPoint(pt, GetChildAtPointSkip.None);
                string  id     = idtext.Text.Replace("#", "");

                pedidoCollection = pedidoNegocios.ConsultarPorId(int.Parse(id));

                pedido = pedidoCollection.Find(x => x.IdPedido == int.Parse(id));

                textBoxPedidoNum.Text = Convert.ToString(pedido.IdPedido);
                DateTime dataTime = Convert.ToDateTime(pedido.DataHora);
                string   time     = dataTime.ToShortTimeString();
                textBoxPedidoHorario.Text = time;

                //Cor status txt
                if (pedido.Situacao.Descricao == "Em preparo")
                {
                    textPedidoStatus.BackColor = Color.Yellow;
                    textPedidoStatus.ForeColor = Color.Black;
                }
                else if (pedido.Situacao.Descricao == "Aberto")
                {
                    textPedidoStatus.BackColor = Color.Red;
                    textPedidoStatus.ForeColor = Color.White;
                }
                else if (pedido.Situacao.Descricao == "Pronto")
                {
                    textPedidoStatus.BackColor = Color.Orange;
                    textPedidoStatus.ForeColor = Color.Black;
                }
                else if (pedido.Situacao.Descricao == "Enviando")
                {
                    textPedidoStatus.BackColor = Color.Blue;
                    textPedidoStatus.ForeColor = Color.White;
                }
                else if (pedido.Situacao.Descricao == "Finalizado")
                {
                    textPedidoStatus.BackColor = Color.Green;
                    textPedidoStatus.ForeColor = Color.Black;
                }
                //

                textPedidoStatus.Text = pedido.Situacao.Descricao;

                clienteCollection = clienteNegocios.ConsultarNome(pedido.Pessoa.NomeCompleto);

                cliente = clienteCollection.Find(x => x.NomeCompleto == pedido.Pessoa.NomeCompleto);

                textPedidoNome.Text    = cliente.NomeCompleto;
                textBoxRua.Text        = cliente.Rua;
                textBoxMunicipio.Text  = cliente.Municipio;
                textBoxCidade.Text     = cliente.Cidade;
                textBoxReferencia.Text = cliente.PontoReferencia;
                textPedidoTel.Text     = cliente.Telefone;
                textPedidoTel2.Text    = cliente.Telefone1;

                dgwItens.AutoGenerateColumns = false;
                dgwItens.DataSource          = null;
                pedidoItemCollection         = pedidoItemNegocios.Consultar(pedido.IdPedido);
                dgwItens.DataSource          = pedidoItemCollection;
                dgwItens.Update();
                dgwItens.Refresh();


                decimal ValorT = 0;
                pnlValorT.Visible = true;

                foreach (PedidoItem vt in pedidoItemCollection)
                {
                    ValorT += vt.ValorTotal;
                }

                decimal ValorLiquid = ValorT - pedido.TotalDesconto;

                tbxValorBruto.Text = String.Format("{0:c}", ValorT);
                tbxDesc.Text       = String.Format("{0:c}", pedido.TotalDesconto);
                tbxValorTotal.Text = String.Format("{0:c}", ValorLiquid);
            }
        }