projects:charta:analisi

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
projects:charta:analisi [2022/07/22 13:26] – [Visualizzazione] ngiacobboprojects:charta:analisi [2022/10/28 10:43] (current) rmontresor
Line 54: Line 54:
 === Visualizzazione === === Visualizzazione ===
  
-Gli utenti possono visualizzare e scaricare i documenti all'interno di una pagina che mostra i documenti aperti recentemente e un sistema di ricerca, in grado di filtrare i documenti per classe e valore dei tag.+Gli utenti possono visualizzare e scaricare i documenti all'interno di una pagina che mostra i documenti in ordine inverso di caricamento e un sistema di ricerca, in grado di filtrare i documenti per categoria (è un tag) e valore dei tag o nome del documento.
  
-Gli utenti possono vedere solo i documenti su cui hanno accesso di lettura. Se l'utente è l'**owner** del documento, può sempre vederlo, altrimenti deve essere membro di una acl che è stata collegata al documento da parte di un operatore al momento della pubblicazione.+Gli utenti possono vedere solo i documenti su cui hanno accesso di lettura. Se l'utente è l'**owner** del documento, può sempre vederlo, altrimenti deve essere membro di un gruppo con permesso read o admin su quella categoria di documenti
  
 === Ruoli === === Ruoli ===
  
-Ogni operatore appartiene a dei gruppi che stabiliscono i ruoli che l'operatore avrà sui diversi realm e sulle loro classi.+Ogni operatore appartiene a dei gruppi. Ogni gruppo avrà dei ruoli su delle categorie di documenti di quel realm
  
 Un operatore quindi potrebbe avere un ruolo in un realm e un ruolo diverso in un altro realm. Un operatore quindi potrebbe avere un ruolo in un realm e un ruolo diverso in un altro realm.
  
 Ad esempio: un operatore può scannerizzare e taggare documenti per l'azienda X e può pubblicare documenti per l'azienda Y. Ad esempio: un operatore può scannerizzare e taggare documenti per l'azienda X e può pubblicare documenti per l'azienda Y.
- 
-Deve quindi essere possibile fare login, selezionare un realm e poi eventualmente fare lo switch a un differente realm, senza dovere fare login nuovamente. 
  
  
Line 75: Line 73:
 **PROBLEMA:** **PROBLEMA:**
 Esistono due tipi di permessi Esistono due tipi di permessi
-  * Permessi di tipo operativo, che vogliamo associare a cose generali come i realm e le classi dei documenti+  * Permessi di tipo operativo, che vogliamo associare a cose generali come i realm e le categorie dei documenti
   * Permessi di visibilità sui singoli documenti   * Permessi di visibilità sui singoli documenti
  
Line 101: Line 99:
  
   * I **group** vengono associati ai realm e alle classi   * I **group** vengono associati ai realm e alle classi
- 
  
 Con i group, oltre ai ruoli di scan, tag, ecc, esiste il ruolo read, che può dare ad alcuni utenti speciali (non solo agli operatori interni) i permessi di lettura a tutti i documenti di un certo realm, o di una certa classe all'interno di un realm Con i group, oltre ai ruoli di scan, tag, ecc, esiste il ruolo read, che può dare ad alcuni utenti speciali (non solo agli operatori interni) i permessi di lettura a tutti i documenti di un certo realm, o di una certa classe all'interno di un realm
  
 Con le ACL, un operatore che carica un documento può scegliere i permessi di lettura che avrà il singolo documento una volta pubblicato, associandolo a delle liste che non hanno niente a che vedere con le suddivisioni operative o gli utenti speciali Con le ACL, un operatore che carica un documento può scegliere i permessi di lettura che avrà il singolo documento una volta pubblicato, associandolo a delle liste che non hanno niente a che vedere con le suddivisioni operative o gli utenti speciali
 +
 +----
 +
 +==== Soluzione 3 (scelta) ====
 +
 +Un utente appartiene a più GROUP
 +
 +----
 +
 +  * Le **categories** vengono associate ai singoli documenti
 +
 +  * I **group** vengono associati ai realm
 +
 +  * Il **role** può essere upload, tag, correct, publish, read, admin (comprende tutti i precedenti ruoli)
 +
 +  * Una tabella **GroupRoleCategory** assegna ad ogni gruppo di utenti dei ruoli su una categoria di documenti (esempio: il ruolo read su tutti i cedolini)
 +
 +Tutti i documenti hanno una categoria più una chiamata "default" su cui un gruppo può avere dei permessi
 +
 +Al momento il ruolo admin è riferito solo alla categoria default, che comprende tutti i documenti di quel realm
 +
  
 ==== Esempi di permessi ==== ==== Esempi di permessi ====
Line 111: Line 129:
 Un documento è leggibile da: Un documento è leggibile da:
   * Utente owner del documento   * Utente owner del documento
-  * Utenti membri di un group con accesso al documento +  * Utenti membri di un supergroup con ruolo "read" o "admin" sulla categoria del documento o quella default
-  * Utenti membri di un supergroup con ruolo "read" sul realm e sulla classe del documento+
  
 Un documento è scannerizzabile da: Un documento è scannerizzabile da:
