Ver Fonte

riorganizzazione managefile.py

mauro há 8 meses atrás
pai
commit
312f8a6821
3 ficheiros alterados com 26 adições e 1 exclusões
  1. 16 0
      documento/managefile.py
  2. 8 0
      documento/models.py
  3. 2 1
      documento/views.py

+ 16 - 0
documento/managefile.py

@@ -218,8 +218,19 @@ def save_and_load_file_multiple(listadocumenti,request,utente,azienda=None,sede=
 
 #carica un singolofile - utilizzato prevalentemente nella pagina utente
 def save_and_load_file_single(listadocumenti,request,utente,azienda=None,sede=None,descrizione=None,amministratore=None):
+  """
+  listadocumenti  da caricare 
+  request: i documenti vengono caricati via web
+  utente: utente a cui associare il documento
+  azienda: (perche? se l'utente deve essere gia' associato a un'azienda?)
+  sede: (lo stesso, perche' passare la sede, se l'utente stesso dovrebbe avere gia' l'indicazione della sede)
+  e comunque questi parametri servono solo per i log, che insomma, posso aggirarli con semplicita'
+  descrizione: descrizione assegnata al documento
+  amministratore: caricamente a mezzo di un amministratore
+  """
   listaok = list()
   listanotok = list()
+
   associato=False
 
   for singolodocumento in listadocumenti:
@@ -250,6 +261,11 @@ def save_and_load_file_single(listadocumenti,request,utente,azienda=None,sede=No
 
 #file_indice: contiene l'elenco dei nominativi da gestire.
 def save_and_load_file_indice(request,fileindice,azienda=None,sede=None):
+  """
+  qui, oltre alla request, viene chiesto il nome del file indice
+  il nome dell'azienda a cui si fa riferimento e la sua sede
+  """
+
   print('nome indice caricato',fileindice.name)
   if azienda: print('azienda',azienda.nome)
   if sede: print('sede',sede.nome)

+ 8 - 0
documento/models.py

@@ -5,12 +5,20 @@ from comunicazione.models import *
 
 class Documento(models.Model):
   utente = models.ForeignKey(Utente,on_delete=models.CASCADE)
+  # riferimento all'utente a cui è collegato il documento. 1 Utente, molteplici documenti.
   documento = models.CharField(max_length=256,null=True,default="")
+  # nome del documento, cosi' come viene caricato
   storage = models.CharField(max_length=256,null=True,default="")
+  # nome del documento, cosi' come viene salvato
   dataupload = models.DateField(null=True,default=datetime.date.today)
+  # data di caricamento
   crc = models.CharField(max_length=256,null=False,default="")
+  # crc del documento (ancora non implementato)
   descrizione = models.CharField(max_length=128,null=False,default="")
+  # descrizione associata al documento
   privato = models.BooleanField(null=False,default=False)
+  # se privato==True, il documento è visibile solo all'utente associato e non a responsabili o chi per loro.
+  # fa eccezione gli amministratori con diritti di scrittura e lettura sui documenti (altrimenti come li gestiscono)?
 
   def __str__(self):
     return f"{self.id}: {self.documento}"

+ 2 - 1
documento/views.py

@@ -270,7 +270,8 @@ def welcome(request,utente=None):
             # effettua una scelta nel caso venga indicata di caricare il documento ignorando azienda e sede e cercando il codice fiscale ovunque
             if ignoraAzienda:
               # ignoraAzienda: cerca ovunque, in tutte le aziende
-              listaok,listanotok = save_and_load_file_multiple(listadocumenti,request,Utenti.objects.all(),azienda,sede,descrizione,admin.nome,pertutti,ignoraAzienda=ignoraAzienda)
+              listaok,listanotok = save_and_load_file_multiple(listadocumenti,request,Utente.objects.all(),azienda,sede,descrizione,admin.nome,pertutti,ignoraAzienda=ignoraAzienda)
+              # e non va bene: dovrebbe cercare in tutte le aziende autorizzate per quell'amministratore
             elif ignoraSede:
               # ignora sede: cerca in tutta l'azienda ignorando le sedi (sempre che ci siano)
               listaok,listanotok = save_and_load_file_multiple(listadocumenti,request,azienda.utente_set.all(),azienda,sede,descrizione,admin.nome,pertutti,ignoraAzienda=ignoraAzienda)