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); } } }
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(); } }