/// <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> /// Carrega dados no grid de fundos /// </summary> /// <returns></returns> public string ResponderCarregarHtmlComDados() { var lRetorno = string.Empty; try { var lRequest = new CadastroFundoRequest(); var lResponse = BuscarFundosCadastrados(lRequest); if (lResponse != null && lResponse.StatusResposta == OMS.Library.MensagemResponseStatusEnum.OK) { var lListaTransporte = new TransporteCadastroFundos().TraduzirLista(lResponse.ListaFundos); var lRetornoLista = new TransporteDeListaPaginada(lListaTransporte) { TotalDeItens = lResponse.ListaFundos.Count, PaginaAtual = 1, TotalDePaginas = 0 }; lRetorno = JsonConvert.SerializeObject(lRetornoLista); return(lRetorno); } } catch (Exception ex) { Logger.Error("Erro ao carregar os dados de fundos na tela", ex); lRetorno = RetornarErroAjax("Erro no método ResponderCarregarHtmlComDados ", ex); } return(lRetorno); }
/// <summary> /// Método de carregamento do grid de fundos do modal /// </summary> /// <returns></returns> public string ResponderCarregarGridModalFundos() { var lRetorno = string.Empty; try { var lRequest = new FundoCategoriaSubCategoriaRequest { IdFundoCategoria = GetIdFundoCategoria, IdFundoSubCategoria = GetIdFundoSubCategoria }; //chama método da classe base var lResponse = BuscarFundosCarregarGridModalFundos(lRequest); if (lResponse != null && lResponse.StatusResposta == MensagemResponseStatusEnum.OK) { var lListaTransporte = new TransporteCadastroFundos().TraduzirLista(lResponse.ListaFundos); var lRetornoLista = new TransporteDeListaPaginada(lListaTransporte) { TotalDeItens = lResponse.ListaFundos.Count, PaginaAtual = 1, TotalDePaginas = 0 }; lRetorno = JsonConvert.SerializeObject(lRetornoLista); return(lRetorno); } } catch (Exception ex) { Logger.Error("Erro ao carregar os dados de fundos na tela", ex); lRetorno = RetornarErroAjax("Erro no método ResponderCarregarGridModalFundos ", ex); } return(lRetorno); }
/// <summary> /// Atualizar os relacionamentos Fundos x Categorias x SubCategorias /// </summary> /// <returns></returns> public string ResponderAtualizarRelacionamentoFundos() { try { var parametros = GetParamAtualizarRelacionamentoFundos; var lReqJson = JsonConvert.DeserializeObject <List <FundoCategoriaSubCategoriaJsonRequest> >(parametros); var listaRelacionamentoRemover = new List <FundoCategoriaSubCategoriaRequest>(); var listaFundosJaRelacionados = new List <FundoCategoriaSubCategoriaRequest>(); //preenche lista de relacionamentos a adicionar var listaRelacionamentoAdicionar = lReqJson.Select(item => new FundoCategoriaSubCategoriaRequest { IdFundoCadastro = item.IdFundoCadastro, IdFundoCategoria = GetIdFundoCategoria, IdFundoSubCategoria = GetIdFundoSubCategoria }).ToList(); #region Seleciona fundos já relacionados var lRequest = new FundoCategoriaSubCategoriaRequest { IdFundoCategoria = GetIdFundoCategoria, IdFundoSubCategoria = GetIdFundoSubCategoria }; var lResponse = base.BuscarFundosPorCategoriaSubCategoria(lRequest); var lTempJaRelacionados = new TransporteCadastroFundos().TraduzirLista(lResponse.ListaFundos); //preenche lista de relacionamentos a adicionar foreach (var item in lTempJaRelacionados) { var req = new FundoCategoriaSubCategoriaRequest { IdFundoCadastro = item.IdFundoCadastro, IdFundoCategoria = GetIdFundoCategoria, IdFundoSubCategoria = GetIdFundoSubCategoria }; listaFundosJaRelacionados.Add(req); } #endregion //preenche lista de relacionamentos a remover foreach (var item in listaFundosJaRelacionados) { //caso o elemento não conste na lista de adicionar, o mesmo deve ser removido if (!listaRelacionamentoAdicionar.Any(p => p.IdFundoCadastro == item.IdFundoCadastro)) { listaRelacionamentoRemover.Add(new FundoCategoriaSubCategoriaRequest { IdFundoCategoria = item.IdFundoCategoria, IdFundoSubCategoria = item.IdFundoSubCategoria, IdFundoCadastro = item.IdFundoCadastro }); } } //adiciona todos os relacionamentos que constam na lista foreach (var item in listaRelacionamentoAdicionar) { AdicionarRelacionamentosFundosCategoriasSubCategorias(item); //antes de gravar o log, verifica se o registro inserido é novo //caso contrário, não deve ser logado if (item.IdFundoCategoriaSubCategoria > 0) { //grava log na base e no log4net InserirLog(new FundoCategoriaSubCategoriaLogRequest { IdFundoCadastro = item.IdFundoCadastro, IdFundoCategoria = item.IdFundoCategoria, IdFundoSubCategoria = item.IdFundoSubCategoria, UsuarioLogado = UsuarioLogado.Nome, DtAlteracao = DateTime.Now, TipoTransacao = "INSERT" }); } } //remove todos os relacionamentos que constam na lista de remoção foreach (var item in listaRelacionamentoRemover) { RemoverRelacionamentosFundosCategoriasSubCategorias(item); //grava log na base e no log4net InserirLog(new FundoCategoriaSubCategoriaLogRequest { IdFundoCadastro = item.IdFundoCadastro, IdFundoCategoria = item.IdFundoCategoria, IdFundoSubCategoria = item.IdFundoSubCategoria, UsuarioLogado = UsuarioLogado.Nome, DtAlteracao = DateTime.Now, TipoTransacao = "DELETE" }); } } catch (Exception ex) { Logger.Error("Erro ao carregar os dados de fundos na tela", ex); return(RetornarErroAjax("Erro no método ResponderAtualizarRelacionamentoFundos ", ex)); } var response = new FundoCategoriaSubCategoriaResponse { StatusResposta = MensagemResponseStatusEnum.OK }; return(RetornarSucessoAjax(response.StatusResposta.ToString())); }