mirror of
https://github.com/Steffo99/estus.git
synced 2025-02-16 14:13:56 +00:00
Miglioramenti e classe Dispositivo
This commit is contained in:
parent
02c8fa8c79
commit
8df4826745
6 changed files with 94 additions and 13 deletions
41
dbgen.py
41
dbgen.py
|
@ -56,6 +56,7 @@ class Impiegato(db.Model):
|
||||||
nomeimpiegato = db.Column(db.String(128))
|
nomeimpiegato = db.Column(db.String(128))
|
||||||
username = db.Column(db.String(32), unique=True)
|
username = db.Column(db.String(32), unique=True)
|
||||||
passwd = db.Column(db.String(32))
|
passwd = db.Column(db.String(32))
|
||||||
|
dispositivi = db.relationship("Accesso", backref='impiegato', lazy='dynamic')
|
||||||
|
|
||||||
def __init__(self, sid, nome, username, passwd):
|
def __init__(self, sid, nome, username, passwd):
|
||||||
self.sid = sid
|
self.sid = sid
|
||||||
|
@ -66,8 +67,46 @@ class Impiegato(db.Model):
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<Impiegato {}>".format(self.nome)
|
return "<Impiegato {}>".format(self.nome)
|
||||||
|
|
||||||
|
|
||||||
|
class Dispositivo(db.Model):
|
||||||
|
did = db.Column(db.Integer, primary_key=True)
|
||||||
|
utenti = db.relationship("Accesso", backref='dispositivo', lazy='dynamic')
|
||||||
|
tipo = db.Column(db.String(32))
|
||||||
|
marca = db.Column(db.String(64))
|
||||||
|
modello = db.Column(db.String(32))
|
||||||
|
inv_ced = db.Column(db.String(8))
|
||||||
|
inv_ente = db.Column(db.String(8))
|
||||||
|
fornitore = db.Column(db.String(64))
|
||||||
|
|
||||||
|
def __init__(self, did, tipo, marca, modello, inv_ced, inv_ente, fornitore):
|
||||||
|
self.did = did
|
||||||
|
self.tipo = tipo
|
||||||
|
self.marca = marca
|
||||||
|
self.modello = modello
|
||||||
|
self.inv_ced = inv_ced
|
||||||
|
self.inv_ente = inv_ente
|
||||||
|
self.fornitore = fornitore
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return "<Dispositivo {}>".format(self.inv_ced)
|
||||||
|
|
||||||
|
|
||||||
|
class Accesso(db.Model):
|
||||||
|
aid = db.Column(db.Integer, primary_key=True)
|
||||||
|
iid = db.Column(db.Integer, db.ForeignKey('impiegato.iid'))
|
||||||
|
did = db.Column(db.Integer, db.ForeignKey('dispositivo.did'))
|
||||||
|
|
||||||
|
def __init__(self, iid, did):
|
||||||
|
self.iid = iid
|
||||||
|
self.did = did
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return "<Accesso {} su {}>".format(iid, did)
|
||||||
|
|
||||||
db.create_all()
|
db.create_all()
|
||||||
|
|
||||||
nuovouser = User('Snake', 'v3n0m')
|
nuovouser = User('stagista', 'smecds')
|
||||||
|
db.session.add(nuovouser)
|
||||||
|
nuovouser = User('gmacchi', 'steffo99')
|
||||||
db.session.add(nuovouser)
|
db.session.add(nuovouser)
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
52
server.py
52
server.py
|
@ -1,4 +1,4 @@
|
||||||
from flask import Flask, session, url_for, redirect, request, render_template
|
from flask import Flask, session, url_for, redirect, request, render_template, abort
|
||||||
from flask_sqlalchemy import SQLAlchemy
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
@ -57,6 +57,7 @@ class Impiegato(db.Model):
|
||||||
nomeimpiegato = db.Column(db.String(128))
|
nomeimpiegato = db.Column(db.String(128))
|
||||||
username = db.Column(db.String(32), unique=True)
|
username = db.Column(db.String(32), unique=True)
|
||||||
passwd = db.Column(db.String(32))
|
passwd = db.Column(db.String(32))
|
||||||
|
dispositivi = db.relationship("Accesso", backref='impiegato', lazy='dynamic')
|
||||||
|
|
||||||
def __init__(self, sid, nomeimpiegato, username, passwd):
|
def __init__(self, sid, nomeimpiegato, username, passwd):
|
||||||
self.sid = sid
|
self.sid = sid
|
||||||
|
@ -65,12 +66,53 @@ class Impiegato(db.Model):
|
||||||
self.passwd = passwd
|
self.passwd = passwd
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<Impiegato {}>".format(self.nomeimpiegato)
|
return "<Impiegato {}>".format(self.nome)
|
||||||
|
|
||||||
|
|
||||||
|
class Dispositivo(db.Model):
|
||||||
|
did = db.Column(db.Integer, primary_key=True)
|
||||||
|
utenti = db.relationship("Accesso", backref='dispositivo', lazy='dynamic')
|
||||||
|
tipo = db.Column(db.String(32))
|
||||||
|
marca = db.Column(db.String(64))
|
||||||
|
modello = db.Column(db.String(32))
|
||||||
|
inv_ced = db.Column(db.String(8))
|
||||||
|
inv_ente = db.Column(db.String(8))
|
||||||
|
fornitore = db.Column(db.String(64))
|
||||||
|
|
||||||
|
def __init__(self, did, tipo, marca, modello, inv_ced, inv_ente, fornitore):
|
||||||
|
self.did = did
|
||||||
|
self.tipo = tipo
|
||||||
|
self.marca = marca
|
||||||
|
self.modello = modello
|
||||||
|
self.inv_ced = inv_ced
|
||||||
|
self.inv_ente = inv_ente
|
||||||
|
self.fornitore = fornitore
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return "<Dispositivo {}>".format(self.inv_ced)
|
||||||
|
|
||||||
|
|
||||||
|
class Accesso(db.Model):
|
||||||
|
aid = db.Column(db.Integer, primary_key=True)
|
||||||
|
iid = db.Column(db.Integer, db.ForeignKey('impiegato.iid'))
|
||||||
|
did = db.Column(db.Integer, db.ForeignKey('dispositivo.did'))
|
||||||
|
|
||||||
|
def __init__(self, iid, did):
|
||||||
|
self.iid = iid
|
||||||
|
self.did = did
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return "<Accesso {} su {}>".format(iid, did)
|
||||||
|
|
||||||
|
|
||||||
# Funzioni del sito
|
# Funzioni del sito
|
||||||
def login(username, password):
|
def login(username, password):
|
||||||
user = User.query.filter_by(username=username).first()
|
user = User.query.filter_by(username=username).first()
|
||||||
return password == user.passwd
|
try:
|
||||||
|
return password == user.passwd
|
||||||
|
except AttributeError:
|
||||||
|
# Se non esiste l'Utente
|
||||||
|
return False
|
||||||
|
|
||||||
# Sito
|
# Sito
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
|
@ -92,7 +134,7 @@ def page_login():
|
||||||
session['username'] = request.form['username']
|
session['username'] = request.form['username']
|
||||||
return redirect(url_for('page_dashboard'))
|
return redirect(url_for('page_dashboard'))
|
||||||
else:
|
else:
|
||||||
return "Errore."
|
abort(403)
|
||||||
|
|
||||||
@app.route('/dashboard')
|
@app.route('/dashboard')
|
||||||
def page_dashboard():
|
def page_dashboard():
|
||||||
|
@ -220,7 +262,7 @@ def page_imp_add():
|
||||||
if 'username' not in session:
|
if 'username' not in session:
|
||||||
return redirect(url_for('page_login'))
|
return redirect(url_for('page_login'))
|
||||||
if request.method == 'GET':
|
if request.method == 'GET':
|
||||||
servizi = Servizio.query.all()
|
servizi = Servizio.query.join(Ente).all()
|
||||||
css = url_for("static", filename="style.css")
|
css = url_for("static", filename="style.css")
|
||||||
return render_template("impiegato/add.html.j2", css=css, servizi=servizi, type="imp", user=session["username"])
|
return render_template("impiegato/add.html.j2", css=css, servizi=servizi, type="imp", user=session["username"])
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
{% include 'nav.html.j2' %}
|
{% include 'nav.html.j2' %}
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm-3">
|
<div class="col-sm-4">
|
||||||
<h2>
|
<h2>
|
||||||
Servizi per ente
|
Servizi per ente
|
||||||
</h2>
|
</h2>
|
||||||
|
@ -21,7 +21,7 @@
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-3">
|
<div class="col-sm-4">
|
||||||
<h2>
|
<h2>
|
||||||
Utenti per ente
|
Utenti per ente
|
||||||
</h2>
|
</h2>
|
||||||
|
@ -34,7 +34,7 @@
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-4">
|
||||||
Destra
|
Destra
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<form class="form-inline" action="/imp_add" method="post">
|
<form class="form-inline" action="/imp_add" method="post">
|
||||||
<select class="form-control" name="sid">
|
<select class="form-control" name="sid">
|
||||||
{% for servizio in servizi %}
|
{% for servizio in servizi %}
|
||||||
<option value="{{servizio.sid}}">{{servizio.nomeservizio}}</option>
|
<option value="{{servizio.sid}}">{{servizio.ente.nomebreveente}} - {{servizio.nomeservizio}}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
<input class="form-control" type="text" placeholder="Nome e cognome" name="nomeimpiegato">
|
<input class="form-control" type="text" placeholder="Nome e cognome" name="nomeimpiegato">
|
||||||
|
|
|
@ -11,9 +11,9 @@
|
||||||
Modifica impiegato
|
Modifica impiegato
|
||||||
</h1>
|
</h1>
|
||||||
<form class="form-inline" action="/imp_show/{{imp.iid}}" method="post">
|
<form class="form-inline" action="/imp_show/{{imp.iid}}" method="post">
|
||||||
<select class="form-control" name="sid" value="{{imp.sid}}">
|
<select class="form-control" name="sid">
|
||||||
{% for servizio in servizi %}
|
{% for servizio in servizi %}
|
||||||
<option value="{{servizio.sid}}">{{servizio.nomeservizio}}</option>
|
<option value="{{servizio.sid}}" {% if imp.sid == servizio.sid %}selected="selected"{% endif %}>{{servizio.ente.nomebreveente}} - {{servizio.nomeservizio}}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
<input class="form-control" type="text" placeholder="Nome e cognome" name="nomeimpiegato" value="{{imp.nomeimpiegato}}">
|
<input class="form-control" type="text" placeholder="Nome e cognome" name="nomeimpiegato" value="{{imp.nomeimpiegato}}">
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<form class="form-inline" action="/serv_show/{{serv.sid}}" method="post">
|
<form class="form-inline" action="/serv_show/{{serv.sid}}" method="post">
|
||||||
<select class="form-control" name="eid" value="serv.eid">
|
<select class="form-control" name="eid" value="serv.eid">
|
||||||
{% for ente in enti %}
|
{% for ente in enti %}
|
||||||
<option value="{{ente.eid}}">{{ente.nomeente}}</option>
|
<option value="{{ente.eid}}" {% if serv.eid == ente.eid %}selected="selected"{% endif %}>{{ente.nomeente}}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
<input class="form-control" type="text" placeholder="Nome servizio" name="nomeservizio" value="{{serv.nomeservizio}}">
|
<input class="form-control" type="text" placeholder="Nome servizio" name="nomeservizio" value="{{serv.nomeservizio}}">
|
||||||
|
|
Loading…
Add table
Reference in a new issue