diff --git a/dbgen.py b/dbgen.py index 0374179..73d14f2 100644 --- a/dbgen.py +++ b/dbgen.py @@ -78,8 +78,7 @@ class Dispositivo(db.Model): 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 + def __init__(self, tipo, marca, modello, inv_ced, inv_ente, fornitore self.tipo = tipo self.marca = marca self.modello = modello diff --git a/server.py b/server.py index 88dfb13..9ee9c1d 100644 --- a/server.py +++ b/server.py @@ -79,8 +79,7 @@ class Dispositivo(db.Model): 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 + def __init__(self, tipo, marca, modello, inv_ced, inv_ente, fornitore): self.tipo = tipo self.marca = marca self.modello = modello @@ -313,3 +312,67 @@ def page_imp_show(iid): imp.passwd = request.form["passwd"] db.session.commit() return redirect(url_for('page_imp_list')) + +@app.route('/disp_add', methods=['GET', 'POST']) +def page_disp_add(): + if 'username' not in session: + return redirect(url_for('page_login')) + if request.method == 'GET': + opzioni=["Centralino", "Dispositivo generico di rete", "Marcatempo", "PC", "Portatile", "POS", "Router", "Server", "Stampante di rete", "Switch", "Telefono IP", "Monitor", "Scanner", "Stampante locale"] + impiegati = Impiegato.query.all() + css = url_for("static", filename="style.css") + return render_template("dispositivo/add.html.j2", css=css, impiegati=impiegati,opzioni=opzioni, type="dev", user=session["username"]) + else: + nuovodisp = Dispositivo(request.form['tipo'], request.form['marca'], request.form['modello'], request.form['inv_ced'], request.form['inv_ente'], request.form['fornitore']) + db.session.add(nuovodisp) + db.session.commit() + return redirect(url_for('page_disp_list')) + +@app.route('/disp_del/') +def page_disp_del(did): + if 'username' not in session: + return redirect(url_for('page_login')) + disp = Dispositivo.query.get(did) + db.session.delete(disp) + db.session.commit() + return redirect(url_for('page_disp_list')) + +@app.route('/disp_list') +def page_disp_list(): + if 'username' not in session: + return redirect(url_for('page_login')) + dispositivi = Dispositivo.query.all() + css = url_for("static", filename="style.css") + return render_template("dispositivo/list.html.j2", css=css, dispositivi=dispositivi, type="disp", user=session["username"]) + +@app.route('/disp_list/') +def page_disp_list_plus(did): + if 'username' not in session: + return redirect(url_for('page_login')) + dispositivi = Dispositivo.query.all() + css = url_for("static", filename="style.css") + return render_template("dispositivo/list.html.j2", css=css, impiegati=impiegati, user=session["username"]) + +@app.route('/disp_show/', methods=['GET', 'POST']) +def page_disp_show(did): + if 'username' not in session: + return redirect(url_for('page_login')) + if request.method == "GET": + opzioni = ["Centralino", "Dispositivo generico di rete", "Marcatempo", "PC", "Portatile", "POS", "Router", "Server", "Stampante di rete", "Switch", "Telefono IP", "Monitor", "Scanner", "Stampante locale"] + dev = Dispositivo.query.get(did) + css = url_for("static", filename="style.css") + return render_template("dispositivo/show.html.j2", css=css, dispositivo=dev, tipi=opzioni, user=session["username"]) + else: + dev = Dispositivo.query.get(did) + dev.tipo = request.form["tipo"] + dev.marca = request.form["marca"] + dev.modello = request.form["modello"] + dev.inv_ced = request.form["inv_ced"] + dev.inv_ente = request.form["inv_ente"] + dev.fornitore = request.form["fornitore"] + db.session.commit() + return redirect(url_for('page_disp_list')) + +@app.route('/details_host') +def page_details_host(): + return "Non implementato" diff --git a/templates/dispositivo/add.html.j2 b/templates/dispositivo/add.html.j2 new file mode 100644 index 0000000..7b6387b --- /dev/null +++ b/templates/dispositivo/add.html.j2 @@ -0,0 +1,73 @@ + + + Aggiunta dispositivo - Inventario + + + + + {% include 'nav.html.j2' %} +
+

+ Aggiunta nuovo dispositivo +

+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ + diff --git a/templates/dispositivo/details.html.j2 b/templates/dispositivo/details.html.j2 new file mode 100644 index 0000000..e69de29 diff --git a/templates/dispositivo/list.html.j2 b/templates/dispositivo/list.html.j2 new file mode 100644 index 0000000..5040fe1 --- /dev/null +++ b/templates/dispositivo/list.html.j2 @@ -0,0 +1,46 @@ + + + Elenco dispositivi - Inventario + + + + + {% include 'nav.html.j2' %} +
+

+ Dispositivi esistenti +

+ + + + + + + + + + + + + + + + {% for dispositivo in dispositivi %} + + + + + + + + + + + + + {% endfor %} +
Tipo dispositivoUtentiInventario CEDInventario enteMarcaModelloFornitoreIspezionaModificaElimina
{{ dispositivo.tipo }} ITS A FEATURE {{ dispositivo.inv_ced }}{{ dispositivo.inv_ente }}{{ dispositivo.marca }}{{ dispositivo.modello }}{{ dispositivo.fornitore }}
+ Aggiungi +
+ + diff --git a/templates/dispositivo/show.html.j2 b/templates/dispositivo/show.html.j2 new file mode 100644 index 0000000..830de00 --- /dev/null +++ b/templates/dispositivo/show.html.j2 @@ -0,0 +1,73 @@ + + + Modifica servizio - Inventario + + + + + {% include 'nav.html.j2' %} +
+

+ Modifica servizio +

+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +