====== Especificação Funcional: Email ====== ===== Resumo ===== Funcionalidade responsável pelo envio de email aos usuários do School Web. A Funcionalidade é composta pelos projetos: ====School Web ==== Responsável por armazenar as informações, Widgets e configuração do envio e email. ====EmailService==== Serviço responsável por monitorar e enviar os emails para os usuários baseado nas informações configuradas. ===== Campos ===== ====Configuração do calendário==== |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |**__Dados gerais__** ||||| |Nome | |Varchar |50 |Sim | |Data inicio|Data início do calendário |Varchar | |Sim | |Data Fim|Data fim do calendário |Inteiro | |Sim | |Ativo|Se o calendário está ativo ou não |Inteiro | |Não | === Pontos de verificação === * O calendário cadastrado é válido para todas as entidades sincronizadas com o SchoolWeb; * Para o envio de e-mail funcionar, o calendário cadastrado precisa está com o campo "Ativo" marcado; * O envio de e-mail ocorrerá uma vez para o período informado no calendário ativo; * Ao editar um calendário, somente é possível alterar a data de início e fim, e se está ativo. Caso o usuário altere o nome e salve um novo calendário será criado, tendo em vista que o campo "Nome" é chave primária. * Somente um calendário pode está ativo; * A data de início do calendário deve ser igual ou maior que a data atual. * A data de término do calendário não pode ser menor que a data atual. ====Configuração do email==== |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |**__Dados gerais__** ||||| |Código|Código do aluno ou usuário, alimentado por trigger tabaluno ou tabusuarios.|Varchar | |Sim | |Entidade|Entidade do email.|Varchar | |Sim | |Email|Email cadastrado no School Desktop.|Inteiro | |Sim | |Ativo|Se o email está ativo ou não, a desativação pode ser feita pela configuração ou pela funcionalidade de cancelar recebimento no email que o usuário recebe.|Inteiro | |Não | |Data Envio|Data do último envio de email|Inteiro. | |Não | |Data Desativação|Data de desativação do email|Inteiro. | |Não | |Perfil|Perfil do email.|Inteiro | |Não | === Pontos de verificação === * Deve exibir, quando informado no cadastro do aluno, a lista de e-mail dos alunos com situação igual a "Matriculado" * E-mail do Pai do aluno; * E-mail da Mãe do aluno; * E-mail do Responsável pelo aluno; * E-mail do Aluno; * Deve exibir, quando informado no cadastro da escola, a lista de e-mail vinculada a ela: * E-mail da escola; * E-mail do Responsável pela escola (Diretor); * Deve exibir, quando for informado no cadastro de Usuário do perfil Município no School Web; * E-mail do usuário cadastrado no School Web; * Deve exibir, quando informado no cadastro de usuário, o e-mail vinculada a ele; * Deve registrar o horário e a data do envio do último e-mail; * Deve permitir alterar somente se o usuário está ativo ou não; * Deve registrar a data e horário que o usuário desativar o recebimento de e-mail; * Permite o envio para o mesmo e-mail várias vezes, desde que esteja cadastrado em lugares diferentes. ===== Observações ===== Com as informações configuradas o serviço (EmailService) estará monitorando as configurações do servidor que foi instalado e se identificar algum calendário ativo enviará os emails para os códigos que serão alimentados na tabela email através de triggers na tabaluno e tabusarios. O envio do email é realizada uma vez a cada calendário.