RMA as an APP

This commit is contained in:
hveficent
2020-01-20 08:10:19 +01:00
parent f3c1a1c438
commit 74052f4dd8
27 changed files with 278 additions and 141 deletions

View File

@@ -1,6 +1,3 @@
.. image:: https://img.shields.io/badge/licence-LGPL--3-blue.svg
:alt: License LGPL-3
====================================== ======================================
RMA (Return Merchandise Authorization) RMA (Return Merchandise Authorization)
====================================== ======================================
@@ -24,12 +21,16 @@ of the product to the manufacturer, commonly referred to as a return.
As returns are costly for the vendor and inconvenient for the customer, As returns are costly for the vendor and inconvenient for the customer,
any return that can be prevented benefits both parties. any return that can be prevented benefits both parties.
**Table of contents**
.. contents::
:local:
Configuration Configuration
============= =============
Security Security
-------- ~~~~~~~~
Go to Settings > Users and assign the appropiate permissions to users. Go to Settings > Users and assign the appropiate permissions to users.
Different security groups grant distinct levels of access to the RMA features. Different security groups grant distinct levels of access to the RMA features.
@@ -41,7 +42,7 @@ Different security groups grant distinct levels of access to the RMA features.
associated to both customers and suppliers. associated to both customers and suppliers.
RMA Approval Policy RMA Approval Policy
------------------- ~~~~~~~~~~~~~~~~~~~
There are two RMA approval policies in product catogories: There are two RMA approval policies in product catogories:
@@ -57,12 +58,12 @@ steps:
#. Select one and change the field *RMA Approval Policy* to your convenience. #. Select one and change the field *RMA Approval Policy* to your convenience.
Other Settings Other Settings
-------------- ~~~~~~~~~~~~~~
#. Go to Inventory > Configuration > Settings > Return Merchandising #. Go to RMA > Configuration > Settings > Return Merchandising
Authorization and select the option "Display 3 fields on rma: partner, Authorization and select the option "Display 3 fields on rma: partner,
invoice address, delivery address" if needed. invoice address, delivery address" if needed.
#. Go to Inventory > Configuration > Warehouse management > Warehouses and add #. Go to RMA > Configuration > Warehouse management > Warehouses and add
a default RMA location and RMA picking type for customers and suppliers RMA a default RMA location and RMA picking type for customers and suppliers RMA
picking type. In case the warehouse is configured to use routes, you need to picking type. In case the warehouse is configured to use routes, you need to
create at least one route per rma type with at least two push rules (one for create at least one route per rma type with at least two push rules (one for
@@ -86,8 +87,8 @@ Create an RMA:
Order". Order".
#. Go back to the RMA. Set the RMA to done if not further action is required. #. Go back to the RMA. Set the RMA to done if not further action is required.
Known issues and Roadmap Known issues / Roadmap
======================== ======================
* Picking operations report in customer RMA dropshipping case is showing * Picking operations report in customer RMA dropshipping case is showing
"Vendor Address" while it should be "Customer Address". "Vendor Address" while it should be "Customer Address".
@@ -99,27 +100,37 @@ Known issues and Roadmap
Bug Tracker Bug Tracker
=========== ===========
Bugs are tracked on `GitHub Issues Bugs are tracked on `GitHub Issues <https://github.com/ForgeFlow/stock-rma/issues>`_.
<https://github.com/ForgeFlow/stock-rma/issues>`_. In case of trouble, please In case of trouble, please check there if your issue has already been reported.
check there if your issue has already been reported. If you spotted it first, If you spotted it first, help us smashing it by providing a detailed and welcomed
help us smashing it by providing a detailed and welcomed feedback. `feedback <https://github.com/ForgeFlow/stock-rma/issues/new?body=module:%20rma%0Aversion:%2013.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 Credits
======= =======
Contributors Authors
------------ ~~~~~~~
* Jordi Ballester Alomar <jordi.ballester@ForgeFlow.com> * ForgeFlow S.L.
* Aaron Henriquez <ahenriquez@ForgeFlow.com>
* Lois Rilo <lois.rilo@ForgeFlow.com> Contributors
~~~~~~~~~~~~
* Jordi Ballester Alomar <jordi.ballester@forgeflow.com>
* Aaron Henriquez <ahenriquez@forgeflow.com>
* Lois Rilo <lois.rilo@forgeflow.com>
* Bhavesh Odedra <bodedra@opensourceintegrators.com> * Bhavesh Odedra <bodedra@opensourceintegrators.com>
* Akim Juillerat <akim.juillerat@camptocamp.com> * Akim Juillerat <akim.juillerat@camptocamp.com>
* Alexandre Fayolle <alexandre.fayolle@camptocamp.com> * Alexandre Fayolle <alexandre.fayolle@camptocamp.com>
* Chafique Delli <chafique.delli@akretion.com> * Chafique Delli <chafique.delli@akretion.com>
* Héctor Villarreal <hector.villarreal@forgeflow.com>
Maintainer Maintainers
---------- ~~~~~~~~~~~
This module is maintained by the ForgeFlow.
This module is part of the `ForgeFlow/stock-rma <https://github.com/ForgeFlow/stock-rma/tree/13.0/rma>`_ project on GitHub.
This module is maintained by ForgeFlow.

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from . import models from . import models

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
{ {
@@ -27,10 +27,12 @@
"views/stock_warehouse.xml", "views/stock_warehouse.xml",
"views/product_view.xml", "views/product_view.xml",
"views/res_partner_view.xml", "views/res_partner_view.xml",
"views/res_config_settings_views.xml",
"views/rma_menu.xml",
"wizards/rma_make_picking_view.xml", "wizards/rma_make_picking_view.xml",
"wizards/rma_add_stock_move_view.xml", "wizards/rma_add_stock_move_view.xml",
"wizards/stock_config_settings.xml",
"wizards/rma_order_line_make_supplier_rma_view.xml", "wizards/rma_order_line_make_supplier_rma_view.xml",
], ],
"installable": True, "installable": True,
"application": True,
} }

