UPDATE bookings with broken state
List dangling non-completed bookings across all organizations and how many there are and group by organization and the state of the booking:
tms_booking=> SELECT org_index, COUNT(state) FROM booking WHERE state IN ('3', '4', '5', '7', '8','11') AND pickup_booked < '2025-08-25 00:00:00' GROUP BY org_index, state;
Tested with one from HelsinginMPK that was from yesterday:
tms_booking=> SELECT state, COUNT(state) FROM booking WHERE org_index = 11 AND state IN ('3', '4', '5', '7', '8','11') AND pickup_booked < '2025-08-25 00:00:00' AND pickup_booked > '2025-08-23 23:59:59' GROUP BY state;
-[ RECORD 1 ]
state | 7
count | 1
tms_booking=> BEGIN ;
BEGIN
tms_booking=*> UPDATE booking SET state = 9 WHERE org_index = 11 AND state IN ('3', '4', '5', '7', '8','11') AND pickup_booked < '2025-08-25 00:00:00' AND pickup_booked > '2025-08-23 23:59:59';
UPDATE 1
tms_booking=*> COMMIT ;
COMMIT
Updated all 2121 dangling non-completed bookings across all organizations:
tms_booking=> BEGIN ;
BEGIN
tms_booking=*> UPDATE booking SET state = 9 WHERE state IN ('3', '4', '5', '7', '8','11') AND pickup_booked < '2025-08-25 00:00:00';
UPDATE 2121
tms_booking=*> COMMIT ;
COMMIT