> For the complete documentation index, see [llms.txt](https://manuais.farmaciadigital.saude.mg.gov.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://manuais.farmaciadigital.saude.mg.gov.br/cadastros/agenda-e-calendario/agenda.md).

# Agenda

Descrição

| Este caso de uso permite consultar e manter agendamentos para os eventos realizados pelas Unidades de Saúde para os pacientes. |
| ------------------------------------------------------------------------------------------------------------------------------ |

<br>

Precondições

| O Usuário logado deve ter um dos seguintes perfis: Atendente, Farmacêutico GRS, Farmacêutico Integrada, Farmacêutico Judicial, Farmacêutico Municipal, Administrativo SIGAF, Gestor Master, Gerente (Judicialização) (somente leitura), Atendente Judicial.O Usuário acionou o comando \[Agenda] na tela inicial do sistema OU o menu Cadastros > Agendamento > Agenda. |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

<br>

Fluxo principal

| <ol><li>O SIGAF exibe IU9.01 Agenda de acordo com a RNG9.01 Exibição da agenda .</li></ol><p><br>{Buscar Dados (Agenda)}</p><ol start="2"><li>O caso de uso termina. </li></ol> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

<br>

Subfluxos

*Subfluxo*

| Não se aplica. |
| -------------- |

Fluxos alternativos

*Fluxo alternativo Buscar Dados (Agenda)*

| Precondições | Não se aplica.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Passos       | <ol><li>O Usuário insere as informações nos campos de filtro de pesquisa e aciona o comando \[Buscar Dados].</li><li><p>O SIGAF valida se os campos obrigatórios foram preenchidos.</p><ol><li>Caso não tenham sido preenchidos, o SIGAF exibe a mensagem MSGA003 - Formulário incompleto!Para prosseguir, preencha os itens destacados. É necessário inserir \<nome do campo>. e retorna para o passo 1 deste fluxo.</li></ol></li><li><p>O SIGAF valida se existem registros que atendam aos parâmetros informados</p><ol><li>Caso não exista registro que atenda os parâmetros, o SIGAF exibe a mensagem MSGI001 - Não existem registros a serem exibidos. e retorna para o passo1 deste fluxo.</li></ol></li><li>O SIGAF exibe a IU9.01 Agenda com o calendário preenchido com os dados do agendamento recuperado na pesquisa de acordo com a RNG9.01 Exibição da agenda .</li></ol><p>{Incluir Agendamento}{Exibir Agendamento}</p><ol start="5"><li>O fluxo retorna ao ponto em que foi acionado.</li></ol> |

\ <br>

*Fluxo alternativo Incluir Agendamento*

| Precondições | A pesquisa por Unidade de saúde foi executada com sucesso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Passos       | <ol><li>O Usuário aciona o comando \[Incluir agendamento] na agenda, no dia em que deseja incluir o agendamento.</li><li>O SIGAF exibe a tela IU9.02 Criar agendamento de acordo com a RNG9.04 Tipos de atendimentos realizados pela Unidade de saúde .</li><li>O Usuário informa os dados do agendamento e aciona o comando \[Criar agendamento].</li><li><p>O SIGAF valida se os campos obrigatórios foram preenchidos.</p><ol><li>Caso não tenham sido preenchidos, o SIGAF exibe a mensagem MSGA003 - Formulário incompleto! Para prosseguir, preencha os itens destacados. É necessário inserir \<nome do campo>. e retorna para o passo 3 deste fluxo.</li></ol></li><li><p>O SIGAF valida a data e hora selecionados.</p><ol><li>Caso o Usuário tenha selecionado um período com algum evento cadastrado conforme RNG9.03 Bloqueio de agenda , o SIGAF exibe a mensagem MSGA9.01 Período bloqueado para a Unidade de saúde \<nome da unidade>. Evento \<nome do evento>. .</li><li>O Usuário confirma a mensagem e altera ou não o agendamento.</li></ol></li><li><p>O SIGAF valida a capacidade de agendamento de acordo com RNG9.02 Capacidade de atendimento .</p><ol><li>Caso a capacidade tenha sido excedida, o SIGAF exibe a mensagem MSGA9.02 Capacidade de atendimento para a Unidade de saúde \<nome da unidade> excedida. Capacidade máxima: \<Capacidade de Atendimento por Dia>. .</li><li>O Usuário confirma a mensagem e altera ou não o agendamento.</li></ol></li><li>O SIGAF grava o agendamento com status “<em>Marcado</em>” e exibe a mensagem MSGI004 - Os dados foram salvos com sucesso. .</li><li>O fluxo retorna ao ponto em que foi acionado.</li></ol> |

\ <br>

*Fluxo alternativo Exibir Agendamento*

| Precondições | Devem existir agendamentos realizados previamente.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Passos       | <ol><li>O Usuário aciona o comando \[Link agendamentos por horário].</li><li>O SIGAF exibe a IU9.03 Exibir agendamento – parte 1, com os nomes dos pacientes agendados para o horário selecionado.</li><li>O Usuário seleciona um dos pacientes;</li><li>O SIGAF exibe a IU9.03 Exibir agendamento – parte 2.</li></ol><p>{Cancelar agendamento}{Reagendar}</p><ol start="5"><li>O Usuário informa se o paciente compareceu.</li><li><p></p><ol><li>Caso o paciente tenha comparecido, o SIGAF exibe mensagem MSGI9.03 Realizar dispensação. com as opções de dispensação disponíveis e após realizar a dispensação, o SIGAF altera o status do agendamento para “<em>Realizado</em>”.</li></ol></li></ol><p>\<ponto de extensão: CDU3.04 Realizar Dispensação Medicamento >\<ponto de extensão: CDU3.05 Realizar Dispensação Medicamento de Alto Custo >\<ponto de extensão: CDU3.06 Realizar Dispensação Produtos de Demanda Judicial ></p><ol start="6"><li><p></p><ol start="2"><li>Caso o paciente não tenha comparecido, o SIGAF altera o status do agendamento para “<em>Não compareceu</em>” e exibe a mensagem MSGI004 - Os dados foram salvos com sucesso. .</li></ol></li><li>O fluxo retorna para o ponto onde foi acionado.</li></ol> |

<br>

*Fluxo alternativo Cancelar Agendamento*

| Precondições | O agendamento tem status “*Marcado*”.O Usuário acionou o comando \[Cancelar].                                                                                                                                                                                                                                                                                                                                        |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Passos       | <ol><li><p>O SIGAF exibe mensagem MSGA9.04 Está certo de que deseja cancelar o agendamento? .</p><ol><li>Caso o Usuário confirme, o SIGAF muda o status do agendamento para “<em>Cancelado</em>” e retorna para a IU9.01 Agenda exibindo a mensagem MSGI9.05 Agendamento cancelado com sucesso. .</li><li>Caso o Usuário não confirme, o SIGAF permanece na tela.</li></ol></li><li>O caso de uso termina.</li></ol> |

\ <br>

*Fluxo alternativo Reagendar*

| Precondições | O Usuário acionou o comando \[Reagendar].                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Passos       | <ol><li>O SIGAF exibe mensagem MSGA9.06 Deseja desmarcar este agendamento e marcar outro? .</li><li>Caso o Usuário não confirme, o SIGAF vai para o passo 10 deste fluxo.</li><li>Caso o Usuário confirme, o SIGAF exibe a IU9.02 Criar agendamento de acordo com a RNG9.04 Tipos de atendimentos realizados pela Unidade de saúde .</li><li>O Usuário informa os dados do reagendamento e aciona o comando \[Criar agendamento].</li><li><p>O SIGAF valida se os campos obrigatórios foram preenchidos.</p><ol><li>Caso não tenham sido preenchidos, o SIGAF exibe a mensagem MSGA003 - Formulário incompleto!Para prosseguir, preencha os itens destacados. É necessário inserir \<nome do campo>. e retorna para o passo 3 deste fluxo.</li></ol></li><li><p>O SIGAF valida a data e hora selecionados.</p><ol><li>Caso o Usuário tenha selecionado um período com algum evento cadastrado conforme RNG9.03 Bloqueio de agenda , o SIGAF exibe a mensagem MSGA9.01 Período bloqueado para a Unidade de saúde \<nome da unidade>. Evento \<nome do evento>. .</li><li>O Usuário confirma a mensagem e altera ou não o agendamento.</li></ol></li><li><p>O SIGAF valida a capacidade de agendamento de acordo com RNG9.02 Capacidade de atendimento .</p><ol><li>Caso a capacidade tenha sido excedida, o SIGAF exibe a mensagem MSGA9.02 Capacidade de atendimento para a Unidade de saúde \<nome da unidade> excedida. Capacidade máxima: \<Capacidade de Atendimento por Dia>. .</li><li>O Usuário confirma a mensagem e altera ou não o atendimento.</li></ol></li><li>O SIGAF grava o reagendamento com status “<em>Marcado</em>” e exibe mensagem MSGI004 - Os dados foram salvos com sucesso. .</li><li>Caso o tipo do atendimento seja “Dispensação judicial”, “Reagendamento judicial” ou “Primeiro atendimento judicial”, o SIGAF muda o status do agendamento para “Reagendamento judicial”.</li><li>O caso de uso termina.</li></ol> |

\
\
\ <br>

Observações

|   |
| - |

<br>

Critérios de aceitação do requisito

|   | Item a ser cumprido                                                                                                                                                                                       | Sim | Não | Não se aplica |
| - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-: | :-: | ------------- |
| 1 | A descrição do caso de uso mostra com clareza qual a funcionalidade que será especificada e seu objetivo?                                                                                                 |     |     |               |
| 2 | Considerando que a cada desvio que há em um fluxo (fluxo alternativo, subfluxo ou caso de uso), após o seguirmos e retornarmos ao ponto onde estávamos, o fluxo principal inicia e termina o caso de uso? |     |     |               |
| 3 | O fluxo principal executa algo relevante para o usuário (uma consulta, por exemplo)?                                                                                                                      |     |     |               |
| 4 | Os atributos das interfaces de usuário do caso de uso estão presentes nas classes apresentadas no diagrama de classes?                                                                                    |     |     |               |
| 5 | Todas as regras de negócio referentes ao caso de uso foram utilizadas adequadamente por ele?                                                                                                              |     |     |               |
| 6 | A comunicação direta com outro sistema (caso exista) está presente no Diagrama de Contexto ou no Diagrama de Caso de Uso?                                                                                 |     |     |               |
| 7 | O dicionário de classes foi utilizado no caso de uso explorando todo o seu potencial?                                                                                                                     |     |     |               |
| 8 | Os requisitos não funcionais relativos a esse caso de uso foram identificados?                                                                                                                            |     |     |               |

ok
