odoo-addon-rma 16.0.1.2.0.2__py3-none-any.whl → 17.0.1.0.0.3__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.
Files changed (44) hide show
  1. odoo/addons/rma/README.rst +87 -78
  2. odoo/addons/rma/__manifest__.py +1 -1
  3. odoo/addons/rma/controllers/main.py +2 -1
  4. odoo/addons/rma/data/mail_data.xml +3 -6
  5. odoo/addons/rma/hooks.py +1 -5
  6. odoo/addons/rma/i18n/de.po +108 -93
  7. odoo/addons/rma/i18n/de_AT.po +48 -80
  8. odoo/addons/rma/i18n/es.po +108 -93
  9. odoo/addons/rma/i18n/fr.po +102 -93
  10. odoo/addons/rma/i18n/it.po +126 -111
  11. odoo/addons/rma/i18n/nl.po +48 -80
  12. odoo/addons/rma/i18n/pt.po +86 -87
  13. odoo/addons/rma/i18n/pt_BR.po +76 -85
  14. odoo/addons/rma/i18n/rma.pot +49 -81
  15. odoo/addons/rma/i18n/ro.po +66 -85
  16. odoo/addons/rma/i18n/zh_CN.po +48 -80
  17. odoo/addons/rma/models/rma.py +51 -112
  18. odoo/addons/rma/models/stock_move.py +1 -1
  19. odoo/addons/rma/readme/CONFIGURE.md +22 -0
  20. odoo/addons/rma/readme/CONTRIBUTORS.md +9 -0
  21. odoo/addons/rma/readme/{DESCRIPTION.rst → DESCRIPTION.md} +4 -4
  22. odoo/addons/rma/readme/ROADMAP.md +3 -0
  23. odoo/addons/rma/readme/USAGE.md +59 -0
  24. odoo/addons/rma/static/description/index.html +55 -46
  25. odoo/addons/rma/tests/test_rma.py +21 -37
  26. odoo/addons/rma/views/res_config_settings_views.xml +55 -124
  27. odoo/addons/rma/views/res_partner_views.xml +1 -1
  28. odoo/addons/rma/views/rma_finalization_views.xml +1 -1
  29. odoo/addons/rma/views/rma_team_views.xml +2 -6
  30. odoo/addons/rma/views/rma_views.xml +71 -39
  31. odoo/addons/rma/views/stock_picking_views.xml +1 -1
  32. odoo/addons/rma/wizard/rma_delivery_views.xml +8 -19
  33. odoo/addons/rma/wizard/stock_picking_return_views.xml +1 -1
  34. odoo_addon_rma-17.0.1.0.0.3.dist-info/METADATA +220 -0
  35. odoo_addon_rma-17.0.1.0.0.3.dist-info/RECORD +70 -0
  36. {odoo_addon_rma-16.0.1.2.0.2.dist-info → odoo_addon_rma-17.0.1.0.0.3.dist-info}/WHEEL +1 -1
  37. odoo_addon_rma-17.0.1.0.0.3.dist-info/top_level.txt +1 -0
  38. odoo/addons/rma/readme/CONFIGURE.rst +0 -21
  39. odoo/addons/rma/readme/CONTRIBUTORS.rst +0 -9
  40. odoo/addons/rma/readme/ROADMAP.rst +0 -3
  41. odoo/addons/rma/readme/USAGE.rst +0 -57
  42. odoo_addon_rma-16.0.1.2.0.2.dist-info/METADATA +0 -214
  43. odoo_addon_rma-16.0.1.2.0.2.dist-info/RECORD +0 -70
  44. odoo_addon_rma-16.0.1.2.0.2.dist-info/top_level.txt +0 -1
@@ -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:4883b701d44a55d02e769bdbf411c649efc42341792b63e965630e712a6406d9
10
+ !! source digest: sha256:9ca167b75e0dcd82a66217ef64dd006910f4feda1f408dbdf09ef43e6555eb22
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
@@ -17,25 +17,25 @@ Return Merchandise Authorization Management
17
17
  :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
