DES:SGPS

De Wiki Unioeste NTI
(Diferença entre revisões)
Ir para: navegação, pesquisa
(Controle de Acesso)
(Inserção e Remoção de Acessos de Pessoas)
 
(26 edições intermediárias de 2 usuários não apresentadas)
Linha 4: Linha 4:
 
== Processos Seletivos ==
 
== Processos Seletivos ==
 
=== Controle de Acesso ===
 
=== Controle de Acesso ===
* 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.
+
==== Cadastro de Grupos ====
 +
* O cadastro de ''Grupo'' é usado para definir grupos de pessoas, por meio de SQLs que são gravadas na tabela ''PrcSltGrupo''
 +
** exemplos: pode ser cadastrada SQL para selecionar servidores da DCV, outra SQL para servidores das DAs, etc
 +
* Estes ''Grupos'' são utilizados em 2 módulos do SGPS: módulo de Inscrições e módulo de gestão para fins de Controle de Acesso aos processos seletivos
 +
* dados na ''PrcSltGrupo''
 +
** quando o Processo Seletivo for registrado, significa que o Grupo é usado para no módulo de Inscrições para restringir quem pode efetuar inscrições
 +
** quando o Processo Seletivo não for registrado, significa que o Grupo é usado no módulo de Gestão para restringir quem pode acessar e gerir os processos e inscritos
 +
* Acesso ao cadastro:
 +
** módulo de Inscrições: no item ''Principal'' do menu, acesse o processo seletivo desejado e clique em ''Grupo'' dentro da aba ''Outros Detalhes do Processo''
 +
** módulo de Controle de Acesso: clique em ''Grupos'' no menu
 +
[[Arquivo:cadastro-prcsltgrupo.png]]
 +
 
 +
==== Cadastro de Controle de Acesso ====
 +
* O cadastro de ''Controle de Acesso'' é utilizado no módulo de Gestão dos processos seletivos e, juntamente com o ''Grupo'', objetiva restringir quem pode acessar e gerir os processos e inscritos
 +
* Na tabela ''PrcSltCntAcesso'' é vinculado o processo seletivo a que se refere o controle de Acesso, a SQL que será utilizada (proveniente da tabela ''PrcSltGrupo'') e o tipo de acesso que esse grupo de pessoas tem (''TblGrlItm_PrcSltTpAcesso'')
 +
* Para acessar, clique em ''Principal'' no menu, pesquise e selecione o processo seletivo desejado; na aba ''Outros Detalhes do Processo'', abra a aba ''Controle de Acesso''
 
[[Arquivo:cadastro-pssfsccntacesso.png]]
 
[[Arquivo:cadastro-pssfsccntacesso.png]]
* 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.
+
==== Inserção e Remoção de Acessos de Pessoas ====
* 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.  
+
* A partir dos dados registrados no ''Grupo'' e no ''Controle de Acesso'', um ''job'' roda a cada 10 minutos no servidor ''SQL Server'' e executa a ''stored procedure'' ''spAtualizaPrcSltCntAcsPssFisica'' que atualiza a tabela ''PrcSltCntAcsPssFisica'', seja para conceder e/ou remover acesso de pessoas aos processos seletivos
* 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":
+
* A tabela ''PrcSltCntAcsPssFisica'' conté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''.  
 +
* As 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":
  
 
<pre>
 
<pre>
Linha 19: Linha 36:
 
</pre>
 
</pre>
  
* Todas as pessoas retornadas por essa consulta recebem o padrão SGPS-AnlDoc.
+
* 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).   
 
* 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).   
 
<pre>
 
<pre>
Linha 35: Linha 52:
 
[[Arquivo:transacao-prcseletivo-fltacesso.png]]
 
[[Arquivo:transacao-prcseletivo-fltacesso.png]]
  
 +
==== Cronograma de implementação ====
 
{| class=wikitable
 
{| class=wikitable
|+ Cronograma de implementação
 
 
! Atividade
 
! Atividade
 
! Início
 
! Início

Edição atual tal como 15h19min de 3 de maio de 2024

VoltarVoltar a Página Inicial - Menu Sistemas

Tabela de conteúdo

[editar] Processos Seletivos

[editar] Controle de Acesso

[editar] Cadastro de Grupos

  • O cadastro de Grupo é usado para definir grupos de pessoas, por meio de SQLs que são gravadas na tabela PrcSltGrupo
    • exemplos: pode ser cadastrada SQL para selecionar servidores da DCV, outra SQL para servidores das DAs, etc
  • Estes Grupos são utilizados em 2 módulos do SGPS: módulo de Inscrições e módulo de gestão para fins de Controle de Acesso aos processos seletivos
  • dados na PrcSltGrupo
    • quando o Processo Seletivo for registrado, significa que o Grupo é usado para no módulo de Inscrições para restringir quem pode efetuar inscrições
    • quando o Processo Seletivo não for registrado, significa que o Grupo é usado no módulo de Gestão para restringir quem pode acessar e gerir os processos e inscritos
  • Acesso ao cadastro:
    • módulo de Inscrições: no item Principal do menu, acesse o processo seletivo desejado e clique em Grupo dentro da aba Outros Detalhes do Processo
    • módulo de Controle de Acesso: clique em Grupos no menu

Cadastro-prcsltgrupo.png

[editar] Cadastro de Controle de Acesso

  • O cadastro de Controle de Acesso é utilizado no módulo de Gestão dos processos seletivos e, juntamente com o Grupo, objetiva restringir quem pode acessar e gerir os processos e inscritos
  • Na tabela PrcSltCntAcesso é vinculado o processo seletivo a que se refere o controle de Acesso, a SQL que será utilizada (proveniente da tabela PrcSltGrupo) e o tipo de acesso que esse grupo de pessoas tem (TblGrlItm_PrcSltTpAcesso)
  • Para acessar, clique em Principal no menu, pesquise e selecione o processo seletivo desejado; na aba Outros Detalhes do Processo, abra a aba Controle de Acesso

Cadastro-pssfsccntacesso.png

[editar] Inserção e Remoção de Acessos de Pessoas

  • A partir dos dados registrados no Grupo e no Controle de Acesso, um job roda a cada 10 minutos no servidor SQL Server e executa a stored procedure spAtualizaPrcSltCntAcsPssFisica que atualiza a tabela PrcSltCntAcsPssFisica, seja para conceder e/ou remover acesso de pessoas aos processos seletivos
  • A tabela PrcSltCntAcsPssFisica conté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.
  • As 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.

Transacao-prcseletivo-fltacesso.png

[editar] Cronograma de implementação

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

[editar] 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

[editar] 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)
Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Ferramentas