Exemple #1
0
        private static SalvarEntidadeResponse <MonitoramentoRiscoLucroPrejuizoParametrosInfo> Salvar(SalvarObjetoRequest <MonitoramentoRiscoLucroPrejuizoParametrosInfo> pParametros)
        {
            var lRetorno = new SalvarEntidadeResponse <MonitoramentoRiscoLucroPrejuizoParametrosInfo>();

            lRetorno.Objeto = new MonitoramentoRiscoLucroPrejuizoParametrosInfo();

            lRetorno.Objeto = pParametros.Objeto;

            var lAcessaDados = new AcessaDados();

            lAcessaDados.ConnectionStringName = ClienteDbLib.gNomeConexaoRisco;


            using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_monitores_risco_janela_ins"))
            {
                lAcessaDados.AddInParameter(lDbCommand, "@id_usuario", DbType.Int32, pParametros.Objeto.IdUsuario);
                lAcessaDados.AddInParameter(lDbCommand, "@ds_nomejanela", DbType.AnsiString, pParametros.Objeto.NomeJanela);
                lAcessaDados.AddInParameter(lDbCommand, "@ds_colunas", DbType.AnsiString, pParametros.Objeto.Colunas);
                lAcessaDados.AddInParameter(lDbCommand, "@ds_consulta", DbType.AnsiString, pParametros.Objeto.Consulta);

                lAcessaDados.AddOutParameter(lDbCommand, "@id_janela", DbType.Int32, 8);

                lAcessaDados.ExecuteNonQuery(lDbCommand);

                lRetorno.Objeto.IdJanela = Convert.ToInt32(lDbCommand.Parameters["@id_janela"].Value);
            }

            return(lRetorno);
        }
Exemple #2
0
        /// <summary>
        /// Obtem o saldo em conta corrente do cliente
        /// </summary>
        /// <param name="pParametro">Objeto com parametros do cliente</param>
        /// <returns>Objeto SaldoContaCorrenteResponse com as informacoes de saldo em conta corrente do cliente </returns>
        public SaldoContaCorrenteResponse <ContaCorrenteInfo> ObterSaldoContaCorrente(SaldoContaCorrenteRequest pParametro)
        {
            AcessaDados lAcessaDados = new AcessaDados();
            SaldoContaCorrenteResponse <ContaCorrenteInfo> _SaldoContaCorrente = new SaldoContaCorrenteResponse <ContaCorrenteInfo>();

            try
            {
                ContaCorrenteInfo lRetorno = new ContaCorrenteInfo();
                lAcessaDados.ConnectionStringName = gNomeConexao;

                using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "pccsaldoprojetado"))
                {
                    lAcessaDados.AddInParameter(lDbCommand, "PCODCLIENTE", DbType.AnsiString, pParametro.IdCliente.DBToString());

                    lAcessaDados.AddOutParameter(lDbCommand, "PSALDO", DbType.Decimal, 12);
                    lAcessaDados.AddOutParameter(lDbCommand, "PD1", DbType.Decimal, 12);
                    lAcessaDados.AddOutParameter(lDbCommand, "PD2", DbType.Decimal, 12);
                    lAcessaDados.AddOutParameter(lDbCommand, "PD3", DbType.Decimal, 12);

                    lAcessaDados.ExecuteNonQuery(lDbCommand);

                    lRetorno.SaldoD0          = lAcessaDados.GetParameterValue(lDbCommand, "PSALDO").DBToDecimal();
                    lRetorno.SaldoD1          = lAcessaDados.GetParameterValue(lDbCommand, "PD1").DBToDecimal();
                    lRetorno.SaldoD2          = lAcessaDados.GetParameterValue(lDbCommand, "PD2").DBToDecimal();
                    lRetorno.SaldoD3          = lAcessaDados.GetParameterValue(lDbCommand, "PD3").DBToDecimal();
                    lRetorno.SaldoContaMargem = this.ObtemSaldoContaMargem(pParametro.IdCliente);

                    _SaldoContaCorrente.Objeto            = lRetorno;
                    _SaldoContaCorrente.DescricaoResposta = string.Format("Saldo de conta corrente do cliente: {0} carregado com sucesso", pParametro.IdCliente.DBToString());
                    _SaldoContaCorrente.StatusResposta    = CriticaMensagemEnum.OK;
                }
            }
            catch (Exception ex)
            {
                _SaldoContaCorrente.DescricaoResposta = ex.Message;
                _SaldoContaCorrente.StackTrace        = ex.StackTrace;
                _SaldoContaCorrente.StatusResposta    = CriticaMensagemEnum.Exception;
                _SaldoContaCorrente.Objeto            = null;
            }

            return(_SaldoContaCorrente);
        }