View File

@@ -16,6 +16,7 @@
<field name="prefix">RTVG/%(year)s/</field> <field name="prefix">RTVG/%(year)s/</field>
<field eval="1" name="number_next"/> <field eval="1" name="number_next"/>
<field eval="1" name="number_increment"/> <field eval="1" name="number_increment"/>
<field name="company_id" eval="False"/>
</record> </record>
<record id="rma_line_seq" model="ir.sequence"> <record id="rma_line_seq" model="ir.sequence">
@@ -25,6 +26,7 @@
<field name="prefix">RMA/%(year)s/</field> <field name="prefix">RMA/%(year)s/</field>
<field eval="1" name="number_next"/> <field eval="1" name="number_next"/>
<field eval="1" name="number_increment"/> <field eval="1" name="number_increment"/>
<field name="company_id" eval="False"/>
</record> </record>
<record id="rma_line_supplier_seq" model="ir.sequence"> <record id="rma_line_supplier_seq" model="ir.sequence">
@@ -34,6 +36,7 @@
<field name="prefix">RTV/%(year)s/</field> <field name="prefix">RTV/%(year)s/</field>
<field eval="1" name="number_next"/> <field eval="1" name="number_next"/>
<field eval="1" name="number_increment"/> <field eval="1" name="number_increment"/>
<field name="company_id" eval="False"/>
</record> </record>
</odoo> </odoo>

View File

@@ -10,3 +10,4 @@ from . import product_category
from . import procurement from . import procurement
from . import res_partner from . import res_partner
from . import res_company from . import res_company
from . import res_config_settings

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import fields, models from odoo import fields, models

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import fields, models from odoo import fields, models

View File

@@ -1,10 +1,10 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import fields, models from odoo import fields, models
class StockConfigSettings(models.TransientModel): class ResConfigSettings(models.TransientModel):
_inherit = "res.config.settings" _inherit = "res.config.settings"
group_rma_delivery_address = fields.Boolean( group_rma_delivery_address = fields.Boolean(

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from datetime import datetime from datetime import datetime

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
import operator import operator

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import api, fields, models from odoo import api, fields, models

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import _, fields, models from odoo import _, fields, models
@@ -114,6 +114,7 @@ class StockWarehouse(models.Model):
"default_location_dest_id": customer_loc.id, "default_location_dest_id": customer_loc.id,
"sequence": max_sequence, "sequence": max_sequence,
"color": color, "color": color,
"sequence_code": "RMA → Customer",
} }
) )
# create rma_sup_out_type_id: # create rma_sup_out_type_id:
@@ -129,6 +130,7 @@ class StockWarehouse(models.Model):
"default_location_dest_id": supplier_loc.id, "default_location_dest_id": supplier_loc.id,
"sequence": max_sequence, "sequence": max_sequence,
"color": color, "color": color,
"sequence_code": "Customer → RMA",
} }
) )
# create rma_cust_in_type_id: # create rma_cust_in_type_id:
@@ -144,6 +146,7 @@ class StockWarehouse(models.Model):
"default_location_dest_id": wh.lot_rma_id.id, "default_location_dest_id": wh.lot_rma_id.id,
"sequence": max_sequence, "sequence": max_sequence,
"color": color, "color": color,
"sequence_code": "RMA -> Supplier",
} }
) )
# create rma_sup_in_type_id: # create rma_sup_in_type_id:
@@ -159,6 +162,7 @@ class StockWarehouse(models.Model):
"default_location_dest_id": wh.lot_rma_id.id, "default_location_dest_id": wh.lot_rma_id.id,
"sequence": max_sequence, "sequence": max_sequence,
"color": color, "color": color,
"sequence_code": "Supplier -> RMA",
} }
) )
wh.write( wh.write(

41
rma/readme/CONFIGURE.rst Normal file
View File

@@ -0,0 +1,41 @@
Security
--------
Go to Settings > Users and assign the appropiate permissions to users.
Different security groups grant distinct levels of access to the RMA features.
* Users in group "RMA Customer User" or "RMA Supplier User" can access to,
create and process RMA's associated to customers or suppliers respectively.
* Users in group "RMA Manager" can access to, create, approve and process RMA's
associated to both customers and suppliers.
RMA Approval Policy
-------------------
There are two RMA approval policies in product catogories:
* One step: Always auto-approve RMAs that only contain products within
categories with this policy.
* Two steps: A RMA order containing a product within a category with this
policy will request the RMA manager approval.
In order to change the approval policy of a product category follow the next
steps:
#. Go to *Inventory > Configuration > Products > Product Categories*.
#. Select one and change the field *RMA Approval Policy* to your convenience.
Other Settings
--------------
#. Go to RMA > Configuration > Settings > Return Merchandising
Authorization and select the option "Display 3 fields on rma: partner,
invoice address, delivery address" if needed.
#. Go to RMA > Configuration > Warehouse management > Warehouses and add
a default RMA location and RMA picking type for customers and suppliers RMA
picking type. In case the warehouse is configured to use routes, you need to
create at least one route per rma type with at least two push rules (one for
inbound another for outbound) it's very important to select the type of
operation supplier if we are moving in the company and customer if we are
moving out of the company.

View File

@@ -0,0 +1,8 @@
* Jordi Ballester Alomar <jordi.ballester@forgeflow.com>
* Aaron Henriquez <ahenriquez@forgeflow.com>
* Lois Rilo <lois.rilo@forgeflow.com>
* Bhavesh Odedra <bodedra@opensourceintegrators.com>
* Akim Juillerat <akim.juillerat@camptocamp.com>
* Alexandre Fayolle <alexandre.fayolle@camptocamp.com>
* Chafique Delli <chafique.delli@akretion.com>
* Héctor Villarreal <hector.villarreal@forgeflow.com>

View File

@@ -0,0 +1,18 @@
A Return Merchandise Authorization (RMA), is a part of the process of
returning a product in order to receive a refund, replacement, or repair
during the product's warranty period.
The purchaser of the product must contact the manufacturer (or distributor
or retailer) to obtain authorization to return the product.
The resulting RMA number must be displayed on or included in the returned
product's packaging.
The issuance of an RMA is a key gatekeeping moment in the reverse logistics
cycle, providing the vendor with a final opportunity to diagnose and correct
the customer's problem with the product (such as improper installation or
configuration) before the customer permanently relinquishes ownership
of the product to the manufacturer, commonly referred to as a return.
As returns are costly for the vendor and inconvenient for the customer,
any return that can be prevented benefits both parties.

6
rma/readme/ROADMAP.rst Normal file
View File

@@ -0,0 +1,6 @@
* Picking operations report in customer RMA dropshipping case is showing
"Vendor Address" while it should be "Customer Address".
* Dropshipping always counted as a delivery on the smart buttons.
* Uninstall hook.
* Constraints instead of required fields on rma.order.line.
* Rename type field on rma.order and rma.order.line

12
rma/readme/USAGE.rst Normal file
View File

@@ -0,0 +1,12 @@
RMA are accessible though Inventory menu. There's four menus, divided by type.
Users can access to the list of RMA or RMA lines.
Create an RMA:
#. Select a partner. Enter RMA lines associated to an existing picking, or
manually.
#. Request approval and approve.
#. Click on RMA Lines button.
#. Click on more and select an option: "Receive products", "Create Delivery
Order".
#. Go back to the RMA. Set the RMA to done if not further action is required.

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from . import test_rma from . import test_rma

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="res_config_settings_view_form" model="ir.ui.view">
<field name="name">res.config.settings.view.form.inherit.rma</field>
<field name="model">res.config.settings</field>
<field name="priority" eval="10"/>
<field name="inherit_id" ref="base.res_config_settings_view_form" />
<field name="arch" type="xml">
<xpath expr="//div[hasclass('settings')]" position="inside">
<div class="app_settings_block" data-string="RMA" string="RMA" data-key="rma" groups="rma.group_rma_manager">
<h2>Return Merchandise Authorization</h2>
<div class="row mt16 o_settings_container">
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
<field name="group_rma_delivery_address"/>
</div>
<div class="o_setting_right_pane">
<label for="group_rma_delivery_address"/>
<div class="text-muted">
Display 3 fields on rma: partner, invoice address, delivery address.
</div>
</div>
</div>
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
<field name="group_rma_lines"/>
</div>
<div class="o_setting_right_pane">
<label for="group_rma_lines"/>
<div class="text-muted">
Group RMA lines in one RMA group
</div>
</div>
</div>
</div>
</div>
</xpath>
</field>
</record>
<record id="action_rma_config_settings" model="ir.actions.act_window">
<field name="name">Settings</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">res.config.settings</field>
<field name="view_mode">form</field>
<field name="target">inline</field>
<field name="context">{'module' : 'rma'}</field>
</record>
</odoo>

78
rma/views/rma_menu.xml Normal file
View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<menuitem
id="menu_rma_root"
name="RMA"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user,rma.group_rma_manager"
web_icon="rma,static/description/icon.png"
sequence="100"/>
<!-- Customer RMA -->
<menuitem id="menu_customer_rma"
name="Customer RMA"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
sequence="30"
parent="menu_rma_root"/>
<menuitem
id="menu_rma_act_customer"
sequence="50"
parent="menu_customer_rma"
groups="rma.group_rma_groups"
action="action_rma_customer"/>
<menuitem
id="menu_rma_line_customer"
sequence="20"
parent="menu_customer_rma"
groups="rma.group_rma_customer_user"
action="action_rma_customer_lines"/>
<!-- Supplier RMA -->
<menuitem id="menu_supplier_rma"
name="Supplier RMA"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
sequence="31"
parent="menu_rma_root"/>
<menuitem
id="menu_rma_act_supplier"
sequence="50"
parent="menu_supplier_rma"
groups="rma.group_rma_groups"
action="action_rma_supplier"/>
<menuitem
id="menu_rma_line_supplier"
sequence="20"
parent="menu_supplier_rma"
groups="rma.group_rma_supplier_user"
action="action_rma_supplier_lines"/>
<!-- Settings-->
<menuitem id="menu_rma_config"
name="Configuration"
groups="rma.group_rma_manager"
sequence="999"
parent="menu_rma_root"/>
<menuitem id="menu_rma_global_settings" name="Settings"
parent="rma.menu_rma_config"
sequence="1" action="action_rma_config_settings"
groups="base.group_system"/>
<menuitem id="menu_rma_operation_customer"
name="Customer Operations"
groups="rma.group_rma_manager"
sequence="35"
parent="rma.menu_rma_config"
action="action_rma_operation_customer"/>
<menuitem id="menu_rma_operation_supplier"
name="Supplier Operations"
groups="rma.group_rma_manager"
sequence="40"
parent="rma.menu_rma_config"
action="action_rma_operation_supplier"/>
</odoo>

View File

@@ -78,18 +78,4 @@
<field name="view_id" ref="rma_operation_tree"/> <field name="view_id" ref="rma_operation_tree"/>
</record> </record>
<menuitem id="menu_rma_operation_customer"
name="Customer Operations"
groups="rma.group_rma_manager"
sequence="35"
parent="rma.menu_rma_config"
action="action_rma_operation_customer"/>
<menuitem id="menu_rma_operation_supplier"
name="Supplier Operations"
groups="rma.group_rma_manager"
sequence="40"
parent="rma.menu_rma_config"
action="action_rma_operation_supplier"/>
</odoo> </odoo>

View File

@@ -93,7 +93,7 @@
</div> </div>
<div class="oe_title" name="title"> <div class="oe_title" name="title">
<h1> <h1>
<field name="name" <field name="name" readonly="1"
invisible="context.get('hide_title',False)"/> invisible="context.get('hide_title',False)"/>
</h1> </h1>
</div> </div>
@@ -248,11 +248,12 @@
<field name="out_shipment_count" widget="statinfo" <field name="out_shipment_count" widget="statinfo"
string="Deliveries"/> string="Deliveries"/>
</button> </button>
<button type="object" name="action_view_invoice" <!--Move this button to rma_account-->
<!--<button type="object" name="action_view_invoice"
class="oe_stat_button" class="oe_stat_button"
icon="fa-pencil-square-o" icon="fa-pencil-square-o"
string="Origin Inv"> string="Origin Inv">
</button> </button>-->
<button type="object" name="action_view_rma_lines" <button type="object" name="action_view_rma_lines"
class="oe_stat_button" class="oe_stat_button"
icon="fa-link" icon="fa-link"
@@ -263,7 +264,7 @@
</div> </div>
<div class="oe_title" name="title"> <div class="oe_title" name="title">
<h1> <h1>
<field name="name" <field name="name" readonly="1"
invisible="context.get('hide_title',False)"/> invisible="context.get('hide_title',False)"/>
</h1> </h1>
</div> </div>
@@ -454,21 +455,5 @@
<field name="act_window_id" ref="action_rma_supplier_lines"/> <field name="act_window_id" ref="action_rma_supplier_lines"/>
</record> </record>
<menuitem
id="menu_rma_line_customer"
sequence="20"
parent="menu_customer_rma"
groups="rma.group_rma_customer_user"
action="action_rma_customer_lines"
/>
<menuitem
id="menu_rma_line_supplier"
sequence="20"
parent="menu_supplier_rma"
groups="rma.group_rma_supplier_user"
action="action_rma_supplier_lines"
/>
</data> </data>
</odoo> </odoo>

View File

@@ -289,36 +289,4 @@
<field name="act_window_id" ref="action_rma_supplier"/> <field name="act_window_id" ref="action_rma_supplier"/>
</record> </record>
<menuitem id="menu_customer_rma"
name="Customer RMA"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
sequence="30"
parent="stock.menu_stock_root"/>
<menuitem id="menu_supplier_rma"
name="Supplier RMA"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
sequence="31"
parent="stock.menu_stock_root"/>
<menuitem
id="menu_rma_act_customer"
sequence="50"
parent="menu_customer_rma"
groups="rma.group_rma_groups"
action="action_rma_customer"/>
<menuitem
id="menu_rma_act_supplier"
sequence="50"
parent="menu_supplier_rma"
groups="rma.group_rma_groups"
action="action_rma_supplier"/>
<menuitem id="menu_rma_config"
name="RMA"
groups="rma.group_rma_manager"
sequence="30"
parent="stock.menu_stock_config_settings"/>
</odoo> </odoo>

View File

@@ -1,7 +1,6 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from . import rma_add_stock_move from . import rma_add_stock_move
from . import rma_make_picking from . import rma_make_picking
from . import stock_config_settings
from . import rma_order_line_make_supplier_rma from . import rma_order_line_make_supplier_rma

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import _, api, fields, models from odoo import _, api, fields, models

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017 ForgeFlow # Copyright (C) 2017-20 ForgeFlow S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html) # License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
import time import time

View File

@@ -1,37 +0,0 @@
<?xml version="1.0"?>
<odoo>
<record id="res_config_settings_view_form" model="ir.ui.view">
<field name="name">stock.config.settings.rma</field>
<field name="model">res.config.settings</field>
<field name="inherit_id" ref="stock.res_config_settings_view_form"/>
<field name="arch" type="xml">
<div id="production_lot_info" position="after">
<h2>Return Merchandise Authorization</h2>
<div class="row mt16 o_settings_container">
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
<field name="group_rma_delivery_address"/>
</div>
<div class="o_setting_right_pane">
<label for="group_rma_delivery_address"/>
<div class="text-muted">
Display 3 fields on rma: partner, invoice address, delivery address.
</div>
</div>
</div>
<div class="col-12 col-lg-6 o_setting_box">
<div class="o_setting_left_pane">
<field name="group_rma_lines"/>
</div>
<div class="o_setting_right_pane">
<label for="group_rma_lines"/>
<div class="text-muted">
Group RMA lines in one RMA group.
</div>
</div>
</div>
</div>
</div>
</field>
</record>
</odoo>