public CampoDinamicoViewModel Atualizar(CampoDinamicoViewModel viewModel, string usuarioId) { if (viewModel == null) { return(viewModel); } var listaCamposDinamicos = CarregarInformacoesDinamicasControleDinamico(viewModel.Controls); if (viewModel.Controls != null) { //Limpando registros do Passado foreach (var campoDinamico in viewModel.Controls) { _servicoCampoDinamicoPreenchido.Deletar((long)viewModel.ChaveEntidadeId, campoDinamico.EntidadesSecoesCamposDinamicosId, campoDinamico.CampoDinamicoId, usuarioId); } } foreach (var campoDinamico in listaCamposDinamicos) { campoDinamico.ChaveEntidade = (long)viewModel.ChaveEntidadeId; _servicoCampoDinamicoPreenchido.Adicionar(campoDinamico, usuarioId); } return(viewModel); }
public CampoDinamicoViewModel Carregar(string siglaEntidade, string nomeAba, string nomeSecao, long?id, bool podeEditar) { var viewModel = new CampoDinamicoViewModel { ChaveEntidadeId = id, PodeEditar = podeEditar }; var listaCampoDinamico = _servicoCampoDinamico.ObterPor(id, siglaEntidade, nomeAba, nomeSecao); var listaSecoes = new List <SecaoViewModel>(); if (listaCampoDinamico != null) { if (listaCampoDinamico.Any()) { viewModel.ChaveEntidadeId = listaCampoDinamico.FirstOrDefault().EntidadeSecao.EntidadesId; var camposDinamicosAgrupadoPorSecao = listaCampoDinamico.GroupBy(u => new { nome = u.EntidadeSecao.Nome, id = u.EntidadeSecao.Id }, (Key, group) => new { id = Key.id, nome = Key.nome, CamposDinamicos = group.ToList() }); listaSecoes.AddRange( camposDinamicosAgrupadoPorSecao.Select( secao => new SecaoViewModel(secao.nome, secao.id, secao.CamposDinamicos, podeEditar, viewModel.ChaveBase))); } } viewModel.Secoes = listaSecoes; return(viewModel); }
public CampoDinamicoViewModel Adicionar(CampoDinamicoViewModel viewModel, string usuarioId) { var listaCamposDinamicos = CarregarInformacoesDinamicasControleDinamico(viewModel.Controls); foreach (var campoDinamico in listaCamposDinamicos) { campoDinamico.ChaveEntidade = (long)viewModel.ChaveEntidadeId; _servicoCampoDinamicoPreenchido.Adicionar(campoDinamico, usuarioId); } return(null); }
public CampoDinamicoViewModel Editar(long id, string siglaEntidade, string nomeAba, string nomeSecao) { var viewModel = new CampoDinamicoViewModel { ChaveEntidadeId = id }; var listaCampoDinamico = _servicoCampoDinamico.ObterPor(id, siglaEntidade, nomeAba, nomeSecao); var listaSecoes = new List <SecaoViewModel>(); if (listaCampoDinamico != null) { var camposDinamicosAgrupadoPorSecao = listaCampoDinamico.GroupBy(u => new { nome = u.EntidadeSecao.Nome, id = u.EntidadeSecao.Id }, (key, group) => new { key.id, key.nome, CamposDinamicos = group.ToList() }); listaSecoes.AddRange( camposDinamicosAgrupadoPorSecao.Select( secao => new SecaoViewModel(secao.nome, secao.id, secao.CamposDinamicos, true, viewModel.ChaveBase))); } viewModel.Secoes = listaSecoes.ToArray(); return(viewModel); }