예제 #1
0
 private void ProcessarLote()
 {
     if (bsLote.Current != null)
     {
         if ((bsLote.Current as TRegistro_LoteBloqueto).St_registro.Trim().ToUpper().Equals("A"))
         {
             using (TFProcessarLoteBloqueto fProcessar = new TFProcessarLoteBloqueto())
             {
                 fProcessar.Vl_totalbloqueto = (bsLote.Current as TRegistro_LoteBloqueto).ListaBloqueto.Sum(p => p.Vl_atual);
                 fProcessar.Id_lote          = (bsLote.Current as TRegistro_LoteBloqueto).Id_lotestr;
                 fProcessar.Ds_lote          = (bsLote.Current as TRegistro_LoteBloqueto).Ds_lote;
                 if (fProcessar.ShowDialog() == DialogResult.OK)
                 {
                     (bsLote.Current as TRegistro_LoteBloqueto).Dt_processamento = fProcessar.Dt_processamento;
                     (bsLote.Current as TRegistro_LoteBloqueto).Vl_taxa          = fProcessar.Vl_taxa;
                     try
                     {
                         CamadaNegocio.Financeiro.Bloqueto.TCN_LoteBloqueto.ProcessarLote(bsLote.Current as TRegistro_LoteBloqueto, null);
                         MessageBox.Show("Lote processado com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         afterBusca();
                     }
                     catch (Exception ex)
                     {
                         MessageBox.Show("Erro processar lote: " + ex.Message);
                     }
                 }
             }
         }
         else
         {
             MessageBox.Show("Lote ja se encontra processado.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
     }
 }
예제 #2
0
        private void BB_ProcessarLote_Click(object sender, EventArgs e)
        {
            if (bsLoteCartao.Current != null)
            {
                using (TFProcessarLoteBloqueto processa = new TFProcessarLoteBloqueto())
                {
                    bsLoteCartao.ResetCurrentItem();
                    // preenche list fat
                    (bsLoteCartao.Current as TRegistro_LanLoteCartao).lCartao.ForEach(p =>
                    {
                        (bsLoteCartao.Current as TRegistro_LanLoteCartao).lFatCartao.Add(TCN_FaturaCartao.Buscar(p.Id_Fatura.ToString(), p.Cd_Empresa, string.Empty,
                                                                                                                 string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty,
                                                                                                                 string.Empty, string.Empty, string.Empty, string.Empty, decimal.Zero, decimal.Zero, true, string.Empty, string.Empty, null)[0]);
                    });

                    processa.Id_lote          = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Id_Lote.ToString();
                    processa.Ds_lote          = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Ds_Lote;
                    processa.Dt_processamento = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento;
                    processa.Vl_totalbloqueto = (bsLoteCartao.Current as TRegistro_LanLoteCartao).lFatCartao.Sum(p => p.Vl_liquido);
                    if (processa.ShowDialog() == DialogResult.OK)
                    {
                        CamadaDados.Financeiro.Cadastros.TList_CFGFaturaCartao lCfg =
                            CamadaNegocio.Financeiro.Cadastros.TCN_CFGFaturaCartao.Buscar((bsLoteCartao.Current as TRegistro_LanLoteCartao).Cd_Empresa,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          string.Empty,
                                                                                          null);


                        //quitar faturas
                        (bsLoteCartao.Current as TRegistro_LanLoteCartao).lFatCartao.ForEach(p =>
                        {
                            TCN_FaturaCartao.QuitarFatura((bsLoteCartao.Current as TRegistro_LanLoteCartao).lFatCartao,
                                                          Convert.ToDateTime(processa.Dt_processamento),
                                                          p.Cd_contager,
                                                          p.Cd_empresa,
                                                          p.Tp_movimento,
                                                          null);
                        });

                        string retorno = CamadaNegocio.Financeiro.Caixa.TCN_LanCaixa.GravaLanCaixa(new CamadaDados.Financeiro.Caixa.TRegistro_LanCaixa()
                        {
                            Cd_ContaGer    = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Cd_ContaGer,
                            Cd_Empresa     = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Cd_Empresa,
                            Cd_Historico   = lCfg[0].Cd_historico_taxa,
                            ComplHistorico = "TAXA DESCONTO CARTOES DO LOTE " + (bsLoteCartao.Current as TRegistro_LanLoteCartao).Id_Lote,
                            Dt_lancto      = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento != null ?  (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento: processa.Dt_processamento,
                            Nr_Docto       = "LOTE" + (bsLoteCartao.Current as TRegistro_LanLoteCartao).Id_Lote,
                            St_Estorno     = "N",
                            Vl_PAGAR       = processa.Vl_taxa,
                            Vl_RECEBER     = decimal.Zero
                        }, null);
                        (bsLoteCartao.Current as TRegistro_LanLoteCartao).Cd_LanctoCaixa   = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_CD_LANCTOCAIXA"));
                        (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento = (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento != null ? (bsLoteCartao.Current as TRegistro_LanLoteCartao).Dt_Processamento : processa.Dt_processamento;
                        (bsLoteCartao.Current as TRegistro_LanLoteCartao).St_registro      = "P";
                        TCN_LanLoteCartao.Gravar((bsLoteCartao.Current as TRegistro_LanLoteCartao), null);
                        MessageBox.Show("Quitação fatura realizada com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                    processa.Vl_totalbloqueto = decimal.Zero;
                    afterbusca();
                }
                //this.afterBusca();
            }
        }