Эх сурвалжийг харах

aggiornamento AziendaId e Adminid

mauro 1 жил өмнө
parent
commit
93cf42d911

+ 17 - 29
azienda/templates/azienda.welcome.html

@@ -1,36 +1,24 @@
 {% extends 'base.html' %}
 
 {% block body %}
-  <form name="azienda" method="POST">
-  <table class='table table-striped table-hover'>
-    <thead class='thead-dark'>
-      <tr>
-        <th scope='col'>Azienda</th>
-        <th scope='col'>Partita Iva</th>
-      </tr>
-    </thead>
-    <tbody>
-      {% csrf_token %}
-      {% for az in azienda %}
-        <tr>
-	  <td>{{ az.nome }} </td>
-	  <td>{{ az.partitaita }}</td>
-          <td><button type="submit" class='btn btn-primary' name="utenti" value="{{ az.id }}">Utenti</button>
-              <button type='submit' class="btn btn-primary" name="documenti" value='{{ az.id }}'>Documenti</button>
-	      {% if listaAttivitaxAzienda %}
-	        <button type 'submit' class='btn btn-primary' name="xx" value='{{ az.id }}'>Attività proprie</button>
-	      {% else %}
-                <button type='submit' class='btn btn-primary' name="attivita" value='{{ az.id }}'>Tutte le Attività</button>
-	      {% endif %}
-	      <button type='submit' class='btn btn-primary' name='comunicazioni' value='{{ az.id }}'>Comunicazioni</button>
-         </td>
+  <div class='form-outline mb-3 text-center btn-primary h3'>
 
-	</tr>
-      {% endfor %} 
-    </tbody>
-  </table>
-    <div>
-  </form>
+  {% if not azienda %}
+    Attenzione, Selezionare una azienda dal pannello superiore!
+  {% else %}
+    <form name="azienda" method="POST">
+      {% csrf_token %}
+      <button type="submit" class='btn btn-primary' name="utenti" value="{{ az.id }}">Utenti</button>
+      <button type='submit' class="btn btn-primary" name="documenti" value='{{ az.id }}'>Documenti</button>
+      {% if listaAttivitaxAzienda %}
+        <button type 'submit' class='btn btn-primary' name="xx" value='{{ az.id }}'>Attività proprie</button>
+      {% else %}
+        <button type='submit' class='btn btn-primary' name="attivita" value='{{ az.id }}'>Tutte le Attività</button>
+      {% endif %}
+      <button type='submit' class='btn btn-primary' name='comunicazioni' value='{{ az.id }}'>Comunicazioni</button>
+    </form>
+  {% endif %}
+  </div>
 {% endblock %}
 
 {% block bodybottom %}

+ 34 - 27
azienda/views.py

@@ -8,24 +8,28 @@ from att.views import *
 from .forms import *
 
 def welcome(request):
+
   if not 'AdminId' in request.session:
     return HttpResponseRedirect(reverse("login:start"))
+
   AdminId = request.session['AdminId']
+  print('AdminId',AdminId)
+
+  AziendaId = request.session['AziendaId']
+  print('AziendaId',AziendaId)
 
   data = dict()
   data['Navbar']=True
   data['HeaderTitle'] = getConfig('HeaderTitle')
 
-  u = User.objects.get(pk=AdminId)
-  data['admin'] = u
+  admin = User.objects.get(pk=AdminId)
+  data['admin'] = admin
+  print('admin',admin.id,dir(admin),admin.get_username())
 
-  a = Assegnazione.objects.filter(user=u.id)
-  print(len(a))
-  tmplist = list()
-  for ax in a:
-    tmplist.append(ax.azienda)
+  assegnazione = Assegnazione.objects.filter(user=admin.id)
+  print('assegnazione',len(assegnazione))
 
-  data['listaAttivitaxAmministrazione']=getLogxAmministrazione(u)
+  data['listaAttivitaxAmministrazione']=getLogxAmministrazione(admin)
 
   if request.method=="POST":
 
@@ -35,47 +39,50 @@ def welcome(request):
       return HttpResponseRedirect(reverse("login:start"))
 
     if "sceltaazienda" in request.POST:
-      sceltaazienda = int(request.POST.get('sceltaazienda'))
+      sceltaazienda = request.POST.get('sceltaazienda')
+      try:
+        sceltaazienda = int(sceltaazienda)
+      except ValueError as ve:
+        print("Non e' stata fatta la scelta corretta")
+        print(ve)
+        return HttpResponseRedirect(reverse('azienda:welcome'))
+
       print("sceltaazienda = ",request.POST.get('sceltaazienda'))
       if sceltaazienda == 0: #richiesta una nuova azienda
         return HttpResponseRedirect(reverse('azienda:edit'))
