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
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
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 @@
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 @@
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.
-
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
-
-
+