From be1c9bd35e2f9b84e24f210f5d4339c8b1453fc5 Mon Sep 17 00:00:00 2001 From: Alaguraj0361 Date: Sat, 21 Mar 2026 17:21:16 +0530 Subject: [PATCH] Introduce comprehensive website sale views and templates, enhancing product visibility, adding product creation forms, and integrating dine360 order channels and online ordering functionalities. --- .../models/sale_order.py | 48 +- .../views/website_sale_templates.xml | 5 +- .../models/pos_order.py | 7 +- .../static/src/js/order_channel_model.js | 4 + .../static/src/xml/channel_panel.xml | 8 + .../static/src/css/pos_navbar.css | 29 +- .../static/src/xml/pos_navbar.xml | 4 +- tmp_templates.xml | 2751 +++++++++++++++++ tmp_website_sale_views/account_move_views.xml | 17 + tmp_website_sale_views/crm_team_views.xml | 29 + tmp_website_sale_views/digest_views.xml | 20 + .../product_attribute_views.xml | 28 + .../product_document_views.xml | 53 + .../product_product_add.xml | 35 + tmp_website_sale_views/product_tag_views.xml | 47 + tmp_website_sale_views/product_views.xml | 386 +++ .../res_config_settings_views.xml | 264 ++ tmp_website_sale_views/sale_order_views.xml | 215 ++ .../snippets/s_add_to_cart.xml | 49 + .../snippets/s_dynamic_snippet_products.xml | 43 + tmp_website_sale_views/snippets/s_popup.xml | 9 + tmp_website_sale_views/snippets/snippets.xml | 369 +++ tmp_website_sale_views/templates.xml | 2751 +++++++++++++++++ tmp_website_sale_views/variant_templates.xml | 153 + .../website_base_unit_views.xml | 10 + .../website_pages_views.xml | 87 + .../website_sale_delivery_templates.xml | 64 + .../website_sale_delivery_views.xml | 46 + tmp_website_sale_views/website_sale_menus.xml | 110 + .../website_sale_visitor_views.xml | 127 + tmp_website_sale_views/website_views.xml | 22 + 31 files changed, 7770 insertions(+), 20 deletions(-) create mode 100644 tmp_templates.xml create mode 100644 tmp_website_sale_views/account_move_views.xml create mode 100644 tmp_website_sale_views/crm_team_views.xml create mode 100644 tmp_website_sale_views/digest_views.xml create mode 100644 tmp_website_sale_views/product_attribute_views.xml create mode 100644 tmp_website_sale_views/product_document_views.xml create mode 100644 tmp_website_sale_views/product_product_add.xml create mode 100644 tmp_website_sale_views/product_tag_views.xml create mode 100644 tmp_website_sale_views/product_views.xml create mode 100644 tmp_website_sale_views/res_config_settings_views.xml create mode 100644 tmp_website_sale_views/sale_order_views.xml create mode 100644 tmp_website_sale_views/snippets/s_add_to_cart.xml create mode 100644 tmp_website_sale_views/snippets/s_dynamic_snippet_products.xml create mode 100644 tmp_website_sale_views/snippets/s_popup.xml create mode 100644 tmp_website_sale_views/snippets/snippets.xml create mode 100644 tmp_website_sale_views/templates.xml create mode 100644 tmp_website_sale_views/variant_templates.xml create mode 100644 tmp_website_sale_views/website_base_unit_views.xml create mode 100644 tmp_website_sale_views/website_pages_views.xml create mode 100644 tmp_website_sale_views/website_sale_delivery_templates.xml create mode 100644 tmp_website_sale_views/website_sale_delivery_views.xml create mode 100644 tmp_website_sale_views/website_sale_menus.xml create mode 100644 tmp_website_sale_views/website_sale_visitor_views.xml create mode 100644 tmp_website_sale_views/website_views.xml diff --git a/addons/dine360_online_orders/models/sale_order.py b/addons/dine360_online_orders/models/sale_order.py index d4d1d33..5107a20 100644 --- a/addons/dine360_online_orders/models/sale_order.py +++ b/addons/dine360_online_orders/models/sale_order.py @@ -15,21 +15,47 @@ class SaleOrderOnline(models.Model): # order_source is now canonical field from dine360_order_channels (pos.order) # We add it to sale.order for tracking which channel the web sale originated from order_source = fields.Selection([ - ('walk_in', 'Walk-In'), - ('phone', 'Phone'), - ('online', 'Online / eCommerce'), - ('whatsapp', 'WhatsApp'), + ('online', 'Online'), + ('phone', 'Phone'), + ('whatsapp', 'WhatsApp'), ('social_media', 'Social Media'), - ('platform', 'Platform'), - ('kiosk', 'Kiosk'), - ('qr', 'QR Code'), - ], string='Order Source', default='online') + ('in_person', 'In-Person (Walk-in/Dine-in)'), + ('kiosk', 'Store Self-Order (Kiosk)'), + ('party_order', 'Party Order'), + ('platform_integration', 'Platform Integration (3rd Party)'), + ], string='Order Source', default='online', tracking=True) fulfilment_type = fields.Selection([ - ('dine_in', 'Dine-In'), - ('pickup', 'Pickup'), + ('pickup', 'Pickup'), ('delivery', 'Delivery'), - ], string='Fulfilment Type', default='pickup') + ('dine_in', 'Dine-In'), + ('walk_in', 'Walk-In'), + ], string='Fulfillment Type', default='pickup', tracking=True) + + payment_option = fields.Selection([ + ('in_store', 'In Store'), + ('terminal_in_store', 'Payment Terminal (In Store)'), + ('terminal_customer', 'Payment Terminal (Customer Place)'), + ('online_gateway', 'Online Payment Gateway'), + ('cash', 'Cash'), + ('interac', 'Interac'), + ], string='Payment Option', tracking=True) + + telephone_number = fields.Char('Telephone Number') + + reservation_source = fields.Selection([ + ('online', 'Online'), + ('phone', 'Phone'), + ('staff', 'Staff'), + ], string='Reservation Source', tracking=True) + + reservation_status = fields.Selection([ + ('draft', 'Request Received'), + ('confirmed', 'Confirmed'), + ('arrived', 'Arrived'), + ('seated', 'Seated'), + ('cancelled', 'Cancelled'), + ], string='Reservation Status', default='draft', tracking=True) def _create_pos_order_for_kds(self, sale_order): """ diff --git a/addons/dine360_online_orders/views/website_sale_templates.xml b/addons/dine360_online_orders/views/website_sale_templates.xml index e5c29a5..0665d3f 100644 --- a/addons/dine360_online_orders/views/website_sale_templates.xml +++ b/addons/dine360_online_orders/views/website_sale_templates.xml @@ -1,8 +1,7 @@