diff --git a/addons/stock/i18n/stock.pot b/addons/stock/i18n/stock.pot index 732851ea9d3..5a4b63ce83b 100644 --- a/addons/stock/i18n/stock.pot +++ b/addons/stock/i18n/stock.pot @@ -9508,3 +9508,10 @@ msgstr "" msgid "" "{{ object.company_id.name }} Delivery Order (Ref {{ object.name or 'n/a' }})" msgstr "" + +#. module: stock +#. odoo-python +#: code:addons/stock/models/stock_rule.py:0 +#, python-format +msgid "Global Visibility Days" +msgstr "" \ No newline at end of file diff --git a/addons/stock/models/stock_orderpoint.py b/addons/stock/models/stock_orderpoint.py index be6559ba7ec..ce1f6aedefb 100644 --- a/addons/stock/models/stock_orderpoint.py +++ b/addons/stock/models/stock_orderpoint.py @@ -506,6 +506,9 @@ class StockWarehouseOrderpoint(models.Model): origin = orderpoint.name if float_compare(orderpoint.qty_to_order, 0.0, precision_rounding=orderpoint.product_uom.rounding) == 1: date = orderpoint._get_orderpoint_procurement_date() + global_visibility_days = self.env['ir.config_parameter'].sudo().get_param('stock.visibility_days') + if global_visibility_days: + date -= relativedelta.relativedelta(days=int(global_visibility_days)) values = orderpoint._prepare_procurement_values(date=date) procurements.append(self.env['procurement.group'].Procurement( orderpoint.product_id, orderpoint.qty_to_order, orderpoint.product_uom, diff --git a/addons/stock/models/stock_rule.py b/addons/stock/models/stock_rule.py index 8288f922975..12f81374de2 100644 --- a/addons/stock/models/stock_rule.py +++ b/addons/stock/models/stock_rule.py @@ -355,6 +355,9 @@ class StockRule(models.Model): :rtype: tuple[int, list[str, str]] """ delay = sum(self.filtered(lambda r: r.action in ['pull', 'pull_push']).mapped('delay')) + global_visibility_days = self.env['ir.config_parameter'].sudo().get_param('stock.visibility_days') + if global_visibility_days: + delay += int(global_visibility_days) if self.env.context.get('bypass_delay_description'): delay_description = [] else: @@ -363,6 +366,8 @@ class StockRule(models.Model): for rule in self if rule.action in ['pull', 'pull_push'] and rule.delay ] + if global_visibility_days: + delay_description.append((_('Global Visibility Days'), _('+ %d day(s)') % int(global_visibility_days))) return delay, delay_description