implement Uber Direct webhook and quote controllers and update Docker container naming conventions

This commit is contained in:
Alaguraj0361 2026-04-08 21:47:19 +05:30
parent db8ab22069
commit b89e103ad5

View File

@ -47,26 +47,24 @@ class UberDeliveryController(http.Controller):
return {'success': False, 'error': 'Uber not configured'}
company = request.website.company_id
# Build clean pickup address
pickup_parts = [company.street, company.city, company.state_id.name, company.zip, company.country_id.name]
pickup_address = ", ".join([p for p in pickup_parts if p]).strip()
# Match POS Format: "Street, City State Zip, Country"
state_code = company.state_id.code or company.state_id.name or ""
pickup_address = f"{company.street}, {company.city} {state_code} {company.zip}, {company.country_id.name}"
# User entered address - building comprehensive string for Uber Direct
# User entered address
street = address_data.get('street', '').strip()
street2 = address_data.get('street2', '').strip()
full_street = f"{street}, {street2}" if street2 else street
# Clean state name (Odoo often adds '(CA)' or codes, which can confuse Uber)
# Clean state (Try for code if possible, fall back to name)
state_name = address_data.get('state', '').split('(')[0].strip()
dropoff_parts = [
full_street,
address_data.get('city', '').strip(),
state_name,
address_data.get('zip', '').strip(),
address_data.get('country', 'Canada').strip()
]
dropoff_address = ", ".join([p for p in dropoff_parts if p]).strip()
# Construct dropoff string in POS format: "Street, City State Zip, Country"
city = address_data.get('city', '').strip()
zip_code = address_data.get('zip', '').strip()
country = address_data.get('country', 'Canada').strip()
dropoff_address = f"{full_street}, {city} {state_name} {zip_code}, {country}"
_logger.info("Uber Quote Request - Pickup: %s | Dropoff: %s", pickup_address, dropoff_address)