18
18
  :alt: License: AGPL-3
19
19
  .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github
20
- :target: https://github.com/OCA/rma/tree/16.0/rma
20
+ :target: https://github.com/OCA/rma/tree/17.0/rma
21
21
  :alt: OCA/rma
22
22
  .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
23
- :target: https://translation.odoo-community.org/projects/rma-16-0/rma-16-0-rma
23
+ :target: https://translation.odoo-community.org/projects/rma-17-0/rma-17-0-rma
24
24
  :alt: Translate me on Weblate
25
25
  .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
26
- :target: https://runboat.odoo-community.org/builds?repo=OCA/rma&target_branch=16.0
26
+ :target: https://runboat.odoo-community.org/builds?repo=OCA/rma&target_branch=17.0
27
27
  :alt: Try me on Runboat
28
28
 
29
29
  |badge1| |badge2| |badge3| |badge4| |badge5|
30
30
 
31
- This module allows you to manage `Return Merchandise Authorization (RMA)
32
- <https://en.wikipedia.org/wiki/Return_merchandise_authorization>`_.
31
+ This module allows you to manage `Return Merchandise Authorization
32
+ (RMA) <https://en.wikipedia.org/wiki/Return_merchandise_authorization>`__.
33
33
  RMA documents can be created from scratch, from a delivery order or from
34
34
  an incoming email. Product receptions and returning delivery operations
35
35
  of the RMA module are fully integrated with the Receipts and Deliveries
36
36
  Operations of Odoo inventory core module. It also allows you to generate
37
- refunds in the same way as Odoo generates it.
38
- Besides, you have full integration of the RMA documents in the customer portal.
37
+ refunds in the same way as Odoo generates it. Besides, you have full
38
+ integration of the RMA documents in the customer portal.
39
39
 
40
40
  **Table of contents**
41
41
 
@@ -47,23 +47,24 @@ Configuration
47
47
 
48
48
  If you want RMAs to be created from incoming emails, you need to:
49
49
 
50
- #. Go to *Settings > General Settings*.
51
- #. Check 'External Email Servers' checkbox under *Discuss* section.
52
- #. Set an 'alias domain' and an incoming server.
53
- #. Go to *RMA > Configuration > RMA Team* and select a team or create a new
54
- one.
55
- #. Go to 'Email' tab and set an 'Email Alias'.
50
+ 1. Go to *Settings > General Settings*.
51
+ 2. Check 'External Email Servers' checkbox under *Discuss* section.
52
+ 3. Set an 'alias domain' and an incoming server.
53
+ 4. Go to *RMA > Configuration > RMA Team* and select a team or create a
54
+ new one.
55
+ 5. Go to 'Email' tab and set an 'Email Alias'.
56
56
 
57
57
  If you want to manually finish RMAs, you need to:
58
58
 
59
- #. Go to *Settings > Inventory*.
60
- #. Set *Finish RMAs manually* checkbox on.
59
+ 1. Go to *Settings > Inventory*.
60
+ 2. Set *Finish RMAs manually* checkbox on.
61
61
 
62
- By default, returns to customer are grouped by shipping address, warehouse and company.
63
- If you want to avoid this grouping you can:
62
+ By default, returns to customer are grouped by shipping address,
63
+ warehouse and company. If you want to avoid this grouping you can:
64
64
 
65
- #. Go to *Settings > Inventory*.
66
- #. Set *Group RMA returns by customer address and warehouse* checkbox off.
65
+ 1. Go to *Settings > Inventory*.
66
+ 2. Set *Group RMA returns by customer address and warehouse* checkbox
67
+ off.
67
68
 
68
69
  The users will still be able to group those pickings from the wizard.
69
70
 
@@ -72,68 +73,73 @@ Usage
72
73
 
73
74
  To use this module, you need to:
74
75
 
75
- #. Go to *RMA > Orders* and create a new RMA.
76
- #. Select a partner, an invoice address, select a product
77
- (or select a picking and a move instead), write a quantity, fill the rest
78
- of the form and click on 'confirm' button in the status bar.
79
- #. You will see an smart button labeled 'Receipt'. Click on that button to see
80
- the reception operation form.
81
- #. If everything is right, validate the operation and go back to the RMA to
82
- see it in a 'received' state.
83
- #. Now you are able to generate a refund, generate a delivery order to return
84
- to the customer the same product or another product as a replacement, split
85
- the RMA by extracting a part of the remaining quantity to another RMA,
86
- preview the RMA in the website. All of these operations can be done by
87
- clicking on the buttons in the status bar.
88
-
89
- * If you click on 'Refund' button, a refund will be created, and it will be
90
- accessible via the smart button labeled Refund. The RMA will be set
91
- automatically to 'Refunded' state when the refund is validated.
92
- * If you click on 'Replace' or 'Return to customer' button instead,
93
- a popup wizard will guide you to create a Delivery order to the client
94
- and this order will be accessible via the smart button labeled Delivery.
95
- The RMA will be set automatically to 'Replaced' or 'Returned' state when
96
- the RMA quantity is equal or lower than the quantity in done delivery
97
- orders linked to it.
98
- #. You can also finish the RMA without further ado. To do so click on the *Finish*
99
- button. A wizard will ask you for the reason from a selection of preconfigured ones.
100
- Be sure to configure them in advance on *RMA > Configuration > Finalization Reasons*.
101
- Once the RMA is finished, it will be set to that state and the reason will be
76
+ 1. Go to *RMA > Orders* and create a new RMA.
77
+ 2. Select a partner, an invoice address, select a product (or select a
78
+ picking and a move instead), write a quantity, fill the rest of the
79
+ form and click on 'confirm' button in the status bar.
80
+ 3. You will see an smart button labeled 'Receipt'. Click on that button
81
+ to see the reception operation form.
82
+ 4. If everything is right, validate the operation and go back to the RMA
83
+ to see it in a 'received' state.
84
+ 5. Now you are able to generate a refund, generate a delivery order to
85
+ return to the customer the same product or another product as a
86
+ replacement, split the RMA by extracting a part of the remaining
87
+ quantity to another RMA, preview the RMA in the website. All of these
88
+ operations can be done by clicking on the buttons in the status bar.
89
+
90
+ - If you click on 'To Refund' button, a refund will be created, and
91
+ it will be accessible via the smart button labeled Refund. The RMA
92
+ will be set automatically to 'Refunded' state when the refund is
93
+ validated.
94
+ - If you click on 'Replace' or 'Return to customer' button instead,
95
+ a popup wizard will guide you to create a Delivery order to the
96
+ client and this order will be accessible via the smart button
97
+ labeled Delivery. The RMA will be set automatically to 'Replaced'
98
+ or 'Returned' state when the RMA quantity is equal or lower than
99
+ the quantity in done delivery orders linked to it.
100
+
101
+ 6. You can also finish the RMA without further ado. To do so click on
102
+ the *Finish* button. A wizard will ask you for the reason from a
103
+ selection of preconfigured ones. Be sure to configure them in advance
104
+ on *RMA > Configuration > Finalization Reasons*. Once the RMA is
105
+ finished, it will be set to that state and the reason will be
102
106
  registered.
103
107
 
104
108
  An RMA can also be created from a return of a delivery order:
105
109
 
106
- #. Select a delivery order and click on 'Return' button to create a return.
107
- #. Check "Create RMAs" checkbox in the returning wizard, select the RMA
110
+ 1. Select a delivery order and click on 'Return' button to create a
111
+ return.
112
+ 2. Check "Create RMAs" checkbox in the returning wizard, select the RMA
108
113
  stock location and click on 'Return' button.
