fix(schedule): corregir casteo de filtro de piso para compatibilidad con VARCHAR en PostgreSQL

This commit is contained in:
Carlos Tello
2026-09-03 05:28:10 -03:00
parent 6ccc9e8c87
commit 5f0476be79
2 changed files with 20 additions and 4 deletions
+5 -1
View File
@@ -107,7 +107,11 @@ def list_classrooms():
query = query.filter(Classroom.building_id == int(building_filter)) query = query.filter(Classroom.building_id == int(building_filter))
if floor_filter: if floor_filter:
query = query.filter(Classroom.floor == floor_filter) flr = str(floor_filter).strip()
if flr.upper() in ['0', 'PB', 'PLANTA BAJA']:
query = query.filter(db.or_(Classroom.floor == '0', Classroom.floor.ilike('%PB%'), Classroom.floor.ilike('%Planta Baja%')))
else:
query = query.filter(Classroom.floor == flr)
if search: if search:
query = query.filter( query = query.filter(
+15 -3
View File
@@ -41,7 +41,11 @@ def today_schedule():
) )
if floor_filter: if floor_filter:
query = query.filter(Classroom.floor == str(floor_filter).strip()) flr = str(floor_filter).strip()
if flr.upper() in ['0', 'PB', 'PLANTA BAJA']:
query = query.filter(or_(Classroom.floor == '0', Classroom.floor.ilike('%PB%'), Classroom.floor.ilike('%Planta Baja%')))
else:
query = query.filter(Classroom.floor == flr)
if shift_filter: if shift_filter:
query = query.filter(Reservation.shift.ilike(f'%{shift_filter}%')) query = query.filter(Reservation.shift.ilike(f'%{shift_filter}%'))
@@ -501,7 +505,11 @@ def list_reservations():
) )
if floor_filter: if floor_filter:
query = query.filter(Classroom.floor == str(floor_filter).strip()) flr = str(floor_filter).strip()
if flr.upper() in ['0', 'PB', 'PLANTA BAJA']:
query = query.filter(or_(Classroom.floor == '0', Classroom.floor.ilike('%PB%'), Classroom.floor.ilike('%Planta Baja%')))
else:
query = query.filter(Classroom.floor == flr)
if shift_filter: if shift_filter:
query = query.filter(Reservation.shift.ilike(f'%{shift_filter}%')) query = query.filter(Reservation.shift.ilike(f'%{shift_filter}%'))
@@ -716,7 +724,11 @@ def calendar_data():
) )
if floor: if floor:
query = query.filter(Classroom.floor == str(floor).strip()) flr = str(floor).strip()
if flr.upper() in ['0', 'PB', 'PLANTA BAJA']:
query = query.filter(or_(Classroom.floor == '0', Classroom.floor.ilike('%PB%'), Classroom.floor.ilike('%Planta Baja%')))
else:
query = query.filter(Classroom.floor == flr)
if search: if search:
query = query.filter( query = query.filter(