~~ODT~~
Registrar Inspeção
Este caso de uso tem a finalidade de registrar no sistema os dados que foram preenchidos durante a fiscalização. Essa funcionalidade é utilizada pelos Operadores de Segurança.
Descrição do Caso de Uso
Este caso de uso se inicia quando o usuário acessa a opção: SIPAC → Segurança do Trabalho → Controle de Extintores → Inspeção Extintor → Registrar Inspeção.
Passo 1
O Usuário informa o nível de inspeção do questionário ( RN01 ):
- Nível de Inspeção: Tipo - TEXTO.
Passo 2
Neste passo, e necessário buscar o extintor para o qual se deseja registrar dados da inspeção. A consulta pode ser feita usando os filtros:
- Unidade: Formato - <Nome da Unidade> (Código). Tipo - AUTOCOMPLETE. Entrada de dados: Código ou Nome da Unidade. ( RN05 )
- Extintor: Formato - <Número do Tombamento> <Denominação do extintor>. Tipo - AUTOCOMPLETE. Entrada de dados: Número do tombamento ou Nome do extintor.
- Com Inspeções Pendentes: Tipo - LÓGICO. ( RN02 )
- Sem Inspeções: Tipo - LÓGICO. ( RN02 )
- Todos: Tipo - LÓGICO. ( RN05 )
O Sistema lista os extintores encontrados de acordo com os filtros usados:
- Extintor: Tipo - Texto.
- Data de Fabricação: Tipo - Data.
- Unidade: Tipo - Texto.
- Data da última inspeção: Tipo - Data. ( RN02 )
- Localização Física: Tipo - Texto.
Para cada registro exibir a opção de Registrar dados da Inspeção:
Passo 3
Este fluxo tem a finalidade de informar no sistema os dados da inspeção.
Dados do Extintor |
---|
Extintor: Nome do Exintor |
Data de Fabricação: 26/03/2012 |
Unidade: Nome da Unidade |
Localização Física: Localização |
O usuário deve informar os dados da inspeção:
- Nível de Inspeção: Nível do questionário.
- Responsável pela Inspeção*: Tipo - AUTOCOMPLETE. Entrada de dados: Nome ou CPF.
E responder o questionário:
* Questões de acordo com o nível do extintor inspecionado;
- Alternativas ( RN04 )
- SIM: Tipo - LÓGICO.
- NÃO: Tipo - LÓGICO.
- NÃO ATENDE: Tipo - LÓGICO.
- Situação*: Tipo - TEXTO. Opções: Status de Inspeção: Apto, Inapto, Apto com restrições. ( RN04 )
- Observação*: Corresponde às informações adicionais da inspeção. Tipo - Texto.
Ao escolher “Registrar”, o usuário pode verificar os dados que foram enviados.
O caso de uso é finalizado.
Principais Regras de Negócio
- RN01 - Só níveis de inspeção com questionário ativo podem ser selecionados.
- RN02 - O novo prazo para inspeção é calculado a partir da última data de inspeção.
- RN03 - A data da inspeção deve ser inferior ou igual à data de hoje.
- RN04 - As opções de 'Situação da Inspeção' estão disponíveis de acordo com as respostas marcadas no formulário.
- RN05 - Usuário com apenas o papel Gestor_Seguranca_Local, só pode registrar dados de inspeções de extintores da sua unidade.
Resoluções/Legislações Associadas
Não se aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.sipac.seguranca_trabalho.dominio.Inspecao | administrativo.seguranca_trabalho.inspecao |
br.ufrn.sipac.seguranca_trabalho.dominio.HistoricoInspecao | administrativo.seguranca_trabalho.historico_inspecao |
br.ufrn.sipac.seguranca_trabalho.dominio.Questionario | administrativo.seguranca_trabalho.questionario |
br.ufrn.sipac.seguranca_trabalho.dominio.NivelInspecaoExtintor | administrativo.seguranca_trabalho.nivel_inspecao |
br.ufrn.sipac.seguranca_trabalho.dominio.RespostaPergunta | administrativo.seguranca_trabalho.resposta_pergunta |
br.ufrn.sipac.seguranca_trabalho.dominio.OpcaoResposta | administrativo.seguranca_trabalho.opcao_resposta |
Plano de Teste
Sistema: SIPAC
Módulo: Segurança do Trabalho
Link(s): Aba Controle de Extintores → Inspeção Extintor → Registrar Inspeção.
Usuário: gustavo.
Papel que usuário deve ter: OPERADOR_SEGURANÇA.
Cenários de Teste
Acessar o caso de uso e verificar se as Regras de Negócio foram obedecidas.
Dados para o Teste
Sql para encontrar extintores (usando o filtro Extintor e/ou filtro Unidade):
SELECT bem.num_tombamento, bem.denominacao, LOCAL.nome, LOCAL.codigo_unidade FROM seguranca_trabalho.extintor extintor INNER JOIN patrimonio.bem bem ON (bem.id = extintor.id_bem) INNER JOIN comum.unidade LOCAL ON (LOCAL.id_unidade = bem.id_unidade_resp_atual)
Sql para encontrar extintores sem inspeções.
SELECT bem.num_tombamento, bem.denominacao, LOCAL.nome, LOCAL.codigo_unidade FROM seguranca_trabalho.extintor extintor INNER JOIN patrimonio.bem bem ON (bem.id = extintor.id_bem) INNER JOIN comum.unidade LOCAL ON (LOCAL.id_unidade = bem.id_unidade_resp_atual) LEFT JOIN (SELECT COUNT(insp.id_inspecao) > 0 AS inspecionado, insp.id_extintor, insp.data_inspecao, insp.id_nivel_inspecao FROM seguranca_trabalho.inspecao insp WHERE insp.ativo = TRUE -- aqui pode substituir o id do nível para verificar todos os níveis disponíveis AND insp.id_nivel_inspecao = 4 GROUP BY insp.id_extintor, insp.data_inspecao, insp.id_nivel_inspecao ) AS inspecao ON (inspecao.id_extintor = extintor.id_extintor) WHERE inspecao.inspecionado IS NULL
Sql para verificar os níveis de inspeção existentes com questionário ativo:
SELECT nivel.id_nivel_inspecao, nivel.nivel, periodo.denominacao FROM seguranca_trabalho.nivel_inspecao nivel INNER JOIN comum.periodicidade periodo ON (periodo.id_periodicidade = nivel.id_periodicidade) INNER JOIN seguranca_trabalho.questionario quest ON (quest.id_nivel_inspecao = nivel.id_nivel_inspecao) -- Comentando esta linha 'where quest.situacao = 1', mostra todos os níveis cadastrados WHERE quest.situacao = 1 AND nivel.ativo = TRUE