-  * Utenti membri di un supergroup con ruolo "scansul realm nel quale si vuole salvare il documento scannerizzato +  * Utenti membri di un supergroup con ruolo "upload(probabilmente questo ruolo sarà sempre riferito alla categoria default del realm su cui si fa l'uplaod)
- +
-**Esempi della tabella dei role** +
- +
-<code> +
-Superg  Ruolo   Realm   Classe +
-s1      SCAN    2       ALL +
-s2      TAG           cedolini +
-s2      CORRECT 3       fatture +
-s3      ALL     ALL     ALL +
-s4      READ    2       ALL +
-</code>+
  
-nell'implementazione pratica, per questa tabella si può associare "ALL" al valore nullo all'interno del database 
 ==== Schema del db proposto ==== ==== Schema del db proposto ====
  
-{{ :projects:charta:schema_database.png?400|}}+{{ :projects:charta:charta_-_schema._db.png?400|}}
  
 Spiegazione: Spiegazione:
Line 138: Line 143:
   * Un certo numero di **file**   * Un certo numero di **file**
   * Un insieme di **tag** a cui vengono attribuiti dei valori   * Un insieme di **tag** a cui vengono attribuiti dei valori
-  * Una **class** (tipologia, ad es. cedolino, contratto, ecc.)+  * Una **categoria** (tipologia, ad es. cedolino, contratto, ecc.) + la categoria default che comprende tutti i documenti di un realm
  
->Ogni class di documento ha diversi tag da riempire (es. cedolino chiede il numero fiscale, contratto chiede data di scadenza), essi acquisiranno dei valori solo quando verranno associati a un documento+Ogni categoria di documento ha diversi tag da riempire (es. cedolino chiede il numero fiscale, contratto chiede data di scadenza), essi acquisiranno dei valori solo quando verranno associati a un documento
  
->Ogni classe appartiene a un realm, poiché diversi realm possono avere diverse definizioni della struttura di un cedolino o di un contratto+Ogni categoria appartiene a un realm, poiché diversi realm possono avere diverse definizioni della struttura di un cedolino o di un contratto
  
 Gli utenti (**user**) appartengono a: Gli utenti (**user**) appartengono a:
-  * **acl**, che ne determinano permessi di accesso in lettura sui singoli documenti +  * **group**, i quali determinano il ruolo sopra ai realm e sulle categoria all'interno dei realm
-  * **group**, che ne determinano il ruolo sopra ai realm e sulle class all'interno dei realm+
  
 I ruoli (**role**) possono essere: I ruoli (**role**) possono essere:
-  * SCAN, o UPLOAD: l'utente può creare nuovi documenti, decidendone realm, class (e owner?)+  * SCAN, o UPLOAD: l'utente può creare nuovi documenti, decidendone realm, categoria (e owner?)
   * TAG: l'utente può aggiungere tag al documento   * TAG: l'utente può aggiungere tag al documento
   * CORRECT: l'utente può correggere i tag o segnalare gli errori   * CORRECT: l'utente può correggere i tag o segnalare gli errori
Line 164: Line 168:
 === Accesso === === Accesso ===
  
-L'operatore fa **login**, entra nella sezione "Scandal menù laterale, poi **seleziona il realm** nel quale vuole creare il nuovo documento da una selection list di tutti i realm sul quale l'operatore ha ruolo di scan.+L'operatore fa **login** selezionando in alcuni casi il realmaccede alla pagina di Primo Accesso se entra per la prima volta altrimenti entra nella sezione "Home"
  
 ---- ----
Line 271: Line 275:
 ==== Visualizzazione ==== ==== Visualizzazione ====
  
-Ogni documento deve poter essere visibile dal proprio owner, dagli utenti appartenenti alle ACL collegate al documento, e dagli utenti appartenenti ai groups con READ role sul realm e sulla class a cui appartiene il documento+Ogni documento deve poter essere visibile dal proprio owner e dagli utenti appartenenti ai groups con READ (o ADMIN) role sul realm e sulla categoria a cui appartiene il documento
  
 Quando un utente va nella schermata di visualizzazione, vedrà i documenti inseriti di recente nel sistema e potrà effettuare ricerche per trovare i documenti. Quando un utente va nella schermata di visualizzazione, vedrà i documenti inseriti di recente nel sistema e potrà effettuare ricerche per trovare i documenti.
  
 I documenti devono avere una thumbnail, un nome, un'indicazione del size I documenti devono avere una thumbnail, un nome, un'indicazione del size
 +
 +Da questa pagina si potrà selezionare un documento ed entrare nella relativa pagina che permetterà di visualizzare le preview dei file di quel documento, i suoi tag e di poterli scaricare
  
 utente normale che consulta utente normale che consulta
Line 285: Line 291:
  
 ==== Casi particolari (e non) di utenti ==== ==== Casi particolari (e non) di utenti ====
 +  * operatori (personale Galileo che scannerizza/elabora i documenti)
 +    * su più realm
 +    * più operazioni
 +  * dipendenti serit (vedono solo i loro documenti)
 +  * sindacalista serit (possono uploadare solo un tipo di documento)
 +  * dipendenti serit (vedono solo una classe di documento)
 +  * dirigenti serit (vede tutto nel real serit e __creano nuovi utenti del realm__)
 +  * dirigenti galileo (vedono tutto di tutti i real e honno abilitate tutte le operazioni) 
 +
 +
  
  • projects/charta/analisi.1658489165.txt.gz
  • Last modified: 2022/07/22 13:26
  • by ngiacobbo