Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[17.0][MIG] rma: Migration to 17.0 #385

Merged
merged 98 commits into from
May 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
7d71958
[ADD] rma: new module
May 13, 2020
9aebb3a
Added translation using Weblate (Portuguese (Brazil))
fcolus Jul 22, 2020
c120bcb
[FIX+IMP] rma: view permissions + portal views access errors + teams …
chienandalu Aug 14, 2020
873d2d2
[FIX+IMP] rma, rma_sale: fix bugs and add improvements
Aug 19, 2020
ec05c53
Translated using Weblate (Spanish)
pedrobaeza Aug 22, 2020
1945ee0
[FIX] rma: permissions for general users
chienandalu Aug 24, 2020
665ab61
[IMP] rma: Return created sequence on create_rma_index
pedrobaeza Aug 22, 2020
9794aa4
[IMP] rma_sale: portal improvents
chienandalu Aug 28, 2020
dd7b6c4
[FIX] rma: Perform refund with proper view
pedrobaeza Sep 14, 2020
8f2351e
[IMP] rma: set rma to received on invoice delete + incoming picking t…
Sep 15, 2020
5c848ba
[FIX+IMP] rma: usability + Translated using Weblate (Spanish) + 5 thi…
chienandalu Sep 30, 2020
e6b8d70
[IMP] rma: black, isort, prettier
Oct 23, 2020
fa16030
[MIG] rma: Migration to 13.0
Oct 23, 2020
1704000
[IMP] rma: Add customer as suggested recipient
Dec 1, 2020
c509c80
Added translation using Weblate (Romanian)
dhongu Dec 11, 2020
f336ff1
Added translation using Weblate (Dutch)
bosd Dec 13, 2020
8ec5697
Added translation using Weblate (Chinese (Simplified))
dong-z Mar 21, 2021
98bb76a
Translated using Weblate (Chinese (Simplified))
dong-z Mar 21, 2021
28a9698
[IMP] rma: auto send confirmation email
chienandalu Feb 9, 2021
2a3d713
[IMP] rma_sale: prepare kits integration
chienandalu Nov 16, 2020
9b4a97e
[IMP] rma: automatic notification subtypes
chienandalu Mar 1, 2021
b29da85
[IMP] rma, rma_sale: shipping address
chienandalu Nov 6, 2020
3dba347
[FIX] rma: Set default source location for RMA created from scratch
Mar 4, 2021
ed5f42a
[FIX] rma: tagged test
chienandalu May 5, 2021
d87d582
[IMP] rma: tags
chienandalu May 6, 2021
32b569e
[IMP] rma: black, isort, prettier
chafique-delli Jun 6, 2021
6f3884c
[MIG] rma: Migration to 14.0
chafique-delli Dec 4, 2020
213c7ff
[IMP] rma: notify reception to customer
chienandalu May 19, 2021
c7be8f2
[IMP] rma: public tags
chienandalu May 25, 2021
e65f843
[IMP] rma: allow to archive operation types
chienandalu Jul 14, 2021
bd78691
Remove useless archive/unarchive button on form views
florian-dacosta Jul 29, 2021
cb83ae6
[FIX] rma: Propagate cancel_backorder argument
pedrobaeza Sep 19, 2021
34f96d1
[FIX] rma: default team and responsible
chienandalu Sep 23, 2021
cb71872
[FIX] rma: Use Form to avoid UoM change invalid check
pedrobaeza Sep 6, 2021
6ffa4fb
[FIX] rma: return location
chienandalu Sep 23, 2021
6161bf1
Added translation using Weblate (Portuguese)
pedrocs-exo Oct 28, 2021
f977197
Translated using Weblate (Portuguese)
pedrocs-exo Oct 28, 2021
b47ecd5
Added translation using Weblate (Italian)
francesco-ooops Nov 23, 2021
12a2bea
[FIX] multi company error on rma location choice
florian-dacosta Dec 1, 2021
29daa19
Translated using Weblate (Italian)
SicurSam Dec 3, 2021
1bd0589
Translated using Weblate (Italian)
francesco-ooops Dec 10, 2021
3ed7941
[FIX] duplicate labels (category_id, uom_category_id) of rma())
Kev-Roche Jan 16, 2022
573bf80
Translated using Weblate (Spanish)
xavigutipujol Jan 17, 2022
5496c03
[FIX] rma: return wizard to_refund
chienandalu Jan 17, 2022
3f4fc37
[FIX] rma: Adjust hook for existing values
pedrobaeza Dec 18, 2021
48e46f1
[IMP] rma report: invoice and shipping address
chienandalu Jan 21, 2022
df24c1f
[IMP] rma: unplug test cases from declaration
chienandalu Jan 25, 2022
6748c73
[IMP] rma: finish RMA manually
chienandalu Jan 28, 2022
5d89fa4
[FIX] Do not link reception and delivery move in case of RMA replacement
florian-dacosta Feb 7, 2022
82e319a
[FIX] rma: name column width in tree view
chienandalu Mar 15, 2022
a547e6e
Translated using Weblate (Italian)
francesco-ooops Mar 23, 2022
d8411af
Translated using Weblate (Italian)
SicurSam Mar 31, 2022
6ced59a
[IMP] update dotfiles [ci skip]
OCA-git-bot Mar 31, 2022
e9a7977
[14.0][FIX] rma_sale, fix action permission issues.
GSLabIt Apr 26, 2022
c75724d
[14.0][FIX] rma, fix permission for action
GSLabIt Apr 26, 2022
dc15dfb
[FIX] rma: Allow manual finalization in wizard.
victoralmau May 4, 2022
dada912
Translated using Weblate (Italian)
francesco-ooops May 18, 2022
b7ceaf8
[FIX] rma: refund permissions
chienandalu Feb 17, 2022
095aef8
[IMP] rma: optionally group returns to customer
chienandalu Mar 7, 2022
805178f
[FIX] rma: Avoid set invoice_payment_term_id from partner default val…
victoralmau Jun 22, 2022
0f99685
Update translation files
oca-transbot Jun 29, 2022
18159b3
[FIX] rma + rma_sale: Allow to create an RMA to a user with access_to…
victoralmau May 16, 2022
9ede170
[MIG] rma: Migration to 15.0
Aug 10, 2022
b908d0c
[OU-ADD] rma: Add migration script.
victoralmau Aug 19, 2022
45327ae
[IMP] rma: Use _prepare_home_portal_values() function.
victoralmau Sep 2, 2022
9af30f4
Added translation using Weblate (German)
Sep 26, 2022
3c59c21
[FIX] rma: multiple substitution moves
chienandalu Oct 26, 2022
37909c0
Translated using Weblate (Italian)
primes2h Dec 1, 2022
6079b53
[FIX] rma: avoid reopening a cancelled RMA when the reception is deleted
chienandalu Mar 9, 2023
ffcbf65
Translated using Weblate (German)
Apr 5, 2023
2474ba4
[FIX] rma: avoid refunding in picking return wizard
chienandalu Mar 21, 2023
89870bd
Translated using Weblate (Italian)
francesco-ooops Dec 29, 2022
87bedb4
Translated using Weblate (Italian)
mymage Dec 20, 2022
e0ffe30
Translated using Weblate (Spanish)
CarlosRoca13 Aug 11, 2023
9b1ef38
[MIG] rma: Migration to 16.0
pedrobaeza Aug 24, 2023
fff0052
[UPD] Update rma.pot
Aug 28, 2023
d186edb
[UPD] README.rst
OCA-git-bot Aug 28, 2023
0e30933
[UPD] README.rst
OCA-git-bot Sep 3, 2023
41e7022
Update translation files
weblate Sep 3, 2023
6cb2058
Translated using Weblate (Italian)
mymage Sep 4, 2023
6dae585
[FIX] rma: _get_sequence_values signature
chienandalu Sep 6, 2023
6885aa0
Translated using Weblate (Spanish)
Ivorra78 Sep 7, 2023
62c8154
Added translation using Weblate (French)
Sep 12, 2023
c94ff4b
Translated using Weblate (Spanish)
Ivorra78 Sep 20, 2023
0bc590c
Update translation files
weblate Oct 10, 2023
0596493
[FIX] rma: `image_128` -> `avatar_128`
MiquelRForgeFlow Oct 10, 2023
2bbebcf
[BOT] post-merge updates
OCA-git-bot Oct 10, 2023
5feb604
Translated using Weblate (Italian)
mymage Oct 11, 2023
21f3bbd
Translated using Weblate (Italian)
francesco-ooops Oct 17, 2023
1bce43b
Translated using Weblate (Italian)
mymage Oct 31, 2023
e949a4e
Translated using Weblate (French)
kbentaleb Jan 4, 2024
edc5145
Translated using Weblate (Italian)
mymage Jan 22, 2024
8f8d62c
[FIX] rma: unresolved and late filters
chienandalu Jan 30, 2024
f2e9657
[IMP] rma: mantainers
chienandalu Jan 30, 2024
1286c1f
[BOT] post-merge updates
OCA-git-bot Jan 30, 2024
c810090
Translated using Weblate (Italian)
mymage Mar 1, 2024
c22fa4e
[IMP] rma: pre-commit auto fixes
peluko00 May 3, 2024
9cc5bca
[MIG] rma: Migration to 17.0
peluko00 May 8, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
204 changes: 204 additions & 0 deletions rma/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
===========================================
Return Merchandise Authorization Management
===========================================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:4883b701d44a55d02e769bdbf411c649efc42341792b63e965630e712a6406d9
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
:target: https://odoo-community.org/page/development-status
:alt: Production/Stable
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github
:target: https://github.com/OCA/rma/tree/17.0/rma
:alt: OCA/rma
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/rma-17-0/rma-17-0-rma
: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/rma&target_branch=17.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows you to manage `Return Merchandise Authorization
(RMA) <https://en.wikipedia.org/wiki/Return_merchandise_authorization>`__.
RMA documents can be created from scratch, from a delivery order or from
an incoming email. Product receptions and returning delivery operations
of the RMA module are fully integrated with the Receipts and Deliveries
Operations of Odoo inventory core module. It also allows you to generate
refunds in the same way as Odoo generates it. Besides, you have full
integration of the RMA documents in the customer portal.

**Table of contents**

.. contents::
:local:

Configuration
=============

If you want RMAs to be created from incoming emails, you need to:

1. Go to *Settings > General Settings*.
2. Check 'External Email Servers' checkbox under *Discuss* section.
3. Set an 'alias domain' and an incoming server.
4. Go to *RMA > Configuration > RMA Team* and select a team or create a
new one.
5. Go to 'Email' tab and set an 'Email Alias'.

If you want to manually finish RMAs, you need to:

1. Go to *Settings > Inventory*.
2. Set *Finish RMAs manually* checkbox on.

By default, returns to customer are grouped by shipping address,
warehouse and company. If you want to avoid this grouping you can:

1. Go to *Settings > Inventory*.
2. Set *Group RMA returns by customer address and warehouse* checkbox
off.

The users will still be able to group those pickings from the wizard.

Usage
=====

To use this module, you need to:

1. Go to *RMA > Orders* and create a new RMA.
2. Select a partner, an invoice address, select a product (or select a
picking and a move instead), write a quantity, fill the rest of the
form and click on 'confirm' button in the status bar.
3. You will see an smart button labeled 'Receipt'. Click on that button
to see the reception operation form.
4. If everything is right, validate the operation and go back to the RMA
to see it in a 'received' state.
5. Now you are able to generate a refund, generate a delivery order to
return to the customer the same product or another product as a
replacement, split the RMA by extracting a part of the remaining
quantity to another RMA, preview the RMA in the website. All of these
operations can be done by clicking on the buttons in the status bar.

- If you click on 'To Refund' button, a refund will be created, and
it will be accessible via the smart button labeled Refund. The RMA
will be set automatically to 'Refunded' state when the refund is
validated.
- If you click on 'Replace' or 'Return to customer' button instead,
a popup wizard will guide you to create a Delivery order to the
client and this order will be accessible via the smart button
labeled Delivery. The RMA will be set automatically to 'Replaced'
or 'Returned' state when the RMA quantity is equal or lower than
the quantity in done delivery orders linked to it.

6. You can also finish the RMA without further ado. To do so click on
the *Finish* button. A wizard will ask you for the reason from a
selection of preconfigured ones. Be sure to configure them in advance
on *RMA > Configuration > Finalization Reasons*. Once the RMA is
finished, it will be set to that state and the reason will be
registered.

An RMA can also be created from a return of a delivery order:

1. Select a delivery order and click on 'Return' button to create a
return.
2. Check "Create RMAs" checkbox in the returning wizard, select the RMA
stock location and click on 'Return' button.
3. An RMA will be created for each product returned in the previous
step. Every RMA will be in confirmed state and they will be linked to
the returning operation generated previously.

There are Optional RMA Teams that can be used for:

- Organize RMAs in sections.
- Subscribe users to notifications.
- Create RMAs from incoming mail to special aliases (See
configuration section).

