From 55036c3c594067303fa9e906ad5dbcf03646b204 Mon Sep 17 00:00:00 2001 From: anusrinps96 Date: Mon, 28 Oct 2024 16:07:13 +0100 Subject: [PATCH] [MIG] hr_personal_equipment_stock: Migration to 16.0 --- hr_personal_equipment_stock/README.rst | 10 +-- hr_personal_equipment_stock/__manifest__.py | 2 +- .../models/hr_personal_equipment.py | 3 +- .../models/stock_move.py | 3 +- .../models/stock_picking.py | 3 +- .../static/description/index.html | 18 ++-- .../tests/test_hr_personal_equipment_stock.py | 87 +++++++++++-------- .../views/hr_personal_equipment.xml | 4 +- .../views/hr_personal_equipment_request.xml | 2 +- .../views/procurement_group.xml | 3 +- .../views/stock_move.xml | 3 +- .../views/stock_picking.xml | 3 +- 12 files changed, 78 insertions(+), 63 deletions(-) diff --git a/hr_personal_equipment_stock/README.rst b/hr_personal_equipment_stock/README.rst index 1c4ccde4ecc..c2dae0380bb 100644 --- a/hr_personal_equipment_stock/README.rst +++ b/hr_personal_equipment_stock/README.rst @@ -17,13 +17,13 @@ Hr Personal Equipment Stock :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github - :target: https://github.com/OCA/hr/tree/14.0/hr_personal_equipment_stock + :target: https://github.com/OCA/hr/tree/16.0/hr_personal_equipment_stock :alt: OCA/hr .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_personal_equipment_stock + :target: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_personal_equipment_stock :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/hr&target_branch=14.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/hr&target_branch=16.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -50,7 +50,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -80,6 +80,6 @@ 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. -This module is part of the `OCA/hr `_ project on GitHub. +This module is part of the `OCA/hr `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/hr_personal_equipment_stock/__manifest__.py b/hr_personal_equipment_stock/__manifest__.py index 07b95a8fd7e..13c953e9379 100644 --- a/hr_personal_equipment_stock/__manifest__.py +++ b/hr_personal_equipment_stock/__manifest__.py @@ -5,7 +5,7 @@ "name": "Hr Personal Equipment Stock", "summary": """ This addon allows to integrate hr_personal_equipment_request with stock""", - "version": "14.0.1.0.0", + "version": "16.0.1.0.0", "license": "AGPL-3", "author": "Creu Blanca,Odoo Community Association (OCA)", "website": "https://github.com/OCA/hr", diff --git a/hr_personal_equipment_stock/models/hr_personal_equipment.py b/hr_personal_equipment_stock/models/hr_personal_equipment.py index 1728648ddf3..3840031c47e 100644 --- a/hr_personal_equipment_stock/models/hr_personal_equipment.py +++ b/hr_personal_equipment_stock/models/hr_personal_equipment.py @@ -111,8 +111,9 @@ def _action_launch_procurement_rule(self): return True def _accept_request(self): - super()._accept_request() + res = super()._accept_request() self._action_launch_procurement_rule() + return res def _validate_allocation_vals(self): res = super()._validate_allocation_vals() diff --git a/hr_personal_equipment_stock/models/stock_move.py b/hr_personal_equipment_stock/models/stock_move.py index 6a2cb9840e6..90ddcd0cf8e 100644 --- a/hr_personal_equipment_stock/models/stock_move.py +++ b/hr_personal_equipment_stock/models/stock_move.py @@ -25,9 +25,10 @@ def _prepare_merge_move_sort_method(self, move): return keys_sorted def _action_cancel(self): - super()._action_cancel() + res = super()._action_cancel() for rec in self.sudo(): if not rec.personal_equipment_id.qty_delivered: rec.personal_equipment_id.update({"state": "cancelled"}) else: rec.personal_equipment_id.update({"state": "valid"}) + return res diff --git a/hr_personal_equipment_stock/models/stock_picking.py b/hr_personal_equipment_stock/models/stock_picking.py index d0cc3062a75..d918a0b2e63 100644 --- a/hr_personal_equipment_stock/models/stock_picking.py +++ b/hr_personal_equipment_stock/models/stock_picking.py @@ -11,7 +11,7 @@ class StockPicking(models.Model): equipment_request_id = fields.Many2one(related="group_id.equipment_request_id") def _action_done(self): - super()._action_done() + res = super()._action_done() if self.equipment_request_id: for move in self.move_ids_without_package: if move.state == "done": @@ -28,3 +28,4 @@ def _action_done(self): if qty_done: if qty_initial <= qty_done: line.validate_allocation() + return res diff --git a/hr_personal_equipment_stock/static/description/index.html b/hr_personal_equipment_stock/static/description/index.html index 4576fd60886..28a161e3fa5 100644 --- a/hr_personal_equipment_stock/static/description/index.html +++ b/hr_personal_equipment_stock/static/description/index.html @@ -1,4 +1,3 @@ - @@ -9,10 +8,11 @@ /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $ +:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. +Despite the name, some widely supported CSS2 features are used. See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to customize this style sheet. @@ -275,7 +275,7 @@ margin-left: 2em ; margin-right: 2em } -pre.code .ln { color: grey; } /* line numbers */ +pre.code .ln { color: gray; } /* line numbers */ pre.code, code { background-color: #eeeeee } pre.code .comment, code .comment { color: #5C6576 } pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold } @@ -301,7 +301,7 @@ span.pre { white-space: pre } -span.problematic { +span.problematic, pre.problematic { color: red } span.section-subtitle { @@ -369,7 +369,7 @@

Hr Personal Equipment Stock

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:e9bc6ce5958557b4e98dd58142582801580d20a5ffcb89549d5cad0fbe26c14d !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/hr Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/hr Translate me on Weblate Try me on Runboat

This module integrates stock with hr_personal_equipment_request module. When the equipment request is accepted, a stock request is generated and a “stock.move” is created for each request line. If the “stock.move” is marked as done, the corresponding allocations are marked as valid if the quantity_delivered is equal to the requested quantity. @@ -397,7 +397,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -417,11 +417,13 @@

Contributors

Maintainers

This module is maintained by the OCA.

-Odoo Community Association + +Odoo Community Association +

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.

-

This module is part of the OCA/hr project on GitHub.

+

This module is part of the OCA/hr project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/hr_personal_equipment_stock/tests/test_hr_personal_equipment_stock.py b/hr_personal_equipment_stock/tests/test_hr_personal_equipment_stock.py index d5782f01275..edcba29f652 100644 --- a/hr_personal_equipment_stock/tests/test_hr_personal_equipment_stock.py +++ b/hr_personal_equipment_stock/tests/test_hr_personal_equipment_stock.py @@ -6,50 +6,51 @@ class TestHRPersonalEquipment(TransactionCase): - def setUp(self): - super().setUp() + @classmethod + def setUpClass(cls): + super().setUpClass() - self.warehouse = self.env.ref("stock.warehouse0") - self.company = self.env.ref("base.main_company") - self.ressuply_loc = self.env["stock.location"].create( + cls.warehouse = cls.env.ref("stock.warehouse0") + cls.company = cls.env.ref("base.main_company") + cls.ressuply_loc = cls.env["stock.location"].create( { "name": "Warehouse Test", - "location_id": self.warehouse.view_location_id.id, + "location_id": cls.warehouse.view_location_id.id, } ) - self.location_employee = self.env["stock.location"].create( + cls.location_employee = cls.env["stock.location"].create( { "name": "Employee Personal Equipment Virtual Location", - "location_id": self.warehouse.view_location_id.id, + "location_id": cls.warehouse.view_location_id.id, "usage": "transit", "is_personal_equipment_location": True, } ) - self.route = self.env["stock.location.route"].create( + cls.route = cls.env["stock.route"].create( { "name": "Employee Personal Equipment Route", "product_categ_selectable": False, "product_selectable": True, - "company_id": self.company.id, + "company_id": cls.company.id, "sequence": 10, } ) - self.env["stock.rule"].create( + cls.env["stock.rule"].create( { "name": "Employee Personal Equipment Rule", - "route_id": self.route.id, - "location_src_id": self.ressuply_loc.id, - "location_id": self.location_employee.id, + "route_id": cls.route.id, + "location_src_id": cls.ressuply_loc.id, + "location_dest_id": cls.location_employee.id, "action": "pull", - "picking_type_id": self.warehouse.int_type_id.id, + "picking_type_id": cls.warehouse.int_type_id.id, "procure_method": "make_to_stock", - "warehouse_id": self.warehouse.id, - "company_id": self.company.id, + "warehouse_id": cls.warehouse.id, + "company_id": cls.company.id, "propagate_cancel": "False", } ) - self.user = ( - self.env["res.users"] + cls.user = ( + cls.env["res.users"] .sudo() .create( { @@ -57,61 +58,73 @@ def setUp(self): "login": "user@test.com", "email": "user@test.com", "groups_id": [ - (4, self.env.ref("base.group_user").id), - (4, self.env.ref("hr.group_hr_user").id), - (4, self.env.ref("stock.group_stock_manager").id), + (4, cls.env.ref("base.group_user").id), + (4, cls.env.ref("hr.group_hr_user").id), + (4, cls.env.ref("stock.group_stock_manager").id), ], } ) ) - self.employee = self.env["hr.employee"].create( - {"name": "Employee Test", "user_id": self.user.id} + cls.employee = cls.env["hr.employee"].create( + {"name": "Employee Test", "user_id": cls.user.id} ) - self.product_personal_equipment_1 = self.env["product.template"].create( + cls.product_personal_equipment_1 = cls.env["product.template"].create( { "name": "Product Test Personal Equipment", "is_personal_equipment": True, - "route_ids": [(6, 0, self.route.ids)], + "route_ids": [(6, 0, cls.route.ids)], "qty_available": 100, "type": "product", - "uom_id": self.env.ref("uom.product_uom_unit").id, + "uom_id": cls.env.ref("uom.product_uom_unit").id, } ) - self.product_personal_equipment_2 = self.env["product.template"].create( + cls.product_personal_equipment_2 = cls.env["product.template"].create( { "name": "Service Test Personal Equipment 2", "is_personal_equipment": True, "type": "service", - "uom_id": self.env.ref("uom.product_uom_unit").id, + "uom_id": cls.env.ref("uom.product_uom_unit").id, } ) lines = [ { "name": "Personal Equipment 1", - "product_id": self.product_personal_equipment_1.product_variant_id.id, + "product_id": cls.product_personal_equipment_1.product_variant_id.id, "quantity": 3, - "product_uom_id": self.env.ref("uom.product_uom_unit").id, + "product_uom_id": cls.env.ref("uom.product_uom_unit").id, }, { "name": "Personal Equipment 2", - "product_id": self.product_personal_equipment_2.product_variant_id.id, + "product_id": cls.product_personal_equipment_2.product_variant_id.id, "quantity": 2, - "product_uom_id": self.env.ref("uom.product_uom_unit").id, + "product_uom_id": cls.env.ref("uom.product_uom_unit").id, }, ] - self.personal_equipment_request = ( - self.env["hr.personal.equipment.request"] - .with_user(self.user.id) + cls.personal_equipment_request = ( + cls.env["hr.personal.equipment.request"] + .with_user(cls.user.id) .create( { "name": "Personal Equipment Request Test", "line_ids": [(0, 0, line) for line in lines], - "location_id": self.location_employee.id, + "location_id": cls.location_employee.id, } ) ) + # cls.personal_equipment_request_2 = ( + # cls.env["hr.personal.equipment.request"] + # .with_user(cls.user.id) + # .create( + # { + # "name": "Personal Equipment Request Test 2", + # "line_ids": [(0, 0, lines[0])], + # "location_id": cls.location_employee.id, + # } + # ) + # ) + # hr.personal.equipment.request def test_get_procurement_group_without_group_set(self): diff --git a/hr_personal_equipment_stock/views/hr_personal_equipment.xml b/hr_personal_equipment_stock/views/hr_personal_equipment.xml index 20a3c599565..7ee66f3d47b 100644 --- a/hr_personal_equipment_stock/views/hr_personal_equipment.xml +++ b/hr_personal_equipment_stock/views/hr_personal_equipment.xml @@ -26,7 +26,7 @@ - 1 + 1 @@ -44,7 +44,7 @@ - 1 + 1 diff --git a/hr_personal_equipment_stock/views/hr_personal_equipment_request.xml b/hr_personal_equipment_stock/views/hr_personal_equipment_request.xml index d43b893d223..b4ee0483f6f 100644 --- a/hr_personal_equipment_stock/views/hr_personal_equipment_request.xml +++ b/hr_personal_equipment_stock/views/hr_personal_equipment_request.xml @@ -39,7 +39,6 @@ name="inherit_id" ref="hr_personal_equipment_request.hr_personal_equipment_request_form_view" /> - diff --git a/hr_personal_equipment_stock/views/procurement_group.xml b/hr_personal_equipment_stock/views/procurement_group.xml index 533a4bb6a68..d38e0c8a57e 100644 --- a/hr_personal_equipment_stock/views/procurement_group.xml +++ b/hr_personal_equipment_stock/views/procurement_group.xml @@ -8,10 +8,9 @@ >procurement.group.form (in hr_personal_equipment_stock) procurement.group - - + diff --git a/hr_personal_equipment_stock/views/stock_move.xml b/hr_personal_equipment_stock/views/stock_move.xml index f54174e8e6d..99d2b58a2ba 100644 --- a/hr_personal_equipment_stock/views/stock_move.xml +++ b/hr_personal_equipment_stock/views/stock_move.xml @@ -6,10 +6,9 @@ stock.move.form (in hr_personal_equipment_stock) stock.move - - + diff --git a/hr_personal_equipment_stock/views/stock_picking.xml b/hr_personal_equipment_stock/views/stock_picking.xml index 3c8833788f6..487618a7811 100644 --- a/hr_personal_equipment_stock/views/stock_picking.xml +++ b/hr_personal_equipment_stock/views/stock_picking.xml @@ -6,13 +6,12 @@ stock.picking.form(in hr_personal_equipment_stock) stock.picking - - +