Refactoring for reading the config
This commit is contained in:
parent
963ee6b86f
commit
fc11a1e1eb
9 changed files with 264 additions and 166 deletions
|
@ -4,30 +4,36 @@ import logging
|
|||
import config
|
||||
from aiohttp import ClientSession
|
||||
from gestion_sports.gestion_sports_connector import GestionSportsConnector
|
||||
from models import BookingFilter, User
|
||||
from models import BookingFilter, Club, User
|
||||
|
||||
LOGGER = logging.getLogger(__name__)
|
||||
|
||||
|
||||
async def book(url: str, user: User, booking_filter: BookingFilter) -> None:
|
||||
async def book(club: Club, user: User, booking_filter: BookingFilter) -> int | None:
|
||||
async with ClientSession() as session:
|
||||
platform = GestionSportsConnector(session, url)
|
||||
platform = GestionSportsConnector(session, club.url)
|
||||
await platform.connect()
|
||||
await platform.login(user)
|
||||
await platform.book(booking_filter)
|
||||
await platform.login(user, club)
|
||||
return await platform.book(booking_filter, club)
|
||||
|
||||
|
||||
def main() -> None:
|
||||
LOGGER.info("Starting booking padel court")
|
||||
def main() -> int | None:
|
||||
user = config.get_user()
|
||||
booking_filter = config.get_booking_filter()
|
||||
club = config.get_club()
|
||||
|
||||
LOGGER.info(
|
||||
f"login={config.USER}, password={config.PASSWORD}, club_id={config.CLUB_ID}"
|
||||
"Starting booking court of %s for user %s at club %s at %s",
|
||||
booking_filter.sport_id,
|
||||
user.login,
|
||||
club.id,
|
||||
booking_filter.date,
|
||||
)
|
||||
user = User(login=config.USER, password=config.PASSWORD, club_id=config.CLUB_ID)
|
||||
LOGGER.info(
|
||||
f"court_id={config.COURT_IDS},sport_id={config.SPORT_ID},date={config.DATE_TIME}"
|
||||
)
|
||||
booking_filter = BookingFilter(
|
||||
court_ids=config.COURT_IDS, sport_id=config.SPORT_ID, date=config.DATE_TIME
|
||||
)
|
||||
asyncio.run(book(config.GESTION_SPORTS_URL, user, booking_filter))
|
||||
LOGGER.info("Finished booking padel court")
|
||||
court_booked = asyncio.run(book(club, user, booking_filter))
|
||||
if court_booked:
|
||||
LOGGER.info(
|
||||
"Court %s booked successfully at %s", court_booked, booking_filter.date
|
||||
)
|
||||
else:
|
||||
LOGGER.info("Booking did not work")
|
||||
return court_booked
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue