Skip to content

Commit a8ef693

Browse files
committed
[IMP] rma_reason: add rma reason to stock return wizard
1 parent b0f2031 commit a8ef693

File tree

8 files changed

+85
-2
lines changed

8 files changed

+85
-2
lines changed

rma_reason/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
from . import models
2+
from . import wizards

rma_reason/__manifest__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"views/rma_reason.xml",
1818
"views/res_config_settings.xml",
1919
"views/rma_portal_templates.xml",
20+
"wizards/stock_return_picking.xml",
2021
],
2122
"demo": [
2223
"demo/rma_reason.xml",

rma_reason/wizards/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from . import stock_return_picking
2+
from . import stock_return_picking_line
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Copyright 2024 ACSONE SA/NV
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
4+
from odoo import fields, models
5+
6+
7+
class StockReturnPicking(models.TransientModel):
8+
9+
_inherit = "stock.return.picking"
10+
11+
rma_reason_id = fields.Many2one(
12+
comodel_name="rma.reason", readonly=False, string="RMA Reason"
13+
)
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
<?xml version="1.0" encoding="utf-8" ?>
2+
<!-- Copyright 2024 ACSONE SA/NV
3+
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
4+
<odoo>
5+
6+
<record model="ir.ui.view" id="stock_return_picking_form_view">
7+
<field name="model">stock.return.picking</field>
8+
<field name="inherit_id" ref="stock.view_stock_return_picking_form" />
9+
<field name="arch" type="xml">
10+
<xpath
11+
expr="//field[@name='product_return_moves']//tree//field[@name='rma_operation_id']"
12+
position="before"
13+
>
14+
<field
15+
name="rma_reason_id"
16+
attrs="{'column_invisible': [('parent.create_rma', '=', False)], 'required': [('is_rma_reason_required', '=', True)]}"
17+
/>
18+
<field name="is_rma_reason_required" invisible="1" />
19+
</xpath>
20+
<xpath
21+
expr="//group[@name='group_rma']//field[@name='rma_operation_id']"
22+
position="before"
23+
>
24+
<field
25+
name="rma_reason_id"
26+
attrs="{'invisible': [('create_rma', '=', False)]}"
27+
/>
28+
</xpath>
29+
</field>
30+
</record>
31+
32+
33+
34+
</odoo>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Copyright 2024 ACSONE SA/NV
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
4+
from odoo import api, fields, models
5+
6+
7+
class StockReturnPickingLine(models.TransientModel):
8+
9+
_inherit = "stock.return.picking.line"
10+
11+
rma_reason_id = fields.Many2one(
12+
comodel_name="rma.reason",
13+
compute="_compute_rma_reason_id",
14+
store=True,
15+
readonly=False,
16+
string="RMA Reason",
17+
)
18+
is_rma_reason_required = fields.Boolean(
19+
related="wizard_id.company_id.is_rma_reason_required"
20+
)
21+
22+
@api.depends("wizard_id.rma_reason_id")
23+
def _compute_rma_reason_id(self):
24+
for rec in self:
25+
if rec.wizard_id.rma_reason_id:
26+
rec.rma_reason_id = rec.wizard_id.rma_reason_id
27+
28+
def _prepare_rma_vals(self):
29+
self.ensure_one()
30+
vals = super()._prepare_rma_vals()
31+
vals["reason_id"] = self.rma_reason_id.id
32+
return vals

rma_sale_reason/views/rma_portal_templates.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
name="My RMA"
99
inherit_id="rma_sale.sale_rma_request_form"
1010
>
11-
<xpath expr="//t[@t-set='operations']" position="after">
11+
<xpath expr="//t[@t-set='operations']" position="before">
1212

1313
<t t-set="reasons" t-value="sale_order.env['rma.reason'].search([])" />
1414

rma_sale_reason/wizards/sale_order_rma_wizard.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
</xpath>
1515
<xpath
1616
expr="//field[@name='line_ids']//field[@name='operation_id']"
17-
position="after"
17+
position="before"
1818
>
1919
<field name="is_rma_reason_required" invisible="True" />
2020
<field

0 commit comments

Comments
 (0)