Exemplo n.º 1
0
        private void InserirLimiteInstrumento()
        {
            ClienteParametroBMFInstrumentoInfo  info     = new ClienteParametroBMFInstrumentoInfo();
            InserirLimiteBMFInstrumentoRequest  request  = new InserirLimiteBMFInstrumentoRequest();
            InserirLimiteBMFInstrumentoResponse response = new InserirLimiteBMFInstrumentoResponse();

            info.IdClienteParametroBMF = 16;
            info.Instrumento           = "INDZ13";
            info.QtDisponivel          = 5;
            info.QtTotalInstrumento    = 5;
            info.QtTotalContratoPai    = 10;

            request.LimiteBMFInstrumento = info;

            response = new ServicoLimiteBMF().AtualizarLimiteInstrumentoBMF(request);
        }
Exemplo n.º 2
0
        private void InserirLimiteInstrumentoCliente()
        {
            #region Instrumento

            ClienteParametroBMFInstrumentoInfo  ContratoInstrumento = new ClienteParametroBMFInstrumentoInfo();
            InserirLimiteBMFInstrumentoRequest  RequestInstrumento  = new InserirLimiteBMFInstrumentoRequest();
            InserirLimiteBMFInstrumentoResponse ResponseInstrumento = new InserirLimiteBMFInstrumentoResponse();

            ContratoInstrumento.IdClienteParametroBMF = 16;
            ContratoInstrumento.ContratoBase          = "IND";
            ContratoInstrumento.Instrumento           = "INDZ13";
            ContratoInstrumento.QtDisponivel          = 5;
            ContratoInstrumento.QtTotalInstrumento    = 5;
            ContratoInstrumento.QtTotalContratoPai    = 50;

            RequestInstrumento.LimiteBMFInstrumento = ContratoInstrumento;

            ResponseInstrumento = new ServicoLimiteBMF().AtualizarLimiteInstrumentoBMF(RequestInstrumento);

            #endregion
        }
