Exemplo n.º 1
0
        private void BtOKEnvRec_Click(object sender, EventArgs e)
        {
            Exception    ex            = null;
            bool         bReceber      = lblEnvRec.Text == "Recebimento de Processo" ? true : false;
            Processo_bll clsProcesso   = new Processo_bll(_connection);
            int          Ano           = clsProcesso.ExtractAnoProcesso(lblNumProc.Text);
            int          Numero        = clsProcesso.ExtractNumeroProcessoNoDV(lblNumProc.Text);
            int          Seq           = Convert.ToInt16(lvMain.SelectedItems[0].SubItems[1].Text);
            short        CCusto        = Convert.ToInt16(lvMain.SelectedItems[0].SubItems[2].Text);
            DateTime     Data          = Convert.ToDateTime(lblData.Text);
            DateTime     Hora          = Convert.ToDateTime(lblHora.Text);
            DateTime     DataHora      = new DateTime(Data.Year, Data.Month, Data.Day, Hora.Hour, Hora.Second, Hora.Second);
            short?       CodDespacho   = cmbDespacho2.SelectedIndex == -1 ? Convert.ToInt16(0) : Convert.ToInt16(cmbDespacho2.SelectedValue);
            Sistema_bll  Sistema_Class = new Sistema_bll(_connection);

            Tramitacao reg = new Tramitacao {
                Ano      = Convert.ToInt16(Ano),
                Numero   = Numero,
                Seq      = Convert.ToByte(Seq),
                Ccusto   = CCusto,
                Datahora = DataHora,
                Despacho = CodDespacho == 0 ? null : CodDespacho
            };

            if (bReceber)
            {
                if (cmbFuncionario.SelectedIndex == -1)
                {
                    MessageBox.Show("Selecione um funcionário", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                else
                {
                    GtiTypes.CustomListBoxItem selectedItem = (GtiTypes.CustomListBoxItem)cmbFuncionario.SelectedItem;
                    reg.Userid = selectedItem._value;
                    if (reg.Userid < 999)
                    {
                        reg.Userid = Sistema_Class.Retorna_User_LoginId("F" + Convert.ToInt32(reg.Userid).ToString("000"));
                    }
                    else
                    {
                        reg.Userid = Sistema_Class.Retorna_User_LoginId(gtiCore.Retorna_Last_User());
                    }

                    ex = clsProcesso.Excluir_Tramite(Ano, Numero, Seq);
                    if (ex != null)
                    {
                        ErrorBox eBox = new ErrorBox("Erro!", ex.Message, ex);
                        eBox.ShowDialog();
                    }
                    ex = clsProcesso.Incluir_Tramite(reg);
                    if (ex != null)
                    {
                        ErrorBox eBox = new ErrorBox("Erro!", ex.Message, ex);
                        eBox.ShowDialog();
                    }
                }
            }
            else
            {
                if (CodDespacho == 0)
                {
                    MessageBox.Show("Selecione um despacho para o trâmite.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                reg.Dataenvio = DataHora;
                GtiTypes.CustomListBoxItem selectedItem = (GtiTypes.CustomListBoxItem)cmbFuncionario.SelectedItem;
                reg.Userid2 = selectedItem._value;

                if (reg.Userid2 < 999)
                {
                    reg.Userid2 = Sistema_Class.Retorna_User_LoginId("F" + Convert.ToInt32(reg.Userid2).ToString("000"));
                }
                else
                {
                    reg.Userid2 = Sistema_Class.Retorna_User_LoginId(gtiCore.Retorna_Last_User());
                }

                ex = clsProcesso.Alterar_Tramite(reg);
                if (ex != null)
                {
                    ErrorBox eBox = new ErrorBox("Erro!", ex.Message, ex);
                    eBox.ShowDialog();
                }
            }

            CarregaTramite();
            LockForm(true);
            SetButtonState();
            pnlEnvRec.Hide();
            lvMain.Enabled = true;
        }