Exemple #3
0
        public static SalvarEntidadeResponse <AlteracaoDeVendaInfo> SalvarAlteracaoDeVenda(SalvarObjetoRequest <AlteracaoDeVendaInfo> pParametros)
        {
            try
            {
                SalvarEntidadeResponse <AlteracaoDeVendaInfo> lResponse;

                AcessaDados lAcessaDados = new AcessaDados();

                lAcessaDados.ConnectionStringName = VendasDbLib.NomeDaConexaoDeVendas;

                using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_venda_alteracao_ins"))
                {
                    lAcessaDados.AddInParameter(lDbCommand, "id_venda", DbType.Int32, pParametros.Objeto.IdVenda);
                    lAcessaDados.AddInParameter(lDbCommand, "ds_propriedades", DbType.String, pParametros.Objeto.DsPropriedades);
                    lAcessaDados.AddInParameter(lDbCommand, "ds_valores_anteriores", DbType.String, pParametros.Objeto.DsValoresAnteriores);
                    lAcessaDados.AddInParameter(lDbCommand, "ds_valores_modificados", DbType.String, pParametros.Objeto.DsValoresModificados);
                    lAcessaDados.AddInParameter(lDbCommand, "dt_data", DbType.DateTime, pParametros.Objeto.DtData);
                    lAcessaDados.AddInParameter(lDbCommand, "ds_usuario", DbType.String, pParametros.Objeto.DsUsuario);
                    lAcessaDados.AddInParameter(lDbCommand, "ds_motivo", DbType.String, pParametros.Objeto.DsMotivo);

                    lAcessaDados.AddOutParameter(lDbCommand, "CodigoVendaAlteracao", DbType.Int32, 8);

                    lAcessaDados.ExecuteNonQuery(lDbCommand);

                    lResponse = new SalvarEntidadeResponse <AlteracaoDeVendaInfo>();

                    lResponse.Codigo = lDbCommand.Parameters["CodigoVendaAlteracao"].Value.DBToInt32();

                    LogCadastro.Logar(pParametros.Objeto, pParametros.IdUsuarioLogado, pParametros.DescricaoUsuarioLogado, LogCadastro.eAcao.Inserir);

                    return(lResponse);
                }
            }
            catch (Exception ex)
            {
                LogCadastro.Logar(pParametros.Objeto, pParametros.IdUsuarioLogado, pParametros.DescricaoUsuarioLogado, LogCadastro.eAcao.Inserir, ex);

                throw ex;
            }
        }
