DES:SGPS
(Diferença entre revisões)
(→Controle de Acesso) |
Liege.ciupak (disc | contribs) |
||
Linha 4: | Linha 4: | ||
== Processos Seletivos == | == Processos Seletivos == | ||
=== Controle de Acesso === | === Controle de Acesso === | ||
+ | * O cadastro de Grupo são usados para restringir pessoas que farão inscrições e/ou para restringir quais pessoas podem acessar os processos seletivos para gestão | ||
+ | * Quando o Grupo tiver o Processo Seletivo registrado, significa que o grupo é usado para restrição nas Inscrições; Caso contrário, o grupo é usado para restrição de acesso de usuários que administram os processos | ||
* Na tabela PrcSltGrupo são cadastrados os SQLs que retornam grupos de pessoas físicas. Por exemplo, pode ser cadastrado um SQL para retornar servidores da DCV, outro SQL para servidores das DAs. Essas SQLs devem ser cadastradas sem vínculo com processos seletivos, para que possam ser usadas por qualquer processo. | * Na tabela PrcSltGrupo são cadastrados os SQLs que retornam grupos de pessoas físicas. Por exemplo, pode ser cadastrado um SQL para retornar servidores da DCV, outro SQL para servidores das DAs. Essas SQLs devem ser cadastradas sem vínculo com processos seletivos, para que possam ser usadas por qualquer processo. | ||
[[Arquivo:cadastro-prcsltgrupo.png]] | [[Arquivo:cadastro-prcsltgrupo.png]] |
Edição de 10h18min de 3 de maio de 2024
Voltar a Página Inicial - Menu Sistemas
Tabela de conteúdo[esconder] |
Processos Seletivos
Controle de Acesso
- O cadastro de Grupo são usados para restringir pessoas que farão inscrições e/ou para restringir quais pessoas podem acessar os processos seletivos para gestão
- Quando o Grupo tiver o Processo Seletivo registrado, significa que o grupo é usado para restrição nas Inscrições; Caso contrário, o grupo é usado para restrição de acesso de usuários que administram os processos
- Na tabela PrcSltGrupo são cadastrados os SQLs que retornam grupos de pessoas físicas. Por exemplo, pode ser cadastrado um SQL para retornar servidores da DCV, outro SQL para servidores das DAs. Essas SQLs devem ser cadastradas sem vínculo com processos seletivos, para que possam ser usadas por qualquer processo.
- Na tabela PrcSltCntAcesso é vinculado o processo seletivo a que se refere o controle, o SQL que será utilizado (proveniente da tabela PrcSltGrupo) e o tipo de acesso que esse grupo de pessoas tem (TblGrlItm_PrcSltTpAcesso).
- Tendo essas informações cadastradas, um job no Sql Server roda a cada 10 minutos, executando a stored procedure que roda as SQLs de controle de acesso. As pessoas retornadas pelas consultas são inseridas (ou removidas) na tabela PrcSltCntAcsPssFisica, a qual mantém a lista de pessoas que estão vinculadas a um PrcSltCntAcesso específico.
- Além do job, a SP spAtualizaPrcSltCntAcsPssFisica também é executada pelo SGPS, nas operações de inserção/edição/exclusão realizadas na tabela PrcSltCntAcesso.
- Os SQLs dos padrões de acesso consultam essa tabela para liberar o acesso às pessoas que fazem parte de um grupo. Por exemplo, o padrão SGPS-AnlDoc tem uma consulta que retorna todas as pessoas físicas que tenham o papel "Análise Documental":
select PssFsc_Codigo from PrcSltCntAcsPssFisica T1 inner join PrcSltCntAcesso T2 on T1.PrcSltCntAcs_Codigo = T2.PrcsltCntAcs_Codigo where TblGrl_PrcSltTpAcesso = 'PrcSltTpAcesso' and TblGrlItm_PrcSltTpAcesso = '1'
- Todas as pessoas retornadas por essa consulta recebem o padrão SGPS-AnlDoc.
- No sistema SGPS, deve-se aplicar um filtro (sqlRestriction) para verificar quais processos seletivos a pessoa logada tem acesso, retornando somente estes processos para o usuário (método "Pesquisa" do PrcSeletivoController).
and exists ( select 1 from PrcSltCntAcsPssFisica T1 inner join PrcSltCntAcesso T2 on T1.PrcSltCntAcs_Codigo = T2.PrcsltCntAcs_Codigo where T2.PrcSlt_Codigo = this_.PrcSlt_Codigo and T1.PssFsc_Codigo = user.getPssFscCodigo() )
- Neste método, deve-se ainda verificar se existe valor único cadastrado para a transação PrcSeletivo e para o padrão utilizado pelo usuário logado (atributo FltAcesso do padrão PrcSeletivo no CCM).
- Caso esteja como "T", indica que deve listar TODOS os processos seletivos, sem aplicar filtro. Por exemplo, para os padrões SGPS-Max e SGPS-Inscricao deve-se listar todos os processos.
Atividade | Início | Término |
---|---|---|
Especificação | 20/09/2023 | 20/10/2023 |
Definição das tabelas no DER | 20/10/2023 | 20/10/2023 |
Implementação do job dos dados em PrcSltCntAcsPssFisica | 28/03/2024 | 29/03/2024 |
Implementação do filtro no método "pesquisa" em PrcSeletivoController | 01/04/2024 | 02/04/2024 |
Alteração da tela de cadastro de PrcSltGrupo, para chamar do menu principal, sem obrigar código de processo seletivo | 27/03/2024 | 27/03/2024 |
Alteração da tela de cadastro de PrcSltCntAcesso, para alimentar o campo PrcSltGrp_Codigo | 28/03/2024 | 28/03/2024 |
Alteração dos padrões de acesso do SGPS, para que utilizem os dados da tabela PrcSltCntAcsPssFisica | 01/04/2024 | 02/04/2024 |
Passos para inicializar o projeto em um ambiente novo:
- instalar o Node versão 14.x.x (Instalador da versão node-v14.21.3-x64 está em OneDrive do ddes: D:\UNIOESTE\NTI - Documents\DDes\Desenvolvimento\Arquivos DDes\Desenvolvimento JAVA+EXTJS)
- ir na pasta frontend do sgps e dar o comando: npm install
- para rodar, dar o comando ng serve
- não esquecer de inserir os atributos NoLogin no SGPS.properties:
noLogin=true noLogin_Padrao=SGPS-Inscricao pssFscCodigo_Default=seu_codigo_pss_fisica
Instalar Angular CLI quando clonar projeto com Angular 6+ (se necessário)
- Ir na pasta aonde estão os arquivos do Angular (p. ex., /frontend)
- digitar o comando: npm i @angular/cli@7.3.10 (antes disso, deve ter instalado o Node na versão 14.21.3)