| from cbh.api.availability.schemas import UpdateAvailabilityRequest |
| from cbh.api.availability.models import AvailabilityModel |
| from cbh.api.common.db_requests import get_obj_by_id |
| from cbh.core.config import settings |
|
|
|
|
| async def update_availability_obj( |
| availability: UpdateAvailabilityRequest, coach_id: str |
| ) -> AvailabilityModel: |
| """ |
| Update availability object. |
| """ |
| availability_obj = await get_obj_by_id( |
| AvailabilityModel, None, additional_filter={"coach.id": coach_id} |
| ) |
| availability_obj.weeklySchedule = availability.weeklySchedule |
| await settings.DB_CLIENT.availabilities.update_one( |
| {"coach.id": coach_id}, |
| {"$set": availability_obj.to_mongo()}, |
| ) |
| return availability_obj |
|
|