Selaa lähdekoodia

aggiunta edit sedi amministratore

mauro 7 kuukautta sitten
vanhempi
sitoutus
c74cab1f0b

+ 9 - 6
amministratore/templates/amministratore.edit.SEP.html

@@ -16,9 +16,12 @@
     Lista Aziende Autorizzate
   </div> 
   <div>
-  Questa lista contiene le aziende a cui l'amministratore è autorizzato ad accedere. L'accesso è concesso in prima battuta solo in lettura.
-  usare il tasto "E" per consentire anche altre operazionie.
+  Questa lista contiene le sedi a cui l'amministratore è autorizzato ad accedere. L'accesso è concesso in prima battuta solo in lettura.
+  usare il tasto "E" per consentire anche altre operazioni.<br>
+  azienda: {{ azienda.nome }}<br>
+  amministratore: {{ amministratore.login }} - {{ amministratore.nome }}.<br>
   </div>
+
   <form name='sedepermessiform' method='POST'>
   {% csrf_token %}
   <ul class="list-group list-group-flush">
@@ -27,7 +30,7 @@
         <thead class='thead-dark'>
           <tr>
             <th scope='col'>Nome</th>
-            <th scope='col'>P.Iva</th>
+            <th scope='col'>Id</th>
 	    <th scope='col'>S</th>
 	    <th scope='col'>E</th>
 	    <th scope='col'>D</th>
@@ -98,13 +101,13 @@
 	      <td>
                 <select class="form-select" name="aziendadaaggiungere" id="aziendadaaggiungere">
 		  <option value="">-- Scegli l'azienda da Aggiungere --</option>
-	          {% for lp in listaaziendadiff  %}
-		  <option value="{{ lp.id }}">{{ lp.nome }} - {{ lp.partitaiva}}</option>
+	          {% for lp in listasedediff  %}
+		  <option value="{{ lp.id }}">{{ lp.nome }} - {{ lp.identificativo}}</option>
                     {% endfor %}
                 </select>
 	      </td>
 	      <td>
-		<button type='submit' name="AziendaDaAggiungereButton" class='btn btn-primary'>Aggiungi</button>
+		<button type='submit' name="SedeDaAggiungereButton" class='btn btn-primary'>Aggiungi</button>
 	      </td>
 	    </tr>
           </tbody>

+ 14 - 8
amministratore/views.py

@@ -332,19 +332,25 @@ def editSEP(request):
     try:
       amministratore = Amministratore.objects.get(pk=amministratoreEditId)
     except Amministratore.DoesNotExist as dne:
-      amministratore = Amministratore()
-      amministratore.pin = str(randint(100000,999999))
-    print('amministratore',amministratore.id,amministratore.nome)
+      return HttpResponseRedirect(reverse("amministratore:editSEP"))
+
+    print('amministratore',amministratore.id,amministratore.login,amministratore.nome)
+  data['amministratore'] = amministratore
 
   azienda = Azienda.objects.get(pk=request.session.get('EditAziendaId'))
+  print('azienda',azienda.nome)
+  data['azienda'] = azienda
+
   listasedetutte = azienda.sede_set.all()
+  print('listasedetutte - lunghezza',len(listasedetutte))
 
-  if amministratore: 
-    data['listasede'] = listaSEP(amministratore)
-    data['listasedediff'] = list(set(listasedetutte)-set(data['listasede']))
-  else:
-    data['listasedediff'] = list(set(listasedetutte))
+  data['listasede'] = listaSEP(azienda,amministratore.id,"SEDE")[0]
+  print("data['listasede']",data['listasede'])
+
+  print('amministratore',amministratore.nome)
+  data['listasedediff'] = list(set(listasedetutte)-set(data['listasede']))
 
+  print('minchia')
   if request.method == 'POST':
     print("qualcosa e' stato premuto")
   

+ 23 - 20
sicurezza/views.py

@@ -297,10 +297,10 @@ def listaSEP(azienda=None,amministratore=None,permesso=None):
   elif isinstance(permesso,str):
     print('si tratta di una str, quindi dobbiamo cercare il valore')
     per = Permesso.objects.get(nome=permesso)
+    print('permesso trovato',per.nome)
   else:
     per = None
-    
-  print(amm,azi)
+
   if not amm: 
     print('problema con la definizione di amministratore')
     return []
@@ -322,24 +322,27 @@ def listaSEP(azienda=None,amministratore=None,permesso=None):
   ### delicatissimo 
   ### verificare che in lam venga effettivamente inserita solo la sede e non altri componenti
   ### sia che ci siano che non ci siano i permessi assegnati
- 
-  if per.nome not in permessi_assegnati:
-    print("per.nome non in permessi assegnati")
-    for s in sedix:
-      tmp = SEP.objects.filter(sede=s).filter(amministratore=amm).filter(permesso=per)
-      for n in tmp:
-        #lam.append({'sede':n,'permesso':per})
-        print("s:",n,per.nome,type(n))
-        lam.append(n.sede)
-  else:
-    print("per.nome in permessi assegnati")
-    #abbiamo un diritto di livello superiore
-    for s in sedix:
-      print("s:",s,per.nome,type(s))
-      lam.append(s)
-      #tmp.append({'sede':s,'permesso':per})
-      #tmp.append(s)
-    #lam = tmp
+
+  if per:
+    print('per.nome',per.nome)
+    print('per.asse',permessi_assegnati)
+    if per.nome not in permessi_assegnati:
+      print("per.nome non in permessi assegnati")
+      for s in sedix:
+        tmp = SEP.objects.filter(sede=s).filter(amministratore=amm).filter(permesso=per)
+        for n in tmp:
+          #lam.append({'sede':n,'permesso':per})
+          print("s:",n,per.nome,type(n))
+          lam.append(n.sede)
+    else:
+      print("per.nome in permessi assegnati")
+      #abbiamo un diritto di livello superiore
+      for s in sedix:
+        print("s:",s,per.nome,type(s))
+        lam.append(s)
+        #tmp.append({'sede':s,'permesso':per})
+        #tmp.append(s)
+      #lam = tmp
  
   print("lam",len(lam),type(lam))
   print(lam)