Sia le entità che le risorse possono avere associato ad esse un questionario, che , in caso sia presente, verra richiesto durante il workflow della richiesta di booking. La form viene codificata mediante il FormTemplateDTO. Tale classe permette di specificare la descrizione e l'engine da usare per la renderizzazione nelle UI


@Schema(description = "Define a form template with the specification of used engine")
public class FormTemplateDTO {

    @Schema(description = "The type of engine that is used to render the form")
    String engineType;

    @Schema(description = "Form description, json or base64, depend on engine description type")
    String formDescription;
}  

Tipi di domande

Checkbox

Il tipo checkbox permette di rispondere in modo positivo o affermativo, non ha speciali configurazioni

Date

Il tipo date permette di rispondere inserendo una data, permette configurazioni aggiuntive col seguente json

jsonConfiguration value
{
"dateFormat":"formato data specifico (https://www.w3.org/TR/NOTE-datetime)"
}

DropdownSingle

Il tipo dropdown single permette di mostrare un combobox con delle scelte pre-compilate in cui solo una selezione è permessa.

jsonConfiguration value
{
"chioceList":["value_1",...]
}

DropdownMultiple

Il tipo dropdown multiple permette di mostrare un combobox con delle scelte pre-compilate in cui più selezioni sono permesse.

jsonConfiguration value
{
"chioceList":["value_1",...]
}

FileUpload

Il tipo file upload permette di eseguire l'upload di un file, l'upload viene fatto in due tempi, un api per la creazione dello slot sul booking service e una di upload direttamente sul backend

InputText

Il tipo di file inputText permette di immettere come risposa del testo libero

jsonConfiguration value
{
"maxCharacter":xxx
}

Il tipo link permette di di aggiungere una linea in cui dopo la label è presente il link html per eseguire il download di una risorsa

jsonConfiguration value
{
"name":"documento"
"url":"http://hostname/uri/to/resource
}

example: Scarica il <documento> dove → "Scarica il" è la label e il "documento" è il valore del campo name nelle configurazioni

Sentence

Il tipo sentence permette di stampare a video una frase informativa

jsonConfiguration value
{
"type":"warm, note, info"
}

AppSketch

  • No labels