Exemplo n.º 3
0
        private string ResponderSalvarLimitesBmf()
        {
            string lRetorno = string.Empty;

            try
            {
                var lServico = new ServicoLimiteBMF();

                var listAntigaInstrumentos = Session["Spider_ListaLimitesInstrumentos_" + GetCodBmf] as List<ClienteParametroBMFInstrumentoInfo>;
                var listAntigaContratos    = Session["Spider_ListaLimites_" + GetCodBmf]             as List<ClienteParametroLimiteBMFInfo>;

                string lAntigoStatusContratos = RetornarSucessoAjax(listAntigaContratos, "");
                string lAntigoStatusInstrumentos = RetornarSucessoAjax(listAntigaInstrumentos, "");

                List<ClienteParametroLimiteBMFInfo> lListContrato         = Session["Spider_LimitesContrato_" + GetCodBmf]    as List<ClienteParametroLimiteBMFInfo>;
                List<ClienteParametroBMFInstrumentoInfo> lListInstrumento = Session["Spider_LimitesInstrumento_" + GetCodBmf] as List<ClienteParametroBMFInstrumentoInfo>;

                InserirLimiteClienteBMFRequest lRequestContrato        = new InserirLimiteClienteBMFRequest();
                InserirLimiteBMFInstrumentoRequest lRequestInstrumento = new InserirLimiteBMFInstrumentoRequest();

                List<ContratoAuxIntrumento> llistAuxContrato = new List<ContratoAuxIntrumento>();

                //Atualiza os dados para salvar a quantidade 
                ClienteParametroBMFInstrumentoInfo lInstrumentoEncontradoCompra = null; 
                ClienteParametroBMFInstrumentoInfo lInstrumentoEncontradoVenda = null;

                if (GetInstrumento != "null")
                {
                    lInstrumentoEncontradoCompra = lListInstrumento.Find(instru => { return instru.Sentido == 'C' && instru.Instrumento == GetInstrumento; });
                    lInstrumentoEncontradoVenda = lListInstrumento.Find(instru => { return instru.Sentido == 'V' && instru.Instrumento == GetInstrumento; });

                    lListInstrumento.Remove(lInstrumentoEncontradoCompra);
                    lListInstrumento.Remove(lInstrumentoEncontradoVenda);

                }

                if ( Request["lCliente_Qtde_Compra_Instrumento"] .ToString()!="")
                    lInstrumentoEncontradoCompra.QtDisponivel           = Convert.ToInt32(Request["lCliente_Qtde_Compra_Instrumento"].ToString());

                if (Request["lCliente_Qtde_Compra_Instrumento"].ToString() != "")
                    lInstrumentoEncontradoCompra.QtTotalInstrumento     = Convert.ToInt32(Request["lCliente_Qtde_Compra_Instrumento"].ToString());

                if (Request["lCliente_Qtde_Venda_Instrumento"].ToString() != "")
                    lInstrumentoEncontradoVenda.QtDisponivel            = Convert.ToInt32(Request["lCliente_Qtde_Venda_Instrumento"].ToString());
                
                if (Request["lCliente_Qtde_Venda_Instrumento"].ToString() != "")
                    lInstrumentoEncontradoVenda.QtTotalInstrumento      = Convert.ToInt32(Request["lCliente_Qtde_Venda_Instrumento"].ToString());
                
                if (Request["lCliente_Qtde_Maxima_Instrumento"].ToString() != "" )
                    lInstrumentoEncontradoCompra.QuantidadeMaximaOferta = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Instrumento"].ToString());

                if (Request["lCliente_Qtde_Maxima_Instrumento"].ToString() != "")
                    lInstrumentoEncontradoVenda.QuantidadeMaximaOferta  = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Instrumento"].ToString());

                lListInstrumento.Add(lInstrumentoEncontradoCompra);
                lListInstrumento.Add(lInstrumentoEncontradoVenda);

                var lContratoEncontrados = lListContrato.FindAll(contrato => { return contrato.Contrato == GetContrato; });

                var infoCompra = new ClienteParametroLimiteBMFInfo();
                var infoVenda = new ClienteParametroLimiteBMFInfo();

                foreach (ClienteParametroLimiteBMFInfo info in lContratoEncontrados)
                {
                    if (info.Sentido == "C")
                    {
                        infoCompra.idClienteParametroBMF = info.idClienteParametroBMF;
                    }
                    else if (info.Sentido == "V")
                    {
                        infoVenda.idClienteParametroBMF = info.idClienteParametroBMF;
                    }

                    lListContrato.Remove(info);
                }
                
                infoCompra.Account                = GetCodBmf;
                infoCompra.Contrato               = GetContrato;
                infoCompra.QuantidadeDisponivel   = Convert.ToInt32(Request["lCliente_Qtde_Compra"].ToString());
                infoCompra.QuantidadeTotal        = Convert.ToInt32(Request["lCliente_Qtde_Compra"].ToString());
                infoCompra.QuantidadeMaximaOferta = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Contrato"].ToString());
                infoCompra.DataValidade           = Convert.ToDateTime(Request["lCliente_Data_validade"]);
                infoCompra.Sentido                = "C";
                infoCompra.idClientePermissao     = base.UsuarioLogado.Id;
                infoCompra.RenovacaoAutomatica    = 'S';
                lListContrato.Add(infoCompra);

                
                infoVenda.Account                = GetCodBmf;
                infoVenda.Contrato               = GetContrato;
                infoVenda.QuantidadeDisponivel   = Convert.ToInt32(Request["lCliente_Qtde_Venda"].ToString());
                infoVenda.QuantidadeTotal        = Convert.ToInt32(Request["lCliente_Qtde_Venda"].ToString());
                infoVenda.QuantidadeMaximaOferta = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Contrato"].ToString());
                infoVenda.DataValidade           = Convert.ToDateTime(Request["lCliente_Data_validade"]);
                infoVenda.Sentido                = "V";
                infoVenda.idClientePermissao     = base.UsuarioLogado.Id;
                infoVenda.RenovacaoAutomatica    = 'S';

                lListContrato.Add(infoVenda);


                string lNovoStatusContratos    = RetornarSucessoAjax(lListContrato, "");
                string lNovoStatusInstrumentos = RetornarSucessoAjax(lListInstrumento, "");

                foreach (ClienteParametroLimiteBMFInfo info in lListContrato)
                {
                    lRequestContrato.ClienteParametroLimiteBMFInfo = info;

                    

                    InserirLimiteClienteBMFResponse lResponseContrato =  lServico.AtualizarSpiderLimiteBMF(lRequestContrato);

                    ContratoAuxIntrumento lAux = new ContratoAuxIntrumento();

                    lAux.Contrato = info.Contrato;

                    lAux.IdClienteParametroBMF = lResponseContrato.IdClienteParametroBMF == 0 ? info.idClienteParametroBMF : lResponseContrato.IdClienteParametroBMF;

                    lAux.Sentido = info.Sentido;

                    llistAuxContrato.Add(lAux);
                }

                foreach (ClienteParametroBMFInstrumentoInfo info in lListInstrumento)
                {
                    if (info != null)
                    {
                        lRequestInstrumento.LimiteBMFInstrumento = info;

                        var lAux = llistAuxContrato.Find(aux => { return aux.Sentido == info.Sentido.ToString() && aux.Contrato == info.Instrumento.Substring(0, 3); });

                        if (lAux != null)
                        {
                            lRequestInstrumento.LimiteBMFInstrumento.IdClienteParametroBMF = lAux.IdClienteParametroBMF;
                        }

                        var lReponseInstrumento = lServico.AtualizarSpiderLimiteInstrumentoBMF(lRequestInstrumento);
                    }
                }

                base.RegistrarLogInclusao(new Contratos.Dados.Cadastro.LogIntranetInfo()
                {   //--> Registrando o Log.
                    CdBovespaClienteAfetado = this.GetCodBmf,
                    DsObservacao = string.Concat("Contratos Antigos: ", lAntigoStatusContratos, " Instrumentos Antigos: ", lAntigoStatusInstrumentos) +
                                   string.Concat(" Contratos Novos: "  , lNovoStatusContratos   , " Instrumentos Novos: ", lNovoStatusInstrumentos)
                });


                ListarLimiteBMFRequest lRequest = new ListarLimiteBMFRequest();

                lRequest.Account = GetCodBmf;

                ListarLimiteBMFResponse lResponse = lServico.ObterSpiderLimiteBMFCliente(lRequest);

                Session["Spider_LimitesInstrumento_" + GetCodBmf] = Session["Spider_ListaLimitesInstrumentos_" + GetCodBmf] = null;
                Session["Spider_LimitesContrato_" + GetCodBmf]    = Session["Spider_ListaLimites_" + GetCodBmf] = null;

                if (lResponse.ListaLimites != null && lResponse.ListaLimitesInstrumentos != null)
                {
                    Session["Spider_LimitesContrato_" + GetCodBmf]    = Session["Spider_ListaLimites_" + GetCodBmf] = lResponse.ListaLimites;
                    Session["Spider_LimitesInstrumento_" + GetCodBmf] = Session["Spider_ListaLimitesInstrumentos_" + GetCodBmf] = lResponse.ListaLimitesInstrumentos;
                }
                
                ILimiteManager lmtMng = Ativador.Get<ILimiteManager>();
                ReloadClientLimitResponse resp = new ReloadClientLimitResponse();
                ReloadClientLimitRequest req = new ReloadClientLimitRequest();
                req.CodCliente = Convert.ToInt32(GetCodBmf);
                req.DeleteOnly = false;
                lmtMng.ReloadLimitClientLimitStructures(req);

                lRetorno = RetornarSucessoAjax("Limites BMF configurados com sucesso.");
            }
            catch (Exception ex)
            {
                RetornarErroAjax("Erro ao Salvar limites BMF", ex);
            }

            return lRetorno;
        }
