Strumenti Utente

Strumenti Sito


apireference:campi_base

Sommario

Campi base

Tutti gli oggetti di tutti i microservizi dovranno avere un set minimo di campi base, di seguito descritto, dove non diversamente descritto non sono manipolabili da nessun client:

uuid: campo di tipo uuid, con modello equivalente al modello stesso (es: “7020f592-20f5-48dd-9295-481b3ffb3c87” )

model: campo di tipo testo, descrive il modello stesso (es: “product”)

code: campo di tipo text, consente di accedere all'oggetto in maniera programmatica e descrittiva (es: “magnumbottle” ), può essere modificato client-size, deve essere univoco per modello

memo: campo di tipo text, consente di avere una descrizione testuale mnemonica dell'oggetto stesso (es: “Tenuta San Guido Sassicaia 2016”)

Nota bene: a fini di convenienza, lo stesso viene materializzato in modo da poter essere utilizzato agevolmente, ciò nonostante la sua natura mal si presta a installazioni multilingua, all'interno delle quali lo stesso dovrà necessariamente essere rigenerato da un hook in tempo reale, in modo da sincronizzarlo con la lingua corrente del client. Sarà altresì compito di un event-handler popolarlo.

parent_uuid: campo di tipo uuid, rappresenta l'oggetto “detentore” del presente, l'oggetto corrente, perderebbe di significato nella base dati se il detentore fosse cancellato, può essere modificato client-side

parent_model: campo di tipo testo, descrive il modello dell'oggetto detentore, può essere modificato client-side

parent_origin: campo di tipo testo, descrive il microservizio dell'oggetto detentore, può essere modificato client-side

created: campo datetime, descrive l'istante di generazione dell'oggetto

createdby: campo uuid, descrive l'attore di generazione dell'oggetto

committed: campo datetime, descrive l'istante di validazione dell'oggetto

commitedby: campo uuid, descrive l'attore di validazione dell'oggetto

modified: campo datetime, descrive l'istante di ultima modifica dell'oggetto

modifiedby: campo uuid, descrive l'attore di ultima modifica dell'oggetto

deleted: campo datetime, descrive l'istante di cancellazione logica dell'oggetto

deletedby: campo uuid, descrive l'attore di cancellazione logica dell'oggetto

ownedby: campo uuid, descrive l'attore proprietario dell'oggetto, può essere modificato client-side

Gli stessi saranno estendibili in futuro con altri campi tipo l'origin (utile per la condivisione dei repository tra microservizi), l'uuid name (per mantenere il seme di generazione di un uuidv5) ed altri.

apireference/campi_base.txt · Ultima modifica: 2024/04/22 14:04 da marcomerlino