odoo-addon-rma 17.0.1.1.1__py3-none-any.whl → 17.0.2.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@ Return Merchandise Authorization Management
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:ed3081bf9b94660a0e6b35acbc7a874023c57e4bc3a87f3762eabbb1c75ce2f4
10
+ !! source digest: sha256:8f36869aece97a0f6af8aa5d76b446e9cf0bd589d914c1f5e12c628e87317021
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
@@ -140,6 +140,9 @@ Known issues / Roadmap
140
140
  - As soon as the picking is selected, the user should select the move,
141
141
  but perhaps stock.move \_rec_name could be improved to better show
142
142
  what the product of that move is.
143
+ - Add RMA reception and/or RMA delivery on several steps - 2 or 3 -
144
+ like normal receptions/deliveries. It should be a separate option
145
+ inside the warehouse definition.
143
146
 
144
147
  Bug Tracker
145
148
  ===========
@@ -175,6 +178,8 @@ Contributors
175
178
 
176
179
  - Antoni Marroig <amarroig@apsl.net>
177
180
 
181
+ - Michael Tietz (MT Software) mtietz@mt-software.de
182
+
178
183
  Maintainers
179
184
  -----------
180
185
 
@@ -5,7 +5,7 @@
5
5
  {
6
6
  "name": "Return Merchandise Authorization Management",
7
7
  "summary": "Return Merchandise Authorization (RMA)",
8
- "version": "17.0.1.1.1",
8
+ "version": "17.0.2.0.0",
9
9
  "development_status": "Production/Stable",
10
10
  "category": "RMA",
11
11
  "website": "https://github.com/OCA/rma",
odoo/addons/rma/hooks.py CHANGED
@@ -1,4 +1,5 @@
1
1
  # Copyright 2020 Tecnativa - Ernesto Tejeda
2
+ # Copyright 2023 Michael Tietz (MT Software) <mtietz@mt-software.de>
2
3
  # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
4
 
4
5
 
@@ -20,7 +21,9 @@ def post_init_hook(env):
20
21
  def create_rma_locations(warehouse):
21
22
  stock_location = env["stock.location"]
22
23
  if not warehouse.rma_loc_id:
23
- rma_location_vals = warehouse._get_rma_location_values()
24
+ rma_location_vals = warehouse._get_rma_location_values(
25
+ {"company_id": warehouse.company_id.id}, warehouse.code
26
+ )
24
27
  warehouse.rma_loc_id = (
25
28
  stock_location.with_context(active_test=False)
26
29
  .create(rma_location_vals)
@@ -57,11 +60,19 @@ def post_init_hook(env):
57
60
  whs.rma_in_type_id.return_picking_type_id = whs.rma_out_type_id.id
58
61
  whs.rma_out_type_id.return_picking_type_id = whs.rma_in_type_id.id
59
62
 
63
+ def create_rma_routes(warehouses):
64
+ """Create initially rma in/out stock.location.routes and stock.rules"""
65
+ warehouses = warehouses.with_context(rma_post_init_hook=True)
66
+ for wh in warehouses:
67
+ route_vals = wh._create_or_update_route()
68
+ wh.write(route_vals)
69
+
60
70
  # Create rma locations and picking types
61
71
  warehouses = env["stock.warehouse"].search([])
62
72
  for warehouse in warehouses:
63
73
  create_rma_locations(warehouse)
64
74
  create_rma_picking_types(warehouse)
75
+ create_rma_routes(warehouses)
65
76
  # Create rma sequence per company
66
77
  for company in env["res.company"].search([]):
67
78
  company.create_rma_index()
@@ -1437,11 +1437,21 @@ msgstr ""
1437
1437
  msgid "RMA count"
1438
1438
  msgstr ""
1439
1439
 
1440
+ #. module: rma
1441
+ #: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma_in_route_id
1442
+ msgid "RMA in Route"
1443
+ msgstr ""
1444
+
1440
1445
  #. module: rma
1441
1446
  #: model:mail.message.subtype,description:rma.mt_rma_draft
1442
1447
  msgid "RMA in draft state"
1443
1448
  msgstr ""
1444
1449
 
1450
+ #. module: rma
1451
+ #: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma_out_route_id
1452
+ msgid "RMA out Route"
1453
+ msgstr ""
1454
+
1445
1455
  #. module: rma
1446
1456
  #: model:ir.model.fields,field_description:rma.field_stock_move__rma_receiver_ids
1447
1457
  msgid "RMA receivers"
@@ -1633,6 +1643,11 @@ msgstr ""
1633
1643
  msgid "Return Picking"
1634
1644
  msgstr ""
1635
1645
 
1646
+ #. module: rma
1647
+ #: model:ir.model,name:rma.model_stock_return_picking_line
1648
+ msgid "Return Picking Line"
1649
+ msgstr ""
1650
+
1636
1651
  #. module: rma
1637
1652
  #: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
1638
1653
  #: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__return
@@ -1654,6 +1669,13 @@ msgstr ""
1654
1669
  msgid "Returned"
1655
1670
  msgstr ""
1656
1671
 
1672
+ #. module: rma
1673
+ #. odoo-python
1674
+ #: code:addons/rma/wizard/stock_picking_return.py:0
1675
+ #, python-format
1676
+ msgid "Returned Picking"
1677
+ msgstr ""
1678
+
1657
1679
  #. module: rma
1658
1680
  #: model:ir.model.fields,field_description:rma.field_rma_tag__rma_ids
1659
1681
  msgid "Rma"
@@ -0,0 +1,17 @@
1
+ # Copyright 2024 Tecnativa - Víctor Martínez
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
3
+
4
+ from openupgradelib import openupgrade
5
+
6
+
7
+ @openupgrade.migrate()
8
+ def migrate(env, version):
9
+ """Similar behavior to create_rma_routes of post_init_hook."""
10
+ warehouses = env["stock.warehouse"].search([])
11
+ warehouses = warehouses.with_context(rma_post_init_hook=True)
12
+ for wh in warehouses:
13
+ if not wh.rma_in_type_id or not wh.rma_out_type_id:
14
+ data = wh._create_or_update_sequences_and_picking_types()
15
+ wh.write(data)
16
+ route_vals = wh._create_or_update_route()
17
+ wh.write(route_vals)
@@ -27,7 +27,7 @@ class ResPartner(models.Model):
27
27
 
28
28
  def action_view_rma(self):
29
29
  self.ensure_one()
30
- action = self.sudo().env.ref("rma.rma_action").read()[0]
30
+ action = self.env["ir.actions.act_window"]._for_xml_id("rma.rma_action")
31
31
  rma = self.rma_ids
32
32
  if len(rma) == 1:
33
33
  action.update(