CleanGuestlineTask — Developer Reference
Developer reference for CleanGuestlineTask used to transform Raw* Guestline models into Clean* models for Queensway.
File: etl_lib/tasks/chains/guestline/CleanGuestlineTask.py
Constructor Parameters
| Parameter | Type | Description |
|---|---|---|
name | Optional[str] | Custom task name |
job_context | JobContext | Job context with Spark session and config |
**kwargs | dict | Extra Task kwargs |
Example
from etl_lib.tasks.chains.guestline.CleanGuestlineTask import CleanGuestlineTask
task = CleanGuestlineTask(job_context=job_context)
task.run()Implementation Summary
requires()→[RawRoompicksModel, RawPersonprofilesModel]provides()→[CleanGuestModel, CleanReservationModel, CleanRoomModel]
Key implementations:
- Deduplicate reservations using a status priority and latest
lasteditedtimestamptimestamp - Create
res_idandguest_idUUIDs when not present in payloads - Enrich guest profiles by joining
RawPersonprofilesModelto reservations - Explode ratelines to create daily room records with distributed revenue and stay dates
- Apply cleaning helpers for address/country/email/phone normalization
Back to tasks: /processes/tasks/chains/guestline/clean-guestline-task
Last updated on