Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • F form-creator-api
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • simmctic
  • form-creator
  • form-creator-api
  • Issues
  • #57

Closed
Open
Created Oct 23, 2019 by Lucas Fernandes de Oliveira@lfoliveiraOwner7 of 8 tasks completed7/8 tasks

Criação de sub-formulários

Criar a capacidade de um formulário conter sub formulários. Sub formulários permitem que um formulário seja feito a partir da composição de formulários existentes, além de inputs excluivos.

Método:

  • Modificar a classe Form, adicionando uma lista de SubForms
  • Criar a classe SubForm que representa um sub formulário, essa classe deve conter as seguintes propriedades:
    • placement
    • form
    • extra_description? (ver se é relevante ou não)
    • enabled
  • Criar uma tabela no banco que permita a existencia de subForms
    • Tabela subForm com as propriedades (id, id_form, placement, content_form, enabled)
  • Modificar controlador de formulário para inserção/atualização/leitura
    • Deve ser adicionado um vetor de subForms que contém o id_form do form contido e o placement
    • Para a interface ler todos os inputs eles devem realizar multiplas requisições (subForms +1)
  • Permitir que o placement seja compartilhado entre subForm e inputs
  • Criar Classe SubFormAnswer que determina que uma resposta de um formulário na realidade é subResposta de um Formulário
    • Ao inserir uma resposta, ela será inserida com o id_form do formulário contido
    • Isso dará a impressão de que é apenas uma resposta a mais para aquele formulário
    • Para diferenciar as respostas dos subForms para as respostas difetas, usa-se a SubFormAnswer
  • Criar Tabela no Banco subFormAnswer com as mesmas propriedades de FormAnswer, adcionando content_form
  • Modificar o controlador de resposta, que deverá receber um objeto de resposta mais complexo
    • Nesse objeto além das respostas dos inputs "padrão" também deverão vir as respostas dos subForms
    • A estrutura provavelmente será
{
    inputs: {
        "Resposta atual do form" : "values"
    }
    , subForms: {
        "id_sub_form1": {
            "resposta do sub_form_1": "Objeto resposta (igual a do inputs)"
         }
         , "id_sub_form2": {
            "resposta do sub_form_2": "Objeto resposta (igual a do inputs)"
         }
    }
}
Edited Jan 16, 2020 by Gianfranco Harres
Assignee
Assign to
Time tracking