mirror of
https://github.com/OCA/rma.git
synced 2025-02-16 17:11:47 +02:00
[IMP] rma: finish RMA manually
Sometimes there's no choice to return, refund or replace an RMA for different reasons. For example, when the customer doesn't want to repair the product because that would be too expensive. We still want finish the RMA and document the reasons. This improvement allows it. TT34164
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||
|
||||
from . import rma_delivery
|
||||
from . import rma_finalization_wizard
|
||||
from . import rma_split
|
||||
from . import stock_picking_return
|
||||
|
||||
18
rma/wizard/rma_finalization_wizard.py
Normal file
18
rma/wizard/rma_finalization_wizard.py
Normal file
@@ -0,0 +1,18 @@
|
||||
# Copyright 2022 Tecnativa - David Vidal
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||
from odoo import fields, models
|
||||
|
||||
|
||||
class RmaFinalizationWizard(models.TransientModel):
|
||||
_name = "rma.finalization.wizard"
|
||||
_description = "RMA Finalization Wizard"
|
||||
|
||||
finalization_id = fields.Many2one(
|
||||
comodel_name="rma.finalization", string="Reason", required=True
|
||||
)
|
||||
|
||||
def action_finish(self):
|
||||
self.ensure_one()
|
||||
rma_ids = self.env.context.get("active_ids")
|
||||
rma = self.env["rma"].browse(rma_ids)
|
||||
rma.write({"finalization_id": self.finalization_id, "state": "finished"})
|
||||
34
rma/wizard/rma_finalization_wizard_views.xml
Normal file
34
rma/wizard/rma_finalization_wizard_views.xml
Normal file
@@ -0,0 +1,34 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!-- Copyright 2022 Tecnativa - David Vidal
|
||||
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
|
||||
<odoo>
|
||||
<record id="rma_finalization_wizard_view_form" model="ir.ui.view">
|
||||
<field name="model">rma.finalization.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form>
|
||||
<group>
|
||||
<group>
|
||||
<field name="finalization_id" />
|
||||
</group>
|
||||
</group>
|
||||
<footer>
|
||||
<button
|
||||
name="action_finish"
|
||||
string="Finish RMA"
|
||||
type="object"
|
||||
class="btn-primary"
|
||||
/>
|
||||
<button string="Cancel" class="btn-secondary" special="cancel" />
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<record id="rma_finalization_wizard_action" model="ir.actions.act_window">
|
||||
<field name="name">Finish RMA Manualy</field>
|
||||
<field name="res_model">rma.finalization.wizard</field>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="binding_model_id" ref="rma.model_rma" />
|
||||
<field name="binding_view_types">list</field>
|
||||
<field name="target">new</field>
|
||||
</record>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user