~~ODT~~

Última atualização: 2017/04/03 18:10 (edição externa)

Quadro Sintético

O caso de uso mostra uma listagem com a quantidade de tarefas abertas, agrupadas pelas mais diversas características. Ele está situado no menu de Administração e só é acessível a usuários com perfil de Gerente ou Diretor. Os usuários com o perfil já mencionados serão encaminhados para esse caso de uso automaticamente ao fazer login. O objetivo é fornecer uma visão geral das tarefas abertas para os gerentes e gestores dos projetos.

O caso de uso inicia quando o usuário acessa iProject → Administração → Quadro Sintético.

Inicialmente é apresentado diversas listagens dos seguintes grupos de tarefas:

  • Tarefas por Sistemas: Agrupa tarefas por sistemas
  • Erros em aberto: Agrupa tarefas por sistemas
  • Cooperação Técnica: Agrupa tarefas por Instituições de Cooperação Técnica
  • Testes Abertos: Agrupa tarefas por sistemas
  • Chamados Abertos: Agrupa tarefas por tipo de tarefa
  • Atendimentos no mês: Agrupa tarefas por sistemas.

Em cada uma dessas listagens são exibidas as categorias no seguinte modelo: <CATEGORIA>(<N° DE TAREFAS>). Ao selecionar uma categoria é exibida uma listagem com as tarefas relacionadas e os seguintes dados para cada tarefa:

  • #: Número da tarefa.
  • Tarefa: Tipo - TEXTO.
  • Data Cadastro: Tipo - DATA. Formato - 99/99/9999.
  • Início: Tipo - DATA. Formato - 99/99/9999.
  • Fim: Tipo - DATA. Formato - 99/99/9999.
  • Previsão: Tipo - DATA. Formato - 99/99/9999.
  • Subsistema: Tipo - TEXTO.
  • Situação: Tipo - TEXTO.
  • Tipo Tarefa: Tipo - TEXTO.
  • %: Tipo - NUMÉRICO.
  • Criador: Usuário que criou a tarefa.

Além disso, são mostradas as opções:

O caso de uso é finalizado.

Não se aplica!

Resoluções/Legislações Associadas

Não se Aplica.

Classe Tabela
br.com.jeebrasil.iproject.diminio.Tarefa iproject.tarefa

Plano de Teste

Sistema: IPROJECT

Link(s): Administração → Quadro Sintético

Usuário: dalton

Papel que usuário deve ter: Gerente

Não se aplica.

O script para testes:

--script para saber as tarefas por sistema (OK)
select count(t.*), s.denominacao, s.id from iproject.tarefa t 
inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema
inner join iproject.sistema s on s.id = sub.id_sistema
where t.percentual < 100
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
group by s.denominacao, s.id


--Erros em aberto (OK)
SELECT count(t.*), s.denominacao, s.id FROM iproject.tarefa t
INNER JOIN iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema
inner join iproject.sistema s on s.id = sub.id_sistema
where t.percentual < 100 and
(t.id_status = 21 or t.id_status = 16)
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
group by s.denominacao, s.id

--cooperação técnica (OK)
select count(t.*), c.nome, c.id_cooperacao_tecnica from iproject.tarefa t
inner join iproject.cooperacao_tecnica c on t.id_cooperacao_tecnica = c.id_cooperacao_tecnica
where t.percentual < 100 
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
group by c.nome, c.id_cooperacao_tecnica

--testes em abertos (OK)
select s.id, count(t.*), s.denominacao from iproject.tarefa t
inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema
inner join iproject.sistema s on s.id = sub.id_sistema
where t.id_status = 1 
and t.percentual < 100 
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
group by s.denominacao, s.id

--script para saber os chamados em aberto
select count(t.*), tt.denominacao, tt.id_tipo_tarefa from iproject.tarefa t
inner join iproject.tipo_tarefa tt on tt.id_tipo_tarefa = t.id_tipo_tarefa
where t.id_status = 1 and t.percentual < 100
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
group by tt.denominacao, tt.id_tipo_tarefa
order by tt.denominacao

--atendimentos por mês
select count(t.*), s.denominacao, s.id from iproject.tarefa t
inner join iproject.subsistema sub on t.id_subsistema = sub.id_sub_sistema
inner join iproject.sistema s on s.id = sub.id_sistema
where t.numchamado != 0 
and t.percentual < 100 
and t.id_status != 3 and t.id_status != 14 and t.id_status != 13
and DATE_PART('MONTH',t.inicio) = DATE_PART('MONTH', CURRENT_TIMESTAMP)
group by s.denominacao, s.id
  • desenvolvimento/especificacoes/iproject/casos_de_uso/administracao/quadro_sintetico.txt
  • Última modificação: 2017/04/03 18:10
  • (edição externa)