[FIX] sale: Adapt sales count on product

When the sales count on the product form doesn't take into account the
sales done in point of sale.

So we've extend the list of done states to take the ones from point of
sale.

TASK-ID: 1985493

closes odoo/odoo#33422

Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
This commit is contained in:
rhe
2019-05-24 09:04:46 +00:00
committed by Pierre Masereel
parent 0e1a471144
commit f17beeef4b
3 changed files with 14 additions and 3 deletions
+6
View File
@@ -8,6 +8,12 @@ from odoo import api, fields, models
class SaleReport(models.Model):
_inherit = "sale.report"
@api.model
def _get_done_states(self):
done_states = super(SaleReport, self)._get_done_states()
done_states.extend(['pos_done', 'invoiced'])
return done_states
state = fields.Selection(selection_add=[('pos_draft', 'New'),
('paid', 'Paid'),
('pos_done', 'Posted'),
+4 -3
View File
@@ -17,12 +17,13 @@ class ProductProduct(models.Model):
return r
date_from = fields.Datetime.to_string(fields.datetime.combine(fields.datetime.now() - timedelta(days=365),
time.min))
date_to = fields.Datetime.to_string(fields.datetime.combine(fields.datetime.today(), time.min))
done_states = self.env['sale.report']._get_done_states()
domain = [
('state', 'in', ['sale', 'done', 'paid']),
('state', 'in', done_states),
('product_id', 'in', self.ids),
('date', '>=', date_from),
('date', '<', date_to)
]
for group in self.env['sale.report'].read_group(domain, ['product_id', 'product_uom_qty'], ['product_id']):
r[group['product_id'][0]] = group['product_uom_qty']
+4
View File
@@ -12,6 +12,10 @@ class SaleReport(models.Model):
_rec_name = 'date'
_order = 'date desc'
@api.model
def _get_done_states(self):
return ['sale', 'done', 'paid']
name = fields.Char('Order Reference', readonly=True)
date = fields.Datetime('Order Date', readonly=True)
confirmation_date = fields.Datetime('Confirmation Date', readonly=True)