/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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; } }