Originally posted by FernandoAlmeidaPinto April 28, 2025
🎯 Objetivo
Refatorar o processo de criação de um cursinho parceiro, garantindo a coleta de informações obrigatórias para conformidade com a LGPD e formalização da parceria entre o projeto Você na Facul e os cursinhos populares.
📚 Contexto
Atualmente, ao criar uma entidade PartnerPrepCourse, solicitamos apenas:
geoId → Identificação da localização do cursinho (referência à tabela Geolocation)
representative → Usuário que será o administrador inicial do cursinho
Entretanto, para adequação às exigências da LGPD e para dar maior segurança ao projeto, esse processo precisa ser aprimorado.
A partir desta refatoração, na criação de um cursinho parceiro, serão obrigatórios:
- Logo do cursinho (talvez não seja obrigatório)
- Contrato de parceria entre o cursinho e o projeto (upload obrigatório)
Além disso, será necessário:
- Gerar automaticamente o Termo de Uso personalizado para o cursinho, com o nome do cursinho e do projeto, e com o detalhamento de como os dados dos estudantes serão utilizados.
O termo de uso será gerado internamente no processo de criação, baseado em um template padrão. O link para o arquivo gerado será armazenado no PartnerPrepCourse.
🛠️ Mudanças a serem implementadas
1. Refatoração do DTO PartnerPrepCourseDtoInput
O novo DTO de criação de cursinho parceiro deverá receber:
geoId (obrigatório — já existente)
representative (obrigatório — já existente)
logo (obrigatório — upload)
partnershipAgreement (obrigatório — upload)
O campo termOfUse será preenchido automaticamente durante o processo de criação (não será enviado pelo usuário).
2. Atualização da Entidade PartnerPrepCourse
Adicionar na entidade:
logoUrl: string → URL da logo salva no bucket.
partnershipAgreementUrl: string → URL do contrato salvo no bucket.
termOfUseUrl: string → URL do termo de uso personalizado.
3. Processo de Criação
Novo fluxo de criação:
- Validar e receber geoId, representative, logo e partnershipAgreement.
- Armazenar o logo e o contrato em bucket (ex.: AWS S3).
- Gerar o termo de uso personalizado baseado no template padrão.
- Inserir dinamicamente o nome do cursinho e do projeto no texto do termo.
- Armazenar o termo de uso gerado no bucket e capturar a URL.
- Criar o PartnerPrepCourse no banco de dados apenas depois que todos os arquivos estiverem salvos e os links definidos.
4. Justificativas (Motivação)
- LGPD: Garantir que as informações sobre coleta e uso de dados estejam formalmente documentadas.
- Segurança jurídica: Formalizar a relação entre o projeto e o cursinho.
- Clareza para o estudante: Apresentar o termo de uso correto no momento do cadastro.
- Organização: Ter todos os arquivos essenciais vinculados ao cursinho desde sua criação.
✅ Critérios de Aceitação
logoUrl e partnershipAgreementUrl obrigatórios no momento da criação.
termOfUseUrl gerado e salvo automaticamente no processo de criação.
- Novo fluxo integrado e validado em testes de criação de cursinho parceiro.
- As URLs devem ser persistidas na tabela
PartnerPrepCourse.
- Caso ocorra erro em qualquer etapa (upload ou geração do termo), o cursinho não deve ser criado.
Discussed in https://github.com/orgs/vcnafacul/discussions/32
Originally posted by FernandoAlmeidaPinto April 28, 2025
🎯 Objetivo
Refatorar o processo de criação de um cursinho parceiro, garantindo a coleta de informações obrigatórias para conformidade com a LGPD e formalização da parceria entre o projeto Você na Facul e os cursinhos populares.
📚 Contexto
Atualmente, ao criar uma entidade
PartnerPrepCourse, solicitamos apenas:geoId→ Identificação da localização do cursinho (referência à tabelaGeolocation)representative→ Usuário que será o administrador inicial do cursinhoEntretanto, para adequação às exigências da LGPD e para dar maior segurança ao projeto, esse processo precisa ser aprimorado.
A partir desta refatoração, na criação de um cursinho parceiro, serão obrigatórios:
Além disso, será necessário:
O termo de uso será gerado internamente no processo de criação, baseado em um template padrão. O link para o arquivo gerado será armazenado no
PartnerPrepCourse.🛠️ Mudanças a serem implementadas
1. Refatoração do DTO PartnerPrepCourseDtoInput
O novo DTO de criação de cursinho parceiro deverá receber:
geoId(obrigatório — já existente)representative(obrigatório — já existente)logo(obrigatório — upload)partnershipAgreement(obrigatório — upload)O campo
termOfUseserá preenchido automaticamente durante o processo de criação (não será enviado pelo usuário).2. Atualização da Entidade PartnerPrepCourse
Adicionar na entidade:
logoUrl: string→ URL da logo salva no bucket.partnershipAgreementUrl: string→ URL do contrato salvo no bucket.termOfUseUrl: string→ URL do termo de uso personalizado.3. Processo de Criação
Novo fluxo de criação:
4. Justificativas (Motivação)
✅ Critérios de Aceitação
logoUrlepartnershipAgreementUrlobrigatórios no momento da criação.termOfUseUrlgerado e salvo automaticamente no processo de criação.PartnerPrepCourse.