109
- #. An RMA will be created for each product returned in the previous step.
110
- Every RMA will be in confirmed state and they will
111
- be linked to the returning operation generated previously.
114
+ 3. An RMA will be created for each product returned in the previous
115
+ step. Every RMA will be in confirmed state and they will be linked to
116
+ the returning operation generated previously.
112
117
 
113
118
  There are Optional RMA Teams that can be used for:
114
119
 
115
- - Organize RMAs in sections.
116
- - Subscribe users to notifications.
117
- - Create RMAs from incoming mail to special aliases (See configuration
118
- section).
120
+ - Organize RMAs in sections.
121
+ - Subscribe users to notifications.
122
+ - Create RMAs from incoming mail to special aliases (See
123
+ configuration section).
119
124
 
120
125
  To create an RMA Team (RMA Responsible user level required):
121
126
 
122
- #. Go to *RMA > Configuration > RMA Teams*
123
- #. Create a new team and assign a name, a responsible and members.
124
- #. Subscribe users to notifications, that can be of these subtypes:
127
+ 1. Go to *RMA > Configuration > RMA Teams*
128
+ 2. Create a new team and assign a name, a responsible and members.
129
+ 3. Subscribe users to notifications, that can be of these subtypes:
125
130
 
126
- - RMA draft. When a new RMA is created.
127
- - Notes, Debates, Activities. As in standard Odoo.
128
- #. In the list view, use the cross handle to sort RMA Teams. The top team
129
- will be the default one if no team is set.
131
+ - RMA draft. When a new RMA is created.
132
+ - Notes, Debates, Activities. As in standard Odoo.
133
+
134
+ 4. In the list view, use the cross handle to sort RMA Teams. The top
135
+ team will be the default one if no team is set.
130
136
 
131
137
  Known issues / Roadmap
132
138
  ======================
133
139
 
134
- * As soon as the picking is selected, the user should select the move,
135
- but perhaps stock.move _rec_name could be improved to better show what
136
- the product of that move is.
140
+ - As soon as the picking is selected, the user should select the move,
141
+ but perhaps stock.move \_rec_name could be improved to better show
142
+ what the product of that move is.
137
143
 
138
144
  Bug Tracker
139
145
  ===========
@@ -141,7 +147,7 @@ Bug Tracker
141
147
  Bugs are tracked on `GitHub Issues <https://github.com/OCA/rma/issues>`_.
142
148
  In case of trouble, please check there if your issue has already been reported.
143
149
  If you spotted it first, help us to smash it by providing a detailed and welcomed
144
- `feedback <https://github.com/OCA/rma/issues/new?body=module:%20rma%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
150
+ `feedback <https://github.com/OCA/rma/issues/new?body=module:%20rma%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
145
151
 
146
152
  Do not contact contributors directly about support or help with technical issues.
147
153
 
@@ -149,25 +155,28 @@ Credits
149
155
  =======
150
156
 
151
157
  Authors
152
- ~~~~~~~
158
+ -------
153
159
 
154
160
  * Tecnativa
155
161
 
156
162
  Contributors
157
- ~~~~~~~~~~~~
163
+ ------------
164
+
165
+ - `Tecnativa <https://www.tecnativa.com>`__:
158
166
 
159
- * `Tecnativa <https://www.tecnativa.com>`_:
167
+ - Ernesto Tejeda
168
+ - Pedro M. Baeza
169
+ - David Vidal
170
+ - Víctor Martínez
160
171
 
161
- * Ernesto Tejeda
162
- * Pedro M. Baeza
163
- * David Vidal
164
- * Víctor Martínez
172
+ - Chafique Delli <chafique.delli@akretion.com>
173
+ - Giovanni Serra - Ooops <giovanni@ooops404.com>
174
+ - `APSL-Nagarro <https://www.apsl.tech>`__:
165
175
 
166
- * Chafique Delli <chafique.delli@akretion.com>
167
- * Giovanni Serra - Ooops <giovanni@ooops404.com>
176
+ - Antoni Marroig <amarroig@apsl.net>
168
177
 
169
178
  Maintainers
