def juna(request): junat = sql_komentajat.hae_junat() dumps = list(junat) dumps = [model_to_dict(juna) for juna in dumps] dumps = json.dumps(dumps, default=date_handler) if request.method == 'POST': data = request.POST.copy().dict() if "create" in data: if not _validoi(data): return _virheviesti(request, data, "Pakollista tietoa puuttuu!", junat, dumps) if sql_komentajat.juna_olemassa(data["numero"]): sql_komentajat.paivita_juna(data) messages.add_message(request, messages.SUCCESS, "Juna muutettu!") else: sql_komentajat.luo_juna(data) messages.add_message(request, messages.SUCCESS, "Juna tallennettu!") if "delete" in data: print(data) sql_komentajat.poista_juna(data) messages.add_message(request, messages.SUCCESS, "Juna poistettu!") return render(request, 'junaApp/juna.html', {'junat' : [{'mjono' : junastr(juna), 'numero' : juna.numero} for juna in junat], 'jscript' : dumps})
def jselaus(request): junat = list(sql_komentajat.hae_junat()) junat = [model_to_dict(juna) for juna in junat] junat = json.dumps(junat, default=date_handler) pysahdykset = list(sql_komentajat.hae_pysahdykset()) pysahdykset = [model_to_dict(pysahdys) for pysahdys in pysahdykset] pysahdykset[0]["saapumisaika"] = str(pysahdykset[0]["saapumisaika"]) pysahdykset[0]["lahtoaika"] = str(pysahdykset[0]["lahtoaika"]) pysahdykset = json.dumps(pysahdykset, default=date_handler) return render(request, 'junaApp/jselaus.html', {"junat" : junat, "pysahdykset" : pysahdykset})
def pysahdys(request): junat = sql_komentajat.hae_junat() asemat = sql_komentajat.hae_asemat() if request.method == 'POST': data = request.POST.copy().dict() if not _validoi(data): messages.add_message(request, messages.ERROR, "Tietoa puuttuu!") elif sql_komentajat.pysahdys_olemassa(data): messages.add_message(request, messages.ERROR, "On jo olemassa!") else: sql_komentajat.luo_pysahdys(data) messages.add_message(request, messages.SUCCESS, "Luonti onnistui!") return render(request, 'junaApp/pysahdys.html', {'junat' : [{'mjono' : junastr(juna), 'numero' : juna.numero} for juna in junat], 'asemat' : [asema.nimi for asema in asemat]})