-  
+      else:
+        azienda = Azienda.objects.get(pk=sceltaazienda)
+        data['azienda'] = azienda
+        request.session['AziendaId'] = azienda.id
+
     if  "utenti" in request.POST:
       print('premuto tasto utenti')
-      # stato premuto il tasto, tocca recuperare l'id
-      azienda = request.POST['utenti']
-      print('azienda x utenti',azienda)
-      request.session['AziendaId'] = azienda
       return HttpResponseRedirect(reverse('utente:welcome'))
 
     if 'documenti' in request.POST:
       # stato premuto il tasto documenti
-      azienda = request.POST['documenti']
       print('premuto tasto documenti',azienda)
-      print('azienda x documenti',azienda)
-      request.session['AziendaId'] = azienda
       return HttpResponseRedirect(reverse('documento:welcome'))
 
     if "attivita" in request.POST:
       print('premuto tasto attivita')
-      a = request.POST['attivita']
-      azienda = Azienda.objects.get(pk = a)
-      request.session['AziendaId'] = azienda.id
-      print('azienda x documenti',azienda.nome)
       data['listaAttivitaxAzienda']=getLogxAzienda(azienda)
 
     if 'comunicazioni' in request.POST:
       print('premuto tasto comunicazioni')
-      a = request.POST['comunicazioni']
-      azienda = Azienda.objects.get(pk = a)
-      request.session['AziendaId'] = azienda.id
-      print('azienda x comunicazioni',azienda.nome)
       return HttpResponseRedirect(reverse('comunicazione:welcome'))
 
-  data['azienda'] = tmplist
+  tmplist = list()
+  for tmp in assegnazione:
+    tmplist.append(tmp.azienda)
+
+  data['aziendaLista'] = tmplist
+  print('data',data)
+  print('numero aziende',len(data['aziendaLista']))
 
   return render(request,'azienda.welcome.html',data)
 
+# creazione azienda
 def edit(request):
   AdminId = request.session['AdminId']
 
@@ -93,7 +100,7 @@ def edit(request):
       azienda.mail = nuovaazienda.cleaned_data.get('mail')
       azienda.partitaiva = nuovaazienda.cleaned_data.get('partitaiva')
       azienda.save()
-      request.session['aziendaId'] = azienda.id
+      request.session['AziendaId'] = azienda.id
       assegnazione = Assegnazione()
       assegnazione.azienda=azienda
       assegnazione.user=User.objects.get(pk=AdminId)

+ 15 - 4
static/templates/base.html

@@ -24,6 +24,7 @@
       <span class="navbar-toggler-icon"></span>
     </button>
     <div class="collapse navbar-collapse" id="navbarSupportedContent">
+
       <ul class="navbar-nav me-auto mb-2 mb-lg-0">
         <li class="nav-item">
           <ul>
@@ -31,8 +32,8 @@
             {% csrf_token %}
             <select class="form-select form-select-lg mb-3" aria-label=".form-select-lg" name="sceltaazienda" onchange="this.form.submit()">
 	      <option>Scelta Azienda</option>
-              {% for a in azienda %}
-	      <option value={{ a.id }}><button type="submit" class="btn btn-primary" name="sceltaazienda" value="{{ a.id }}">{{ a.nome }}</button></option>
+              {% for a in aziendaLista %}
+	      <option value={{ a.id }} {% if a.id == azienda.id %}selected{% endif %}>{{ a.nome }}</button></option>
               {% endfor %}
               <option value=0>Nuova Azienda</option>
             </select>
@@ -40,6 +41,7 @@
           </ul>
         </li>
       </ul>
+
       <form class="d-flex" method='POST'>
         {% csrf_token %}
         <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
@@ -52,15 +54,24 @@
   </nav>
 {% endif %}
 <div class="col-md-3 col-sm-3 col-xs-3">&nbsp;</div>
- 
+
+<!-- blocco info generali -->
 <div class='container'>
     {% block top %}
-    <div class='form-outline mb-5 text-center btn-primary h3'>
+    <div class='form-outline mb-5 text-center h2'>
            {{ HeaderTitle }}
     </div>
+    <div class='form-outline mb-2 text-center h3'>
+	    {% if admin %} {{ admin.username }} {% endif %}
+    </div>
+    <div class='form-outline mb-5 text-center h3'>
+            {% if azienda %} {{ azienda.nome }} {% endif %}
+    </div>
+
     {% endblock %}
 </div>
 
+<!-- blocco centrale -->
 <div class='container'>
       {% block body %}
         Place Holder

+ 1 - 0
utente/views.py

@@ -83,6 +83,7 @@ def edit(request):
 
   if not 'AziendaId' in request.session:
     return HttpResponseRedirect(reverse("login:start"))
+
   data['AziendaId']=request.session['AziendaId']
 
   if not 'AdminId' in request.session or 'UserId' in request.session: