Commit Graph

280 Commits

Author SHA1 Message Date
0f00b4508e Small db improvements. Still needs migration for alembic 2025-12-02 09:45:27 +00:00
91bb9996b7 Merge branch 'concurrency-fix' of https://gitea.99tales.net/jonas/alpinebits_python into concurrency-fix 2025-12-01 10:15:58 +00:00
3cc3a40573 Added a new analysis query to the sql_analysis.md file 2025-12-01 10:15:39 +00:00
Jonas Linter
03e6c1c4af Disabled free rooms action for now 2025-12-01 11:14:31 +01:00
Jonas Linter
593fd0fc28 Fixed room upsert logic 2025-12-01 11:12:22 +01:00
Jonas Linter
e05b700ed0 Fixed some tests and added schemas 2025-12-01 10:14:14 +01:00
Jonas Linter
9cb4f9b1b9 Small typing addition 2025-12-01 09:21:25 +01:00
Jonas Linter
c72c7d7969 Fix integrity error by adding dummy payload_hash in webhook reprocessing test 2025-12-01 09:21:15 +01:00
Jonas Linter
3aa2f0b7f4 Offers get extracted from generic webhooks and added to reservations 2025-11-27 19:59:38 +01:00
Jonas Linter
c402b28b72 Duplicate detection improved but refactoring necessary to make the whole thing more managable 2025-11-27 19:35:30 +01:00
Jonas Linter
a07edfe3ec Free rooms first implementation 2025-11-27 18:57:45 +01:00
23effcebea Added docs extracted from the pdf 2025-11-27 17:20:43 +00:00
9830ca7cf9 Webhook_processors accept event_dispatchers now so that push notifs are possible in the future 2025-11-27 14:58:36 +00:00
7d09dbfd63 Updated tests. Since the endpoints are now handled by the unified webhook endpoint we have to be a touch more careful with hotel_ids in testing since it won't accept any code anymore 2025-11-27 14:44:57 +00:00
Jonas Linter
e2d0ef8e53 Some more refactoring. Push_events don't work at the moment 2025-11-27 15:33:15 +01:00
Jonas Linter
f89236228d Catch integrity errors gracefully instead of dumping a giant stacktrace 2025-11-27 14:47:05 +01:00
Jonas Linter
454b524077 Updated test_api.
Had to change hotel_ids used in test_requests. Previously any hotel_id was valid now only registered ones are. Doesn't make a difference in prod
2025-11-25 21:04:18 +01:00
Jonas Linter
aec8a99b71 Handling legacy endpoints directly in unified endpoints 2025-11-25 20:40:51 +01:00
Jonas Linter
4ab0888508 Moved some stuff around and fixed circular import 2025-11-25 20:30:07 +01:00
Jonas Linter
2941519899 Added an enum for Webhook Status 2025-11-25 20:20:51 +01:00
Jonas Linter
97994c5a38 Better typing + moved some code to webhook_processor 2025-11-25 20:20:40 +01:00
Jonas Linter
556eef529a Removed redundant size_field in webhook_requests 2025-11-25 20:20:06 +01:00
Jonas Linter
7b010ce65e Moved existing processing functions to webhook_processor 2025-11-25 20:19:48 +01:00
Jonas Linter
b77a0be80f feat: Add hotel and webhook endpoint management
- Introduced Hotel and WebhookEndpoint models to manage hotel configurations and webhook settings.
- Implemented sync_config_to_database function to synchronize hotel data from configuration to the database.
- Added HotelService for accessing hotel configurations and managing customer data.
- Created WebhookProcessor interface and specific processors for handling different webhook types (Wix form and generic).
- Enhanced webhook processing logic to handle incoming requests and create/update reservations and customers.
- Added logging for better traceability of operations related to hotels and webhooks.
2025-11-25 12:05:48 +01:00
Jonas Linter
c339a9cace Add bcrypt as a dependency with version 5.0.0
- Included bcrypt in the dependencies list of uv.lock.
- Specified version requirement for bcrypt as >=5.0.0.
- Added package details for bcrypt including source, sdist, and various wheel distributions.
2025-11-25 12:05:29 +01:00
Jonas Linter
1fb698de66 Extract offer from generic_webhook if set 2025-11-20 23:01:04 +01:00
Jonas Linter
ce1fd140c9 Created a script to update the csv imports that don't have the date 2025-11-20 11:14:07 +01:00
Jonas Linter
8308be3e49 Increased timeout limit 2025-11-19 20:53:27 +01:00
Jonas Linter
d49f6915c9 Idempotent matching. Hopefully 2025-11-19 20:34:08 +01:00
Jonas Linter
3377a82919 More cleanup 2025-11-19 19:35:54 +01:00
Jonas Linter
ead698dafc Cleanup 2025-11-19 19:35:36 +01:00
Jonas Linter
35c29d80bb Lets see if the matching is finally sensible 2025-11-19 19:35:06 +01:00
Jonas Linter
b523f3b669 Adjusted the migrations so they work on the prod db 2025-11-19 19:10:25 +01:00
Jonas Linter
e5f0aea870 Just some adjustments to conversion service so that the tests work again 2025-11-19 18:58:44 +01:00
Jonas Linter
2b98973d1c On we go. Maybe soon this will be done 2025-11-19 18:40:44 +01:00
Jonas Linter
42b353d241 Finally it works 2025-11-19 17:27:47 +01:00
Jonas Linter
d81ba79256 More refactoring 2025-11-19 16:25:18 +01:00
Jonas Linter
1396135208 Seems to work now 2025-11-19 15:39:33 +01:00
Jonas Linter
82d486645b Complete seperation 2025-11-19 15:10:38 +01:00
Jonas Linter
d88a53327f Migration done 2025-11-19 15:01:16 +01:00
Jonas Linter
6c46c566ed Significant refactorings 2025-11-19 14:49:42 +01:00
Jonas Linter
ae73a1b761 Merge branch 'conversion_test_initial' 2025-11-19 14:30:42 +01:00
Jonas Linter
12b67dc353 Fixed the incorrect conversion_service test 2025-11-19 14:29:58 +01:00
Jonas Linter
c74163b11e Hashed comparisions don't work unfortunatly 2025-11-19 14:17:13 +01:00
Jonas Linter
2cf4071c2f Migration to guest_table for conversion works 2025-11-19 12:05:38 +01:00
Jonas Linter
c0e5c3c4db Now sending an actually unique parameter so matching in the future is simpler 2025-11-19 11:40:41 +01:00
Jonas Linter
90f68bfd26 Added a test for conversions 2025-11-19 11:05:51 +01:00
Jonas Linter
187c955a67 Massive refactoring. Csv import still works 2025-11-19 10:20:48 +01:00
Jonas Linter
877f09a640 Both csv imports work 2025-11-19 10:17:11 +01:00
Jonas Linter
a989a5bdc3 Importing mailbox leads now works 2025-11-19 09:55:54 +01:00