Il flusso equipment-bottomup-flow è un flusso con validazione per il censimento di Grandi Attrezzature.
Il flusso segue l'approccio BOTTOM-UP: può quindi venire creato dai singoli utenti (appartenenti al team Utenti)
Questo flusso prevede i seguenti attori nelle diverse visioni.
E' previsto un automatismo che aggiunge automaticamente il dipartimento a partire dall'afferenza del responsabile scientifico.
Per maggiori dettagli fare riferimento alla logica di start wfStartLogicMultipleOwners
Questo dipartimento può essere eventualmente rimosso e non viene effettuato, volutamente, nessun check di coerenza di afferenza del responsabile e relativo dipartimento.
Per la creazione dell'oggetto non è obbligatoria la presenza di un dipartimento per il responsabile scientifico a meno che non venga specificato il contrario tramite variabili di configurazione.
Per maggiori dettagli fare riferimento alla logica di validazione ownerPositionStartValidator
E' possibile configurare l'identificativo generato.
Per maggiori dettagli fare riferimento alla logica di start wfStartLogicIdentifier
I nomi degli stati possono essere personalizzati con la funzione di Gestione etichette.
Nella tabella sottostante vengono riportati tutti gli stati previsti dal flusso con relativa etichetta e valore di default.
Vengono anche fornite le etichette per i vari bottoni che consentono lo spostamento di stato.
Identificativo stato | Chiave etichetta stato | Valore default stato | Chiave etichetta bottone transizione in ingresso | Valore default bottone transizione in ingresso |
---|---|---|---|---|
draft | wfState.eqp.draft | Bozza | button.forward.to.eqp.draft | Salva e invia in "Bozza" |
submitted | wfState.eqp.submitted | In Validazione | button.forward.to.eqp.submitted | Salva e invia in "In Validazione" |
rejected | wfState.eqp.rejected | Non Ammesso | button.forward.to.eqp.rejected | Salva e invia in "Non Ammesso" |
approved | wfState.eqp.approved | Approvato | button.forward.to.eqp.approved | Salva e invia in "Approvato" |
reopened | wfState.eqp.reopened | Riaperto | button.forward.to.eqp.reopened | Salva e invia in "Riaperto" |
Il dettaglio del modello dati associato a questo flusso è disponibile alla seguente pagina Collaudo - Modello dati (equipment - EQP)
Nella seguente sezione viene riportato il dettaglio dei permessi e delle transizioni di stato possibili per tutti gli attori del flusso.
Per quanto riguarda le transizioni di stato vengono riportati gli identificativi degli stati verso i quali è possibile effettuare la transizione.
Quando viene riportato il marcatore "__PREVIOUS_STATE__" significa che la transizione di stato è consentita verso lo stato precedente.
Di seguito la legenda dei permessi:
Viene, inoltre, fornito dettaglio dei TAB disponibili (quelli in sola lettura presentano il suffisso readonly)
Stato | Attori | Permessi | Transizioni | Tab |
---|---|---|---|---|
Bozza (draft) | Helpdesk (helpdesk) | c r w d | approved | |
Organi dipartimentali (headOfDepartment) | c r w d | approved | ||
Responsabile/Proprietario (owner) | c r w d | submitted | ||
Delegato (internalRepresentatives) | r w | submitted | ||
In Validazione (submitted) | Helpdesk (helpdesk) | r w | draft,rejected,approved | |
Organi dipartimentali (headOfDepartment) | r w | draft,rejected,approved | ||
Responsabile/Proprietario (owner) | r | none | ||
Delegato (internalRepresentatives) | r | none | ||
Non Ammesso (rejected) | Helpdesk (helpdesk) | r | submitted | |
Organi dipartimentali (headOfDepartment) | r | submitted | ||
Responsabile/Proprietario (owner) | r | none | ||
Delegato (internalRepresentative) | r | none | ||
Approvato (approved) | Helpdesk (helpdesk) | r | submitted,reopened | |
Organi dipartimentali (headOfDepartment) | r | submitted,reopened | ||
Responsabile/Proprietario (owner) | r | reopened | ||
Delegato (internalRepresentatives) | r | reopened | ||
Riaperto (reopened) | Helpdesk (helpdesk) | r w d | approved | |
Organi dipartimentali (headOfDepartment) | r w d | approved | ||
Responsabile/Proprietario (owner) | r w d | approved | ||
Delegato (internalRepresentatives) | r w | approved |
Nella seguente sezione viene riportato il dettaglio delle validazioni per tutte le coppie (attore, stato) del flusso.
Le validazioni sono distinte nei seguenti macrotipi e sono riferite, se non specificato altrimenti, all'oggetto radice.
Le validazioni sono ulteriormente distinte nei seguenti tipi.
Nel caso di validazioni di tipo element, oltre all'identificativo della validazione, viene riportato anche l'identificativo dell'elemento a cui è applicata e l'azione che l'ha scatenata:
Ad esempio la seguente stringa
internalOrganizationUnit:delete departmentDeleteValidator indica che la validazione "departmentDeleteValidator" è applicata in eliminazione di un elemento di tipo internalOrganizationUnit dell'oggetto radice.
Per avere maggiori dettagli sui possibili elementi fare riferimento alla definizione del modello, disponibile nella sezione Modello Dati.
Infine è possibile applicare le validazioni, condizionalmente al soddisfacimento di determinate condizioni (opzionali).
Queste condizioni sono specificate nella colonna "Applicabilità": se è specificato always, la validazione è sempre attiva.
Stato | Attori | MacroTipo | Tipo | Attributo/Identificativo | Applicabilita' |
---|---|---|---|---|---|
Bozza (draft) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
complex | checkCreationPermissionsValidator | always | |||
multipleOwnerValidator | always | ||||
ownerPositionStartValidator | always | ||||
ownerWithSameDepartmentAsHeadValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
delete | complex | childAndParentDetectorDeleteValidator | always | ||
element | complex | owner:save addOrgUnitFromNewOwnerValidator | always | ||
Organi dipartimentali (headOfDepartment) | element | complex | internalOrganizationUnit:delete departmentDeleteValidator | always | |
Responsabile/Proprietario (owner) | element | complex | owner:save ownerCannotEditHimself | always | |
owner:delete ownerCannotDeleteHimself | always | ||||
Delegato (internalRepresentatives) | element | complex | internalRepresentative:save notAllowedValidator | always | |
internalRepresentative:delete notAllowedValidator | always | ||||
owner:save notAllowedValidator | always | ||||
owner:delete notAllowedValidator | always | ||||
internalOrganizationUnit:save notAllowedValidator | always | ||||
internalOrganizationUnit:delete notAllowedValidator | always | ||||
In Validazione (submitted) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
clobMap[abstract] | always | ||||
booleanMap[visibleOnPortal] | always | ||||
complex | multipleOwnerValidator | always | |||
internalOrganizationUnitValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
element | complex | owner:save addOrgUnitFromNewOwnerValidator | always | ||
Organi dipartimentali (headOfDepartment) | element | complex | internalOrganizationUnit:delete departmentDeleteValidator | always | |
Non Ammesso (rejected) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
clobMap[abstract] | always | ||||
booleanMap[visibleOnPortal] | always | ||||
complex | multipleOwnerValidator | always | |||
internalOrganizationUnitValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
element | complex | owner:save addOrgUnitFromNewOwnerValidator | always | ||
Approvato (approved) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
clobMap[abstract] | always | ||||
booleanMap[visibleOnPortal] | always | ||||
complex | multipleOwnerValidator | always | |||
internalOrganizationUnitValidator | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
element | complex | owner:save addOrgUnitFromNewOwnerValidator | always | ||
Riaperto (reopened) | all | enter | required | wfItemTypeId | always |
description | always | ||||
dateMap[startDate] | always | ||||
save | complex | sameDefinitionForGenericItemValidator | always | ||
delete | complex | deleteRmItemEquipmentValidator | always | ||
childAndParentDetectorDeleteValidator | always | ||||
element | complex | owner:save addOrgUnitFromNewOwnerValidator | always | ||
Organi dipartimentali (headOfDepartment) | element | complex | internalOrganizationUnit:delete departmentDeleteValidator | always | |
Responsabile/Proprietario (owner) | element | complex | owner:save ownerCannotEditHimself | always | |
owner:delete ownerCannotDeleteHimself | always | ||||
Delegato (internalRepresentatives) | element | complex | internalRepresentative:save notAllowedValidator | always | |
internalRepresentative:delete notAllowedValidator | always | ||||
owner:save notAllowedValidator | always | ||||
owner:delete notAllowedValidator | always | ||||
internalOrganizationUnit:save notAllowedValidator | always | ||||
internalOrganizationUnit:delete notAllowedValidator | always |
Nella seguente sezione vengono riportate le
Di seguito viene riportato il dettaglio delle logiche definite per questo flusso.
START LOGICS
ACTION LOGICS