Exemple #1
0
        private void gViagem_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            if (gViagem.Columns[e.ColumnIndex].SortMode == DataGridViewColumnSortMode.NotSortable)
            {
                return;
            }
            if (bsViagem.Count < 1)
            {
                return;
            }
            PropertyDescriptorCollection lP = TypeDescriptor.GetProperties(new CamadaDados.Frota.TRegistro_Viagem());

            CamadaDados.Frota.TList_Viagem lComparer;
            SortOrder direcao = SortOrder.None;

            if ((gViagem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.None) ||
                (gViagem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection == SortOrder.Descending))
            {
                lComparer = new CamadaDados.Frota.TList_Viagem(lP.Find(gViagem.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Ascending);
                foreach (DataGridViewColumn c in gViagem.Columns)
                {
                    c.HeaderCell.SortGlyphDirection = SortOrder.None;
                }
                direcao = SortOrder.Ascending;
            }
            else
            {
                lComparer = new CamadaDados.Frota.TList_Viagem(lP.Find(gViagem.Columns[e.ColumnIndex].DataPropertyName, true), SortOrder.Descending);
                foreach (DataGridViewColumn c in gViagem.Columns)
                {
                    c.HeaderCell.SortGlyphDirection = SortOrder.None;
                }
                direcao = SortOrder.Descending;
            }
            (bsViagem.List as CamadaDados.Frota.TList_Viagem).Sort(lComparer);
            bsViagem.ResetBindings(false);
            gViagem.Columns[e.ColumnIndex].HeaderCell.SortGlyphDirection = direcao;
        }
