====== Nota Técnica ======
Este caso de uso serve para anexar uma nota técnica a um projeto. Esta opção é utilizada pelos emissores de nota técnica.
===== Descrição do Caso de Uso =====
O caso de uso inicia-se ao acessar o caminho //Sipac -> Projetos/Convênios -> Projetos -> Projetos em Andamento -> Anexar/Remover Documentos -> Nota Técnica.//
Serão mostradas as seguintes opções de busca para os projetos:
* **Número/Ano Antigo**: Formato - 9999/AAAA e Tipo do Número/Ano. Tipo NUMÉRICO. Número e Ano de ''Registro'' ou ''Cadastro'' do convênio ou contrato associado ao projeto.
* **Novo Número**: Formato - 9999.99.9999. Tipo NUMÉRICO. Número do projeto no novo formato.
* **Classificação**: Tipo TEXTO. Referente a classificação do convênio. Por exemplo: Cooperação, Despesa, Estágio, Receita, etc.
* **Âmbito do Projeto**: Tipo TEXTO. Pode ser ''Internacional'' ou ''Nacional''.
* **Forma de Captação de Recursos**: Tipo TEXTO. Pode ser ''Recurso captado pela FUNPEC'', ''Recursos Diretamente Arrecadados'', entre outros.
* **Tipo de Captação de Recursos**: Tipo TEXTO. Pode ser ''Projetos sem o envolvimento da Fundação'', ''Tipo B'', entre outros.
* **Título do Projeto**: Tipo TEXTO.
* **Vigência entre**: Formato - DD/MM/AAAA e DD/MM/AAAA. Tipo DATA.
* **Tipo do Projeto**: Tipo TEXTO. Pode ser ''DESENVOLVIMENTO - CIENTÍFICO E TECNOLÓGICO'', ''DESENVOLVIMENTO - INSTITUCIONAL'', ''ENSINO - GRADUAÇÃO'', entre outros.
* **Situação do Projeto**: Tipo TEXTO. ([[#principais_regras_de_negócio|RN01]])
* **Técnico Responsável**: Formato - NOME. Tipo TEXTO.
* **CPF/CNPJ do Partícipe**: Formato - 999.999.999-99 ou 99.999.999/9999-99. Tipo NUMÉRICO.
* **Órgão/Entidade Proponente**: Tipo TEXTO.
* **Órgão/Entidade Concedente**: Tipo TEXTO.
* **Coordenador**: Formato - NOME. Tipo AUTOCOMPLETE.
* **Avaliador**: Formato - NOME. Tipo AUTOCOMPLETE.
* **Fiscalizador**: Formato - NOME. Tipo AUTOCOMPLETE.
* **Objetivo**: Tipo TEXTO.
* **Justificativa**: Tipo TEXTO.
* **Agrupar por Coordenador**: Tipo LÓGICO. Pode ser ''Sim'' ou ''Não''.
* **__Opções de Ordenação__**
* **Ordenador por**: Tipo TEXTO. Pode ser ''PROJETO'' ou ''TÍTULO'', entre outros.
Caso exista algum projeto com os parâmetros de busca informados, o(s) mesmo(s) será(ão) exibido(s) numa listagem com os seguintes dados:
* **__Nº/Ano Registro__**: Formato - 9999/AAAA. Tipo NUMÉRICO.
* **__Nº/Ano Cadastro__**: Formato - 9999/AAAA. Tipo NUMÉRICO.
* **__Projeto__**: Formato - 9999/AAAA. Tipo NUMÉRICO.
* **__Título do Projeto__**: Tipo TEXTO.
* **__Data de Início__**: Formato - DD/MM/AAAA. Tipo DATA.
* **__Data de Fim__**: Formato - DD/MM/AAAA. Tipo DATA.
* **__Status__**: Tipo TEXTO.
Os projetos exibidos após a busca podem ser visualizados de forma detalhada. Os dados exibidos conforme descrito em [[desenvolvimento:especificacoes:sipac:fluxos:fluxo_visualizar_projeto | Visualizar Projeto ]]
* //Há também a opção de Anexar Documento.//
Ao selecionar a opção do anexo de documento, será exibida uma tela para escolher o arquivo a ser anexado com os seguintes dados:
* **__Anexar Documento__**
* **__Dados do Documento__**
* **__Responsável__**: Formato - NOME DO USUÁRIO LOGADO. Tipo TEXTO.
* **__Tipo do Documento__**: Tipo TEXTO.
* **Descrição**: Tipo TEXTO.
* **Forma do Documento***: Tipo TEXTO. Pode ser ''Informar Texto'' ou ''Anexar Arquivo''.
Se a **Forma do Documento** escolhida for ''Informar Texto'', será apresentado um campo de texto para se informar o texto desejado. Já se for escolhida ''Anexar Arquivo'', será mostrada a subtabela abaixo.
* **__Anexar Arquivo__**:
* **Arquivo**: Formato - NOME DO ARQUIVO. Tipo ARQUIVO.
O caso de uso é finalizado.
===== Principais Regras de Negócio =====
* **RN01** - O campo **Situação do Projeto** ficará sempre selecionado com a opção ''PENDENTE ANÁLISE PROPLAN''. Pois só podem ser consultados projetos com esse status neste caso de uso.
* **RN02** - Os dados da tabela **Partícipes Inseridos** só serão exibidos caso exista algum partícipe inserido no projeto.
* **RN03** - O campo **Tipo de Captação de Recurso** só será exibido caso exista no sistema.
* **RN04** - As tabelas **Plano de Aplicação (Para visualizar o plano detalhado Clique Aqui)** e **Cronograma de Desembolso** só serão exibidas caso haja plano de aplicação e cronograma de desembolso para o projeto selecionado.
===== Classes Persistentes e Tabelas Envolvidas =====
^ Classe ^ Tabela |
| br.ufrn.sipac.convenios.dominio.Convenio | administrativo.convenios.convenio |
| br.ufrn.sipac.convenios.dominio.ClassificacaoConvenio | administrativo.convenios.classificacao_convenio |
| br.ufrn.sipac.convenios.dominio.TipoDocConvenio | administrativo.convenios.tipo_documento_convenio |
| br.ufrn.sipac.cadastro.dominio.Unidade | administrativo.comum.unidade |
| br.ufrn.sipac.cadastro.dominio.Pessoa | administrativo.comum.pessoa |
| br.ufrn.sipac.convenios.dominio.ConvenenteTipoConvenente | administrativo.convenios.convenente_tipo_convenente |
====== Plano de Teste ======
Sistema: SIPAC
Módulo: Projetos
Link(s): Sipac -> Projetos/Convênios -> Projetos -> Projetos em Andamento -> Anexar/Remover Documentos -> Nota Técnica
Usuário: fabiobarreto
Papel que usuário deve ter: SipacPapeis.EMISSOR_NOTA_TECNICA
===== Cenários de Teste =====
* Verificar se o fluxo do caso de uso está funcionando corretamente.
===== Dados para o Teste =====
* Para conferir a [[#principais_regras_de_negócio|RN01]], pode-se utilizar a consulta abaixo:
SELECT * FROM convenios.projeto WHERE status = 8;
* Para conferir a [[#principais_regras_de_negócio|RN02]], pode-se utilizar a consulta abaixo informando o título do projeto:
SELECT *
FROM comum.pessoa pes
INNER JOIN convenios.participe_projeto pp ON pp.id_pessoa = pes.id_pessoa
INNER JOIN convenios.projeto proj ON proj.id_projeto = pp.id_projeto
WHERE proj.titulo_projeto like '%?%';
* Para conferir a [[#principais_regras_de_negócio|RN03]], pode-se utilizar a consulta abaixo informando o título do projeto:
SELECT proj.numero, proj.ano, proj.titulo_projeto, cr.denominacao
FROM convenios.projeto proj
INNER JOIN convenios.tipo_captacao_recurso cr ON proj.tipo_captacao_recurso = cr.id
WHERE proj.titulo_projeto like '%?%';
* Para conferir a [[#principais_regras_de_negócio|RN04]], pode-se utilizar as consultas abaixo informando o título do projeto:
SELECT *
FROM convenios.projeto pr
INNER JOIN convenios.cronograma_desembolso cr ON cr.id_proposta_convenio = pr.id_projeto
WHERE pr.titulo_projeto like '%?%'
SELECT *
FROM convenios.projeto pr
INNER JOIN convenios.plano_aplicacao pa ON pa.id_proposta_convenio = pr.id_projeto
WHERE pr.titulo_projeto like '%?%'