- Read Rates from XML file
- Load Rates into database
- Read Rate Modifications from XML file
- Load Rate Modifications into database
- Read Availability from XML file
- Load Availability into database
- Read Taxes and Fees from XML file
- Load Taxes and Fees into database
- Read Promotions from XML file
- Load Promotions into database
- Read Extra Guests from XML file
- Load Extra Guests into database
- Read Hotel Inventory from XML file
- Load Hotel Inventory into database
- Handle Day of the Week specifications
- Read and load Stay Dates ranges for Rate Modifications and Promotions
- Parse and add files data into sqlite
- Add command line parser
- Compute a feed price for specified dates
- Get applicable rates from db
- Get applicable taxes from db
- Get applicable fees from db
- Get applicable promotions from db
- Get applicable extra charges from db
- Calculate base rate
- Apply fees
- Apply taxes
- Apply promotions
- FastAPI
- Setup routes and fixup parameters
- Connect to database
- Send proper response
- Allow feed files to send as zip file
- Allow raw files to send as group of text files
- Retries on zip file with
stamina
- Web interface
- Input fields
- Drag and drop file set of ARI XML files
- Compute feed price
- Show raw response
- Show formatted data
- Add calendar view
- Parse XML Inventory file locally to load calendar availability
- Show availability clearly marked on calendar and rates returned
- Load ORPxxx number automatically
- Change calendar view based on check in date
- If uploading a single zip file instead of multiple files flip post methods as needed
- Example messages match to specific feed prices
- Show XML snippets that data is constructed from in
xml_contents
field
- Upgrade to Python 3.12
- Upgrade all applicable packages
- Dockerfile created
- Automatically publish docker image to GitHub Container Registry
- Isolate calculator as separate package
- Publish package and place web/command line interface over the top as functional application
- Create tests to cover sample file inputs