public bool Permissao(int codigoPrograma, int empresaId, int usuarioId, EnPermissao enPermissao)
        {
            bool permissao = true;

            if (enPermissao == EnPermissao.Acesso)
            {
                permissao = _repositorio.GetAll().Any(x => x.Programa.Codigo == codigoPrograma &&
                                                      x.UsuarioId == _usuarioIdentity.IdUsuario &&
                                                      x.EmpresaId == _usuarioIdentity.IdEmpresa &&
                                                      x.Acesso == true);
            }

            if (enPermissao == EnPermissao.Incluir)
            {
                permissao = _repositorio.GetAll().Any(x => x.Programa.Codigo == codigoPrograma &&
                                                      x.UsuarioId == _usuarioIdentity.IdUsuario &&
                                                      x.EmpresaId == _usuarioIdentity.IdEmpresa &&
                                                      x.Incluir == true);
            }

            if (enPermissao == EnPermissao.Editar)
            {
                permissao = _repositorio.GetAll().Any(x => x.Programa.Codigo == codigoPrograma &&
                                                      x.UsuarioId == _usuarioIdentity.IdUsuario &&
                                                      x.EmpresaId == _usuarioIdentity.IdEmpresa &&
                                                      x.Editar == true);
            }

            if (enPermissao == EnPermissao.Excluir)
            {
                permissao = _repositorio.GetAll().Any(x => x.Programa.Codigo == codigoPrograma &&
                                                      x.UsuarioId == _usuarioIdentity.IdUsuario &&
                                                      x.EmpresaId == _usuarioIdentity.IdEmpresa &&
                                                      x.Excluir == true);
            }
            return(permissao);
        }
示例#2
0
        private Permissao GravarPermissao()
        {
            var model = _repositorioPermissao.GetAll().FirstOrDefault(x => x.Id > 0);

            if (model == null)
            {
                model          = new Permissao();
                model.Empresa  = GravarEmpresa();
                model.Programa = _repositorioPrograma.First(x => x.Id > 0);
                model.Usuario  = GravarUsuario();
                _repositorioPermissao.Insert(model);
            }
            else
            {
                _repositorioPermissao.Update(model);
            }

            return(model);
        }