public ActionResult Criar(PapelVM papelVM) { Papel papel = new Papel(); papel.Nome = papelVM.Nome; papel.Permissoes = new List <Permissao>(); var perColecao = papelVM.GrupoColecao.SelectMany(c => c.PermissaoColecao.Where(p => p.IsPermitido)); papel.Permissoes.AddRange(perColecao); if (_busPapel.Salvar(papel)) { return(RedirectToAction("Criar", Validacao.QueryParamSerializer())); } PapelVM papelVMRetorno = new PapelVM(); papelVMRetorno.Nome = papelVM.Nome; papelVMRetorno.GrupoColecao = _busPapel.PermissaoGrupoColecao; foreach (var grupo in papelVMRetorno.GrupoColecao) { foreach (var permissaoRet in grupo.PermissaoColecao) { foreach (var permissao in papel.Permissoes) { permissaoRet.IsPermitido = (permissao.IsPermitido && permissao.ID == permissaoRet.ID); } } } return(View(papelVMRetorno)); }
public ActionResult Criar() { PapelVM papel = new PapelVM(); papel.GrupoColecao = _busPapel.PermissaoGrupoColecao; return(View(papel)); }
public ActionResult Visualizar(int id) { PapelVM papelVM = new PapelVM(); papelVM.GrupoColecao = _busPapel.ObterPermissaoGrupoColecao(id); papelVM.Nome = _busPapel.ObterNome(id); return(View(papelVM)); }
public ActionResult Editar(PapelVM papelVM) { Papel papel = new Papel(); papel.Id = papelVM.ID; papel.Nome = papelVM.Nome; papel.Permissoes = new List <Permissao>(); var perColecao = papelVM.GrupoColecao.SelectMany(c => c.PermissaoColecao.Where(p => p.IsPermitido)); papel.Permissoes.AddRange(perColecao); if (_busPapel.Salvar(papel)) { return(RedirectToAction("Index", Validacao.QueryParamSerializer())); } papelVM = new PapelVM(); papelVM.GrupoColecao = _busPapel.ObterPermissaoGrupoColecao(papel.Id); papelVM.Nome = _busPapel.ObterNome(papel.Id); return(View(papelVM)); }