Exemplo n.º 4
0
        //private bool ValidaQuantidadeInstrumento(string pContrato, string pSentido, int quantidade)
        //{
        //    bool lRetorno = true;

        //    List<ClienteParametroLimiteBMFInfo> lListContrato = Session["LimitesContrato_" + GetCodBmf] as List<ClienteParametroLimiteBMFInfo>;

        //    var lContato = lListContrato.Find(contrato => { return contrato.Contrato == pContrato && contrato.Sentido == pSentido; });

        //    if ()

        //    return lRetorno;
        //}

        private string ResponderInsereIntrumentoLimitesBmf()
        {
            string lRetorno = string.Empty;

            try
            {
                ClienteParametroLimiteBMFInfo lContratoCompra = new ClienteParametroLimiteBMFInfo();
                ClienteParametroLimiteBMFInfo lContratoVenda = new ClienteParametroLimiteBMFInfo();

                if (VerificaContratoExiste(Request["lCliente_Contrato"].ToString(), GetCodBmf.ToString()))
                {
                    lContratoCompra.idClienteParametroBMF = GetIdClienteParametroBMF(Request["lCliente_Contrato"].ToString(),"C");
                    lContratoVenda.idClienteParametroBMF  = GetIdClienteParametroBMF(Request["lCliente_Contrato"].ToString(),"V");
                }

                lContratoVenda.Account                 = lContratoCompra.Account                = GetCodBmf;
                lContratoVenda.Contrato                = lContratoCompra.Contrato               = Request["lCliente_Contrato"];
                lContratoVenda.DataMovimento           = lContratoCompra.DataMovimento          = DateTime.Now;
                lContratoVenda.DataValidade            = lContratoCompra.DataValidade           = Convert.ToDateTime(Request["lCliente_Data_validade"]);
                lContratoVenda.QuantidadeMaximaOferta  = lContratoCompra.QuantidadeMaximaOferta = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Contrato"]);
                lContratoCompra.QuantidadeTotal        = Convert.ToInt32(Request["lCliente_Qtde_Compra"]);
                lContratoVenda.QuantidadeTotal         = Convert.ToInt32(Request["lCliente_Qtde_Venda"]);
                lContratoCompra.QuantidadeDisponivel   = Convert.ToInt32(Request["lCliente_Qtde_Compra"]);
                lContratoVenda.QuantidadeDisponivel    = Convert.ToInt32(Request["lCliente_Qtde_Venda"]);
                
                lContratoCompra.Sentido                = "C";
                lContratoVenda.Sentido                 = "V";
                lContratoCompra.RenovacaoAutomatica    = 'S';
                lContratoVenda.RenovacaoAutomatica     = 'S';
                lContratoVenda.idClientePermissao      = base.UsuarioLogado.Id;
                lContratoCompra.idClientePermissao     = base.UsuarioLogado.Id;

                ClienteParametroBMFInstrumentoInfo lInstrumentoCompra = new ClienteParametroBMFInstrumentoInfo();
                ClienteParametroBMFInstrumentoInfo lInstrumentoVenda  = new ClienteParametroBMFInstrumentoInfo();
                
                if (VerificaInstrumentoExiste(Request["lCliente_Instrumento"].ToString().ToUpper(), GetCodBmf.ToString()))
                {
                    lInstrumentoCompra.IdClienteParametroInstrumento = GetIdClienteParametroInstrumentoBMF(Request["lCliente_Instrumento"].ToString().ToUpper(), "C");
                    lInstrumentoVenda.IdClienteParametroInstrumento  = GetIdClienteParametroInstrumentoBMF(Request["lCliente_Instrumento"].ToString().ToUpper(), "V");
                }

                lInstrumentoVenda.Instrumento            = lInstrumentoCompra.Instrumento            = Request["lCliente_Instrumento"].ToString().ToUpper();
                lInstrumentoVenda.QuantidadeMaximaOferta = lInstrumentoCompra.QuantidadeMaximaOferta = Convert.ToInt32(Request["lCliente_Qtde_Maxima_Instrumento"]);
                lInstrumentoVenda.dtMovimento            = lInstrumentoCompra.dtMovimento            = DateTime.Now;

                lInstrumentoVenda.Sentido             = 'V';
                lInstrumentoCompra.Sentido            = 'C';
                lInstrumentoCompra.QtTotalContratoPai = Convert.ToInt32(Request["lCliente_Qtde_Compra"]);
                lInstrumentoVenda.QtTotalContratoPai  = Convert.ToInt32(Request["lCliente_Qtde_Venda"]);
                lInstrumentoCompra.QtTotalInstrumento = Convert.ToInt32(Request["lCliente_Qtde_Compra_Instrumento"]);
                lInstrumentoVenda.QtTotalInstrumento  = Convert.ToInt32(Request["lCliente_Qtde_Venda_Instrumento"]);
                lInstrumentoCompra.QtDisponivel       = Convert.ToInt32(Request["lCliente_Qtde_Compra_Instrumento"]);
                lInstrumentoVenda.QtDisponivel        = Convert.ToInt32(Request["lCliente_Qtde_Venda_Instrumento"]);

                var listContrato    = Session["Spider_LimitesContrato_" + GetCodBmf] as List<ClienteParametroLimiteBMFInfo>;
                var listInstrumento = Session["Spider_LimitesInstrumento_" + GetCodBmf] as List<ClienteParametroBMFInstrumentoInfo>;

                listContrato.Add(lContratoCompra);
                listContrato.Add(lContratoVenda);

                listInstrumento.Add(lInstrumentoCompra);
                listInstrumento.Add(lInstrumentoVenda);

                Session["Spider_LimitesContrato_" + GetCodBmf]    = listContrato;
                Session["Spider_LimitesInstrumento_" + GetCodBmf] = listInstrumento;

                lRetorno = base.RetornarSucessoAjax(new TransporteLimiteBMF().TraduzirInstrumentoNovoParaTela(listContrato,listInstrumento, Request["lCliente_Contrato"].ToString()), "Limite inserido com sucesso");
            }
            catch (Exception ex)
            {
                RetornarErroAjax("Erro ao Inserir limites bmf instrumento", ex);
            }

            return lRetorno;
        }