public ExtratoOperacaoResponse ObterExtratoOperacoesBovespa(ExtratoOperacaoRequest lRequest) { var lRetorno = new ExtratoOperacaoResponse(); var lAcessaDados = new AcessaDados(); log4net.Config.XmlConfigurator.Configure(); try { lAcessaDados.ConnectionStringName = "CORRWIN"; this.BuscarExtratoOrdens_Cabecalho(ref lRequest, ref lAcessaDados, ref lRetorno); this.BuscarExtratoOrdens_Detalhes(ref lRequest, ref lAcessaDados, ref lRetorno); } catch (Exception ex) { gLogger.Error("ObterExtratoOperacoesBovespa", ex); lRetorno.DescricaoResposta = ex.ToString(); lRetorno.StatusResposta = MensagemResponseStatusEnum.ErroNegocio; } return(lRetorno); }
private ExtratoOrdemInfo CarregarRelatorio() { try { var lServicoAtivador = Ativador.Get <IServicoRelatoriosFinanceiros>(); ExtratoOperacaoResponse lResponse = lServicoAtivador.ObterExtratoOperacoesBovespa(new ExtratoOperacaoRequest() { ConsultaCodigoCliente = this.GetCodigoBovespa, ConsultaDataMovimento = this.GetDataInicial, }); if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK) { base.RegistrarLogConsulta(new Contratos.Dados.Cadastro.LogIntranetInfo() { CdBovespaClienteAfetado = this.GetCodCliente, DsObservacao = string.Concat("Consulta realizada para o cliente: cd_codigo = ", this.GetCodCliente) }); return(lResponse.RelatorioBovespa); } else { throw new Exception(string.Format("{0}-{1}", lResponse.StatusResposta, lResponse.DescricaoResposta)); } } catch (Exception ex) { base.RetornarErroAjax("Houve um erro ao tentar gerar Relatorio de Extrato de Operações", ex); return(new ExtratoOrdemInfo()); } }
public ExtratoOperacaoResponse ObterExtratoOperacoesBovespa(ExtratoOperacaoRequest pParametros) { var lRetorno = new ExtratoOperacaoResponse(); try { lRetorno = new ExtratoOperacaoDbLib().ObterExtratoOperacoesBovespa(pParametros); } catch (Exception ex) { gLogger.Error(string.Concat("Erro ao consultar Extrato Operação ; Cliente: ", pParametros.ConsultaCodigoClienteBmf.Value.ToString()), ex); lRetorno.DescricaoResposta = ex.ToString(); lRetorno.StatusResposta = Library.MensagemResponseStatusEnum.ErroPrograma; } return(lRetorno); }
private void BuscarExtratoOrdens_Cabecalho(ref ExtratoOperacaoRequest pParametros, ref AcessaDados pAcessoDados, ref ExtratoOperacaoResponse plRetorno) { using (DbCommand lDbCommand = pAcessoDados.CreateCommand(CommandType.StoredProcedure, "PRC_EXT_BOV_CAB")) { pAcessoDados.AddInParameter(lDbCommand, "pClienteCodigo", DbType.Int32, pParametros.ConsultaCodigoCliente); pAcessoDados.AddInParameter(lDbCommand, "pData", DbType.Date, pParametros.ConsultaDataMovimento); plRetorno.RelatorioBovespa.Resultado = new List <ExtratoOperacaoCabecalhoInfo>(); using (var lDataTable = pAcessoDados.ExecuteOracleDataTable(lDbCommand)) { if (null != lDataTable && lDataTable.Rows.Count > 0) { for (int i = 0; i < lDataTable.Rows.Count; i++) { var lExtrato = new ExtratoOperacaoCabecalhoInfo(); lExtrato.CodigoCliente = lDataTable.Rows[i]["CD_CLIENTE"].DBToInt32(); lExtrato.DivCodigoCliente = lDataTable.Rows[i]["DV_CLIENTE"].DBToInt32(); lExtrato.NomeCliente = lDataTable.Rows[i]["NM_CLIENTE"].DBToString(); lExtrato.Companhia = lDataTable.Rows[i]["NM_NOMPRE"].DBToString(); lExtrato.CodigoAssessor = lDataTable.Rows[i]["CD_ASSESSOR"].DBToInt32(); lExtrato.Mercado = lDataTable.Rows[i]["DS_MERCADO"].DBToString(); lExtrato.NomeOperador = lDataTable.Rows[i]["NM_EMIT_ORDEM"].DBToString(); lExtrato.Papel = lDataTable.Rows[i]["CD_NEGOCIO"].DBToString(); lExtrato.PessoaVinculada = lDataTable.Rows[i]["IN_PESVIN"].DBToString(); lExtrato.NumeroOrdem = lDataTable.Rows[i]["NR_SEQORD"].DBToInt32(); lExtrato.Status = lDataTable.Rows[i]["IN_SITUAC"].DBToString(); lExtrato.PrazoVencimento = lDataTable.Rows[i]["PCO_EXER"].DBToString(); lExtrato.Preco = lDataTable.Rows[i]["VL_PREPAP"].DBToDecimal(); lExtrato.PrecoExercicio = lDataTable.Rows[i]["VL_PREEXE"].DBToDecimal(); lExtrato.Quantidade = lDataTable.Rows[i]["QT_ORDEM"].DBToInt32(); lExtrato.QuantidadeExecutada = lDataTable.Rows[i]["QT_ORDEXEC"].DBToInt32(); lExtrato.Saldo = lDataTable.Rows[i]["SALDO"].DBToInt32(); lExtrato.TipoBolsa = "BOVESPA"; lExtrato.TipoCompanhia = lDataTable.Rows[i]["NM_ESPECI"].DBToString();; lExtrato.TipoOrdem = lDataTable.Rows[i]["TP_ORDEM"].DBToString(); lExtrato.Vencimento = lDataTable.Rows[i]["DT_DATVEN"].DBToDateTime(); lExtrato.Sentido = lDataTable.Rows[i]["CD_NATOPE"].DBToString(); lExtrato.TipoMercado = lDataTable.Rows[i]["DS_MERCADO"].DBToString(); plRetorno.RelatorioBovespa.Resultado.Add(lExtrato); } } } } }
private void BuscarExtratoOrdens_Detalhes(ref ExtratoOperacaoRequest pParametros, ref AcessaDados pAcessoDados, ref ExtratoOperacaoResponse plRetorno) { using (DbCommand lDbCommand = pAcessoDados.CreateCommand(CommandType.StoredProcedure, "PRC_EXT_BOV_ORDENS")) { pAcessoDados.AddInParameter(lDbCommand, "pClienteCodigo", DbType.Int32, pParametros.ConsultaCodigoCliente); pAcessoDados.AddInParameter(lDbCommand, "pData", DbType.Date, pParametros.ConsultaDataMovimento); using (var lDataTable = pAcessoDados.ExecuteOracleDataTable(lDbCommand)) { for (int i = 0; i < plRetorno.RelatorioBovespa.Resultado.Count; i++) { plRetorno.RelatorioBovespa.Resultado[i].Detalhes = new List <ExtratoOperacaoDetalheInfo>(); } if (null != lDataTable && lDataTable.Rows.Count > 0) { for (int i = 0; i < lDataTable.Rows.Count; i++) { var lExtratos = plRetorno.RelatorioBovespa.Resultado.FindAll(ordem => { return(ordem.NumeroOrdem == lDataTable.Rows[i]["NR_SEQORD"].DBToInt32()); }); ExtratoOperacaoDetalheInfo lInfo = null; for (int j = 0; j < lExtratos.Count; j++) { lInfo = new ExtratoOperacaoDetalheInfo(); lInfo.Sentido = lDataTable.Rows[i]["SENTIDO"].DBToString(); lInfo.CodigoContraParte = lDataTable.Rows[i]["CD_CONTRAPARTE"].DBToInt32(); lInfo.Data = lDataTable.Rows[i]["DT_HOREXE"].DBToDateTime(); lInfo.NumeroOperacao = lDataTable.Rows[i]["NR_NEGOCIO"].DBToInt32(); lInfo.Preco = lDataTable.Rows[i]["VL_NEGOCIO"].DBToDecimal(); lInfo.Quantidade = lDataTable.Rows[i]["QT_NEGOCIO"].DBToInt32(); lInfo.NumeroOrdem = lDataTable.Rows[i]["NR_SEQORD"].DBToInt32(); lExtratos[j].Detalhes.Add(lInfo); } } } } } }