Делайте отдельный сервис. В сервисе метод получения списка пользователей в котором и воткнете нужные проверки. Особенно если у вас список пользователей потребуется в разным местах, а затем вы решите сменить механизм кеширования, вам достаточно будет поправить логику только в одном месте. В сервис можно будет добавить кучу еще всяких методов, например удаление пользователя, который будет дропать пользователя сразу и из кеша и из базы, или получение списка подчиненных, который у каждого авторизированного пользователя разный. Кароче инкапсуляция во всей красе.
Либо cron и команда которая проверяет прошли ли сутки с момента бронирования и меняет статус.
Либо где-то в модели сделать метод isBooked который будет возвращать true, в случае если стоит статус 'забронирован' и сутки еще не прошли, и false в противном случае. Но скорей всего надо будет добавить где-то логику которая будет изменять в базе статус если этот метод вернул false (как в указано ответе выше, можно эту логику записать в триггер, в mysql они есть).
Без примеров что-то более подробное сложно посоветовать.