Exemple #4
0
        /// <summary>
        /// Realiza a consulta do extrato de conta corrente de um cliente.
        /// </summary>
        /// <param name="pParametros">Data início/fim da pesquisa, código do cliente no Sinacor e nome do cliente.</param>
        /// <returns>Lista com dados do extrato do cliente.</returns>
        public ContaCorrenteExtratoResponse ConsultarExtratoContaCorrente(ContaCorrenteExtratoRequest pParametros)
        {
            var lAcessaDados = new AcessaDados();
            var lDataTable   = new DataTable();
            var lRetorno     = new ContaCorrenteExtratoResponse();
            var lContaCorrenteMovimentoRelInfo = new ContaCorrenteMovimentoInfo();

            decimal lSaldoDAnterior, lSaldoDisponivel, lSaldoTotal, lLancamento;

            try
            {
                gLogger.Debug(String.Format("Inicio ConsultarExtratoContaCorrente. Cliente: {0}", pParametros.ConsultaCodigoCliente));

                if (pParametros.ConsultaCodigoCliente == 0)
                {
                    return(null);
                }

                lAcessaDados = new AcessaDados();
                lAcessaDados.ConnectionStringName = "SINACOR";

                var lProcedure = EnumTipoExtradoDeConta.Liquidacao.Equals(pParametros.ConsultaTipoExtratoDeConta) ? "PRC_EXTRATO_CC_LIQUI_SEL" : "PRC_EXTRATO_CC_MOVTO_SEL";

                using (DbCommand lComando = lAcessaDados.CreateCommand(CommandType.StoredProcedure, lProcedure))
                {
                    lAcessaDados.AddInParameter(lComando, "pcd_cliente", DbType.Int32, pParametros.ConsultaCodigoCliente);
                    lAcessaDados.AddInParameter(lComando, "pdt_inicio", DbType.DateTime, pParametros.ConsultaDataInicio);
                    lAcessaDados.AddInParameter(lComando, "pdt_fim", DbType.DateTime, pParametros.ConsultaDataFim);

                    lAcessaDados.AddOutParameter(lComando, "psaldo_d_anterior", DbType.VarNumeric, 4);
                    lAcessaDados.AddOutParameter(lComando, "psaldo_disponivel", DbType.VarNumeric, 4);
                    lAcessaDados.AddOutParameter(lComando, "psaldo_total", DbType.VarNumeric, 4);

                    lDataTable = lAcessaDados.ExecuteOracleDataTable(lComando);

                    lSaldoDAnterior  = Convert.ToDecimal(lAcessaDados.GetParameterValue(lComando, "psaldo_d_anterior"));
                    lSaldoDisponivel = Convert.ToDecimal(lAcessaDados.GetParameterValue(lComando, "psaldo_disponivel"));
                    lSaldoTotal      = Convert.ToDecimal(lAcessaDados.GetParameterValue(lComando, "psaldo_total"));
                }

                lLancamento = 0;

                lRetorno.Relatorio.CodigoCliente = pParametros.ConsultaCodigoCliente.Value;
                lRetorno.Relatorio.NomeCliente   = BuscarNomeDoClienteSeNecessario(pParametros.ConsultaCodigoCliente, pParametros.ConsultaNomeCliente); // pParametros.CodigoCliente.ToString();     //TODO: De onde vem o nome do cliente?

                lRetorno.Relatorio.SaldoAnterior   = lSaldoDAnterior;
                lRetorno.Relatorio.SaldoDisponivel = lSaldoDisponivel;
                lRetorno.Relatorio.SaldoTotal      = lSaldoTotal;

                foreach (DataRow lRow in lDataTable.Rows)
                {
                    lContaCorrenteMovimentoRelInfo = new ContaCorrenteMovimentoInfo();

                    if (!Convert.IsDBNull(lRow["Credito"]))
                    {
                        lLancamento = Convert.ToDecimal(lRow["Credito"]);

                        lContaCorrenteMovimentoRelInfo.ValorCredito = lLancamento;

                        lSaldoDAnterior += lLancamento;
                    }
                    else
                    {
                        lLancamento = (Math.Abs(Convert.ToDecimal(lRow["Debito"])) * -1);

                        lContaCorrenteMovimentoRelInfo.ValorDebito = lLancamento;

                        lSaldoDAnterior += lLancamento;
                    }

                    lContaCorrenteMovimentoRelInfo.DataMovimento = lRow["dt_lancamento"].DBToDateTime();

                    lContaCorrenteMovimentoRelInfo.DataLiquidacao = lRow["dt_liquidacao"].DBToDateTime();

                    lContaCorrenteMovimentoRelInfo.ValorSaldo = lSaldoDAnterior;

                    lContaCorrenteMovimentoRelInfo.Historico = lRow["ds_lancamento"].ToString();

                    //lSaldoDAnterior += lLancamento;

                    lRetorno.Relatorio.ListaContaCorrenteMovimento.Add(lContaCorrenteMovimentoRelInfo);
                }

                lRetorno.StatusResposta = CriticaMensagemEnum.OK;
            }
            catch (Exception ex)
            {
                gLogger.Error("ConsultarExtratoContaCorrente", ex);
                lRetorno.DescricaoResposta = ex.ToString();
                lRetorno.StackTrace        = ex.StackTrace;
                lRetorno.StatusResposta    = CriticaMensagemEnum.Exception;
            }
            finally
            {
                lAcessaDados = null;
                lDataTable.Dispose();
                lDataTable = null;
            }

            gLogger.Debug(String.Format("Fim ConsultarExtratoContaCorrente. Cliente: {0}. Descrição Resposta: {1}, count: {2}, consulta de {3} até {4}", pParametros.ConsultaCodigoCliente, lRetorno.StatusResposta, lRetorno.Relatorio.ListaContaCorrenteMovimento.Count.ToString(), pParametros.ConsultaDataInicio.ToString(), pParametros.ConsultaDataFim.ToString()));

            return(lRetorno);
        }
