Ejemplo n.º 1
0
        private void GravaOP(OP op)
        {
            try
            {
                List <string>     ListResultadoRoteiro = new List <string>();
                List <string>     ListResultadoOP      = new List <string>();
                List <RoteiroSQL> ListRoteiro          = new List <RoteiroSQL>();
                RoteiroSQL        roteiroSQL           = new RoteiroSQL();

                ListRoteiroSQL.Clear();
                ListCadastrarOP.Clear();
                ListCadastrarOP.Add(op);
                ListResultadoOP = op.CadastrarOP(ListCadastrarOP);

                #region GravaLog
                log.Tipo       = "Informação";
                log.Local      = this.GetType().Name + " - " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                log.Login      = usuario;
                log.Computador = Environment.MachineName.ToString();
                log.Mensagem   = "Criou OP " + ListResultadoOP[0];
                ListLog.Add(log);
                log.GravaLog(ListLog);
                #endregion

                if (Convert.ToInt32(ListResultadoOP[0]) > 0)
                {
                    GeraEtiquetaOP(Convert.ToInt32(ListResultadoOP[0]));

                    for (var i = 0; i < ListRoteiroFireBird.Count; i++)
                    {
                        RoteiroSQL rot = new RoteiroSQL()
                        {
                            IdOP               = Convert.ToInt32(ListResultadoOP[0]),
                            IdFabrica          = Convert.ToInt32(ListRoteiroFireBird[i].Fabrica),
                            CodSetor           = ListRoteiroFireBird[i].CodSetor,
                            NomeSetor          = ListRoteiroFireBird[i].NomeSetor,
                            CodAtividade       = ListRoteiroFireBird[i].CodAtividade,
                            DescricaoAtividade = ListRoteiroFireBird[i].DescricaoAtividade,
                            Sequencia          = ListRoteiroFireBird[i].Sequencia
                        };
                        ListRoteiroSQL.Add(rot);
                        ListRoteiro.Add(rot);
                        ListResultadoRoteiro = roteiroSQL.CadastrarRoteiro(ListRoteiro, Convert.ToInt32(ListResultadoOP[0]));

                        if (Convert.ToInt32(ListResultadoRoteiro[0]) > 0)
                        {
                            ListRoteiroSQL[i].IdRoteiro = Convert.ToInt32(ListResultadoRoteiro[0]);
                            GeraEtiquetaRoteiro(Convert.ToInt32(ListResultadoRoteiro[0]));
                        }
                        else
                        {
                            MessageBox.Show(ListResultadoOP[0].ToString() + " - " + ListResultadoOP[1].ToString(), "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        ListRoteiro.Clear();
                    }

                    if (Imprimir)
                    {
                        pdOpRoteiro.PrinterSettings.PrinterName = Properties.Settings.Default.ImpressoraRoteiro;
                        pdOpRoteiro.PrintPage += pdOpRoteiro_PrintPage;
                        pdOpRoteiro.Print();

                        pdOpEtiqueta.PrinterSettings.PrinterName = Properties.Settings.Default.ImpressoraEtiqueta;
                        pdOpEtiqueta.PrintPage += pdOpEtiqueta_PrintPage;
                        pdOpEtiqueta.Print();
                    }
                    else
                    {
                        if (!ImprimirAviso)
                        {
                            DialogResult dialogResultOp = MessageBox.Show("Deseja imprimir a OP agora?", "Impressão da OP", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                            if (dialogResultOp == DialogResult.Yes)
                            {
                                pdOpRoteiro.PrinterSettings.PrinterName = Properties.Settings.Default.ImpressoraRoteiro;
                                pdOpRoteiro.PrintPage += pdOpRoteiro_PrintPage;
                                pdOpRoteiro.Print();
                                Imprimir = true;
                            }
                            else
                            {
                                Imprimir      = false;
                                ImprimirAviso = true;
                            }

                            DialogResult dialogResultEtiqueta = MessageBox.Show("Deseja imprimir a Etiqueta agora?", "Impressão da Etiqueta", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                            if (dialogResultEtiqueta == DialogResult.Yes)
                            {
                                pdOpEtiqueta.PrinterSettings.PrinterName = Properties.Settings.Default.ImpressoraEtiqueta;
                                pdOpEtiqueta.PrintPage += pdOpEtiqueta_PrintPage;
                                pdOpEtiqueta.Print();
                                Imprimir = true;
                            }
                            else
                            {
                                Imprimir      = false;
                                ImprimirAviso = true;
                            }
                        }
                    }

                    Msg            = Msg + "OP: " + ListResultadoOP[0].ToString() + " (Qtde: " + op.Qtde + ") - " + ListResultadoOP[1].ToString() + "\n";
                    tbCodProd.Text = "";
                    tbCodProd.Focus();
                    lbDescProd.Text     = "";
                    tbQtde.Text         = "";
                    lbEstampo.Text      = "";
                    lbMateriaPrima.Text = "";
                    tbOpObs.Text        = "";
                    ListResultadoOP.Clear();
                }
                else
                {
                    MessageBox.Show(ListResultadoOP[0].ToString() + " - " + ListResultadoOP[1].ToString(), "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception ex)
            {
                log.Tipo       = "Erro";
                log.Local      = this.GetType().Name + " - " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                log.Login      = usuario;
                log.Computador = Environment.MachineName.ToString();
                log.Mensagem   = ex.Message;
                ListLog.Add(log);
                log.GravaLog(ListLog);
                MessageBox.Show(ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }