Estou criando um aplicativo de chamados para o BOS - Banco de Olhos de Sorocaba. O aplicativo se chama "Controle de Chamados BOS" e tem este objetivo:
Captar os chamados de pacientes, coletando sua solicitação e enviando para o setor competente.
As tabelas do banco de dados são:
Usuários - {Níveis de Permissão do mais baixo ao mais alto: 1. Paciente, 2. Líder de Setor, 3. Admin Geral} Subitens - {Campos: Nome do tipo "text"}, {Campos: nome do tipo "text", email do tipo "text", telefone do tipo "text", CPF do tipo "text", RG do tipo "text", data de nascimento do tipo "date", endereço (busca CEP) do tipo "text", nome da mãe do tipo "text"} Setor - {Campos: nome do tipo "text", líderes do tipo "Usuários", subitens do tipo "Subitens", e-mail do tipo "text", Observação do tipo "text"} Alerta - {Campos: nome do tipo "text", cor do tipo "text", ordem do tipo "number"} Status - {Campos: nome do tipo "text", cor do tipo "text", ordem do tipo "number"} Chamados - {Campos: setor do tipo "Setor", sub item do tipo "Sub Item", anexo do tipo "file", solicitação do tipo "text", paciente do tipo "usuário", alerta do tipo "Alerta", status do tipo "Status"}
Visualização das tabelas:
erDiagram
USUARIOS ||--o{ CHAMADOS : "cria"
SETOR ||--o{ CHAMADOS : "tem"
SETOR ||--o{ SUBITENS : "possui"
ALERTA ||--o{ CHAMADOS : "define"
STATUS ||--o{ CHAMADOS : "define"
USUARIOS {
NivelPermissao text
Nome text
Email text
Telefone text
CPF text
RG text
DataNascimento date
Endereco text
NomeMae text
}
SETOR {
Nome text
Lideres USUARIOS
Email text
Observacao text
}
ALERTA {
Nome text
Cor text
Ordem number
}
STATUS {
Nome text
Cor text
Ordem number
}
CHAMADOS {
Setor SETOR
SubItem SUBITENS
Anexo file
Solicitacao text
Paciente USUARIOS
Alerta ALERTA
Status STATUS
}
SUBITENS {
Nome text
}
Um chamado é criado por um paciente e este vai para o painel do líder do departamento que o paciente escolheu na hora de preencher o formulário de chamado.
São 3 níveis de alerta que indicam o quão próximo está o chamado de vencer seu prazo de resposta que é de 3 dias úteis após sua criação: 1. Dentro do Prazo, 2. Alerta (quando falta 1 dia útil para vencer o prazo de resposta) e 3. Atrasado (quando o chamado passou do seu prazo de resposta). Observação: cada Setor tem a sua própria configuração do período de alerta.
Quem deve responder o chamado no prazo de resposta é o líder do setor. A cada mudança de alerta, o líder do setor deverá receber uma notificação por e-mail.
Regras dos Fluxos de Alerta do Setor
São 4 status diferentes que indicam a posição do chamado no fluxo de atendimento: 1. Aberto (quando o chamado é criado pelo paciente, mas não obteve uma resposta por parte do líder de setor), 2. Em Andamento (quando o chamado obteve uma resposta por parte do líder de setor), 3. Finalizado (quando o chamado teve sua resposta finalizada por parte do líder do setor) e 4. Cancelado (quando o chamado é cancelado por algum motivo que deve ser escrito pelo líder do setor).