Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
96 changes: 96 additions & 0 deletions rma_repair_location/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
===================
Rma Repair Location
===================

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

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |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/16.0/rma_repair_location
:alt: OCA/rma
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/rma-16-0/rma-16-0-rma_repair_location
: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=16.0
:alt: Try me on Runboat

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

This module allows configuring the default warehouse and location used
when creating a repair order from an RMA operation.

In standard behavior, the repair order created from an RMA follows the
default warehouse and location logic defined in the repair module.

With this module, you can configure on each RMA operation:

- A specific Repair Warehouse
- A specific Repair Location

If configured, these values are applied automatically when the repair
order is generated from the RMA.

**Table of contents**

.. contents::
:local:

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_repair_location%0Aversion:%2016.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
-------

* ACSONE SA/NV

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

- Souheil Bejaoui souheil.bejaoui@acsone.eu

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-sbejaoui| image:: https://github.com/sbejaoui.png?size=40px
:target: https://github.com/sbejaoui
:alt: sbejaoui

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

|maintainer-sbejaoui|

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

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions rma_repair_location/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
14 changes: 14 additions & 0 deletions rma_repair_location/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Copyright 2026 ACSONE SA/NV
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

{
"name": "Rma Repair Location",
"summary": """Configure repair warehouse/location on RMA operations""",
"version": "16.0.1.0.0",
"license": "AGPL-3",
"author": "ACSONE SA/NV,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/rma",
"depends": ["repair_warehouse", "rma_repair"],
"data": ["views/rma_operation.xml"],
"maintainers": ["sbejaoui"],
}
2 changes: 2 additions & 0 deletions rma_repair_location/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import rma_operation
from . import rma
18 changes: 18 additions & 0 deletions rma_repair_location/models/rma.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright 2026 ACSONE SA/NV
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import models


class Rma(models.Model):

_inherit = "rma"

def _get_repair_order_default_vals(self):
self.ensure_one()
vals = super()._get_repair_order_default_vals()
if self.operation_id.repair_warehouse_id:
vals["default_warehouse_id"] = self.operation_id.repair_warehouse_id.id
if self.operation_id.repair_location_id:
vals["default_location_id"] = self.operation_id.repair_location_id.id
return vals
21 changes: 21 additions & 0 deletions rma_repair_location/models/rma_operation.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2026 ACSONE SA/NV
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import fields, models


class RmaOperation(models.Model):

_inherit = "rma.operation"

repair_warehouse_id = fields.Many2one(
comodel_name="stock.warehouse",
string="Repair Warehouse",
help="If set, repair orders created from this operation will use this warehouse.",
)
repair_location_id = fields.Many2one(
comodel_name="stock.location",
string="Repair Location",
domain="[('warehouse_id', '=', repair_warehouse_id)]",
help="If set, repair orders created from this operation will use this location.",
)
1 change: 1 addition & 0 deletions rma_repair_location/readme/CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Souheil Bejaoui <souheil.bejaoui@acsone.eu>
14 changes: 14 additions & 0 deletions rma_repair_location/readme/DESCRIPTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
This module allows configuring the default warehouse and location
used when creating a repair order from an RMA operation.

In standard behavior, the repair order created from an RMA follows
the default warehouse and location logic defined in the repair
module.

With this module, you can configure on each RMA operation:

- A specific Repair Warehouse
- A specific Repair Location

If configured, these values are applied automatically when the
repair order is generated from the RMA.
Binary file added rma_repair_location/static/description/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading