diogolundberg / educat-erp Goto Github PK
View Code? Open in Web Editor NEWEducat-erp ⚡️
Educat-erp ⚡️
Campos:
Nome do Aluno, Identificação (CPF ou RNE), Data de Nascimento, Email, Telefone Celular, Curso, Data Última Atualização no cadastro, Status Acadêmico (aguardando análise, em análise, aprovado, reprovado)
Tabela com possibilidade ordenação das colunas de acordo com a necessidade do usuário e busca google no topo para filtro rápido de informações da visualização.
As mensagens de erro estão em inglês, precisamos traduzi-las através do arquivo de resource.
A validação dos dados financeiros está ignorando os filhos: Guarantor
e Representative
.
O status do FinanceData só será valid se cumprir as regras abaixo:
Representative
é obrigatório.Representative
é o preenchido com os dados pessoais.Plan
escolhido, um número de Guarantors
deverá ser preenchido.Guarantor
e Representative
devem ter seus campos validados.options
do enrollment.Precisamos de duas tabelas/entidades:
Uma listagem de documentos requeridos, com dois campos: name
e type
... onde type
seria personal
ou guarantor
(essas duas coisas podem ficar em outra tabela por exemplo). Essa listagem seria retornada no options
do GET /Enrollment
.
Uma tabela para linkar esses documentos com os Enrollments
... além dos campos EnrollmentId
e DocumentId
também é necessário um campo para guardar JSON contendo os dados do arquivo que foi feito upload. Os documentos preenchidos seriam retornados no data
do GET /Enrollment
...
Definições(WIP):
https://realtimeboard.com/app/board/o9J_kzt8ofg=/
https://github.com/sandbox-eti/cmmg/wiki/Onboarding#dados-pessoais
Criar os scripts de inserção de MetaDados e subir ele em:
[email protected]:sandbox-eti/cmmg-scripts.git
O endpoint GET /enrollment/:token
deve retornar um campo data chamado deadline
.
Esse campo deve conter a data final da matrícula.
Inicialmente pode ser mockado, porém mais tarde precisa ficar guardado na tabela de dados da matrícula, com período inicial e final. Esses dados serão utilizados também para permitir acesso ao site, e também para permitir salvar dados.
Criar um componente que possa receber uma lista através da api e desenhar os elementos em uma tabela.
Exemplos:
Regras(Implementadas aqui ou prever isso para futuro card):
Validations
no DocumentType
que funcionará como um array - ReferênciaValidations
devem ser um enum, ver nomes abaixo.Foreigner
) Estrangeiro:RNE
é obrigatório e CPF
não é exibidoMilitaryDraft
) Mulher: não exibe o Alistamento militar
.ForeignGraduation
) Formado fora do país: Aparece o Parecer da secretaria de educação e publicação no diário oficial.
MinorAge
) Menor de dezoito: O título de eleitor
não é obrigatórioGraduationYear
) Ano de conclusão mesmo da matrícula: Aceita Declaração de conclusão do ensino médio
OU histórico escolar
(é obrigatório pelo menos um deles).A regra deverá ser aplicada para cada ENUM. Exemplo:
RuleFor(document => document).Custom((document, context) =>
{
if (!document.validations.contains(DocumentValidations.MinorAge)) { return; }
// implementa regra
}
Spouse
) Cônjuge: Certidão de casamento
obrigatória.Verificar a possibilidade de fazer o upload com presign.
Links de referência:
disabilityId
)guarantors
do options.plans
Todas as vezes que for necessário retornar o formulário de matrícula para o frontend, seu State deverá estar presente no json.
Formulário de dados pessoais que precisam ser inseridos pelos alunos que vão matricular no sistema.
Exemplo: https://xd.adobe.com/view/b79e4b60-33f0-48d3-892e-5a1e29f06e15
Cores do layout: https://xd.adobe.com/view/839256d3-2392-41a9-8df7-3953990183e0/
Para cada documento configurado como documento pessoal, deverá ter uma forma de enviar o arquivo digitalizado deste documento. Exemplo:
Estão definidos(no banco de dados) que os documentos de dados pessoais são Carteira de Identidade
e Certidão de nascimento
.
O formulário deverá exibir um botão de upload para cada um destes documentos.
Diagrama: https://realtimeboard.com/app/board/o9J_kzt8ofg=/
Completo
ou Incompleto
onBlur
e também com um debounce
.Fazer um cache genérico, client side, do campo "options".
A idéia é sempre enviar uma versão(count
) junto ao campo options
do json e salva-la juntamente aos dados no localstorage.
Numa próxima requisição, esta versão será enviada ao servidor que decidirá se é necessário enviar o options
novamente para o frontend.
Caso um novo options seja enviado, o cliente sobrescreverá a chave do localstorage.
Onboarding - onboarding.sandbox.eti.br
Sso - sso.sandbox.eti.br
Upload - upload.sandbox.eti.br
app.sandbox.eti.br
Campos:
Financeiro: Nome do Aluno, Identificação (CPF ou RNE), Data de nascimento, Email, Telefone Celular, Curso, Data Última Atualização no cadastro, Plano Escolhido, Status Financeiro (aguardando análise, em análise, aprovado, reprovado)
Tabela com possibilidade ordenação das colunas de acordo com a necessidade do usuário e busca google no topo para filtro rápido de informações da visualização.
Criar componente que possa abrigar um formulário ou uma informação através de um painel que abre lateralmente.
Exemplo
Nota:
Este componente será utilizado a princípio para abrigar o form de criação de registros em um Crud comum.
Subir direto para o Azure Blob Storage
Ex: https://serversideup.net/your-guide-to-uploading-files-with-vuejs-and-axios/
Os botões precisam exibir progresso e ficar travados durante o envio.
Exemplo de progresso: https://tympanus.net/codrops/2013/12/12/progress-button-styles/
O estado dos cartões é definido pelos campos:
Estado complexo (ver wiki)
Estado booleano
Implementar compete de sidebar. Codepen para refereência
Os campos de necessidades especiais não estão sendo exibidos.
Para deficiência escolhida, deverão aparecer abaixo os campos de necessidades especiais.
Necessidades Educacionais Especiais.docx
Os campos serão exibidos conforme os dados vem no JSON:
"options": {
"SpecialNeeds": [{
"DisabilityId": id,
}]
}
Este pacote: https://www.nuget.org/packages/WindowsAzure.Storage
Permitir enviar o formulário para aprovação através do post em /enrollments.
Nota:
O endpoint de presign deve receber as seguintes informações:
E deve retornar:
Exemplo de URL da própria Microsoft:
https://myaccount.blob.core.windows.net/sascontainer/sasblob.txt?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D
nudge
estiver aplicado - Feito em c531a1dblur
dentro dos cards quando ainda não tiver carregado (e não permitir trocar de card nesse meio tempo) - Feito em ab6495aGET /api/Enrollments/:token
retornar 404 - Feito em 8448b22options. personalDocuments
para exibir a listagem de documentos - Feito em c450dd8value
Sugestões:
https://codeclimate.com
https://codebeat.co
https://scrutinizer-ci.com
https://www.codacy.com
Eu dei uma olhada na documentação da microsoft e acabei encontrando isso aqui:
https://docs.microsoft.com/en-us/dotnet/core/tools/using-ci-with-cli
Está recomendando estes serviços:
https://travis-ci.org
https://www.appveyor.com
https://docs.microsoft.com/en-us/vsts/build-release/index
Sugestão usando o próprio Azure
https://azure.microsoft.com/en-us/resources/videos/build-2017-build-a-ci-cd-pipeline-from-microsoft-azure-portal/
Formulário de dados financeiros que precisam ser inseridos pelos alunos que vão matricular no sistema.
Exemplo: https://xd.adobe.com/view/b79e4b60-33f0-48d3-892e-5a1e29f06e15
Cores do layout: https://xd.adobe.com/view/839256d3-2392-41a9-8df7-3953990183e0/
Onboarding - Dados Financeiros
Para cada documento configurado como documento pessoal, deverá ter uma forma de enviar o arquivo digitalizado deste documento. Exemplo:
Estão definidos(no banco de dados) que os documentos de dados pessoais são Carteira de Identidade
e Certidão de nascimento
.
O formulário deverá exibir um botão de upload para cada um destes documentos.
Diagrama: https://realtimeboard.com/app/board/o9J_kzt8ofg=/
Ver também: #10 Matrícula - Upload de documentos
onBlur
e também com um debounce
.[ string, ... ]
. Deveria receber [ { id: 4b25a45-ba54b43-b345b", external_id: "http://blob.azure/.x.x.x.x.xx.txt" }, ... ]
WikiPOST /api/Enrollments/GenerateToken
Melhorar a tela de login. Exemplo
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.