Exemple #2
0
 private void placa_Leave(object sender, EventArgs e)
 {
     if ((empresa.SelectedValue != null) && (lCfg.Count > 0) && (placa.Text.Trim() != "-"))
     {
         using (Proc_Commoditties.TFLanSessaoPDV fSessao = new Proc_Commoditties.TFLanSessaoPDV())
         {
             fSessao.Mensagem = "Acesso Abastecimento Frota";
             fSessao.Titulo   = "FROTA";
             if (fSessao.ShowDialog() == DialogResult.OK)
             {
                 LoginAbastecida = fSessao.Usuario;
                 if (new CamadaDados.Diversos.TCD_CadUsuario().BuscarEscalar(
                         new Utils.TpBusca[]
                 {
                     new Utils.TpBusca()
                     {
                         vNM_Campo = string.Empty,
                         vOperador = "exists",
                         vVL_Busca = "(select 1 from tb_div_acesso x " +
                                     "where x.Id_Menu = 191300 " +
                                     "and x.login = '******')"
                     }
                 }, "1") != null)
                 {
                     //Verificar placa cadastrada
                     if (new CamadaDados.Frota.Cadastros.TCD_CadVeiculo().BuscarEscalar(
                             new TpBusca[]
                     {
                         new TpBusca()
                         {
                             vNM_Campo = string.Empty,
                             vOperador = "exists",
                             vVL_Busca = "(select 1 from tb_frt_veiculo x " +
                                         "where x.id_veiculo = a.id_veiculo " +
                                         "and REPLACE(x.placa, '-', '') = '" + placa.Text.Replace("-", string.Empty).Trim() + "')"
                         }
                     }, "1") != null)
                     {
                         //Verificar se o veiculo tem tracao
                         if (new CamadaDados.Diversos.TCD_CadTpVeiculo().BuscarEscalar(
                                 new TpBusca[]
                         {
                             new TpBusca()
                             {
                                 vNM_Campo = "a.tp_veiculo",
                                 vOperador = "=",
                                 vVL_Busca = "'T'"
                             },
                             new TpBusca()
                             {
                                 vNM_Campo = string.Empty,
                                 vOperador = "exists",
                                 vVL_Busca = "(select 1 from tb_frt_veiculo x " +
                                             "where x.cd_tpveiculo = a.cd_tpveiculo " +
                                             "and REPLACE(x.placa, '-', '') = '" + placa.Text.Replace("-", string.Empty).Trim() + "')"
                             }
                         }, "1") != null)
                         {
                             //Buscar requisicao abastecimento para a placa
                             CamadaDados.Frota.TList_AbastVeiculo lAbast =
                                 CamadaNegocio.Frota.TCN_AbastVeiculo.Buscar(string.Empty,
                                                                             empresa.SelectedValue.ToString(),
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             placa.Text,
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             "'R'",
                                                                             string.Empty,
                                                                             string.Empty,
                                                                             1,
                                                                             null);
                             if (lAbast.Count > 0)
                             {
                                 bsAbastecimento.DataSource = lAbast;
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Dt_abastecimento = CamadaDados.UtilData.Data_Servidor();
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida  = LoginAbastecida;
                                 bsAbastecimento.ResetCurrentItem();
                                 km_atual.Enabled      = true;
                                 ds_observacao.Enabled = true;
                                 bb_abast.Enabled      = true;
                                 placa.Enabled         = false;
                                 empresa.Enabled       = false;
                                 bb_gravar.Enabled     = true;
                                 bb_cancelar.Enabled   = true;
                                 km_atual.Focus();
                             }
                             else if (!lCfg[0].St_exigirrequisicaobool)
                             {
                                 bsAbastecimento.AddNew();
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Cd_empresa       = empresa.SelectedValue.ToString();
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Cd_produto       = lCfg[0].Cd_combustivel;
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_produto       = lCfg[0].Ds_combustivel;
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_despesa       = lCfg[0].Id_despesacombustivel;
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_despesa       = lCfg[0].Ds_despesacombustivel;
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Dt_abastecimento = CamadaDados.UtilData.Data_Servidor();
                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida  = LoginAbastecida;
                                 //Verificar se existe viagem programada ou executando para o veiculo
                                 CamadaDados.Frota.TList_Viagem lViagem =
                                     CamadaNegocio.Frota.TCN_Viagem.Buscar(string.Empty,
                                                                           empresa.SelectedValue.ToString(),
                                                                           string.Empty,
                                                                           placa.Text,
                                                                           string.Empty,
                                                                           string.Empty,
                                                                           string.Empty,
                                                                           string.Empty,
                                                                           string.Empty,
                                                                           "'P', 'E'",
                                                                           null);
                                 if (lViagem.Count > 0)
                                 {
                                     if (lViagem.Count.Equals(0))
                                     {
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_viagem        = lViagem[0].Id_viagem;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_viagem        = lViagem[0].Ds_viagem;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_veiculo       = lViagem[0].Id_veiculo;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_veiculo       = lViagem[0].Ds_veiculo;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Cd_empresa       = lViagem[0].Cd_empresa;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Nm_empresa       = lViagem[0].Nm_empresa;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Dt_abastecimento = CamadaDados.UtilData.Data_Servidor();
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida  = LoginAbastecida;
                                         bsAbastecimento.ResetCurrentItem();
                                         km_atual.Enabled      = true;
                                         ds_observacao.Enabled = true;
                                         bb_abast.Enabled      = true;
                                         placa.Enabled         = false;
                                         empresa.Enabled       = false;
                                         bb_gravar.Enabled     = true;
                                         bb_cancelar.Enabled   = true;
                                         dt_requisicao.Focus();
                                     }
                                     else
                                     {
                                         using (TFListViagem fViagem = new TFListViagem())
                                         {
                                             fViagem.lViagem = lViagem;
                                             if (fViagem.ShowDialog() == DialogResult.OK)
                                             {
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_viagem        = fViagem.rViagem.Id_viagem;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_viagem        = fViagem.rViagem.Ds_viagem;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_veiculo       = fViagem.rViagem.Id_veiculo;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_veiculo       = fViagem.rViagem.Ds_veiculo;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Cd_empresa       = fViagem.rViagem.Cd_empresa;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Nm_empresa       = fViagem.rViagem.Nm_empresa;
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Dt_abastecimento = CamadaDados.UtilData.Data_Servidor();
                                                 (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida  = LoginAbastecida;
                                                 bsAbastecimento.ResetCurrentItem();
                                                 km_atual.Enabled      = true;
                                                 ds_observacao.Enabled = true;
                                                 bb_abast.Enabled      = true;
                                                 placa.Enabled         = false;
                                                 empresa.Enabled       = false;
                                                 bb_gravar.Enabled     = true;
                                                 bb_cancelar.Enabled   = true;
                                                 dt_requisicao.Focus();
                                             }
                                             else
                                             {
                                                 //Buscar veiculo
                                                 CamadaDados.Frota.Cadastros.TList_CadVeiculo lVeic =
                                                     CamadaNegocio.Frota.Cadastros.TCN_CadVeiculo.Buscar(string.Empty,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         placa.Text,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         string.Empty,
                                                                                                         "'A'",
                                                                                                         null);
                                                 if (lVeic.Count > 0)
                                                 {
                                                     (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_veiculo      = lVeic[0].Id_veiculo;
                                                     (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_veiculo      = lVeic[0].Ds_veiculo;
                                                     (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida = LoginAbastecida;
                                                     bsAbastecimento.ResetCurrentItem();
                                                     km_atual.Enabled      = true;
                                                     ds_observacao.Enabled = true;
                                                     bb_abast.Enabled      = true;
                                                     placa.Enabled         = false;
                                                     empresa.Enabled       = false;
                                                     bb_gravar.Enabled     = true;
                                                     bb_cancelar.Enabled   = true;
                                                     dt_requisicao.Focus();
                                                 }
                                                 else
                                                 {
                                                     MessageBox.Show("Não existe veiculo ativo para a placa " + placa.Text, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                                     placa.Clear();
                                                     placa.Focus();
                                                 }
                                             }
                                         }
                                     }
                                 }
                                 else
                                 {
                                     //Buscar veiculo
                                     CamadaDados.Frota.Cadastros.TList_CadVeiculo lVeic =
                                         CamadaNegocio.Frota.Cadastros.TCN_CadVeiculo.Buscar(string.Empty,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             placa.Text,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             string.Empty,
                                                                                             "'A'",
                                                                                             null);
                                     if (lVeic.Count > 0)
                                     {
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Id_veiculo      = lVeic[0].Id_veiculo;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).Ds_veiculo      = lVeic[0].Ds_veiculo;
                                         (bsAbastecimento.Current as CamadaDados.Frota.TRegistro_AbastVeiculo).LoginAbastecida = LoginAbastecida;
                                         bsAbastecimento.ResetCurrentItem();
                                         km_atual.Enabled      = true;
                                         ds_observacao.Enabled = true;
                                         bb_abast.Enabled      = true;
                                         placa.Enabled         = false;
                                         empresa.Enabled       = false;
                                         bb_gravar.Enabled     = true;
                                         bb_cancelar.Enabled   = true;
                                         dt_requisicao.Focus();
                                     }
                                     else
                                     {
                                         MessageBox.Show("Não existe veiculo ativo para a placa " + placa.Text, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                         placa.Clear();
                                         placa.Focus();
                                     }
                                 }
                             }
                             else
                             {
                                 MessageBox.Show("Empresa exige requisição para realizar abastecimento.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                 placa.Clear();
                                 placa.Focus();
                             }
                         }
                         else
                         {
                             MessageBox.Show("Veiculo informado não possui tração!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                             placa.Clear();
                             placa.Focus();
                         }
                     }
                     else
                     {
                         MessageBox.Show("Não existe Veículo cadastrado para esta placa!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         placa.Clear();
                         placa.Focus();
                     }
                 }
                 else
                 {
                     MessageBox.Show("Usuario não tem acesso a tela de abastecimento Frota!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     return;
                 }
             }
             else
             {
                 MessageBox.Show("Obrigatorio informar login para iniciar abastecimento!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 return;
             }
         }
     }
 }