public VendaConsultaTituloDeVendaResponse VendaConsultarTitulo(VendaConsultaTituloDeVendaRequest pParametro) { var lRetorno = new VendaConsultaTituloDeVendaResponse(); TituloMercadoInfo tituloMercadoInfo; try { string lXml = ConexaoWS.WsVenda.VendaConsTitVenda(pParametro.CPFNegociador, pParametro.DataEmissao.DBToDateTimeString(), pParametro.DataVencimento.DBToDateTimeString(), pParametro.SELIC.ToString(), pParametro.ISIN, pParametro.CodigoTitulo, pParametro.CodigoMercado, pParametro.NotCesta, pParametro.TipoIndexador); gLogger.InfoFormat("Resposta recebida de ConexaoWS.WsVenda.VendaConsTitVenda(CPFNegociador [{0}], DataEmissao [{1}], DataVencimento [{2}], SELIC [{3}], ISIN [{4}], CodigoTitulo [{5}], CodigoMercado [{6}], NotCesta [{7}], TipoIndexador [{8}]):\r\n{9}" , pParametro.CPFNegociador , pParametro.DataEmissao , pParametro.DataVencimento , pParametro.SELIC , pParametro.ISIN , pParametro.CodigoTitulo , pParametro.CodigoMercado , pParametro.NotCesta , pParametro.TipoIndexador , lXml); base.AtribDefaultValues(); XElement root = null; base.GetStatus(lXml, out root); if (root.Element("TITULOS") != null) { foreach (XElement titulo in root.Element("TITULOS").Elements()) { tituloMercadoInfo = new TituloMercadoInfo(); tituloMercadoInfo.TipoTitulo = titulo.Element("TIPO_TITULO") != null?titulo.Element("TIPO_TITULO").Value : ""; tituloMercadoInfo.CodigoTitulo = titulo.Element("CODIGO_TITULO") != null?titulo.Element("CODIGO_TITULO").Value.DBToInt32() : 0; tituloMercadoInfo.DataEmissao = titulo.Element("DATA_EMISSAO") != null?titulo.Element("DATA_EMISSAO").Value.DBToDateTime() : DateTime.MinValue; tituloMercadoInfo.DataVencimento = titulo.Element("DATA_VENCIMENTO") != null?titulo.Element("DATA_VENCIMENTO").Value.DBToDateTime() : DateTime.MinValue; tituloMercadoInfo.ISIN = titulo.Element("ISIN") != null?titulo.Element("ISIN").Value : ""; tituloMercadoInfo.ValorVenda = titulo.Element("VALOR_VENDA") != null?titulo.Element("VALOR_VENDA").Value.DBToDecimal() : 0; tituloMercadoInfo.SELIC = titulo.Element("SELIC") != null?titulo.Element("SELIC").Value : ""; tituloMercadoInfo.NomeTitulo = titulo.Element("NOME_TITULO") != null?titulo.Element("NOME_TITULO").Value : ""; tituloMercadoInfo.QuantidadeDisponivelVenda = titulo.Element("QUANTIDADE_DISPONIVEL_VENDA") != null?titulo.Element("QUANTIDADE_DISPONIVEL_VENDA").Value.DBToDouble() : 0; tituloMercadoInfo.ValorTaxaVenda = titulo.Element("VALOR_TAXA_VENDA") != null?titulo.Element("VALOR_TAXA_VENDA").Value.DBToDecimal() : 0; tituloMercadoInfo.Mercado = titulo.Element("MERCADO") != null?titulo.Element("MERCADO").Value.DBToInt32() : 0; tituloMercadoInfo.TipoIndexadorNome = titulo.Element("INDEXADOR") != null && titulo.Element("INDEXADOR").Element("NOME") != null?titulo.Element("INDEXADOR").Element("NOME").Value : ""; tituloMercadoInfo.QuantidadeSaldo = titulo.Element("QUANTIDADE_SALDO") != null?titulo.Element("QUANTIDADE_SALDO").Value.DBToDouble() : 0; lRetorno.Objeto.Add(tituloMercadoInfo); } { //--> Log string lTitulos = string.Empty; if (null != lRetorno.Objeto && lRetorno.Objeto.Count > 0) { lRetorno.Objeto.ForEach(lTitulo => { lTitulos += "Título: " + lTitulo.NomeTitulo + "; Valor: " + lTitulo.ValorTitulo + "\n"; }); } gLogger.DebugFormat("VENDA - CONSULTAR TITULO -->\n - CPF/CNPJ: {0}\n - CodigoMercado: {1}\n - Títulos: {2}", pParametro.CPFNegociador, pParametro.CodigoMercado, lTitulos); } } } catch (Exception ex) { lRetorno.StatusResposta = Library.MensagemResponseStatusEnum.ErroNegocio; lRetorno.DescricaoResposta = ex.ToString(); gLogger.Error("VendaConsultarTitulo", ex); } return(lRetorno); }
public VendaConsultaTituloDeVendaResponse VendaConsultarTitulo(VendaConsultaTituloDeVendaRequest pParametro) { return(new TesouroDiretoVenda().VendaConsultarTitulo(pParametro)); }