from flask import Blueprint, render_template, request, redirect, url_for
|
|
|
|
from datetime import date, timedelta
|
|
|
|
from padel.basededatos import get_db
|
|
|
|
bp = Blueprint("reservas", __name__)
|
|
|
|
@bp.route("/misreservas")
|
|
def misreservas():
|
|
db = get_db()
|
|
|
|
hoy = date.today()
|
|
manana = hoy + timedelta(days=1)
|
|
pasado = hoy + timedelta(days=2)
|
|
|
|
reservas = db.execute(
|
|
# "SELECT id, nombre, fecha, hora FROM reservas WHERE fecha>=? AND fecha<=? ORDER BY fecha DESC", (hoy,pasado)
|
|
"SELECT id, nombre, fecha, hora FROM reservas ORDER BY fecha DESC"
|
|
).fetchall()
|
|
|
|
return render_template("reservas/misreservas.html", reservas=reservas)
|
|
|
|
@bp.route("/inserta/<diaelegido>", methods=['GET', 'POST'])
|
|
def inserta(diaelegido):
|
|
if request.method == "POST":
|
|
nombre = request.form["nombre"] or "Anónimo"
|
|
fecha = diaelegido
|
|
hora = request.form["hora"]
|
|
|
|
db = get_db()
|
|
db.execute(
|
|
"INSERT INTO reservas (nombre, fecha, hora) VALUES (?, ?, ?)", (nombre, fecha, hora),
|
|
)
|
|
db.commit()
|
|
|
|
return redirect(url_for("reservas.misreservas"))
|
|
|
|
|
|
@bp.route("/reservar/<diaelegido>")
|
|
def reservar(diaelegido):
|
|
|
|
db = get_db()
|
|
|
|
hoy = date.today()
|
|
manana = hoy + timedelta(days=1)
|
|
pasado = hoy + timedelta(days=2)
|
|
|
|
reservas = db.execute(
|
|
"SELECT id, nombre, fecha, hora FROM reservas WHERE fecha=? ORDER BY fecha DESC", (diaelegido,)
|
|
).fetchall()
|
|
|
|
for fila in reservas:
|
|
print("Fecha ", fila["fecha"] , ". Hora: ", fila["hora"])
|
|
|
|
return render_template("reservas/reservar.html", diaelegido=diaelegido)
|
|
|
|
# Ruta para eliminar una reserva
|
|
@bp.route('/eliminar_reserva/<int:id>', methods=['POST'])
|
|
def eliminar_reserva(id):
|
|
|
|
db = get_db()
|
|
db.execute(
|
|
"DELETE FROM reservas WHERE id=?", (id,)
|
|
)
|
|
db.commit()
|
|
|
|
return redirect(url_for('reservas.misreservas'))
|
|
|
|
@bp.route("/eligedia", methods=['GET', 'POST'])
|
|
def eligedia():
|
|
hoy = date.today()
|
|
manana = hoy + timedelta(days=1)
|
|
pasado = hoy + timedelta(days=2)
|
|
|
|
print("Hoy es: ", hoy)
|
|
print("Mañana será: ", manana)
|
|
print("Pasado será: ", pasado)
|
|
|
|
if request.method == "POST":
|
|
diaelegido = request.form['dias']
|
|
|
|
print("Día elegido:", diaelegido)
|
|
|
|
db = get_db()
|
|
|
|
horashoy = db.execute(
|
|
"SELECT * FROM horas WHERE fecha=?", (diaelegido,)
|
|
).fetchall()
|
|
|
|
db.commit()
|
|
|
|
if not horashoy:
|
|
print("No hay horas para hoy")
|
|
db = get_db()
|
|
|
|
db.execute(
|
|
"INSERT INTO horas (fecha, hora0900, hora1000, hora1100, hora1200, hora1300, hora1400, hora1500, hora1600, hora1700, hora1800, hora1900, hora2000, hora2100, hora2200) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", (diaelegido,"-","-","-","-","-","-","-","-","-","-","-","-","-","-",),
|
|
)
|
|
db.commit()
|
|
|
|
horashoy = db.execute(
|
|
"SELECT * FROM horas WHERE fecha=?", (diaelegido,)
|
|
).fetchall()
|
|
|
|
db.commit()
|
|
|
|
print("eligedia: horashoy: ", horashoy)
|
|
return redirect(url_for("reservas.reservar",diaelegido=diaelegido))
|
|
|
|
return render_template("reservas/eligedia.html",hoy=hoy,manana=manana,pasado=pasado)
|