From 577ab8e33f3c9bd99203dd726b452377986cc9e0 Mon Sep 17 00:00:00 2001
From: Jordi Ballester Alomar
Date: Thu, 28 Jun 2018 19:02:11 +0200
Subject: [PATCH 01/35] 11.0 - add stock_warehouse_calendar
---
stock_warehouse_calendar/__init__.py | 1 +
stock_warehouse_calendar/__manifest__.py | 23 ++++++
stock_warehouse_calendar/models/__init__.py | 2 +
.../models/procurement_rule.py | 24 +++++++
.../models/stock_warehouse.py | 11 +++
stock_warehouse_calendar/readme/CONFIGURE.rst | 14 ++++
.../readme/CONTRIBUTORS.rst | 1 +
.../readme/DESCRIPTION.rst | 7 ++
stock_warehouse_calendar/readme/ROADMAP.rst | 0
stock_warehouse_calendar/readme/USAGE.rst | 6 ++
.../static/description/icon.png | Bin 0 -> 9455 bytes
stock_warehouse_calendar/tests/__init__.py | 2 +
.../tests/test_stock_warehouse_calendar.py | 68 ++++++++++++++++++
.../views/stock_warehouse_views.xml | 16 +++++
14 files changed, 175 insertions(+)
create mode 100644 stock_warehouse_calendar/__init__.py
create mode 100644 stock_warehouse_calendar/__manifest__.py
create mode 100644 stock_warehouse_calendar/models/__init__.py
create mode 100644 stock_warehouse_calendar/models/procurement_rule.py
create mode 100644 stock_warehouse_calendar/models/stock_warehouse.py
create mode 100644 stock_warehouse_calendar/readme/CONFIGURE.rst
create mode 100644 stock_warehouse_calendar/readme/CONTRIBUTORS.rst
create mode 100644 stock_warehouse_calendar/readme/DESCRIPTION.rst
create mode 100644 stock_warehouse_calendar/readme/ROADMAP.rst
create mode 100644 stock_warehouse_calendar/readme/USAGE.rst
create mode 100644 stock_warehouse_calendar/static/description/icon.png
create mode 100644 stock_warehouse_calendar/tests/__init__.py
create mode 100644 stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
create mode 100644 stock_warehouse_calendar/views/stock_warehouse_views.xml
diff --git a/stock_warehouse_calendar/__init__.py b/stock_warehouse_calendar/__init__.py
new file mode 100644
index 000000000..0650744f6
--- /dev/null
+++ b/stock_warehouse_calendar/__init__.py
@@ -0,0 +1 @@
+from . import models
diff --git a/stock_warehouse_calendar/__manifest__.py b/stock_warehouse_calendar/__manifest__.py
new file mode 100644
index 000000000..5b31625f2
--- /dev/null
+++ b/stock_warehouse_calendar/__manifest__.py
@@ -0,0 +1,23 @@
+# Copyright 2017 Eficent Business and IT Consulting Services, S.L.
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
+
+{
+ "name": "Stock Warehouse Calendar",
+ "summary": "Adds a calendar to the Warehouse",
+ "version": "11.0.1.0.0",
+ "license": "AGPL-3",
+ "website": "https://github.com/stock-logistics-warehouse",
+ "author": "Eficent, "
+ "Odoo Community Association (OCA)",
+ "category": "Warehouse Management",
+ "depends": [
+ "stock",
+ "resource"
+ ],
+ "data": [
+ "views/stock_warehouse_views.xml",
+ ],
+ "installable": True,
+ 'development_status': 'Beta',
+ 'maintainers': ['jbeficent'],
+}
diff --git a/stock_warehouse_calendar/models/__init__.py b/stock_warehouse_calendar/models/__init__.py
new file mode 100644
index 000000000..e41660708
--- /dev/null
+++ b/stock_warehouse_calendar/models/__init__.py
@@ -0,0 +1,2 @@
+from . import stock_warehouse
+from . import procurement_rule
diff --git a/stock_warehouse_calendar/models/procurement_rule.py b/stock_warehouse_calendar/models/procurement_rule.py
new file mode 100644
index 000000000..ebe166203
--- /dev/null
+++ b/stock_warehouse_calendar/models/procurement_rule.py
@@ -0,0 +1,24 @@
+# Copyright 2018 Eficent Business and IT Consulting Services, S.L.
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
+
+from odoo import fields, models
+from datetime import datetime
+
+
+class ProcurementRule(models.Model):
+ _inherit = 'procurement.rule'
+
+ def _get_stock_move_values(self, product_id, product_qty, product_uom,
+ location_id, name, origin, values, group_id):
+ res = super(ProcurementRule, self)._get_stock_move_values(
+ product_id, product_qty, product_uom,
+ location_id, name, origin, values, group_id)
+ dt_planned = fields.Datetime.from_string(values['date_planned'])
+ warehouse = self.propagate_warehouse_id or self.warehouse_id
+ if warehouse.calendar_id and self.delay:
+ date_expected = warehouse.calendar_id.plan_days(
+ -1 * self.delay - 1, dt_planned)
+ if date_expected > datetime.now():
+ res['date'] = date_expected
+ res['date_expected'] = date_expected
+ return res
diff --git a/stock_warehouse_calendar/models/stock_warehouse.py b/stock_warehouse_calendar/models/stock_warehouse.py
new file mode 100644
index 000000000..9cfb899be
--- /dev/null
+++ b/stock_warehouse_calendar/models/stock_warehouse.py
@@ -0,0 +1,11 @@
+# Copyright 2018 Eficent Business and IT Consulting Services, S.L.
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
+
+from odoo import fields, models
+
+
+class StockWarehouse(models.Model):
+ _inherit = 'stock.warehouse'
+
+ calendar_id = fields.Many2one('resource.calendar',
+ 'Working Hours')
diff --git a/stock_warehouse_calendar/readme/CONFIGURE.rst b/stock_warehouse_calendar/readme/CONFIGURE.rst
new file mode 100644
index 000000000..b77834e5b
--- /dev/null
+++ b/stock_warehouse_calendar/readme/CONFIGURE.rst
@@ -0,0 +1,14 @@
+* Go to *Settings* and activate the developer mode.
+
+* Go to *Settings > Technical > Resource > Working Time* and define your
+ resource calendar.
+
+* Go to *Inventory > Configuration > Warehouse Management > Warehouses*
+ and assign the Resource Calendar.
+
+* Go to *Inventory > Configuration > Settings* and in *Warehouse* mark
+ 'Multi-Step Routes option'.
+
+* Go to *Inventory > Configuration > Warehouse Management > Routes* and
+ set up the proper delays in the procurement rules where 'action'
+ is 'Move From Another Location'.
diff --git a/stock_warehouse_calendar/readme/CONTRIBUTORS.rst b/stock_warehouse_calendar/readme/CONTRIBUTORS.rst
new file mode 100644
index 000000000..d72a49b94
--- /dev/null
+++ b/stock_warehouse_calendar/readme/CONTRIBUTORS.rst
@@ -0,0 +1 @@
+* Jordi Ballester (EFICENT) .
\ No newline at end of file
diff --git a/stock_warehouse_calendar/readme/DESCRIPTION.rst b/stock_warehouse_calendar/readme/DESCRIPTION.rst
new file mode 100644
index 000000000..ac46ffca3
--- /dev/null
+++ b/stock_warehouse_calendar/readme/DESCRIPTION.rst
@@ -0,0 +1,7 @@
+This module adds a Calendar to the Warehouse. This calendar can then used as
+the basis of the proper computation of start/end dates based on lead times in
+this and other modules.
+
+In this module, the calendar considered in the computation of start date of
+stock moves and pickings created from procurements, where the lead time
+is used.
diff --git a/stock_warehouse_calendar/readme/ROADMAP.rst b/stock_warehouse_calendar/readme/ROADMAP.rst
new file mode 100644
index 000000000..e69de29bb
diff --git a/stock_warehouse_calendar/readme/USAGE.rst b/stock_warehouse_calendar/readme/USAGE.rst
new file mode 100644
index 000000000..f71e1f60c
--- /dev/null
+++ b/stock_warehouse_calendar/readme/USAGE.rst
@@ -0,0 +1,6 @@
+When a picking is created out of a procurement evaluation (from an
+orderpoint, MTO,...) the calendar is considered in the computation of the
+expected date of the picking and moves. For example, if it takes 1 day to
+execute a stock transfer from another warehouse and it is Monday, the picking
+to resupply will be created with expected start date on the previous Friday,
+if the warehouse operates under a Mo-Fri working calendar.
diff --git a/stock_warehouse_calendar/static/description/icon.png b/stock_warehouse_calendar/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/stock_warehouse_calendar/tests/__init__.py b/stock_warehouse_calendar/tests/__init__.py
new file mode 100644
index 000000000..faa5afbf1
--- /dev/null
+++ b/stock_warehouse_calendar/tests/__init__.py
@@ -0,0 +1,2 @@
+# -*- coding: utf-8 -*-
+from . import test_stock_warehouse_calendar
diff --git a/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py b/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
new file mode 100644
index 000000000..3335abdf7
--- /dev/null
+++ b/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
@@ -0,0 +1,68 @@
+# -*- coding: utf-8 -*-
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+from odoo import fields
+from odoo.tests.common import TransactionCase
+
+
+class TestStockWarehouseCalendar(TransactionCase):
+
+ def setUp(self):
+ super(TestStockWarehouseCalendar, self).setUp()
+ self.move_obj = self.env['stock.move']
+ self.company = self.env.ref('base.main_company')
+ self.warehouse = self.env.ref('stock.warehouse0')
+ self.customer_loc = self.env.ref('stock.stock_location_customers')
+ self.company_partner = self.env.ref('base.main_partner')
+ self.calendar = self.env.ref('resource.resource_calendar_std')
+ self.warehouse.calendar_id = self.calendar
+ self.warehouse_2 = self.env['stock.warehouse'].create({
+ 'code': 'WH-T',
+ 'name': 'Warehouse Test',
+ 'calendar_id': self.calendar.id,
+ })
+
+ self.product = self.env['product.product'].create({
+ 'name': 'test product',
+ 'default_code': 'PRD',
+ 'type': 'product',
+ })
+
+ route_vals = {
+ 'name': 'WH2 -> WH',
+ }
+ self.transfer_route = self.env['stock.location.route'].create(
+ route_vals)
+ rule_vals = {
+ 'location_id': self.warehouse.lot_stock_id.id,
+ 'location_src_id': self.warehouse_2.lot_stock_id.id,
+ 'action': 'move',
+ 'warehouse_id': self.warehouse.id,
+ 'propagate_warehouse_id': self.warehouse_2.id,
+ 'picking_type_id': self.env.ref('stock.picking_type_internal').id,
+ 'name': 'WH2->WH',
+ 'route_id': self.transfer_route.id,
+ 'delay': 1,
+ }
+ self.transfer_rule = self.env['procurement.rule'].create(rule_vals)
+ self.product.route_ids = [(6, 0, self.transfer_route.ids)]
+
+ def test_procurement_with_calendar(self):
+ values = {
+ 'date_planned': '2097-01-07 09:00:00', # Monday
+ 'warehouse_id': self.warehouse,
+ 'company_id': self.company,
+ 'rule_id': self.transfer_rule,
+ }
+ self.env['procurement.group'].run(
+ self.product, 100,
+ self.product.uom_id,
+ self.warehouse.lot_stock_id, 'Test',
+ 'Test', values)
+ move = self.env['stock.move'].search(
+ [('product_id', '=', self.product.id)], limit=1)
+ date_expected = fields.Datetime.from_string(move.date_expected).date()
+ # Friday 4th Jan 2017
+ friday = fields.Datetime.from_string('2097-01-04 09:00:00').date()
+
+ self.assertEquals(date_expected, friday)
diff --git a/stock_warehouse_calendar/views/stock_warehouse_views.xml b/stock_warehouse_calendar/views/stock_warehouse_views.xml
new file mode 100644
index 000000000..4d66eebff
--- /dev/null
+++ b/stock_warehouse_calendar/views/stock_warehouse_views.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+ stock.warehouse
+ stock.warehouse
+
+
+
+
+
+
+
+
From f0a97440da4c72a40e0870b69fef3e915101ca5a Mon Sep 17 00:00:00 2001
From: oca-travis
Date: Wed, 4 Jul 2018 08:56:59 +0000
Subject: [PATCH 02/35] [UPD] Update stock_warehouse_calendar.pot
---
.../i18n/stock_warehouse_calendar.pot | 30 +++++++++++++++++++
1 file changed, 30 insertions(+)
create mode 100644 stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
diff --git a/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot b/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
new file mode 100644
index 000000000..dd015c4eb
--- /dev/null
+++ b/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
@@ -0,0 +1,30 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * stock_warehouse_calendar
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 11.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: stock_warehouse_calendar
+#: model:ir.model,name:stock_warehouse_calendar.model_procurement_rule
+msgid "Procurement Rule"
+msgstr ""
+
+#. module: stock_warehouse_calendar
+#: model:ir.model,name:stock_warehouse_calendar.model_stock_warehouse
+msgid "Warehouse"
+msgstr ""
+
+#. module: stock_warehouse_calendar
+#: model:ir.model.fields,field_description:stock_warehouse_calendar.field_stock_warehouse_calendar_id
+msgid "Working Hours"
+msgstr ""
+
From 734fae07a8be0e7d6abd93caaacf98e0423ec385 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Bidoul=20=28ACSONE=29?=
Date: Fri, 6 Jul 2018 12:28:29 +0200
Subject: [PATCH 03/35] [FIX] remove empty file that breaks readme generator
---
stock_warehouse_calendar/readme/ROADMAP.rst | 0
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 stock_warehouse_calendar/readme/ROADMAP.rst
diff --git a/stock_warehouse_calendar/readme/ROADMAP.rst b/stock_warehouse_calendar/readme/ROADMAP.rst
deleted file mode 100644
index e69de29bb..000000000
From 734e15f28a14e563bb7defb9dabe27f7bcdc248d Mon Sep 17 00:00:00 2001
From: OCA Git Bot
Date: Tue, 10 Jul 2018 05:36:27 +0200
Subject: [PATCH 04/35] [UPD] README.rst
---
stock_warehouse_calendar/README.rst | 115 +++++
.../static/description/index.html | 452 ++++++++++++++++++
2 files changed, 567 insertions(+)
create mode 100644 stock_warehouse_calendar/README.rst
create mode 100644 stock_warehouse_calendar/static/description/index.html
diff --git a/stock_warehouse_calendar/README.rst b/stock_warehouse_calendar/README.rst
new file mode 100644
index 000000000..c3b48de6d
--- /dev/null
+++ b/stock_warehouse_calendar/README.rst
@@ -0,0 +1,115 @@
+========================
+Stock Warehouse Calendar
+========================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github
+ :target: https://github.com/OCA/stock-logistics-warehouse/tree/11.0/stock_warehouse_calendar
+ :alt: OCA/stock-logistics-warehouse
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-11-0/stock-logistics-warehouse-11-0-stock_warehouse_calendar
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+ :target: https://runbot.odoo-community.org/runbot/153/11.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
+
+This module adds a Calendar to the Warehouse. This calendar can then used as
+the basis of the proper computation of start/end dates based on lead times in
+this and other modules.
+
+In this module, the calendar considered in the computation of start date of
+stock moves and pickings created from procurements, where the lead time
+is used.
+
+**Table of contents**
+
+.. contents::
+ :local:
+
+Configuration
+=============
+
+* Go to *Settings* and activate the developer mode.
+
+* Go to *Settings > Technical > Resource > Working Time* and define your
+ resource calendar.
+
+* Go to *Inventory > Configuration > Warehouse Management > Warehouses*
+ and assign the Resource Calendar.
+
+* Go to *Inventory > Configuration > Settings* and in *Warehouse* mark
+ 'Multi-Step Routes option'.
+
+* Go to *Inventory > Configuration > Warehouse Management > Routes* and
+ set up the proper delays in the procurement rules where 'action'
+ is 'Move From Another Location'.
+
+Usage
+=====
+
+When a picking is created out of a procurement evaluation (from an
+orderpoint, MTO,...) the calendar is considered in the computation of the
+expected date of the picking and moves. For example, if it takes 1 day to
+execute a stock transfer from another warehouse and it is Monday, the picking
+to resupply will be created with expected start date on the previous Friday,
+if the warehouse operates under a Mo-Fri working calendar.
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues `_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Eficent
+
+Contributors
+~~~~~~~~~~~~
+
+* Jordi Ballester (EFICENT) .
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: https://odoo-community.org
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+.. |maintainer-jbeficent| image:: https://github.com/jbeficent.png?size=40px
+ :target: https://github.com/jbeficent
+ :alt: jbeficent
+
+Current `maintainer `__:
+
+|maintainer-jbeficent|
+
+This module is part of the `OCA/stock-logistics-warehouse `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/stock_warehouse_calendar/static/description/index.html b/stock_warehouse_calendar/static/description/index.html
new file mode 100644
index 000000000..33fa8e61b
--- /dev/null
+++ b/stock_warehouse_calendar/static/description/index.html
@@ -0,0 +1,452 @@
+
+
+
+
+
+
+Stock Warehouse Calendar
+
+
+
+
+
Stock Warehouse Calendar
+
+
+

+
This module adds a Calendar to the Warehouse. This calendar can then used as
+the basis of the proper computation of start/end dates based on lead times in
+this and other modules.
+
In this module, the calendar considered in the computation of start date of
+stock moves and pickings created from procurements, where the lead time
+is used.
+
Table of contents
+
+
+
+
+- Go to Settings and activate the developer mode.
+- Go to Settings > Technical > Resource > Working Time and define your
+resource calendar.
+- Go to Inventory > Configuration > Warehouse Management > Warehouses
+and assign the Resource Calendar.
+- Go to Inventory > Configuration > Settings and in Warehouse mark
+‘Multi-Step Routes option’.
+- Go to Inventory > Configuration > Warehouse Management > Routes and
+set up the proper delays in the procurement rules where ‘action’
+is ‘Move From Another Location’.
+
+
+
+
+
When a picking is created out of a procurement evaluation (from an
+orderpoint, MTO,…) the calendar is considered in the computation of the
+expected date of the picking and moves. For example, if it takes 1 day to
+execute a stock transfer from another warehouse and it is Monday, the picking
+to resupply will be created with expected start date on the previous Friday,
+if the warehouse operates under a Mo-Fri working calendar.
+
+
+
+
Bugs are tracked on GitHub Issues.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+feedback.
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+
+
This module is maintained by the OCA.
+

+
OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
Current maintainer:
+

+
This module is part of the OCA/stock-logistics-warehouse project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
+
+
+
+
+
From 8b2aa125260b45b6e118f702e2a9019541b8e501 Mon Sep 17 00:00:00 2001
From: mreficent
Date: Wed, 20 Mar 2019 17:10:44 +0100
Subject: [PATCH 05/35] [MIG] stock_warehouse_calendar: Migration to 12.0
---
stock_warehouse_calendar/README.rst | 18 +++++++++---------
stock_warehouse_calendar/__init__.py | 1 +
stock_warehouse_calendar/__manifest__.py | 6 +++---
stock_warehouse_calendar/models/__init__.py | 3 ++-
.../{procurement_rule.py => stock_rule.py} | 8 ++++----
.../models/stock_warehouse.py | 6 ++++--
stock_warehouse_calendar/readme/CONFIGURE.rst | 2 +-
.../static/description/index.html | 6 +++---
stock_warehouse_calendar/tests/__init__.py | 2 +-
.../tests/test_stock_warehouse_calendar.py | 12 ++++++------
10 files changed, 34 insertions(+), 30 deletions(-)
rename stock_warehouse_calendar/models/{procurement_rule.py => stock_rule.py} (81%)
diff --git a/stock_warehouse_calendar/README.rst b/stock_warehouse_calendar/README.rst
index c3b48de6d..160e057b8 100644
--- a/stock_warehouse_calendar/README.rst
+++ b/stock_warehouse_calendar/README.rst
@@ -10,17 +10,17 @@ Stock Warehouse Calendar
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
-.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
- :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
- :alt: License: AGPL-3
+.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
+ :alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstock--logistics--warehouse-lightgray.png?logo=github
- :target: https://github.com/OCA/stock-logistics-warehouse/tree/11.0/stock_warehouse_calendar
+ :target: https://github.com/OCA/stock-logistics-warehouse/tree/12.0/stock_warehouse_calendar
:alt: OCA/stock-logistics-warehouse
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-11-0/stock-logistics-warehouse-11-0-stock_warehouse_calendar
+ :target: https://translation.odoo-community.org/projects/stock-logistics-warehouse-12-0/stock-logistics-warehouse-12-0-stock_warehouse_calendar
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/153/11.0
+ :target: https://runbot.odoo-community.org/runbot/153/12.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -53,7 +53,7 @@ Configuration
'Multi-Step Routes option'.
* Go to *Inventory > Configuration > Warehouse Management > Routes* and
- set up the proper delays in the procurement rules where 'action'
+ set up the proper delays in the stock rules where 'action'
is 'Move From Another Location'.
Usage
@@ -72,7 +72,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -110,6 +110,6 @@ Current `maintainer `__:
|maintainer-jbeficent|
-This module is part of the `OCA/stock-logistics-warehouse `_ project on GitHub.
+This module is part of the `OCA/stock-logistics-warehouse `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/stock_warehouse_calendar/__init__.py b/stock_warehouse_calendar/__init__.py
index 0650744f6..133f68732 100644
--- a/stock_warehouse_calendar/__init__.py
+++ b/stock_warehouse_calendar/__init__.py
@@ -1 +1,2 @@
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
from . import models
diff --git a/stock_warehouse_calendar/__manifest__.py b/stock_warehouse_calendar/__manifest__.py
index 5b31625f2..0b3a5bc9e 100644
--- a/stock_warehouse_calendar/__manifest__.py
+++ b/stock_warehouse_calendar/__manifest__.py
@@ -4,15 +4,15 @@
{
"name": "Stock Warehouse Calendar",
"summary": "Adds a calendar to the Warehouse",
- "version": "11.0.1.0.0",
- "license": "AGPL-3",
+ "version": "12.0.1.0.0",
+ "license": "LGPL-3",
"website": "https://github.com/stock-logistics-warehouse",
"author": "Eficent, "
"Odoo Community Association (OCA)",
"category": "Warehouse Management",
"depends": [
"stock",
- "resource"
+ "resource",
],
"data": [
"views/stock_warehouse_views.xml",
diff --git a/stock_warehouse_calendar/models/__init__.py b/stock_warehouse_calendar/models/__init__.py
index e41660708..200eddbf2 100644
--- a/stock_warehouse_calendar/models/__init__.py
+++ b/stock_warehouse_calendar/models/__init__.py
@@ -1,2 +1,3 @@
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
from . import stock_warehouse
-from . import procurement_rule
+from . import stock_rule
diff --git a/stock_warehouse_calendar/models/procurement_rule.py b/stock_warehouse_calendar/models/stock_rule.py
similarity index 81%
rename from stock_warehouse_calendar/models/procurement_rule.py
rename to stock_warehouse_calendar/models/stock_rule.py
index ebe166203..896a6faae 100644
--- a/stock_warehouse_calendar/models/procurement_rule.py
+++ b/stock_warehouse_calendar/models/stock_rule.py
@@ -5,15 +5,15 @@ from odoo import fields, models
from datetime import datetime
-class ProcurementRule(models.Model):
- _inherit = 'procurement.rule'
+class StockRule(models.Model):
+ _inherit = 'stock.rule'
def _get_stock_move_values(self, product_id, product_qty, product_uom,
location_id, name, origin, values, group_id):
- res = super(ProcurementRule, self)._get_stock_move_values(
+ res = super(StockRule, self)._get_stock_move_values(
product_id, product_qty, product_uom,
location_id, name, origin, values, group_id)
- dt_planned = fields.Datetime.from_string(values['date_planned'])
+ dt_planned = fields.Datetime.to_datetime(values['date_planned'])
warehouse = self.propagate_warehouse_id or self.warehouse_id
if warehouse.calendar_id and self.delay:
date_expected = warehouse.calendar_id.plan_days(
diff --git a/stock_warehouse_calendar/models/stock_warehouse.py b/stock_warehouse_calendar/models/stock_warehouse.py
index 9cfb899be..b14104db6 100644
--- a/stock_warehouse_calendar/models/stock_warehouse.py
+++ b/stock_warehouse_calendar/models/stock_warehouse.py
@@ -7,5 +7,7 @@ from odoo import fields, models
class StockWarehouse(models.Model):
_inherit = 'stock.warehouse'
- calendar_id = fields.Many2one('resource.calendar',
- 'Working Hours')
+ calendar_id = fields.Many2one(
+ comodel_name='resource.calendar',
+ string='Working Hours',
+ )
diff --git a/stock_warehouse_calendar/readme/CONFIGURE.rst b/stock_warehouse_calendar/readme/CONFIGURE.rst
index b77834e5b..2c97aad45 100644
--- a/stock_warehouse_calendar/readme/CONFIGURE.rst
+++ b/stock_warehouse_calendar/readme/CONFIGURE.rst
@@ -10,5 +10,5 @@
'Multi-Step Routes option'.
* Go to *Inventory > Configuration > Warehouse Management > Routes* and
- set up the proper delays in the procurement rules where 'action'
+ set up the proper delays in the stock rules where 'action'
is 'Move From Another Location'.
diff --git a/stock_warehouse_calendar/static/description/index.html b/stock_warehouse_calendar/static/description/index.html
index 33fa8e61b..aa771c361 100644
--- a/stock_warehouse_calendar/static/description/index.html
+++ b/stock_warehouse_calendar/static/description/index.html
@@ -367,7 +367,7 @@ ul.auto-toc {
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

This module adds a Calendar to the Warehouse. This calendar can then used as
the basis of the proper computation of start/end dates based on lead times in
this and other modules.
@@ -417,7 +417,7 @@ if the warehouse operates under a Mo-Fri working calendar.
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback.
+feedback.
Do not contact contributors directly about support or help with technical issues.
diff --git a/stock_warehouse_calendar/tests/__init__.py b/stock_warehouse_calendar/tests/__init__.py
index faa5afbf1..5a6c657ff 100644
--- a/stock_warehouse_calendar/tests/__init__.py
+++ b/stock_warehouse_calendar/tests/__init__.py
@@ -1,2 +1,2 @@
-# -*- coding: utf-8 -*-
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
from . import test_stock_warehouse_calendar
diff --git a/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py b/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
index 3335abdf7..b2e3951d7 100644
--- a/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
+++ b/stock_warehouse_calendar/tests/test_stock_warehouse_calendar.py
@@ -1,5 +1,5 @@
-# -*- coding: utf-8 -*-
-# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+# Copyright 2018 Eficent Business and IT Consulting Services, S.L.
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).
from odoo import fields
from odoo.tests.common import TransactionCase
@@ -36,7 +36,7 @@ class TestStockWarehouseCalendar(TransactionCase):
rule_vals = {
'location_id': self.warehouse.lot_stock_id.id,
'location_src_id': self.warehouse_2.lot_stock_id.id,
- 'action': 'move',
+ 'action': 'pull_push',
'warehouse_id': self.warehouse.id,
'propagate_warehouse_id': self.warehouse_2.id,
'picking_type_id': self.env.ref('stock.picking_type_internal').id,
@@ -44,7 +44,7 @@ class TestStockWarehouseCalendar(TransactionCase):
'route_id': self.transfer_route.id,
'delay': 1,
}
- self.transfer_rule = self.env['procurement.rule'].create(rule_vals)
+ self.transfer_rule = self.env['stock.rule'].create(rule_vals)
self.product.route_ids = [(6, 0, self.transfer_route.ids)]
def test_procurement_with_calendar(self):
@@ -61,8 +61,8 @@ class TestStockWarehouseCalendar(TransactionCase):
'Test', values)
move = self.env['stock.move'].search(
[('product_id', '=', self.product.id)], limit=1)
- date_expected = fields.Datetime.from_string(move.date_expected).date()
+ date_expected = fields.Date.to_date(move.date_expected)
# Friday 4th Jan 2017
- friday = fields.Datetime.from_string('2097-01-04 09:00:00').date()
+ friday = fields.Date.to_date('2097-01-04 09:00:00')
self.assertEquals(date_expected, friday)
From fd47d741c0227cf8f617d78f9ce321e0a29fdd23 Mon Sep 17 00:00:00 2001
From: OCA-git-bot
Date: Tue, 23 Apr 2019 07:56:36 +0000
Subject: [PATCH 06/35] [UPD] README.rst
---
stock_warehouse_calendar/static/description/index.html | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/stock_warehouse_calendar/static/description/index.html b/stock_warehouse_calendar/static/description/index.html
index aa771c361..446d1968f 100644
--- a/stock_warehouse_calendar/static/description/index.html
+++ b/stock_warehouse_calendar/static/description/index.html
@@ -367,7 +367,7 @@ ul.auto-toc {
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-

+

This module adds a Calendar to the Warehouse. This calendar can then used as
the basis of the proper computation of start/end dates based on lead times in
this and other modules.
@@ -399,7 +399,7 @@ and assign the Resource Calendar.
Go to Inventory > Configuration > Settings and in Warehouse mark
‘Multi-Step Routes option’.
Go to Inventory > Configuration > Warehouse Management > Routes and
-set up the proper delays in the procurement rules where ‘action’
+set up the proper delays in the stock rules where ‘action’
is ‘Move From Another Location’.
From e57762a66eab56b057a9976aa652e7e57abd9d65 Mon Sep 17 00:00:00 2001
From: oca-travis
Date: Tue, 23 Apr 2019 08:33:05 +0000
Subject: [PATCH 07/35] [UPD] Update stock_warehouse_calendar.pot
---
.../i18n/stock_warehouse_calendar.pot | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot b/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
index dd015c4eb..5f3f13eed 100644
--- a/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
+++ b/stock_warehouse_calendar/i18n/stock_warehouse_calendar.pot
@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Odoo Server 11.0\n"
+"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: <>\n"
"Language-Team: \n"
@@ -14,8 +14,8 @@ msgstr ""
"Plural-Forms: \n"
#. module: stock_warehouse_calendar
-#: model:ir.model,name:stock_warehouse_calendar.model_procurement_rule
-msgid "Procurement Rule"
+#: model:ir.model,name:stock_warehouse_calendar.model_stock_rule
+msgid "Stock Rule"
msgstr ""
#. module: stock_warehouse_calendar
@@ -24,7 +24,7 @@ msgid "Warehouse"
msgstr ""
#. module: stock_warehouse_calendar
-#: model:ir.model.fields,field_description:stock_warehouse_calendar.field_stock_warehouse_calendar_id
+#: model:ir.model.fields,field_description:stock_warehouse_calendar.field_stock_warehouse__calendar_id
msgid "Working Hours"
msgstr ""
From 87fee071a626cddfbfd4c22164116721250e78a2 Mon Sep 17 00:00:00 2001
From: OCA-git-bot
Date: Mon, 29 Jul 2019 03:43:10 +0000
Subject: [PATCH 08/35] [UPD] README.rst
---
stock_warehouse_calendar/static/description/index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/stock_warehouse_calendar/static/description/index.html b/stock_warehouse_calendar/static/description/index.html
index 446d1968f..5bb345f1f 100644
--- a/stock_warehouse_calendar/static/description/index.html
+++ b/stock_warehouse_calendar/static/description/index.html
@@ -3,7 +3,7 @@
-
+
Stock Warehouse Calendar