From 477666d3da0d9244c6e974aeee1975eec38a6bb6 Mon Sep 17 00:00:00 2001 From: Rohan Patel Date: Mon, 19 Jun 2017 15:09:25 +0200 Subject: [PATCH] [IMP] website_sale: improve policy of what is an abandoned cart Now, an abandonned cart is: - a draft quotation - in a sales channel with type = website - with a customer set (not public user) - created more than one hour ago - removed from_website filter in search view of website sale, added domain in view for display website side sale - use proper filter for display 'Orders' and 'Orders to Invoice' in dashboard this commit closes #17383 task-745391 --- addons/website_sale/controllers/backend.py | 1 + addons/website_sale/views/sale_order_views.xml | 18 ++++++++---------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/addons/website_sale/controllers/backend.py b/addons/website_sale/controllers/backend.py index d49889df47e..90a83208c9b 100644 --- a/addons/website_sale/controllers/backend.py +++ b/addons/website_sale/controllers/backend.py @@ -88,6 +88,7 @@ class WebsiteSaleBackend(WebsiteBackend): order_carts_abandoned_count=request.env['sale.order'].search_count(sale_order_domain + [ ('state', '=', 'draft'), ('order_line', '!=', 'False'), + ('partner_id', '!=', request.env.ref('base.public_partner').id), ('date_order', '<=', fields.Datetime.to_string(datetime.now() - timedelta(hours=1))), ]), payment_to_capture_count=request.env['payment.transaction'].search_count([ diff --git a/addons/website_sale/views/sale_order_views.xml b/addons/website_sale/views/sale_order_views.xml index a4625b3e0ee..adee2ea4735 100644 --- a/addons/website_sale/views/sale_order_views.xml +++ b/addons/website_sale/views/sale_order_views.xml @@ -7,8 +7,6 @@ - - @@ -29,8 +27,8 @@ Orders sale.order tree,form - [] - {'show_sale': True, 'search_default_confirm_order': 1, 'search_default_from_website': 1} + [('team_id.team_type', '=', 'website')] + {'show_sale': True, 'search_default_order_confirmed': 1} You don't have any confirmed order from the website. @@ -39,8 +37,8 @@ Unpaid Orders sale.order tree,form - [('state', '=', 'sent')] - {'show_sale': True, 'search_default_from_website': 1, 'create': False} + [('state', '=', 'sent'), ('team_id.team_type', '=', 'website')] + {'show_sale': True, 'create': False} You don't have any unpaid order from the website. @@ -49,8 +47,8 @@ Abandoned Carts sale.order tree,form - [('state', '=', 'draft'), ('order_line', '!=', False), ('date_order', '<=', (context_today() - datetime.timedelta(hours=1)).strftime('%Y-%m-%d'))] - {'show_sale': True, 'search_default_from_website': 1, 'create': False} + [('state', '=', 'draft'), ('order_line', '!=', False), ('partner_id','!=', context.get('public_partner_id')), ('team_id.team_type', '=', 'website'), ('date_order', '<=', (datetime.datetime.utcnow() - datetime.timedelta(hours=1)).strftime('%Y-%m-%d %H:%M:%S'))] +

Find here all the abandoned carts, i.e. the carts generated by your website's visitors more than one hour ago and not confirmed.

@@ -61,8 +59,8 @@ Orders To Invoice sale.order tree,form - [('state', 'in', ('sale', 'done')), ('invoice_status', '=', 'to invoice')] - {'show_sale': True, 'search_default_from_website': 1} + [('state', 'in', ('sale', 'done')), ('invoice_status', '=', 'to invoice'), ('team_id.team_type', '=', 'website')] + {'show_sale': True, 'search_default_order_confirmed': 1} You don't have any order from the website.