To create an RMA Team (RMA Responsible user level required):

1. Go to *RMA > Configuration > RMA Teams*
2. Create a new team and assign a name, a responsible and members.
3. Subscribe users to notifications, that can be of these subtypes:

- RMA draft. When a new RMA is created.
- Notes, Debates, Activities. As in standard Odoo.

4. In the list view, use the cross handle to sort RMA Teams. The top
team will be the default one if no team is set.

Known issues / Roadmap
======================

- As soon as the picking is selected, the user should select the move,
but perhaps stock.move \_rec_name could be improved to better show
what the product of that move is.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/rma/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 <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**>`_.

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

Credits
=======

Authors
-------

* Tecnativa

Contributors
------------

- `Tecnativa <https://www.tecnativa.com>`__:

- Ernesto Tejeda
- Pedro M. Baeza
- David Vidal
- Víctor Martínez

- Chafique Delli <chafique.delli@akretion.com>
- Giovanni Serra - Ooops <giovanni@ooops404.com>
- `APSL-Nagarro <https://www.apsl.tech>`__:

- Antoni Marroig <amarroig@apsl.net>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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.

.. |maintainer-pedrobaeza| image:: https://github.com/pedrobaeza.png?size=40px
:target: https://github.com/pedrobaeza
:alt: pedrobaeza
.. |maintainer-chienandalu| image:: https://github.com/chienandalu.png?size=40px
:target: https://github.com/chienandalu
:alt: chienandalu

Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-pedrobaeza| |maintainer-chienandalu|

This module is part of the `OCA/rma <https://github.com/OCA/rma/tree/17.0/rma>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
6 changes: 6 additions & 0 deletions rma/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import controllers
from . import models
from . import wizard
from .hooks import post_init_hook
41 changes: 41 additions & 0 deletions rma/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Copyright 2020 Tecnativa - Ernesto Tejeda
# Copyright 2021-2023 Tecnativa - David Vidal
# Copyright 2021-2023 Tecnativa - Pedro M. Baeza
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
{
"name": "Return Merchandise Authorization Management",
"summary": "Return Merchandise Authorization (RMA)",
"version": "17.0.1.0.0",
"development_status": "Production/Stable",
"category": "RMA",
"website": "https://github.com/OCA/rma",
"author": "Tecnativa, Odoo Community Association (OCA)",
"maintainers": ["pedrobaeza", "chienandalu"],
"license": "AGPL-3",
"depends": ["stock_account"],
"data": [
"views/report_rma.xml",
"report/report.xml",
"data/mail_data.xml",
"data/rma_operation_data.xml",
"data/stock_data.xml",
"security/rma_security.xml",
"security/ir.model.access.csv",
"wizard/stock_picking_return_views.xml",
"wizard/rma_delivery_views.xml",
"wizard/rma_finalization_wizard_views.xml",
"wizard/rma_split_views.xml",
"views/menus.xml",
"views/res_partner_views.xml",
"views/rma_finalization_views.xml",
"views/rma_portal_templates.xml",
"views/rma_team_views.xml",
"views/rma_views.xml",
"views/rma_tag_views.xml",
"views/stock_picking_views.xml",
"views/stock_warehouse_views.xml",
"views/res_config_settings_views.xml",
],
"post_init_hook": "post_init_hook",
"application": True,
}
3 changes: 3 additions & 0 deletions rma/controllers/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import main
Loading
Loading