public PermissaoInfo ToPermissaoInfo() { PermissaoInfo lRetorno = new PermissaoInfo(); lRetorno.DescricaoPermissao = this.DescricaoPermissao; lRetorno.NomePermissao = this.Nome; lRetorno.CodigoPermissao = this.Id; return(lRetorno); }
private void AssociarPermissaoAoObjeto(MensagemResponseBase lItem, string nomePermissao, bool associar) { //nomePermissao = lDados.Interface.Trim() + "Executar"; PermissaoInfo lPermissao = this.ListaDePermissoes.Find(p => p.GetType().Name == nomePermissao); if ((lPermissao != null) && ((lItem != null)) && ((lItem is ReceberUsuarioGrupoResponse))) { PermissaoAssociadaInfo lPermAssoc = ((ReceberUsuarioGrupoResponse)lItem).UsuarioGrupo.Permissoes.Find(p => p.CodigoPermissao == lPermissao.CodigoPermissao); if (lPermAssoc == null) { if (associar) { ((ReceberUsuarioGrupoResponse)lItem).UsuarioGrupo.Permissoes.Add(new PermissaoAssociadaInfo() { CodigoPermissao = lPermissao.CodigoPermissao, Status = PermissaoAssociadaStatusEnum.Permitido }); } } else { if (!associar) { ((ReceberUsuarioGrupoResponse)lItem).UsuarioGrupo.Permissoes.Remove(lPermAssoc); } } } else { PermissaoAssociadaInfo lPermAssoc = ((ReceberUsuarioGrupoResponse)lItem).UsuarioGrupo.Permissoes.Find(p => p.CodigoPermissao == lPermissao.CodigoPermissao); if (lPermAssoc == null) { if (associar) { ((ReceberUsuarioResponse)lItem).Usuario.Permissoes.Add(new PermissaoAssociadaInfo() { CodigoPermissao = lPermissao.CodigoPermissao, Status = PermissaoAssociadaStatusEnum.Permitido }); } } else { if (!associar) { ((ReceberUsuarioResponse)lItem).Usuario.Permissoes.Remove(lPermAssoc); } } } }
public string ResponderCadastrar() { string lretorno = string.Empty; string lObjetoJson = Request["ObjetoJson"]; TransporteSegurancaPermissaoSeguranca lDadosPermissao = null; MensagemResponseBase lResponse = null; SalvarPermissaoRequest lRequest = new SalvarPermissaoRequest(); PermissaoInfo lPermissaoInfo = new PermissaoInfo(); try { lDadosPermissao = JsonConvert.DeserializeObject <TransporteSegurancaPermissaoSeguranca>(lObjetoJson); lPermissaoInfo = lDadosPermissao.ToPermissaoInfo(); lRequest.Permissao = lPermissaoInfo; lRequest.CodigoSessao = this.CodigoSessao; lResponse = ServicoSeguranca.SalvarPermissao(lRequest); if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK) { if (string.IsNullOrWhiteSpace(lDadosPermissao.Id)) { base.RegistrarLogInclusao(); } else { base.RegistrarLogAlteracao(); } lretorno = RetornarSucessoAjax(new TransporteRetornoDeCadastro(lResponse.DescricaoResposta), "Permissão cadastrada com sucesso"); } else { lretorno = RetornarErroAjax(lResponse.DescricaoResposta); } } catch (Exception ex) { lretorno = RetornarErroAjax("Erro durante o envio do request para cadastrar permissão", ex); } return(lretorno); }
/// <summary> /// Construtor default /// </summary> public PermissaoBase() { // Pega o atributo de permissão _permissaoAttribute = (PermissaoAttribute) this.GetType().GetCustomAttributes( typeof(PermissaoAttribute), true)[0]; // Cria o permissao info this.PermissaoInfo = new PermissaoInfo() { CodigoPermissao = _permissaoAttribute.CodigoPermissao, DescricaoPermissao = _permissaoAttribute.DescricaoPermissao, NomePermissao = _permissaoAttribute.NomePermissao }; }
public TransporteSegurancaPermissaoSeguranca(PermissaoInfo pPermissaoInfo) { this.Id = pPermissaoInfo.CodigoPermissao; this.Nome = pPermissaoInfo.NomePermissao; this.DescricaoPermissao = pPermissaoInfo.DescricaoPermissao; }
public string ReceberPermissoes() { string lObjetoJson = Request.Params["ObjetoJson"]; try { TransporteSegurancaDadosAssociados lDados = JsonConvert.DeserializeObject <TransporteSegurancaDadosAssociados>(lObjetoJson); lDados.Consultar = lDados.Excluir = lDados.Salvar = lDados.Executar = false; if (lDados.EhGrupo) { ReceberUsuarioGrupoRequest lReuqest = new ReceberUsuarioGrupoRequest() { CodigoSessao = this.CodigoSessao, CodigoUsuarioGrupo = lDados.Grupo, DescricaoUsuarioLogado = base.UsuarioLogado.Nome, IdUsuarioLogado = base.UsuarioLogado.Id }; ReceberUsuarioGrupoResponse lRes = ServicoSeguranca.ReceberUsuarioGrupo(lReuqest); List <PermissaoInfo> permissoes = ListaDePermissoes.Where(p => p.GetType().Name.Contains(lDados.Interface)).ToList(); foreach (PermissaoAssociadaInfo lPI in lRes.UsuarioGrupo.Permissoes) { PermissaoInfo lPermissao = permissoes.Find(p => p.CodigoPermissao == lPI.CodigoPermissao); if (lPermissao != null) { if (lPermissao.GetType().Name.Contains("Excluir")) { lDados.Excluir = true; } if (lPermissao.GetType().Name.Contains("Executar")) { lDados.Executar = true; } if (lPermissao.GetType().Name.Contains("Consultar")) { lDados.Consultar = true; } if (lPermissao.GetType().Name.Contains("Salvar")) { lDados.Salvar = true; } } } } else { ReceberUsuarioRequest lReuqest = new ReceberUsuarioRequest() { CodigoSessao = this.CodigoSessao, CodigoUsuario = lDados.Usuario, DescricaoUsuarioLogado = base.UsuarioLogado.Nome, IdUsuarioLogado = base.UsuarioLogado.Id }; ReceberUsuarioResponse lRes = ServicoSeguranca.ReceberUsuario(lReuqest); List <PermissaoInfo> permissoes = ListaDePermissoes.Where(p => p.GetType().Name.Contains(lDados.Interface)).ToList(); foreach (PermissaoAssociadaInfo lPI in lRes.Usuario.Permissoes) { PermissaoInfo lPermissao = permissoes.Find(p => p.CodigoPermissao == lPI.CodigoPermissao); if (lPermissao != null) { if (lPermissao.GetType().Name.Contains("Excluir")) { lDados.Excluir = true; } if (lPermissao.GetType().Name.Contains("Executar")) { lDados.Executar = true; } if (lPermissao.GetType().Name.Contains("Consultar")) { lDados.Consultar = true; } if (lPermissao.GetType().Name.Contains("Salvar")) { lDados.Salvar = true; } } } } return(RetornarSucessoAjax(lDados, "Ok")); } catch (Exception ex) { logger.Error(ex.Message, ex); return(RetornarErroAjax(ex.Message)); } }