170
- ~~~~~~~~~~~
179
+ -----------
171
180
 
172
181
  This module is maintained by the OCA.
173
182
 
@@ -190,6 +199,6 @@ Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:
190
199
 
191
200
  |maintainer-pedrobaeza| |maintainer-chienandalu|
192
201
 
193
- This module is part of the `OCA/rma <https://github.com/OCA/rma/tree/16.0/rma>`_ project on GitHub.
202
+ This module is part of the `OCA/rma <https://github.com/OCA/rma/tree/17.0/rma>`_ project on GitHub.
194
203
 
195
204
  You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
@@ -5,7 +5,7 @@
5
5
  {
6
6
  "name": "Return Merchandise Authorization Management",
7
7
  "summary": "Return Merchandise Authorization (RMA)",
8
- "version": "16.0.1.2.0",
8
+ "version": "17.0.1.0.0",
9
9
  "development_status": "Production/Stable",
10
10
  "category": "RMA",
11
11
  "website": "https://github.com/OCA/rma",
@@ -7,7 +7,8 @@ from odoo.exceptions import AccessError, MissingError
7
7
  from odoo.http import request
8
8
  from odoo.tools import consteq
9
9
 
10
- from odoo.addons.portal.controllers.portal import CustomerPortal, pager as portal_pager
10
+ from odoo.addons.portal.controllers.portal import CustomerPortal
11
+ from odoo.addons.portal.controllers.portal import pager as portal_pager
11
12
 
12
13
 
13
14
  class PortalRma(CustomerPortal):
@@ -41,8 +41,7 @@
41
41
  <field
42
42
  name="subject"
43
43
  >{{object.company_id.name}} RMA (Ref {{object.name or 'n/a' }})</field>
44
- <field name="report_template" ref="report_rma_action" />
45
- <field name="report_name">{{(object.name or '')}}</field>
44
+ <field name="report_template_ids" eval="[(4, ref('rma.report_rma_action'))]" />
46
45
  <field name="lang">{{object.partner_id.lang}}</field>
47
46
  <field name="auto_delete" eval="True" />
48
47
  <field name="body_html" type="html">
@@ -78,8 +77,7 @@
78
77
  <field
79
78
  name="subject"
80
79
  >{{object.company_id.name}} RMA (Ref {{object.name or 'n/a' }}) products received</field>
81
- <field name="report_template" ref="report_rma_action" />
82
- <field name="report_name">{{(object.name or '')}}</field>
80
+ <field name="report_template_ids" eval="[(4, ref('rma.report_rma_action'))]" />
83
81
  <field name="lang">{{object.partner_id.lang}}</field>
84
82
  <field name="auto_delete" eval="True" />
85
83
  <field name="body_html" type="html">
@@ -114,8 +112,7 @@
114
112
  <field
115
113
  name="subject"
116
114
  >{{object.company_id.name}} Your RMA has been succesfully created (Ref {{object.name or 'n/a' }})</field>
117
- <field name="report_template" ref="report_rma_action" />
118
- <field name="report_name">{{(object.name or '')}}</field>
115
+ <field name="report_template_ids" eval="[(4, ref('rma.report_rma_action'))]" />
119
116
  <field name="lang">{{object.partner_id.lang}}</field>
120
117
  <field name="auto_delete" eval="True" />
121
118
  <field name="body_html" type="html">
odoo/addons/rma/hooks.py CHANGED
@@ -1,12 +1,8 @@
1
1
  # Copyright 2020 Tecnativa - Ernesto Tejeda
2
2
  # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
3
 
4
- from odoo import SUPERUSER_ID, api
5
-
6
-
7
- def post_init_hook(cr, registry):
8
- env = api.Environment(cr, SUPERUSER_ID, {})
9
4
 
5
+ def post_init_hook(env):
10
6
  def _get_next_picking_type_color():
11
7
  """Choose the next available color for the operation types."""
12
8
  stock_picking_type = env["stock.picking.type"]