Exemple #5
0
        /// <summary>
        /// Busca ordens inseridas no sinacor
        /// </summary>
        /// <param name="pRequest"></param>
        /// <returns></returns>
        public BuscarOrdensResponse BuscarOrdensSinacor(BuscarOrdensRequest pRequest)
        {
            BuscarOrdensResponse lReturn = new BuscarOrdensResponse();

            OrdemInfo lOrdem = new OrdemInfo();

            AcessaDados lAcessaDados = new AcessaDados();

            lAcessaDados.ConnectionStringName = ClienteDbLib.gNomeConexaoSinacorTrade;

            ///PRC_ACOMP_ORDENS_BMF_LST
            //PRC_ACOMPANHAMENTO_ORDENS_LST
            //string lProc = (pRequest.Canal == 0) ? "PRC_ACOMP_ORDENS_BMF_LST" : "PRC_ACOMPANHAMENTO_ORDENS_LST";
            string lProc = (pRequest.Canal == 0) ? "PRC_ACOMP_ORDENS_BMF_LST" : "PRC_ACOMPA_ORDENS_LST";

            using (DbCommand lDbCommand = lAcessaDados.CreateCommand(CommandType.StoredProcedure, lProc))
            {
                lAcessaDados.AddInParameter(lDbCommand, "pDtDe", DbType.Date, pRequest.DataDe);
                lAcessaDados.AddInParameter(lDbCommand, "pDtAte", DbType.Date, pRequest.DataAte);
                lAcessaDados.AddInParameter(lDbCommand, "pPapel", DbType.AnsiString, pRequest.Instrumento);
                lAcessaDados.AddInParameter(lDbCommand, "pCodCliente", DbType.Int32, pRequest.ContaDoCliente);
                lAcessaDados.AddInParameter(lDbCommand, "pPaginaCorrente", DbType.Int32, pRequest.PaginaCorrente);
                lAcessaDados.AddInParameter(lDbCommand, "pQtdRegs", DbType.Int32, pRequest.QtdeLimiteRegistros);
                lAcessaDados.AddInParameter(lDbCommand, "pCodAssessor", DbType.Int32, pRequest.CodigoAssessor);
                lAcessaDados.AddInParameter(lDbCommand, "pStatusOrdem", DbType.Int32, pRequest.Status == null ? new Nullable <int>() : (int)pRequest.Status);
                lAcessaDados.AddInParameter(lDbCommand, "pStPortaTryd", DbType.String, "TRYD".Equals(pRequest.Origem) ? pRequest.Origem : null);

                lAcessaDados.AddOutParameter(lDbCommand, "pTotalRegistros", DbType.Int32, 12);

                DataTable lDados = lAcessaDados.ExecuteOracleDataTable(lDbCommand);

                lReturn.Ordens = new List <OrdemInfo>();

                lReturn.TotalItens = lDados.Rows.Count;

                foreach (DataRow lRow in lDados.Rows)
                {
                    lOrdem = new OrdemInfo();

                    lOrdem.IdOrdem            = Convert.ToInt32(lRow["OrderId"]);
                    lOrdem.Account            = lRow["CD_CLIENTE"].DBToInt32();
                    lOrdem.ChannelID          = lRow["ChannelId"].DBToInt32();
                    lOrdem.ExpireDate         = lRow["ExpireDate"].DBToDateTime();
                    lOrdem.OrderQty           = lRow["OrderQty"].DBToInt32();
                    lOrdem.OrderQtyRemmaining = lRow["OrderQtyRemaining"].DBToInt32();
                    lOrdem.OrdStatus          = (OrdemStatusEnum)lRow["OrdStatusId"].DBToInt32();
                    lOrdem.ClOrdID            = lRow["OrderId"].ToString();
                    lOrdem.OrdType            = (OrdemTipoEnum)50;
                    lOrdem.RegisterTime       = DateTime.ParseExact(lRow["RegisterTime"].ToString(), "dd/MM/yyyy HH:mm:ss", CultureInfo.CurrentCulture);
                    lOrdem.Side   = (OrdemDirecaoEnum)lRow["Side"].DBToInt32();
                    lOrdem.Symbol = lRow["SYMBOL"].DBToString();

                    if (lRow["Price"] != DBNull.Value)
                    {
                        lOrdem.Price = Convert.ToDouble(lRow["Price"]);
                    }

                    lOrdem.Acompanhamentos = new List <AcompanhamentoOrdemInfo>();

                    lReturn.Ordens.Add(lOrdem);
                }

                List <OrdemInfo> lTempOrdens = lReturn.Ordens;

                this.BuscarAssessoresFiltro(pRequest.CodigoAssessor, ref lTempOrdens);

                lReturn.Ordens = lTempOrdens;
            }

            return(lReturn);
        }