示例#1
0
 private void Recalcular()
 {
     if (bsItens.Count > 0)
     {
         //Inserir QTD Horas Trabalhadas
         using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
         {
             TimeSpan total = CamadaDados.UtilData.Data_Servidor().Subtract((bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Dt_retirada.Value);
             fQtde.Vl_default = (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("2") ?
                                Math.Round(decimal.Parse(total.TotalHours.ToString()), 2) : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("3") ?
                                Math.Round(decimal.Parse(total.TotalDays.ToString()), 2) : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("4") ?
                                Math.Round(decimal.Parse(total.TotalDays.ToString()), 2) / 30 : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("5") ?
                                Math.Round(decimal.Parse(total.TotalDays.ToString()), 2) / 7 : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("6") ?
                                Math.Round(decimal.Parse(total.TotalDays.ToString()), 2) / 15 : 0;
             fQtde.Ds_label = (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("2") ?
                              "QTD Horas" : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("3") ?
                              "QTD Dias" : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("4") ?
                              "QTD Meses" : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("5") ?
                              "QTD Semanas" : (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("6") ?
                              "QTD Quinzena" : string.Empty;
             if (fQtde.ShowDialog() == DialogResult.OK)
             {
                 if (fQtde.Quantidade > decimal.Zero)
                 {
                     (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Quantidade = fQtde.Quantidade;
                     (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).BaseCalc   = fQtde.Quantidade;
                 }
                 bsItens.ResetCurrentItem();
             }
         }
     }
 }
示例#2
0
 private void AlterarQuantidade()
 {
     using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
     {
         fQtde.Ds_label = "Peso em KG";
         if (fQtde.ShowDialog() == DialogResult.OK)
         {
             if (fQtde.Quantidade > decimal.Zero)
             {
                 edt_peso.Text    = fQtde.Quantidade.ToString("N3", new System.Globalization.CultureInfo("pt-BR"));
                 edt_peso.Enabled = true;
                 gerarPed         = true;
             }
             else
             {
                 gerarPed = false;
                 limparCampos();
             }
         }
         else
         {
             gerarPed = false;
             limparCampos();
         }
     }
 }
示例#3
0
 private void btn_alteraValor_Click(object sender, EventArgs e)
 {
     if (bsAdiantamento.Current != null)
     {
         if ((bsAdiantamento.Current as TRegistro_LanAdiantamento).VL_total_quitado > 0)
         {
             MessageBox.Show("Já existe quitação parcial para adiantamento!\r\n" +
                             "Não é possível alterar o valor do adto!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
         using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
         {
             fQtd.Vl_default     = (bsAdiantamento.Current as TRegistro_LanAdiantamento).Vl_saldo_quitacao;
             fQtd.Ds_label       = "Informe o Valor!";
             fQtd.Casas_decimais = 2;
             if (fQtd.ShowDialog() == DialogResult.OK)
             {
                 if (fQtd.Quantidade > 0)
                 {
                     try
                     {
                         (bsAdiantamento.Current as TRegistro_LanAdiantamento).Vl_adto = fQtd.Quantidade;
                         TCN_LanAdiantamento.Gravar(bsAdiantamento.Current as TRegistro_LanAdiantamento, null);
                         MessageBox.Show("Valor adiantamento alterado com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         afterBusca();
                     }
                     catch (Exception ex)
                     { MessageBox.Show(ex.Message.Trim(), "erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
                 }
             }
         }
     }
 }
示例#4
0
 private void AlterarItemFicha()
 {
     if (bsFichaTecOS.Current != null)
     {
         decimal qtd = (bsFichaTecOS.Current as CamadaDados.Servicos.TRegistro_FichaTecOS).Quantidade;
         using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
         {
             fQtde.Casas_decimais = 2;
             fQtde.Vl_default     = qtd;
             fQtde.Ds_label       = "Quantidade";
             if (fQtde.ShowDialog() == DialogResult.OK)
             {
                 (bsFichaTecOS.Current as CamadaDados.Servicos.TRegistro_FichaTecOS).Quantidade = fQtde.Quantidade;
                 if (Vl_Unitario.Enabled)
                 {
                     Vl_Unitario.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal);
                     vl_custo.Value    = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_TotCusto);
                 }
                 vl_custo.Enabled       = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto;
                 tot_itensFichaTec.Text = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal).
                                          ToString("N2", new System.Globalization.CultureInfo("pt-BR"));
             }
             BS_Pecas.ResetCurrentItem();
         }
     }
     else
     {
         MessageBox.Show("Obrigatorio selecionar item ficha tecnica para alterar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
示例#5
0
 private void gItens_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         (bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).St_processar =
             !(bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).St_processar;
         //Informar Quantidade
         if ((bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).St_processar)
         {
             using (Componentes.TFQuantidade fValor = new Componentes.TFQuantidade())
             {
                 fValor.Ds_label = "Quantidade";
                 if (fValor.ShowDialog() == DialogResult.OK)
                 {
                     if (fValor.Quantidade > decimal.Zero)
                     {
                         (bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).Quantidade = fValor.Quantidade;
                     }
                 }
             }
             if ((bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).Quantidade.Equals(decimal.Zero))
             {
                 (bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).St_processar = false;
             }
             else
             {
                 Utils.InputBox ibp = new Utils.InputBox();
                 ibp.Text = "Motivo";
                 string ds = ibp.ShowDialog();
                 (bsItensGuardaVolume.Current as CamadaDados.Mudanca.TRegistro_ItensGuardaVolume).Ds_observacao = ds;
             }
             bsItensGuardaVolume.ResetCurrentItem();
         }
     }
 }
示例#6
0
 private void InformarPeso()
 {
     if (bsItensExpedicao.Current != null)
     {
         if ((bsItensExpedicao.Current as CamadaDados.Faturamento.Pedido.TRegistro_ItensExpedicao).PS_Unitario.Equals(0))
         {
             using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
             {
                 fQtd.Ds_label = "Cadastrar Peso.Unit";
                 if (fQtd.ShowDialog() == DialogResult.OK)
                 {
                     if (fQtd.Quantidade > decimal.Zero)
                     {
                         try
                         {
                             System.Collections.Hashtable hs = new System.Collections.Hashtable();
                             hs.Add("@CD_PRODUTO", (bsItensExpedicao.Current as CamadaDados.Faturamento.Pedido.TRegistro_ItensExpedicao).Cd_produto);
                             hs.Add("@PS_UNITARIO", fQtd.Quantidade);
                             new CamadaDados.TDataQuery().executarSql("update TB_EST_PRODUTO set PS_UNITARIO = @PS_UNITARIO, Dt_alt = GETDATE() " +
                                                                      "where CD_PRODUTO = @CD_PRODUTO ", hs);
                             (bsItensExpedicao.Current as CamadaDados.Faturamento.Pedido.TRegistro_ItensExpedicao).PS_Unitario = fQtd.Quantidade;
                         }
                         catch (Exception ex)
                         {
                             MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                         }
                     }
                 }
             }
         }
     }
 }
示例#7
0
 private void bbCorrigirOrc_Click(object sender, EventArgs e)
 {
     using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
     {
         fQtd.Text       = "Quantidade";
         fQtd.Vl_default = (bsComposto.Current as TRegistro_FichaTecProduto).Quantidade;
         if (fQtd.ShowDialog() == DialogResult.OK)
         {
             if (fQtd.Quantidade > decimal.Zero)
             {
                 (bsComposto.Current as TRegistro_FichaTecProduto).Quantidade =
                     fQtd.Quantidade;
             }
             else
             {
                 MessageBox.Show("Obrigatório informar Quantidade!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 return;
             }
         }
         else
         {
             (bsComposto.Current as TRegistro_FichaTecProduto).Quantidade = decimal.Zero;
         }
     }
     bsComposto.ResetCurrentItem();
 }
示例#8
0
        private void gServico_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 0)
            {
                (bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).St_processar =
                    !(bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).St_processar;
                //Informar Quantidade
                if ((bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).St_processar)
                {
                    using (Componentes.TFQuantidade fValor = new Componentes.TFQuantidade())
                    {
                        fValor.Ds_label = "Valor Serviço";
                        if (fValor.ShowDialog() == DialogResult.OK)
                        {
                            if (fValor.Quantidade > decimal.Zero)
                            {
                                (bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).Vl_servico = fValor.Quantidade;
                            }
                        }
                    }
                    if ((bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).Vl_servico.Equals(decimal.Zero))
                    {
                        (bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).St_processar = false;
                        MessageBox.Show("Obrigatório informar Valor serviço!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    (bsServico.Current as CamadaDados.Mudanca.Cadastros.TRegistro_CadServico).Vl_servico = decimal.Zero;
                }

                tot_servico.Text = (bsServico.DataSource as CamadaDados.Mudanca.Cadastros.TList_CadServico).Sum(p => p.Vl_servico).ToString("N2", new System.Globalization.CultureInfo("pt-BR"));;
                bsServico.ResetCurrentItem();
            }
        }
示例#9
0
 private void gCargaItens_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if ((e.ColumnIndex == 0) && (bsItensRomaneio.Current != null))
     {
         try
         {
             if ((bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).St_processar != true)
             {
                 //Informar Quantidade
                 using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                 {
                     fQtde.Ds_label       = "QTD.Entrega";
                     fQtde.Casas_decimais = 2;
                     fQtde.Vl_default     = (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).SaldoEntregar;
                     fQtde.Vl_saldo       = (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).SaldoEntregar;
                     if (fQtde.ShowDialog() == DialogResult.OK)
                     {
                         (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).St_processar = true;
                         (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).Qtd_entregar = fQtde.Quantidade;
                     }
                     bsItensRomaneio.ResetCurrentItem();
                 }
             }
             else
             {
                 (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).St_processar = false;
                 (bsItensRomaneio.Current as CamadaDados.Faturamento.Entrega.TRegistro_ItensRomaneio).Qtd_entregar = decimal.Zero;
                 bsItensRomaneio.ResetCurrentItem();
             }
         }
         catch (Exception ex)
         { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
     }
 }
示例#10
0
 private void gRequisicao_DoubleClick(object sender, EventArgs e)
 {
     if (bsRequisicao.Current != null)
     {
         //Informar Quantidade
         decimal valor = (bsRequisicao.Current as CamadaDados.Compra.Lancamento.TRegistro_Requisicao).Quantidade;
         using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
         {
             fQtde.Text       = "Quantidade Item";
             fQtde.Vl_default = valor;
             if (fQtde.ShowDialog() == DialogResult.OK)
             {
                 if (fQtde.Quantidade > decimal.Zero)
                 {
                     (bsRequisicao.Current as CamadaDados.Compra.Lancamento.TRegistro_Requisicao).Quantidade = fQtde.Quantidade;
                 }
                 else
                 {
                     MessageBox.Show("Quantidade não pode ser igual a zero!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     (bsRequisicao.Current as CamadaDados.Compra.Lancamento.TRegistro_Requisicao).Quantidade = valor;
                     return;
                 }
             }
         }
         bsRequisicao.ResetCurrentItem();
     }
 }
示例#11
0
 private void dataGridDefault7_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
         {
             fQtd.Text     = "Percentual";
             fQtd.Ds_label = "Percentual";
             //fQtd.Vl_default = (bsFicha.Current as TRegistro_FichaTec).vl_faturar;
             if (fQtd.ShowDialog() == DialogResult.OK)
             {
                 if (fQtd.Quantidade > decimal.Zero)
                 {
                     (bsEncargos.Current as TRegistro_OrcamentoEncargo).pc_encargo =
                         Math.Round(fQtd.Quantidade, 2, MidpointRounding.AwayFromZero);
                 }
                 else
                 {
                     MessageBox.Show("Obrigatório informar Percentual!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     return;
                 }
             }
             else
             {
                 (bsEncargos.Current as TRegistro_OrcamentoEncargo).pc_encargo = decimal.Zero;
             }
         }
     }
     calculaEncargos();
     bsEncargos.ResetCurrentItem();
 }
示例#12
0
 private void Calcular()
 {
     if (bsItens.Count > 0)
     {
         //Tabela UNIDADE e MILIMITRO
         if ((bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("0") ||
             (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Tp_tabela.Equals("1"))
         {
             //Inserir QTD
             using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
             {
                 fQtde.Vl_default = (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Quantidade;
                 fQtde.Ds_label   = "Quantidade";
                 if (fQtde.ShowDialog() == DialogResult.OK)
                 {
                     if (fQtde.Quantidade > decimal.Zero)
                     {
                         (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).Quantidade = fQtde.Quantidade;
                         (bsItens.Current as CamadaDados.Locacao.TRegistro_ItensLocacao).BaseCalc   = fQtde.Quantidade;
                     }
                     bsItens.ResetCurrentItem();
                 }
             }
         }
         else
         {
             MessageBox.Show("Tipo de tabela de preço não pode calcular desgaste do item!", "Mesagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
     }
 }
示例#13
0
        private void InserirItemFicha()
        {
            if (BS_Pecas.Current != null)
            {
                TpBusca[] filtro = new TpBusca[2];
                filtro[0].vNM_Campo = "isnull(e.ST_Servico, 'N')";
                filtro[0].vOperador = pSt_servico ? "=" : "<>";
                filtro[0].vVL_Busca = "'S'";

                filtro[1].vNM_Campo = "isnull(e.ST_Composto, 'N')";
                filtro[1].vOperador = "<>";
                filtro[1].vVL_Busca = "'S'";

                TRegistro_CadProduto rProd = null;

                //Buscar Produto
                rProd = UtilPesquisa.BuscarProduto(string.Empty,
                                                   CD_Empresa,
                                                   Nm_empresa,
                                                   CD_TabelaPreco,
                                                   new Componentes.EditDefault[] { CD_Produto, DS_Produto },
                                                   filtro);

                if (rProd != null)
                {
                    decimal qtd = 1;
                    using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                    {
                        fQtde.Vl_default = 0;
                        fQtde.Ds_label   = "Quantidade";
                        if (fQtde.ShowDialog() == DialogResult.OK)
                        {
                            qtd = fQtde.Quantidade;
                        }
                    }
                    (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Add(
                        new TRegistro_FichaTecOS()
                    {
                        Cd_item    = rProd.CD_Produto,
                        Ds_item    = rProd.DS_Produto,
                        Quantidade = qtd
                    });
                    if (Vl_Unitario.Enabled)
                    {
                        Vl_Unitario.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal);
                        vl_custo.Value    = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_TotCusto);
                    }
                    vl_custo.Enabled       = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto;
                    tot_itensFichaTec.Text = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal).
                                             ToString("N2", new System.Globalization.CultureInfo("pt-BR"));
                    BS_Pecas.ResetCurrentItem();
                }
            }
        }
示例#14
0
 private void AlterarQuantidade()
 {
     using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
     {
         if (fQtde.ShowDialog() == DialogResult.OK)
         {
             if (fQtde.Quantidade > decimal.Zero)
             {
                 Quantidade.Value = fQtde.Quantidade;
             }
         }
     }
 }
示例#15
0
 private void gItens_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         (BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar =
             !(BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar;
         if ((BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar)
         {
             using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
             {
                 fQtd.Text       = "Quantidade";
                 fQtd.Vl_default = (BS_ItensOS.Current as TRegistro_LanServicosPecas).SaldoFaturar;
                 if (fQtd.ShowDialog() == DialogResult.OK)
                 {
                     if (fQtd.Quantidade > decimal.Zero)
                     {
                         if (fQtd.Quantidade <= (BS_ItensOS.Current as TRegistro_LanServicosPecas).SaldoFaturar)
                         {
                             (BS_ItensOS.Current as TRegistro_LanServicosPecas).Qtd_faturar =
                                 fQtd.Quantidade;
                         }
                         else
                         {
                             MessageBox.Show("Quantidade informada é maior que o Saldo á faturar!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                             (BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar = false;
                             return;
                         }
                     }
                     else
                     {
                         MessageBox.Show("Obrigatório informar Quantidade!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         (BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar = false;
                         return;
                     }
                 }
                 else
                 {
                     (BS_ItensOS.Current as TRegistro_LanServicosPecas).St_processar = false;
                     (BS_ItensOS.Current as TRegistro_LanServicosPecas).Qtd_faturar  = decimal.Zero;
                 }
             }
         }
         else
         {
             (BS_ItensOS.Current as TRegistro_LanServicosPecas).Qtd_faturar = decimal.Zero;
         }
         BS_ItensOS.ResetCurrentItem();
         tot_OSAgrupar.Value = (BS_ItensOS.DataSource as TList_LanServicosPecas).Where(p => p.St_processar).Sum(p => ((p.Qtd_faturar > decimal.Zero ? p.Qtd_faturar : p.Quantidade) * p.Vl_unitario) - p.Vl_desconto + p.Vl_acrescimo);
     }
 }
示例#16
0
        private void btn_enviarAlmoxarifado_Click(object sender, EventArgs e)
        {
            if (bsPneus.Current != null)
            {
                if ((bsPneus.Current as TRegistro_LanPneu).St_registro.ToUpper().Equals("R"))
                {
                    if (MessageBox.Show("Confirma o envio ao almoxarifado para o pneu selecionado?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1)
                        == DialogResult.Yes)
                    {
                        try
                        {
                            //Informar Hodometro
                            int hodometro = 0;
                            using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                            {
                                fQtde.Ds_label = "Hodometro final";
                                TpBusca[] tpBuscas = new TpBusca[0];
                                Estruturas.CriarParametro(ref tpBuscas, "a.cd_empresa", (bsPneus.Current as TRegistro_LanPneu).Cd_empresa);
                                Estruturas.CriarParametro(ref tpBuscas, "a.id_pneu", (bsPneus.Current as TRegistro_LanPneu).Id_pneustr);
                                Estruturas.CriarParametro(ref tpBuscas, "a.id_veiculo", (bsPneus.Current as TRegistro_LanPneu).Id_veiculo);
                                Estruturas.CriarParametro(ref tpBuscas, "a.id_rodado", (bsPneus.Current as TRegistro_LanPneu).Id_rodado);
                                fQtde.Vl_default           = Convert.ToDecimal(new CamadaDados.Frota.TCD_MovPneu().BuscarEscalar(tpBuscas, "a.hodometro", "id_mov desc").ToString());
                                fQtde.Vl_Minimo            = fQtde.Vl_default;
                                fQtde.Casas_decimais       = 0;
                                fQtde.St_permitirValorZero = false;
                                if (fQtde.ShowDialog() == DialogResult.OK)
                                {
                                    hodometro = Convert.ToInt32(fQtde.Quantidade);
                                }
                                else
                                {
                                    MessageBox.Show("Obrigatório informar hodometro para desativação!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    return;
                                }
                            }

                            CamadaNegocio.Frota.Cadastros.TCN_LanPneu.EnvioAlmoxarifado(bsPneus.Current as TRegistro_LanPneu, hodometro, null);
                            MessageBox.Show("Pneu enviado ao almoxarifado!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            afterBusca();
                        }
                        catch (Exception ex)
                        { MessageBox.Show(ex.Message.Trim(), "erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
                    }
                }
                else
                {
                    MessageBox.Show("Pneu deve ter status RODANDO para enviar ao almoxarifado!", "Informativo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
        }
示例#17
0
 private void InformarValor()
 {
     if (bsPortador.Current != null)
     {
         if (saldo_informar.Value > 0)
         {
             if ((bsPortador.Current as CamadaDados.Financeiro.Cadastros.TRegistro_CadPortador).St_controletitulobool)
             {
                 using (PDV.TFChequePDV fCheque = new PDV.TFChequePDV())
                 {
                     fCheque.Id_caixa = Id_caixa;
                     if (fCheque.ShowDialog() == DialogResult.OK)
                     {
                         if (fCheque.lCheque != null)
                         {
                             (bsPortador.Current as CamadaDados.Financeiro.Cadastros.TRegistro_CadPortador).Vl_pagtoPDV = fCheque.lCheque.Sum(p => p.Vl_titulo);
                             fCheque.lCheque.ForEach(p => (bsPortador.Current as CamadaDados.Financeiro.Cadastros.TRegistro_CadPortador).lCheque.Add(p));
                             if ((bsPortador.Current as CamadaDados.Financeiro.Cadastros.TRegistro_CadPortador).lCheque.Sum(p => p.Vl_titulo) > vl_processar.Value)
                             {
                                 MessageBox.Show("Valor informado é maior que o valor PERMITIDO!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                 ExcluirValor();
                             }
                             bsPortador.ResetCurrentItem();
                             RecalcularTotal();
                         }
                     }
                 }
             }
             else
             {
                 using (Componentes.TFQuantidade fValor = new Componentes.TFQuantidade())
                 {
                     fValor.Casas_decimais = 2;
                     fValor.Vl_saldo       = saldo_informar.Value;
                     fValor.Ds_label       = "Vl. Retirada";
                     if (fValor.ShowDialog() == DialogResult.OK)
                     {
                         (bsPortador.Current as CamadaDados.Financeiro.Cadastros.TRegistro_CadPortador).Vl_pagtoPDV = fValor.Quantidade;
                         bsPortador.ResetCurrentItem();
                         this.RecalcularTotal();
                     }
                 }
             }
         }
         else
         {
             MessageBox.Show("Não existe saldo informar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
     }
 }
示例#18
0
 private void AlterarQuantidade()
 {
     if (rCupom != null)
     {
         using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
         {
             if (fQtde.ShowDialog() == DialogResult.OK)
             {
                 if (fQtde.Quantidade > decimal.Zero)
                 {
                     lblQuantidade.Text = fQtde.Quantidade.ToString("N3", new System.Globalization.CultureInfo("pt-BR", true));
                 }
             }
         }
     }
 }
示例#19
0
        private void bb_exclusao_Click(object sender, EventArgs e)
        {
            if (bsPneus.Current != null)
            {
                if ((bsPneus.Current as TRegistro_LanPneu).St_registro.ToUpper().Equals("M"))
                {
                    MessageBox.Show("Não é possível excluir pneus com status em MANUTENÇÃO!", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                try
                {
                    if ((bsPneus.Current as TRegistro_LanPneu).Status.Equals("RODANDO"))
                    {
                        using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                        {
                            fQtde.Ds_label = "Hodometro final";
                            TpBusca[] tpBuscas = new TpBusca[0];
                            Estruturas.CriarParametro(ref tpBuscas, "a.cd_empresa", (bsPneus.Current as TRegistro_LanPneu).Cd_empresa);
                            Estruturas.CriarParametro(ref tpBuscas, "a.id_pneu", (bsPneus.Current as TRegistro_LanPneu).Id_pneustr);
                            Estruturas.CriarParametro(ref tpBuscas, "a.id_veiculo", (bsPneus.Current as TRegistro_LanPneu).Id_veiculo);
                            Estruturas.CriarParametro(ref tpBuscas, "a.id_rodado", (bsPneus.Current as TRegistro_LanPneu).Id_rodado);
                            fQtde.Vl_default           = Convert.ToDecimal(new CamadaDados.Frota.TCD_MovPneu().BuscarEscalar(tpBuscas, "a.hodometro", "id_mov desc").ToString());
                            fQtde.Vl_Minimo            = fQtde.Vl_default;
                            fQtde.Casas_decimais       = 0;
                            fQtde.St_permitirValorZero = false;
                            if (fQtde.ShowDialog() == DialogResult.OK)
                            {
                                (bsPneus.Current as TRegistro_LanPneu).HodometroDesativacao = Convert.ToInt32(fQtde.Quantidade);
                            }
                            else
                            {
                                MessageBox.Show("Obrigatório informar hodometro para exclusão do pneu!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                        }
                    }

                    TCN_LanPneu.Excluir(bsPneus.Current as TRegistro_LanPneu, null);
                    MessageBox.Show("Pneu excluído com sucesso!", "Informativo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    afterBusca();
                }
                catch (Exception ex)
                { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
            }
        }
示例#20
0
        private void gFicha_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 0)
            {
                if (!(bsProjeto.Current as TRegistro_OrcProjeto).st_importar)
                {
                    (bsProjeto.Current as TRegistro_OrcProjeto).st_importar = !(bsProjeto.Current as TRegistro_OrcProjeto).st_importar;
                }

                (bsFicha.Current as TRegistro_FichaTec).st_agregar =
                    !(bsFicha.Current as TRegistro_FichaTec).st_agregar;
                if ((bsFicha.Current as TRegistro_FichaTec).st_agregar)
                {
                    using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
                    {
                        fQtd.Text = "Quantidade";
                        //   fQtd.Vl_default = (bsFicha.Current as TRegistro_FichaTec).vl;
                        if (fQtd.ShowDialog() == DialogResult.OK)
                        {
                            if (fQtd.Quantidade > decimal.Zero)
                            {
                                (bsFicha.Current as TRegistro_FichaTec).quantidade_agregar =
                                    fQtd.Quantidade;
                            }
                            else
                            {
                                MessageBox.Show("Obrigatório informar Quantidade!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                (bsFicha.Current as TRegistro_FichaTec).st_agregar = false;
                                return;
                            }
                        }
                        else
                        {
                            (bsFicha.Current as TRegistro_FichaTec).st_agregar         = false;
                            (bsFicha.Current as TRegistro_FichaTec).quantidade_agregar = decimal.Zero;
                        }
                    }
                }
                else
                {
                    (bsFicha.Current as TRegistro_FichaTec).quantidade_agregar = decimal.Zero;
                }
                bsFicha.ResetCurrentItem();
            }
        }
示例#21
0
 private void gItensEntrega_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         try
         {
             if ((bsItensEntrega.Current as TRegistro_ItensRomaneio).St_processar != true)
             {
                 //Informar Quantidade
                 using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                 {
                     fQtde.Ds_label       = "QTD.Entrega";
                     fQtde.Casas_decimais = 2;
                     fQtde.Vl_default     = (bsItensEntrega.Current as TRegistro_ItensRomaneio).Qtd_venda;
                     fQtde.Vl_saldo       = (bsItensEntrega.Current as TRegistro_ItensRomaneio).Qtd_venda;
                     if (fQtde.ShowDialog() == DialogResult.OK)
                     {
                         if ((bsItensEntrega.Current as TRegistro_ItensRomaneio).Qtd_venda >= fQtde.Quantidade)
                         {
                             (bsItensEntrega.Current as TRegistro_ItensRomaneio).St_processar = true;
                             (bsItensEntrega.Current as TRegistro_ItensRomaneio).Quantidade   = fQtde.Quantidade;
                         }
                         else
                         {
                             MessageBox.Show("Quantidade informada é maior que a QTD do Item!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                             return;
                         }
                     }
                     bsItensEntrega.ResetCurrentItem();
                 }
             }
             else if ((bsItensEntrega.Current as TRegistro_ItensRomaneio).Qtd_programada.Equals(decimal.Zero) &&
                      (bsItensEntrega.Current as TRegistro_ItensRomaneio).Qtd_entregue.Equals(decimal.Zero))
             {
                 (bsItensEntrega.Current as TRegistro_ItensRomaneio).St_processar = false;
                 (bsItensEntrega.Current as TRegistro_ItensRomaneio).Quantidade   = decimal.Zero;
                 bsItensEntrega.ResetCurrentItem();
             }
         }
         catch (Exception ex)
         { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
     }
 }
示例#22
0
 private void gItensNota_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         (bsItensNota.Current as TRegistro_LanFaturamento_Item).St_processar =
             !(bsItensNota.Current as TRegistro_LanFaturamento_Item).St_processar;
         //Informar quantidade a devolver
         if ((bsItensNota.Current as TRegistro_LanFaturamento_Item).St_processar)
         {
             using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
             {
                 fQtd.Vl_saldo   = (bsItensNota.Current as TRegistro_LanFaturamento_Item).SaldoDevolver;
                 fQtd.Vl_default = (bsItensNota.Current as TRegistro_LanFaturamento_Item).SaldoDevolver;
                 fQtd.Ds_label   = "QTD.Devolver";
                 if (fQtd.ShowDialog() == DialogResult.OK)
                 {
                     if (fQtd.Quantidade > 0)
                     {
                         (bsItensNota.Current as TRegistro_LanFaturamento_Item).Qtd_devolver =
                             fQtd.Quantidade;
                     }
                     else
                     {
                         MessageBox.Show("Obrigatório informar Quantidade a Devolver!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         (bsItensNota.Current as TRegistro_LanFaturamento_Item).St_processar = false;
                         return;
                     }
                 }
                 else
                 {
                     MessageBox.Show("Obrigatório informar Quantidade a Devolver!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     (bsItensNota.Current as TRegistro_LanFaturamento_Item).St_processar = false;
                     return;
                 }
             }
         }
         else
         {
             (bsItensNota.Current as TRegistro_LanFaturamento_Item).Qtd_devolver = decimal.Zero;
         }
         bsItensNota.ResetCurrentItem();
     }
 }
示例#23
0
 private void toolStripButton5_Click(object sender, EventArgs e)
 {
     if (bsPontosFid.Current != null)
     {
         if ((bsPontosFid.Current as CamadaDados.Faturamento.Fidelizacao.TRegistro_PontosFidelidade).St_registro.Equals("A"))
         {
             using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
             {
                 fQtd.Text = "Alterar pontos de Fidelidade :"
                             + (bsPontosFid.Current as CamadaDados.Faturamento.Fidelizacao.TRegistro_PontosFidelidade).Qt_pontos;
                 //fQtd.Vl_default = (bsFicha.Current as TRegistro_FichaTec).vl_faturar;
                 if (fQtd.ShowDialog() == DialogResult.OK)
                 {
                     if (fQtd.Quantidade > decimal.Zero)
                     {
                         (bsPontosFid.Current as CamadaDados.Faturamento.Fidelizacao.TRegistro_PontosFidelidade).Qt_pontos = fQtd.Quantidade;
                         CamadaNegocio.Faturamento.Fidelizacao.TCN_PontosFidelidade.Gravar(bsPontosFid.Current as CamadaDados.Faturamento.Fidelizacao.TRegistro_PontosFidelidade, null);
                         MessageBox.Show("Pontos Fidelidade ALTERADO com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         bsPontosFid.ResetCurrentItem();
                     }
                     else
                     {
                         MessageBox.Show("Obrigatório informar Quantidade!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         return;
                     }
                 }
                 else
                 {
                 }
             }
         }
         else
         {
             MessageBox.Show("Evoluir apenas status ativo!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
     }
 }
示例#24
0
 private void gItensAlocar_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0)
     {
         if (!(bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).St_processar)
         {
             if ((bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Quantidade -
                 (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Qtd_devolvida > decimal.Zero)
             {
                 using (Componentes.TFQuantidade qtde = new Componentes.TFQuantidade())
                 {
                     qtde.Casas_decimais = 3;
                     qtde.Ds_label       = "Qtd. Alocar";
                     qtde.Vl_saldo       = (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Quantidade -
                                           (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Qtd_devolvida;
                     qtde.Vl_default = (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Quantidade -
                                       (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Qtd_devolvida;
                     if (qtde.ShowDialog() == DialogResult.OK)
                     {
                         (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Quantidade_estoque = qtde.Quantidade;
                         (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).St_processar       = true;
                     }
                 }
             }
             else
             {
                 MessageBox.Show("Item sem saldo para alocar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
         else
         {
             (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).Quantidade_estoque = decimal.Zero;
             (bsItensAlocar.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_LanFaturamento_Item).St_processar       = false;
         }
         bsItensAlocar.ResetCurrentItem();
     }
 }
示例#25
0
        private void BB_Desconto_Click(object sender, EventArgs e)
        {
            if (bsAssistente.Current == null)
            {
                return;
            }

            //Validar usuário para operação
            if (!CamadaNegocio.Diversos.TCN_Usuario_RegraEspecial.ValidaRegra(Utils.Parametros.pubLogin, "PERMITIR DESCONTO NO ACESSORIO", null))
            {
                using (Parametros.Diversos.TFRegraUsuario fRegra = new Parametros.Diversos.TFRegraUsuario())
                {
                    fRegra.Login            = Utils.Parametros.pubLogin;
                    fRegra.Ds_regraespecial = "PERMITIR DESCONTO NO ACESSORIO";
                    if (fRegra.ShowDialog() == DialogResult.Cancel)
                    {
                        MessageBox.Show("Não será possível finalizar a operação, pois o usuário não possui permissão de desconto no acessório.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }

            //Informar valor do desconto
            using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
            {
                fQtde.Ds_label       = "Valor:";
                fQtde.Casas_decimais = 2;
                fQtde.Vl_default     = 1;
                fQtde.Vl_Minimo      = 1;
                if (fQtde.ShowDialog() == DialogResult.OK)
                {
                    (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).Vl_desconto = fQtde.Quantidade;
                    bsAssistente.ResetCurrentItem();
                }
            }
        }
示例#26
0
 private void TrocoCredito()
 {
     if (vl_saldo.Value > decimal.Zero)
     {
         using (Componentes.TFQuantidade fValor = new Componentes.TFQuantidade())
         {
             fValor.Casas_decimais = 2;
             fValor.Vl_saldo       = vl_saldo.Value;
             fValor.Vl_default     = vl_saldo.Value;
             if (fValor.ShowDialog() == DialogResult.OK)
             {
                 Vl_trocoCredito = fValor.Quantidade;
                 bb_credito.Text = "(F2)\nCREDITO\nR$" + Vl_trocoCredito.ToString("N2", new System.Globalization.CultureInfo("pt-BR"));
                 vl_saldo.Value  = Vl_troco - Vl_trocoDinheiro - Vl_trocoCredito -
                                   (lChRepasse != null ? lChRepasse.Sum(p => p.Vl_titulo) : decimal.Zero) -
                                   (lChTroco != null ? lChTroco.Sum(p => p.Vl_titulo) : decimal.Zero);
                 if (vl_saldo.Value.Equals(decimal.Zero))
                 {
                     this.DialogResult = DialogResult.OK;
                 }
             }
         }
     }
 }
示例#27
0
 private void quantidadeAgregar()
 {
     using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
     {
         fQtd.Text = "Quantidade";
         if (fQtd.ShowDialog() == DialogResult.OK)
         {
             if (fQtd.Quantidade > decimal.Zero)
             {
                 if (fQtd.Quantidade <= (bsFicha.Current as TRegistro_FichaTec).Sd_faturar)
                 {
                     (bsFicha.Current as TRegistro_FichaTec).quantidade_agregar =
                         fQtd.Quantidade;
                     (bsFicha.Current as TRegistro_FichaTec).Vl_subtotal = decimal.Multiply((bsFicha.Current as TRegistro_FichaTec).quantidade_agregar, (bsFicha.Current as TRegistro_FichaTec).Vl_unitario);
                 }
                 else
                 {
                     MessageBox.Show("Quantidade informada é maior que a QTD.Item!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     (bsFicha.Current as TRegistro_FichaTec).st_agregar = false;
                     return;
                 }
             }
             else
             {
                 MessageBox.Show("Obrigatório informar Quantidade!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 (bsFicha.Current as TRegistro_FichaTec).st_agregar = false;
                 return;
             }
         }
         else
         {
             (bsFicha.Current as TRegistro_FichaTec).st_agregar         = false;
             (bsFicha.Current as TRegistro_FichaTec).quantidade_agregar = decimal.Zero;
         }
     }
 }
示例#28
0
        private void InformarValor(string portador)
        {
            if (lPortador.Count > 0)
            {
                if (Math.Round(pVl_receber, 2) > Math.Round(lPortador.Sum(p => p.Vl_pagtoPDV), 2))
                {
                    if (portador.ToUpper().Trim().Equals("CH"))//Cheque
                    {
                        using (Financeiro.TFLanListaCheques fListaCheques = new Financeiro.TFLanListaCheques())
                        {
                            fListaCheques.Tp_mov     = "R";
                            fListaCheques.Cd_empresa = pCd_empresa;
                            fListaCheques.St_pdv     = true;
                            //Buscar Config PDV Empresa
                            CamadaDados.Faturamento.Cadastros.TList_CFGCupomFiscal lCfg =
                                CamadaNegocio.Faturamento.Cadastros.TCN_CFGCupomFiscal.Buscar(pCd_empresa, null);
                            if (lCfg.Count > 0)
                            {
                                fListaCheques.Cd_contager = lCfg[0].Cd_contaoperacional;
                                fListaCheques.Ds_contager = lCfg[0].Ds_contaoperacional;
                            }
                            fListaCheques.Cd_clifor        = pCd_clifor;
                            fListaCheques.Cd_historico     = rCfg.Cd_historicocaixa;
                            fListaCheques.Ds_historico     = rCfg.Ds_historicocaixa;
                            fListaCheques.Cd_portador      = lPortador.Find(p => p.St_controletitulobool).Cd_portador;
                            fListaCheques.Ds_portador      = lPortador.Find(p => p.St_controletitulobool).Ds_portador;
                            fListaCheques.Nm_clifor        = pNm_clifor;
                            fListaCheques.Dt_emissao       = CamadaDados.UtilData.Data_Servidor();
                            fListaCheques.Vl_totaltitulo   = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                            fListaCheques.St_bloquearTroco = St_ReprocessaFin;
                            if (fListaCheques.ShowDialog() == DialogResult.OK)
                            {
                                lPortador.Find(p => p.St_controletitulobool).lCheque      = fListaCheques.lCheques;
                                lPortador.Find(p => p.St_controletitulobool).Vl_pagtoPDV +=
                                    fListaCheques.lCheques.Sum(p => p.Vl_titulo);
                                CalcularTroco(portador);
                                ConfirmarFin();
                            }
                            else
                            {
                                MessageBox.Show("Cheque não foi lançado... Liquidação não será efetivada! ");
                                return;
                            }
                        }
                    }
                    else if (portador.ToUpper().Trim().Equals("CC"))//Cartao Credito
                    {
                        //Buscar dados fatura cartao credito
                        using (TFLanCartaoPDV fCartao = new TFLanCartaoPDV())
                        {
                            fCartao.pCd_empresa      = pCd_empresa;
                            fCartao.D_C              = "C";
                            fCartao.Vl_saldofaturar  = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                            fCartao.St_bloquearTroco = St_ReprocessaFin;
                            if (fCartao.ShowDialog() == DialogResult.OK)
                            {
                                fCartao.lFatura.ForEach(p => lPortador.Find(x => x.St_cartaocreditobool).lFatura.Add(p));
                                lPortador.Find(p => p.St_cartaocreditobool).Vl_pagtoPDV += fCartao.lFatura.Sum(p => p.Vl_fatura);
                                CalcularTroco(portador);
                                ConfirmarFin();
                            }
                        }
                    }
                    else if (portador.ToUpper().Trim().Equals("CD"))//Cartao Debito
                    {
                        //Buscar dados fatura cartao credito
                        using (TFLanCartaoPDV fCartao = new TFLanCartaoPDV())
                        {
                            fCartao.pCd_empresa      = pCd_empresa;
                            fCartao.D_C              = "D";
                            fCartao.Vl_saldofaturar  = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                            fCartao.St_bloquearTroco = St_ReprocessaFin;
                            if (fCartao.ShowDialog() == DialogResult.OK)
                            {
                                fCartao.lFatura.ForEach(p => lPortador.Find(x => x.St_cartaocreditobool).lFatura.Add(p));
                                lPortador.Find(p => p.St_cartaocreditobool).Vl_pagtoPDV += fCartao.lFatura.Sum(p => p.Vl_fatura);
                                CalcularTroco(portador);
                                ConfirmarFin();
                            }
                        }
                    }
                    else if (portador.ToUpper().Trim().Equals("DU"))//Duplicata
                    {
                        //Buscar portador duplicata
                        CamadaDados.Financeiro.Cadastros.TList_CadPortador lDup =
                            new CamadaDados.Financeiro.Cadastros.TCD_CadPortador().Select(
                                new Utils.TpBusca[]
                        {
                            new Utils.TpBusca()
                            {
                                vNM_Campo = "isnull(a.tp_portadorPDV, '')",
                                vOperador = "=",
                                vVL_Busca = "'P'"
                            }
                        }, 1, string.Empty, string.Empty);
                        if (lDup.Count.Equals(0))
                        {
                            MessageBox.Show("Não existe portador duplicata configurado no sistema.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return;
                        }
                        if (string.IsNullOrEmpty(pCd_clifor))
                        {
                            MessageBox.Show("Não é permitido venda a prazo sem identificar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return;
                        }
                        //Abrir tela Duplicata
                        if (pCd_clifor == rCfg.Cd_clifor)
                        {
                            Componentes.EditDefault CD_Clifor = new Componentes.EditDefault();
                            CD_Clifor.NM_Campo      = "CD_Clifor";
                            CD_Clifor.NM_CampoBusca = "CD_Clifor";
                            DataRowView linha = FormBusca.UtilPesquisa.BTN_BuscaClifor(new Componentes.EditDefault[] { CD_Clifor }, string.Empty);
                            if (linha != null)
                            {
                                pCd_clifor = linha["cd_clifor"].ToString();
                                pNm_clifor = linha["Nm_clifor"].ToString();
                            }
                            else
                            {
                                MessageBox.Show("Obrigatório informar cliente para gerar duplicata!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                        }
                        //Verificar credito
                        CamadaDados.Financeiro.Duplicata.TRegistro_DadosBloqueio rDados =
                            new CamadaDados.Financeiro.Duplicata.TRegistro_DadosBloqueio();
                        if (CamadaNegocio.Financeiro.Duplicata.TCN_DadosBloqueio.VerificarBloqueioCredito(pCd_clifor,
                                                                                                          pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV),
                                                                                                          true,
                                                                                                          ref rDados,
                                                                                                          null))
                        {
                            using (Financeiro.TFLan_BloqueioCredito fBloq = new Financeiro.TFLan_BloqueioCredito())
                            {
                                fBloq.rDados    = rDados;
                                fBloq.Vl_fatura = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                                fBloq.ShowDialog();
                                if (!fBloq.St_desbloqueado)
                                {
                                    MessageBox.Show("Não é permitido realizar venda para cliente com restrição crédito.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    return;
                                }
                            }
                        }
                        //Abrir tela Duplicata
                        CamadaDados.Financeiro.Duplicata.TRegistro_LanDuplicata rDup = new CamadaDados.Financeiro.Duplicata.TRegistro_LanDuplicata();
                        rDup.Cd_empresa = pCd_empresa;
                        rDup.Nm_empresa = pNm_empresa;
                        rDup.Cd_clifor  = pCd_clifor;
                        rDup.Nm_clifor  = pNm_clifor;
                        //Buscar cond pagamento
                        CamadaDados.Financeiro.Cadastros.TList_CadCondPgto lCond =
                            CamadaNegocio.Financeiro.Cadastros.TCN_CadCondPgto.Buscar(string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      1,
                                                                                      decimal.Zero,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      1,
                                                                                      string.Empty,
                                                                                      null);
                        if (lCond.Count > 0)
                        {
                            rDup.Cd_condpgto      = lCond[0].Cd_condpgto;
                            rDup.Qt_parcelas      = lCond[0].Qt_parcelas;
                            rDup.Qt_dias_desdobro = lCond[0].Qt_diasdesdobro;
                        }
                        //Buscar endereco clifor
                        if (!string.IsNullOrEmpty(pCd_clifor))
                        {
                            CamadaDados.Financeiro.Cadastros.TList_CadEndereco lEnd =
                                CamadaNegocio.Financeiro.Cadastros.TCN_CadEndereco.Buscar(pCd_clifor,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          1,
                                                                                          null);
                            if (lEnd.Count > 0)
                            {
                                pCd_endereco = rDup.Cd_endereco = lEnd[0].Cd_endereco;
                                pDs_endereco = rDup.Ds_endereco = lEnd[0].Ds_endereco;
                            }
                        }
                        rDup.Tp_docto       = rCfg.Tp_docto;
                        rDup.Ds_tpdocto     = rCfg.Ds_tpdocto;
                        rDup.Tp_duplicata   = rCfg.Tp_duplicata;
                        rDup.Ds_tpduplicata = rCfg.Ds_tpduplicata;
                        rDup.Tp_mov         = "R";
                        rDup.Cd_historico   = rCfg.Cd_historico;
                        rDup.Ds_historico   = rCfg.Ds_historico;
                        //Buscar Moeda Padrao
                        CamadaDados.Financeiro.Cadastros.TList_Moeda tabela =
                            CamadaNegocio.ConfigGer.TCN_CadParamGer_X_Empresa.BuscarMoedaPadrao(pCd_empresa, null);
                        if (tabela != null)
                        {
                            if (tabela.Count > 0)
                            {
                                rDup.Cd_moeda    = tabela[0].Cd_moeda;
                                rDup.Ds_moeda    = tabela[0].Ds_moeda_singular;
                                rDup.Sigla_moeda = tabela[0].Sigla;
                            }
                        }
                        rDup.Id_configBoleto     = rCfg.Id_config;
                        rDup.Nr_docto            = "PDC123";//pNr_cupom; //Numero Cupom
                        rDup.Dt_emissaostring    = CamadaDados.UtilData.Data_Servidor().ToString("dd/MM/yyyy");
                        rDup.Vl_documento        = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                        rDup.Vl_documento_padrao = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);

                        rDup.Parcelas.Add(new CamadaDados.Financeiro.Duplicata.TRegistro_LanParcela()
                        {
                            Cd_parcela        = 1,
                            Dt_vencto         = lCond.Count > 0 ? rDup.Dt_emissao.Value.AddDays(double.Parse(lCond[0].Qt_diasdesdobro.ToString())) : rDup.Dt_emissao,
                            Vl_parcela        = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV),
                            Vl_parcela_padrao = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV)
                        });
                        lPortador.Find(p => p.Tp_portadorpdv.ToUpper().Equals("P")).lDup.Add(rDup);
                        lPortador.Find(p => p.Tp_portadorpdv.ToUpper().Equals("P")).Vl_pagtoPDV = rDup.Vl_documento_padrao;
                        ConfirmarFin();
                    }
                    else if (portador.ToUpper().Trim().Equals("DV"))//Devolucao Credito
                    {
                        //Devolucao de credito
                        using (Financeiro.TFSaldoCreditos fSaldo = new Financeiro.TFSaldoCreditos())
                        {
                            fSaldo.Cd_empresa    = pCd_empresa;
                            fSaldo.Cd_clifor     = pCd_clifor;
                            fSaldo.Vl_financeiro = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                            fSaldo.Tp_mov        = "'R'";
                            if (fSaldo.ShowDialog() == DialogResult.OK)
                            {
                                if (fSaldo.lSaldo != null)
                                {
                                    lPortador.Find(p => p.St_devcreditobool).lCred       = fSaldo.lSaldo;
                                    lPortador.Find(p => p.St_devcreditobool).Vl_pagtoPDV =
                                        fSaldo.lSaldo.Sum(p => p.Vl_processar);
                                    CalcularTroco(portador);
                                    ConfirmarFin();
                                }
                            }
                            else
                            {
                                return;
                            }
                        }
                    }
                    else
                    {
                        //Portador Dinheiro
                        using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                        {
                            fQtde.Casas_decimais = 2;
                            fQtde.Vl_default     = pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV);
                            fQtde.Vl_saldo       = St_ReprocessaFin ? pVl_receber - lPortador.Sum(p => p.Vl_pagtoPDV) : decimal.Zero;
                            fQtde.Ds_label       = "Valor Recebido";
                            if (fQtde.ShowDialog() == DialogResult.OK)
                            {
                                lPortador.Find(p => !p.St_devcreditobool &&
                                               !p.St_entregafuturabool &&
                                               !p.St_controletitulobool &&
                                               !p.St_cartaocreditobool &&
                                               !p.St_cartafretebool &&
                                               !p.Tp_portadorpdv.Equals("P")).Vl_pagtoPDV += fQtde.Quantidade;
                                CalcularTroco(portador);
                                ConfirmarFin();
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Não existe mais saldo para receber.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
        }
示例#29
0
 private void gAssistente_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     if ((e.ColumnIndex == 0) && (bsAssistente.Current != null))
     {
         try
         {
             if ((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).St_processar != true)
             {
                 //Informar Quantidade
                 using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade())
                 {
                     fQtde.Ds_label       = "QTD.Venda";
                     fQtde.Casas_decimais = 2;
                     fQtde.Vl_default     = 1;
                     if (fQtde.ShowDialog() == DialogResult.OK)
                     {
                         (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).St_processar = true;
                         //Verificar saldo estoque do produto
                         if (lCfg[0].St_movestoquebool)
                         {
                             if ((!new CamadaDados.Estoque.Cadastros.TCD_CadProduto().ItemServico((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda)) &&
                                 (!new CamadaDados.Estoque.Cadastros.TCD_CadProduto().ProdutoConsumoInterno((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda)))
                             {
                                 if (!new CamadaDados.Estoque.Cadastros.TCD_CadProduto().ProdutoComposto((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda) &&
                                     !new CamadaDados.Estoque.Cadastros.TCD_CadProduto().ProdutoPatrimonio((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda))
                                 {
                                     decimal saldo = this.BuscarSaldoLocal(Cd_empresa, (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda);
                                     if (saldo < fQtde.Quantidade)
                                     {
                                         MessageBox.Show("Não existe saldo disponível no estoque, porém será processado na locação.\r\n" +
                                                         "Empresa.........: " + Cd_empresa.Trim() + "-" + Nm_empresa.Trim() + "\r\n" +
                                                         "Produto.........: " + (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda.Trim() + "-" + (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).DS_ProdVenda.Trim() + "\r\n" +
                                                         "Local Arm.......: " + lCfg[0].Cd_local.Trim() + "-" + lCfg[0].Ds_local + "\r\n" +
                                                         "Saldo Disponível: " + saldo.ToString("N3", new System.Globalization.CultureInfo("pt-BR", true)),
                                                         "Informativo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                         //(bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).St_processar = false;
                                         //return;
                                     }
                                 }
                                 else
                                 {
                                     //Buscar ficha tecnica produto composto
                                     CamadaDados.Estoque.Cadastros.TList_FichaTecProduto lFicha =
                                         CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.Buscar((bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).CD_ProdVenda, string.Empty, null);
                                     lFicha.ForEach(p => p.Quantidade = p.Quantidade * fQtde.Quantidade);
                                     CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.MontarFichaTec(string.Empty, string.Empty, lFicha, null);
                                     //Buscar saldo itens da ficha tecnica
                                     string msg = string.Empty;
                                     lFicha.ForEach(p =>
                                     {
                                         //Buscar saldo estoque do item
                                         decimal saldo = decimal.Zero;
                                         CamadaNegocio.Estoque.TCN_LanEstoque.SaldoEstoqueLocal(Cd_empresa, p.Cd_item, lCfg[0].Cd_local, ref saldo, null);
                                         if (saldo < p.Quantidade)
                                         {
                                             msg += "Produto.........: " + p.Cd_item.Trim() + "-" + p.Ds_item.Trim() + "\r\n" +
                                                    "Saldo Disponivel: " + saldo.ToString("N3", new System.Globalization.CultureInfo("pt-BR", true)) + "\r\n";
                                         }
                                     });
                                     if (!string.IsNullOrEmpty(msg))
                                     {
                                         msg = "Produto Composto contem itens da ficha tecnica sem saldo em estoque para concretizar a venda.\r\n" + msg.Trim();
                                         MessageBox.Show(msg, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                         (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).St_processar = false;
                                         return;
                                     }
                                 }
                             }
                         }
                         (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).Quantidade = fQtde.Quantidade;
                     }
                     bsAssistente.ResetCurrentItem();
                 }
             }
             else
             {
                 (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).St_processar = false;
                 (bsAssistente.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadAssistenteVenda).Quantidade   = decimal.Zero;
                 bsAssistente.ResetCurrentItem();
             }
         }
         catch (Exception ex)
         { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
     }
 }
示例#30
0
        private void afterGrava()
        {
            if (!ValidaCPF())
            {
                return;
            }
            if (!string.IsNullOrEmpty(nm_clifor.Text))
            {
                if (nm_clifor.Text.Trim().Length < 2)
                {
                    MessageBox.Show("Nome do cliente deve possuir dois ou mais caracteres.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    nm_clifor.Focus();
                    return;
                }
            }
            decimal KM = decimal.Zero;

            if (ValidarKm(ref KM))
            {
                DialogResult = DialogResult.OK;
            }

            else if (MessageBox.Show("KM Atual não pode ser menor ou igual ao ultimo KM informado para a placa (Ultimo KM: " + KM.ToString("N0", new System.Globalization.CultureInfo("pt-BR")) + ").\r\n" +
                                     "Deseja corrigir ultimo KM informado?", "Pergunta",
                                     MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
            {
                //Buscar abastecida do ultimo KM
                CamadaDados.PostoCombustivel.TList_VendaCombustivel lVenda =
                    new CamadaDados.PostoCombustivel.TCD_VendaCombustivel().Select(
                        new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = "replace(a.placaveiculo, '-', '')",
                        vOperador = "=",
                        vVL_Busca = "'" + placa.Text.Trim().Replace("-", "") + "'"
                    }
                }, 1, "isnull(a.km_atual, 0)", "a.dt_abastecimento desc");
                if (lVenda.Count > 0)
                {
                    using (TFCorrigirKM fKM = new TFCorrigirKM())
                    {
                        fKM.Ultimo_km = lVenda[0].Km_atual;
                        fKM.Km_atual  = km.Value;
                        if (fKM.ShowDialog() == DialogResult.OK)
                        {
                            try
                            {
                                lVenda[0].Km_atual = fKM.Km_corrigido;
                                CamadaNegocio.PostoCombustivel.TCN_VendaCombustivel.Gravar(lVenda[0], null);
                                MessageBox.Show("Ultimo KM corrigido com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                DialogResult = DialogResult.OK;
                            }
                            catch (Exception ex)
                            { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
                        }
                    }
                }
            }
            else if (MessageBox.Show("Deseja informar KM maximo do hodometro?", "Pergunta", MessageBoxButtons.YesNo,
                                     MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
            {
                using (Componentes.TFQuantidade fQtd = new Componentes.TFQuantidade())
                {
                    fQtd.Ds_label = "KM Maximo Hodometro";
                    fQtd.ShowDialog();
                    if (fQtd.Quantidade >= KM)
                    {
                        Km_maximo    = fQtd.Quantidade;
                        DialogResult = DialogResult.OK;
                    }
                }
            }
        }