Пример #1
0
        /// <summary>
        /// Carrega dados do fundo selecionado na tela
        /// </summary>
        /// <returns></returns>
        public string ResponderEditarFundo()
        {
            string lRetorno = string.Empty;

            try
            {
                CadastroFundoRequest lRequest = new CadastroFundoRequest();

                //Preenchimento objeto Request
                lRequest.IdFundoCadastro = this.GetIdFundoCadastro;

                CadastroFundoResponse lResponse = base.BuscarFundosCadastrados(lRequest);

                if (lResponse != null && lResponse.StatusResposta == OMS.Library.MensagemResponseStatusEnum.OK)
                {
                    var lListaTransporte = new TransporteCadastroFundos().TraduzirLista(lResponse.ListaFundos);

                    lRetorno = JsonConvert.SerializeObject(lResponse.ListaFundos);

                    return(lRetorno);
                }
            }
            catch (Exception ex)
            {
                gLogger.Error("Erro ao editar fundo. ", ex);

                lRetorno = base.RetornarErroAjax("Erro no método ResponderEditarFundo ", ex);
            }

            return(lRetorno);
        }
Пример #2
0
        /// <summary>
        /// Método que seleciona fundos no banco de dados de acordo com os parâmetros informados
        /// </summary>
        /// <param name="pRequest"></param>
        /// <returns></returns>
        public CadastroFundoResponse BuscarPorCategoria(CadastroFundoRequest pRequest)
        {
            CadastroFundoResponse lRetorno = new CadastroFundoResponse();

            try
            {
                var lAcessaDados = new AcessaDados {
                    ConnectionStringName = "GradualFundosAdm"
                };

                using (var cmd = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_fundos_cadastro_categoria_sub_categoria_sel"))
                {
                    #region Adicionar Parâmetros
                    //tratamento dos parâmetros de entrada
                    if (pRequest.IdFundoCadastro > 0)
                    {
                        lAcessaDados.AddInParameter(cmd, "@IdFundoCategoria", DbType.Int32, pRequest.IdFundoCadastro);
                    }
                    #endregion

                    var table = lAcessaDados.ExecuteDbDataTable(cmd);

                    lRetorno.ListaFundos = new List <CadastroFundoInfo>();

                    #region Preenchimento Retorno

                    //preenche lista de retorno
                    foreach (DataRow dr in table.Rows)
                    {
                        var itemLista = new CadastroFundoInfo
                        {
                            IdFundoCadastro = dr["idFundoCadastro"].DBToInt32(),
                            NomeFundo       = dr["nomeFundo"].DBToString()
                        };

                        lRetorno.ListaFundos.Add(itemLista);
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
                GLogger.Error("Erro encontrado no método CadastroFundoDB.BuscarPorCategoria", ex);

                throw;
            }

            return(lRetorno);
        }
Пример #3
0
        /// <summary>
        /// Método que atualiza um fundo no banco de dados
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public CadastroFundoResponse Atualizar(CadastroFundoRequest request)
        {
            var lRetorno = new CadastroFundoResponse();

            try
            {
                var lAcessaDados = new AcessaDados {
                    ConnectionStringName = "GradualFundosAdm"
                };

                using (var cmd = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_fundos_cadastro_upd"))
                {
                    #region Adicionar Parâmetros
                    lAcessaDados.AddInParameter(cmd, "@idFundoCadastro", DbType.String, request.IdFundoCadastro);
                    lAcessaDados.AddInParameter(cmd, "@nomeFundo", DbType.String, request.NomeFundo);
                    lAcessaDados.AddInParameter(cmd, "@cnpjFundo", DbType.String, request.CNPJFundo);
                    lAcessaDados.AddInParameter(cmd, "@nomeAdministrador", DbType.String, request.NomeAdministrador);
                    lAcessaDados.AddInParameter(cmd, "@cnpjAdministrador", DbType.String, request.CNPJAdministrador);
                    lAcessaDados.AddInParameter(cmd, "@nomeCustodiante", DbType.String, request.NomeCustodiante);
                    lAcessaDados.AddInParameter(cmd, "@cnpjCustodiante", DbType.String, request.CNPJCustodiante);
                    lAcessaDados.AddInParameter(cmd, "@nomeGestor", DbType.String, request.NomeGestor);
                    lAcessaDados.AddInParameter(cmd, "@cnpjGestor", DbType.String, request.CNPJGestor);
                    lAcessaDados.AddInParameter(cmd, "@TxGestao", DbType.Decimal, request.TxGestao);
                    lAcessaDados.AddInParameter(cmd, "@TxCustodia", DbType.Decimal, request.TxCustodia);
                    lAcessaDados.AddInParameter(cmd, "@TxConsultoria", DbType.Decimal, request.TxConsultoria);
                    lAcessaDados.AddInParameter(cmd, "@isAtivo", DbType.String, request.IsAtivo);
                    #endregion

                    lAcessaDados.ExecuteNonQuery(cmd);

                    lRetorno.StatusResposta = OMS.Library.MensagemResponseStatusEnum.OK;
                }
            }
            catch (Exception ex)
            {
                lRetorno.DescricaoResposta = ex.StackTrace;
                lRetorno.StatusResposta    = OMS.Library.MensagemResponseStatusEnum.ErroPrograma;
                GLogger.Error("Erro encontrado no método CadastroFundoDB.Atualizar", ex);
            }

            return(lRetorno);
        }
Пример #4
0
        /// <summary>
        /// Carrega dados no grid de fundos
        /// </summary>
        /// <returns></returns>
        public string ResponderCarregarHtmlComDados()
        {
            string lRetorno = string.Empty;

            try
            {
                var lRequest = new CadastroFundoRequest();

                CadastroFundoResponse lResponse = base.BuscarFundosCadastrados(lRequest);

                if (lResponse != null && lResponse.StatusResposta == OMS.Library.MensagemResponseStatusEnum.OK)
                {
                    var lListaTransporte = new TransporteCadastroFundos().TraduzirLista(lResponse.ListaFundos);

                    TransporteDeListaPaginada lRetornoLista = new TransporteDeListaPaginada(lListaTransporte);

                    lRetornoLista.TotalDeItens = lResponse.ListaFundos.Count;

                    lRetornoLista.PaginaAtual = 1;

                    lRetornoLista.TotalDePaginas = 0;

                    lRetorno = JsonConvert.SerializeObject(lRetornoLista);

                    return(lRetorno);
                }
            }
            catch (Exception ex)
            {
                gLogger.Error("Erro ao carregar os dados de fundos na tela", ex);

                lRetorno = base.RetornarErroAjax("Erro no método ResponderCarregarHtmlComDados ", ex);
            }

            return(lRetorno);
        }
Пример #5
0
        /// <summary>
        /// Método que seleciona fundos no banco de dados de acordo com os parâmetros informados
        /// </summary>
        /// <param name="pRequest"></param>
        /// <returns></returns>
        public CadastroFundoResponse Buscar(CadastroFundoRequest pRequest)
        {
            CadastroFundoResponse lRetorno = new CadastroFundoResponse();

            try
            {
                var lAcessaDados = new AcessaDados {
                    ConnectionStringName = "GradualFundosAdm"
                };

                using (var cmd = lAcessaDados.CreateCommand(CommandType.StoredProcedure, "prc_fundos_cadastro_sel"))
                {
                    #region Adicionar Parâmetros
                    //tratamento dos parâmetros de entrada
                    if (pRequest.IdFundoCadastro > 0)
                    {
                        lAcessaDados.AddInParameter(cmd, "@idFundoCadastro", DbType.Int32, pRequest.IdFundoCadastro);
                    }
                    if (pRequest.NomeFundo != null && pRequest.NomeFundo.Length > 1)
                    {
                        lAcessaDados.AddInParameter(cmd, "@nomeFundo", DbType.String, pRequest.NomeFundo);
                    }
                    #endregion

                    var table = lAcessaDados.ExecuteDbDataTable(cmd);

                    lRetorno.ListaFundos = new List <CadastroFundoInfo>();

                    #region Preenchimento Retorno
                    //preenche lista de retorno
                    foreach (DataRow dr in table.Rows)
                    {
                        var itemLista = new CadastroFundoInfo
                        {
                            IdFundoCadastro   = dr["idFundoCadastro"].DBToInt32(),
                            NomeFundo         = dr["nomeFundo"].DBToString(),
                            CNPJFundo         = dr["cnpjFundo"].DBToString(),
                            NomeAdministrador = dr["nomeAdministrador"].DBToString(),
                            CNPJAdministrador = dr["cnpjAdministrador"].DBToString(),
                            NomeCustodiante   = dr["nomeCustodiante"].DBToString(),
                            CNPJCustodiante   = dr["cnpjCustodiante"].DBToString(),
                            NomeGestor        = dr["nomeGestor"].DBToString(),
                            CNPJGestor        = dr["cnpjGestor"].DBToString(),
                            TxGestao          = dr["TxGestao"].DBToDecimal(),
                            TxCustodia        = dr["TxCustodia"].DBToDecimal(),
                            TxConsultoria     = dr["TxConsultoria"].DBToDecimal(),
                            IsAtivo           = dr["isAtivo"].DBToBoolean()
                        };

                        lRetorno.ListaFundos.Add(itemLista);
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
                GLogger.Error("Erro encontrado no método CadastroFundoDB.Buscar", ex);
            }

            return(lRetorno);
        }
Пример #6
0
        /// <summary>
        /// Atualiza ou insere valores de fundos
        /// </summary>
        /// <returns>Retorna string com a lista em Json</returns>
        public string ResponderAtualizarValor()
        {
            string lRetorno = string.Empty;

            try
            {
                var lRequest = new CadastroFundoRequest();

                #region Preenchimento objeto de Request

                lRequest.NomeFundo         = this.GetNomeFundo;
                lRequest.CNPJFundo         = this.GetCNPJFundo.Replace("/", "").Replace(".", "").Replace("-", "");
                lRequest.NomeAdministrador = this.GetNomeAdministrador;
                lRequest.CNPJAdministrador = this.GetCNPJAdministrador.Replace("/", "").Replace(".", "").Replace("-", "");
                lRequest.NomeCustodiante   = this.GetNomeCustodiante;
                lRequest.CNPJCustodiante   = this.GetCNPJCustodiante.Replace("/", "").Replace(".", "").Replace("-", "");
                lRequest.NomeGestor        = this.GetNomeGestor;
                lRequest.CNPJGestor        = this.GetCNPJGestor.Replace("/", "").Replace(".", "").Replace("-", "");
                lRequest.IdFundoCadastro   = this.GetIdFundoCadastro;
                lRequest.IsAtivo           = this.GetIsAtivo;

                lRequest.DescricaoUsuarioLogado = this.UsuarioLogado.Nome;

                #endregion

                #region Gravação Log4Net
                string mensagemLog = string.Empty;

                mensagemLog += "NomeFundo:" + lRequest.NomeFundo + ";";
                mensagemLog += "CNPJFundo:" + lRequest.CNPJFundo + ";";
                mensagemLog += "NomeAdministrador:" + lRequest.NomeAdministrador + ";";
                mensagemLog += "CNPJAdministrador:" + lRequest.CNPJAdministrador + ";";
                mensagemLog += "NomeCustodiante:" + lRequest.NomeCustodiante + ";";
                mensagemLog += "CNPJCustodiante:" + lRequest.CNPJCustodiante + ";";
                mensagemLog += "NomeGestor:" + lRequest.NomeGestor + ";";
                mensagemLog += "CNPJGestor:" + lRequest.CNPJGestor + ";";
                mensagemLog += "IsAtivo:" + lRequest.IsAtivo + ";";
                mensagemLog += "TipoTransacao:" + (lRequest.IdFundoCadastro > 0 ? "UPDATE" : "INSERT") + ";";
                mensagemLog += "UsuarioTransacao:" + lRequest.DescricaoUsuarioLogado + ";";

                gLogger.Info(mensagemLog);
                #endregion

                CadastroFundoResponse lResponse = base.AtualizarCadastroFundo(lRequest);

                if (lResponse != null && lResponse.StatusResposta == OMS.Library.MensagemResponseStatusEnum.OK)
                {
                    lRetorno = base.RetornarSucessoAjax(lResponse.StatusResposta.ToString());

                    return(lRetorno);
                }
                else if (lResponse != null && lResponse.StatusResposta == OMS.Library.MensagemResponseStatusEnum.ErroNegocio)
                {
                    //erro de negócio
                    lRetorno = base.RetornarErroAjax(lResponse.DescricaoResposta);
                }
                else
                {
                    lRetorno = base.RetornarErroAjax("Erro ao cadastrar fundo.");
                }
            }
            catch (Exception ex)
            {
                gLogger.Error("Erro ao cadastrar fundo", ex);

                lRetorno = base.RetornarErroAjax("Erro no método ResponderAtualizarValor ", ex);
            }

            return(lRetorno);
        }
Пример #7
0
        /// <summary>
        /// Método de atualização e inserção de fundos
        /// </summary>
        /// <param name="pRequest"></param>
        /// <returns></returns>
        public CadastroFundoResponse AtualizarCadastroFundo(CadastroFundoRequest pRequest)
        {
            try
            {
                #region Verificar duplicidade

                //o nome do fundo deve ser único na base de dados
                CadastroFundoDB db = new CadastroFundoDB();

                CadastroFundoRequest reqVerificarDuplicidade = new CadastroFundoRequest();
                reqVerificarDuplicidade.NomeFundo = pRequest.NomeFundo;

                CadastroFundoResponse respVerificarDuplicidade = db.Buscar(reqVerificarDuplicidade);

                bool duplicidade = false;

                if (respVerificarDuplicidade.ListaFundos.Count > 0 && respVerificarDuplicidade.ListaFundos[0].IdFundoCadastro != pRequest.IdFundoCadastro)
                {
                    duplicidade = true;
                }

                #endregion

                //caso não haja duplicidade, prossegue a atualização
                if (!duplicidade)
                {
                    CadastroFundoResponse response = new CadastroFundoResponse();

                    var lServico = new CadastroFundoDB();

                    //seta o tipo da transação realizada
                    string tipoTransacao = "";

                    if (pRequest.IdFundoCadastro > 0) //atualizar fundo já cadastrado
                    {
                        response      = lServico.Atualizar(pRequest);
                        tipoTransacao = "UPDATE";
                    }
                    else //cadastrar novo fundo
                    {
                        // ao inserir um novo fundo, o mesmo deve sempre estar ativo
                        pRequest.IsAtivo = true;
                        response         = lServico.Inserir(pRequest);
                        tipoTransacao    = "INSERT";
                    }

                    //grava a transação na tabela de log
                    lServico.InserirLog(pRequest, tipoTransacao, pRequest.DescricaoUsuarioLogado);

                    return(response);
                }
                else
                {
                    //throw new Exception("Já existe um fundo com o mesmo nome cadastrado na base");
                    CadastroFundoResponse response = new CadastroFundoResponse();
                    response.StatusResposta    = OMS.Library.MensagemResponseStatusEnum.ErroNegocio;
                    response.DescricaoResposta = "Já existe um fundo com o mesmo nome cadastrado na base";

                    return(response);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }