odoo-addon-rma 16.0.3.5.2__py3-none-any.whl → 16.0.3.6.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.
- odoo/addons/rma/README.rst +1 -1
- odoo/addons/rma/__manifest__.py +1 -1
- odoo/addons/rma/i18n/rma.pot +5 -0
- odoo/addons/rma/models/rma.py +3 -2
- odoo/addons/rma/models/stock_warehouse.py +1 -0
- odoo/addons/rma/static/description/index.html +1 -1
- odoo/addons/rma/tests/test_rma.py +65 -0
- odoo/addons/rma/views/stock_warehouse_views.xml +4 -0
- {odoo_addon_rma-16.0.3.5.2.dist-info → odoo_addon_rma-16.0.3.6.0.dist-info}/METADATA +2 -2
- {odoo_addon_rma-16.0.3.5.2.dist-info → odoo_addon_rma-16.0.3.6.0.dist-info}/RECORD +12 -12
- {odoo_addon_rma-16.0.3.5.2.dist-info → odoo_addon_rma-16.0.3.6.0.dist-info}/WHEEL +0 -0
- {odoo_addon_rma-16.0.3.5.2.dist-info → odoo_addon_rma-16.0.3.6.0.dist-info}/top_level.txt +0 -0
odoo/addons/rma/README.rst
CHANGED
@@ -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:
|
10
|
+
!! source digest: sha256:66afbeab3e20d4046083200a40e5f35655865d67010b40e815c2c683d9edc10a
|
11
11
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
12
12
|
|
13
13
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
|
odoo/addons/rma/__manifest__.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
{
|
6
6
|
"name": "Return Merchandise Authorization Management",
|
7
7
|
"summary": "Return Merchandise Authorization (RMA)",
|
8
|
-
"version": "16.0.3.
|
8
|
+
"version": "16.0.3.6.0",
|
9
9
|
"development_status": "Production/Stable",
|
10
10
|
"category": "RMA",
|
11
11
|
"website": "https://github.com/OCA/rma",
|
odoo/addons/rma/i18n/rma.pot
CHANGED
@@ -1477,6 +1477,11 @@ msgstr ""
|
|
1477
1477
|
msgid "RMA in draft state"
|
1478
1478
|
msgstr ""
|
1479
1479
|
|
1480
|
+
#. module: rma
|
1481
|
+
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma_out_replace_route_id
|
1482
|
+
msgid "RMA out Replace Route"
|
1483
|
+
msgstr ""
|
1484
|
+
|
1480
1485
|
#. module: rma
|
1481
1486
|
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma_out_route_id
|
1482
1487
|
msgid "RMA out Route"
|
odoo/addons/rma/models/rma.py
CHANGED
@@ -1193,10 +1193,11 @@ class Rma(models.Model):
|
|
1193
1193
|
rmas_to_return.write({"state": "waiting_return"})
|
1194
1194
|
|
1195
1195
|
def _prepare_replace_procurement_vals(self, warehouse=None, scheduled_date=None):
|
1196
|
-
"""This method is used only for Replace (not Delivery).
|
1197
|
-
specific route here."""
|
1196
|
+
"""This method is used only for Replace (not Delivery)."""
|
1198
1197
|
vals = self._prepare_common_procurement_vals(warehouse, scheduled_date)
|
1199
1198
|
vals["rma_id"] = self.id
|
1199
|
+
if self.warehouse_id.rma_out_replace_route_id:
|
1200
|
+
vals["route_ids"] = self.warehouse_id.rma_out_replace_route_id
|
1200
1201
|
return vals
|
1201
1202
|
|
1202
1203
|
def _prepare_replace_procurements(
|
@@ -30,6 +30,7 @@ class StockWarehouse(models.Model):
|
|
30
30
|
)
|
31
31
|
rma_in_route_id = fields.Many2one("stock.route", "RMA in Route")
|
32
32
|
rma_out_route_id = fields.Many2one("stock.route", "RMA out Route")
|
33
|
+
rma_out_replace_route_id = fields.Many2one("stock.route", "RMA out Replace Route")
|
33
34
|
|
34
35
|
def _get_rma_location_values(self, vals, code=False):
|
35
36
|
"""this method is intended to be used by 'create' method
|
@@ -367,7 +367,7 @@ ul.auto-toc {
|
|
367
367
|
!! This file is generated by oca-gen-addon-readme !!
|
368
368
|
!! changes will be overwritten. !!
|
369
369
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
370
|
-
!! source digest: sha256:
|
370
|
+
!! source digest: sha256:66afbeab3e20d4046083200a40e5f35655865d67010b40e815c2c683d9edc10a
|
371
371
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
372
372
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Production/Stable" src="https://img.shields.io/badge/maturity-Production%2FStable-green.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/rma/tree/16.0/rma"><img alt="OCA/rma" src="https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/rma-16-0/rma-16-0-rma"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/rma&target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
373
373
|
<p>This module allows you to manage <a class="reference external" href="https://en.wikipedia.org/wiki/Return_merchandise_authorization">Return Merchandise Authorization (RMA)</a>.
|
@@ -2,6 +2,7 @@
|
|
2
2
|
# Copyright 2023 Michael Tietz (MT Software) <mtietz@mt-software.de>
|
3
3
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
4
4
|
|
5
|
+
from odoo import Command
|
5
6
|
from odoo.exceptions import UserError, ValidationError
|
6
7
|
from odoo.tests import Form, new_test_user, tagged, users
|
7
8
|
from odoo.tools import mute_logger
|
@@ -109,6 +110,20 @@ class TestRma(BaseCommon):
|
|
109
110
|
rma.reception_move_id.picking_id._action_done()
|
110
111
|
return rma
|
111
112
|
|
113
|
+
def _receive_and_replace(self, partner, product, qty, location):
|
114
|
+
rma = self._create_confirm_receive(partner, product, qty, location)
|
115
|
+
delivery_form = Form(
|
116
|
+
self.env["rma.delivery.wizard"].with_context(
|
117
|
+
active_ids=rma.ids,
|
118
|
+
rma_delivery_type="replace",
|
119
|
+
)
|
120
|
+
)
|
121
|
+
delivery_form.product_id = rma.product_id
|
122
|
+
delivery_form.product_uom_qty = qty
|
123
|
+
delivery_wizard = delivery_form.save()
|
124
|
+
delivery_wizard.action_deliver()
|
125
|
+
return rma
|
126
|
+
|
112
127
|
def _create_delivery(self):
|
113
128
|
picking_type = self.env["stock.picking.type"].search(
|
114
129
|
[
|
@@ -850,3 +865,53 @@ class TestRmaCase(TestRma):
|
|
850
865
|
)
|
851
866
|
self.assertTrue(rma.name in mail_receipt.subject)
|
852
867
|
self.assertTrue("products received" in mail_receipt.subject)
|
868
|
+
|
869
|
+
def test_replace_picking_type(self):
|
870
|
+
"""
|
871
|
+
Test that by default, the replace operation uses the default delivery route,
|
872
|
+
meaning the warehouse's default delivery picking type is applied.
|
873
|
+
|
874
|
+
RMA replacement orders are not separated from regular deliveries, and both use
|
875
|
+
the same picking type.
|
876
|
+
"""
|
877
|
+
rma = self._receive_and_replace(self.partner, self.product, 2, self.rma_loc)
|
878
|
+
rma_in_type = self.warehouse.rma_in_type_id
|
879
|
+
out_type = self.warehouse.out_type_id
|
880
|
+
self.assertEqual(rma.reception_move_id.picking_type_id, rma_in_type)
|
881
|
+
self.assertEqual(rma.delivery_move_ids.picking_type_id, out_type)
|
882
|
+
|
883
|
+
def test_replace_picking_type_custom_picking_type(self):
|
884
|
+
"""
|
885
|
+
Test that when configured to use a custom route, the replace operation uses a
|
886
|
+
custom picking type, separating RMA replacement orders from regular deliveries.
|
887
|
+
|
888
|
+
The custom picking type is applied specifically for RMA replacements, instead
|
889
|
+
of the default delivery picking type.
|
890
|
+
"""
|
891
|
+
rma_in_type = self.warehouse.rma_in_type_id
|
892
|
+
rma_out_type = self.warehouse.rma_out_type_id
|
893
|
+
route = self.env["stock.route"].create(
|
894
|
+
{
|
895
|
+
"name": "RMA OUT replace",
|
896
|
+
"active": True,
|
897
|
+
"sequence": 100,
|
898
|
+
"product_selectable": True,
|
899
|
+
"rule_ids": [
|
900
|
+
Command.create(
|
901
|
+
{
|
902
|
+
"name": "RMA OUT",
|
903
|
+
"action": "pull",
|
904
|
+
"picking_type_id": rma_out_type.id,
|
905
|
+
"location_src_id": self.warehouse.lot_stock_id.id,
|
906
|
+
"location_dest_id": self.env.ref(
|
907
|
+
"stock.stock_location_customers"
|
908
|
+
).id,
|
909
|
+
},
|
910
|
+
)
|
911
|
+
],
|
912
|
+
}
|
913
|
+
)
|
914
|
+
self.warehouse.rma_out_replace_route_id = route
|
915
|
+
rma = self._receive_and_replace(self.partner, self.product, 2, self.rma_loc)
|
916
|
+
self.assertEqual(rma.reception_move_id.picking_type_id, rma_in_type)
|
917
|
+
self.assertEqual(rma.delivery_move_ids.picking_type_id, rma_out_type)
|
@@ -11,6 +11,10 @@
|
|
11
11
|
<xpath expr="//field[@name='out_type_id']/..">
|
12
12
|
<field name="rma_in_type_id" groups="rma.rma_group_user_own" />
|
13
13
|
<field name="rma_out_type_id" groups="rma.rma_group_user_own" />
|
14
|
+
<field
|
15
|
+
name="rma_out_replace_route_id"
|
16
|
+
groups="rma.rma_group_user_own"
|
17
|
+
/>
|
14
18
|
</xpath>
|
15
19
|
</field>
|
16
20
|
</record>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: odoo-addon-rma
|
3
|
-
Version: 16.0.3.
|
3
|
+
Version: 16.0.3.6.0
|
4
4
|
Summary: Return Merchandise Authorization (RMA)
|
5
5
|
Home-page: https://github.com/OCA/rma
|
6
6
|
Author: Tecnativa, Odoo Community Association (OCA)
|
@@ -23,7 +23,7 @@ Return Merchandise Authorization Management
|
|
23
23
|
!! This file is generated by oca-gen-addon-readme !!
|
24
24
|
!! changes will be overwritten. !!
|
25
25
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
26
|
-
!! source digest: sha256:
|
26
|
+
!! source digest: sha256:66afbeab3e20d4046083200a40e5f35655865d67010b40e815c2c683d9edc10a
|
27
27
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
28
28
|
|
29
29
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
|
@@ -1,6 +1,6 @@
|
|
1
|
-
odoo/addons/rma/README.rst,sha256=
|
1
|
+
odoo/addons/rma/README.rst,sha256=TvvZmFv9b4JuHX3rK7hKL7MxAAbwE4PyDmO27uDx-Fc,8237
|
2
2
|
odoo/addons/rma/__init__.py,sha256=KD8ElbTlUwRgGDQzvMIqp-WeEXGTuHqQT352BCbK2I0,168
|
3
|
-
odoo/addons/rma/__manifest__.py,sha256=
|
3
|
+
odoo/addons/rma/__manifest__.py,sha256=_-BMEOQDiGoQmrq4RCLHWzKoBNNJX7qOnX-V7hachuc,1527
|
4
4
|
odoo/addons/rma/hooks.py,sha256=Zd5KcqVj_ONKV-GyrZiXOAmdRGBRRczJGdhrgUrzY_s,3320
|
5
5
|
odoo/addons/rma/controllers/__init__.py,sha256=ZAYSY9pxyJjumL2QVLuxqtBzjLwKPiQsVXMBAWvNGGY,85
|
6
6
|
odoo/addons/rma/controllers/main.py,sha256=lmi25T49fDnCoUSqqr8eibwVXa6lMANwbkFuHhUxgZg,5426
|
@@ -15,7 +15,7 @@ odoo/addons/rma/i18n/it.po,sha256=JkOrePRWFPlf5IsTd59H7IgxXb4IZFPt8H_sY_esLKg,89
|
|
15
15
|
odoo/addons/rma/i18n/nl.po,sha256=29vsIXWlL5i4yooufVlmJFnmm-z6pYxckNktewrzKiM,64635
|
16
16
|
odoo/addons/rma/i18n/pt.po,sha256=REuDzspa8m5GHkDeiF5Gf8AariUKX_RYWA2PUXP23fY,76538
|
17
17
|
odoo/addons/rma/i18n/pt_BR.po,sha256=rqniVc7a0GC197JbfQFd1aX1JKgvb69YYj3zFZIidGY,75791
|
18
|
-
odoo/addons/rma/i18n/rma.pot,sha256=
|
18
|
+
odoo/addons/rma/i18n/rma.pot,sha256=FYNXs2a0XSciSxpW8QS7tNM54vRNN6rmXnsdRS8zvbE,64794
|
19
19
|
odoo/addons/rma/i18n/ro.po,sha256=Grd_wIwZo1nRs6S3uuZ9nOUCnPODvZGihgkCp77a-o8,72477
|
20
20
|
odoo/addons/rma/i18n/zh_CN.po,sha256=mYbz_rc61uu43N2Ii7o6JU2JYlElX58qM1zMUiggiiE,64746
|
21
21
|
odoo/addons/rma/migrations/16.0.1.4.0/post-migration.py,sha256=jQn_F-J2amiqJZQZ33nQZeb_hOebJBXJMHdYbgiakd4,654
|
@@ -25,14 +25,14 @@ odoo/addons/rma/models/res_company.py,sha256=46aercxmY3p3t0JoIzlSSP_pjkvjaQb1pHR
|
|
25
25
|
odoo/addons/rma/models/res_config_settings.py,sha256=-X3NWCfEG1LJ2iE2dYl3Ut-suDskrHMkp0D597EFhIw,1493
|
26
26
|
odoo/addons/rma/models/res_partner.py,sha256=hwa0H6OIniUcTp5xjsRGmtkDHb1rMbZXRo7IsRqL-4U,1217
|
27
27
|
odoo/addons/rma/models/res_users.py,sha256=43A5IHYXEXe9M4G0cONf1l7EZ1AWl5mhWJ24EdtAfhI,351
|
28
|
-
odoo/addons/rma/models/rma.py,sha256=
|
28
|
+
odoo/addons/rma/models/rma.py,sha256=03PHEGLlCgt67oUlJDbvJ5GDPHtoskN9-ZInA1nKciE,52155
|
29
29
|
odoo/addons/rma/models/rma_finalization.py,sha256=kgJ6EFWBXJKGCwKy7bbWRUynExsCMQyjqcflDpvwtaE,681
|
30
30
|
odoo/addons/rma/models/rma_operation.py,sha256=xbDjthojPoZpSpqKg3eNyYcctv40hPsmrFcUHV3BUyg,460
|
31
31
|
odoo/addons/rma/models/rma_tag.py,sha256=RVFLyo8XmgjK_ftrRHWiEtzUQGs4b-OMhg0hwr-5Rzw,833
|
32
32
|
odoo/addons/rma/models/rma_team.py,sha256=5gyghbFOE4RR6dR5TQ1lRC4kK88i6G51V3dlY9gN6EY,1935
|
33
33
|
odoo/addons/rma/models/stock_move.py,sha256=rpA7RtEwc0TA86lsKnJvAnMU2Ai6atkd9yhguemqt5I,4934
|
34
34
|
odoo/addons/rma/models/stock_picking.py,sha256=z9FcgyEjzQDk4Cptk_b6A4LjY-4J3E7JHF8jFeFnWvw,1413
|
35
|
-
odoo/addons/rma/models/stock_warehouse.py,sha256=
|
35
|
+
odoo/addons/rma/models/stock_warehouse.py,sha256=DbmWYLe3cFS9wuf8Rzz0k5m75EXruMpXTp87OhP4Mrs,8216
|
36
36
|
odoo/addons/rma/readme/CONFIGURE.rst,sha256=18sDF1e6lSdLnaWb6R1MVCgqT1-5QTaazG9HQKySdlg,796
|
37
37
|
odoo/addons/rma/readme/CONTRIBUTORS.rst,sha256=vKdnk5HjyNpvwgPgTA_fpkueu-vsVYeoaVZ82aRiHmQ,378
|
38
38
|
odoo/addons/rma/readme/DESCRIPTION.rst,sha256=JFh4vDgsX1CaV8ea4m8rYCqC-1XOMzI-jTkwMg6WJ68,557
|
@@ -42,9 +42,9 @@ odoo/addons/rma/report/report.xml,sha256=rMg9_lccL-dJClHvMCmRI1Feh499gnExeskIylc
|
|
42
42
|
odoo/addons/rma/security/ir.model.access.csv,sha256=zACDkLgOfICGiJGb4A9RNKbtlpBcFIC4rDZxESyBzbQ,1724
|
43
43
|
odoo/addons/rma/security/rma_security.xml,sha256=_tz_MXqW8bWfzGhgQ3pDI7xdx6tX321DrkIaRAd2W6E,5374
|
44
44
|
odoo/addons/rma/static/description/icon.png,sha256=0VH8J6xmJMYW0dBaW-Ts-Gm5oRvbf9mOglT4vqUKxdU,7450
|
45
|
-
odoo/addons/rma/static/description/index.html,sha256=
|
45
|
+
odoo/addons/rma/static/description/index.html,sha256=SOY3QITQEKXpfydF0Oc79jEW8-rp4yBZp6Ka0HAT2Rs,19205
|
46
46
|
odoo/addons/rma/tests/__init__.py,sha256=Q2ntkew4ZtzTd3zhA1Ly6e-C1NrU6zIPUVEr7hDD-CY,89
|
47
|
-
odoo/addons/rma/tests/test_rma.py,sha256=
|
47
|
+
odoo/addons/rma/tests/test_rma.py,sha256=Ft0Mcb7ZQd9FCwxHJqRJjLiUcdRryFwBMlZdtNMdBls,40932
|
48
48
|
odoo/addons/rma/views/menus.xml,sha256=KWrTOvwY6IB-liNjRvBxTkdCSkes-CMTFI0iakxoavE,603
|
49
49
|
odoo/addons/rma/views/report_rma.xml,sha256=scWiOVovRPdNZWJgHmj7930wRaQ80ZIOz3GWygXN3yk,6579
|
50
50
|
odoo/addons/rma/views/res_config_settings_views.xml,sha256=BgV6WqRHDe2e3773wCHGyclQ0hh47_ZZsHo062V992w,9436
|
@@ -55,7 +55,7 @@ odoo/addons/rma/views/rma_tag_views.xml,sha256=Nhq9pUOHx6TS9dREkavjVzKjPUSjv89vJ
|
|
55
55
|
odoo/addons/rma/views/rma_team_views.xml,sha256=ekbQB-lLi8pFV-AAp1ETK1FkPzxoqTCu_XRo6Hf2Bbs,6988
|
56
56
|
odoo/addons/rma/views/rma_views.xml,sha256=mTWudFzAJeaKL8waOWiBecGqY81h5l7KmmREKJfTb4U,20031
|
57
57
|
odoo/addons/rma/views/stock_picking_views.xml,sha256=0N80h-BuliU2iLIzpkdbLf-YpQ1R97pP9Lq_pKq_M-Q,945
|
58
|
-
odoo/addons/rma/views/stock_warehouse_views.xml,sha256=
|
58
|
+
odoo/addons/rma/views/stock_warehouse_views.xml,sha256=f3f0DtzNvOc0txPANs0Zw0Ds5ZbPDX20iAunIAIEgpA,921
|
59
59
|
odoo/addons/rma/wizard/__init__.py,sha256=v5BQZoM0R5d2jOPuFiq500H2QAEee9eJB-4hKm5Wk7U,190
|
60
60
|
odoo/addons/rma/wizard/rma_delivery.py,sha256=fk1SA1ugBMe9AL7nlc2ylIatnftdkCxcahN2wriMT-U,3469
|
61
61
|
odoo/addons/rma/wizard/rma_delivery_views.xml,sha256=7hPjdljvRt7oWTIDX1bo4e-9I9pGpSZs6PWxX3kuNSk,3412
|
@@ -65,7 +65,7 @@ odoo/addons/rma/wizard/rma_split.py,sha256=PZuVAGCXzRkycxJQIgfbPY__EPRXGPAkiKaGX
|
|
65
65
|
odoo/addons/rma/wizard/rma_split_views.xml,sha256=jtrUmgS9rsUfbgx6y77cUXPnmd1ObY7lmQ_8XZDxxuo,1581
|
66
66
|
odoo/addons/rma/wizard/stock_picking_return.py,sha256=vGV5hSettscItmDRA8xmpuPE0v0r8q8uOSTiSy6El8E,7119
|
67
67
|
odoo/addons/rma/wizard/stock_picking_return_views.xml,sha256=NNnHzPR419GuIikwmJym4YZ-EVoPS6lG2G0XNX_4vLc,1677
|
68
|
-
odoo_addon_rma-16.0.3.
|
69
|
-
odoo_addon_rma-16.0.3.
|
70
|
-
odoo_addon_rma-16.0.3.
|
71
|
-
odoo_addon_rma-16.0.3.
|
68
|
+
odoo_addon_rma-16.0.3.6.0.dist-info/METADATA,sha256=Nzf0RBz3-y0D6g3T1g5zudhSPuZHDJz2L8Ed6D-ffmM,8799
|
69
|
+
odoo_addon_rma-16.0.3.6.0.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
70
|
+
odoo_addon_rma-16.0.3.6.0.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
71
|
+
odoo_addon_rma-16.0.3.6.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|