mirror of
https://github.com/ForgeFlow/stock-rma.git
synced 2025-01-21 12:57:49 +02:00
[MIG] rma: Migration to 18.0
This commit is contained in:
@@ -17,7 +17,7 @@ RMA (Return Merchandise Authorization)
|
|||||||
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
|
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
|
||||||
:alt: License: LGPL-3
|
:alt: License: LGPL-3
|
||||||
.. |badge3| image:: https://img.shields.io/badge/github-ForgeFlow%2Fstock--rma-lightgray.png?logo=github
|
.. |badge3| image:: https://img.shields.io/badge/github-ForgeFlow%2Fstock--rma-lightgray.png?logo=github
|
||||||
:target: https://github.com/ForgeFlow/stock-rma/tree/17.0/rma
|
:target: https://github.com/ForgeFlow/stock-rma/tree/18.0/rma
|
||||||
:alt: ForgeFlow/stock-rma
|
:alt: ForgeFlow/stock-rma
|
||||||
|
|
||||||
|badge1| |badge2| |badge3|
|
|badge1| |badge2| |badge3|
|
||||||
@@ -128,7 +128,7 @@ Bug Tracker
|
|||||||
Bugs are tracked on `GitHub Issues <https://github.com/ForgeFlow/stock-rma/issues>`_.
|
Bugs are tracked on `GitHub Issues <https://github.com/ForgeFlow/stock-rma/issues>`_.
|
||||||
In case of trouble, please check there if your issue has already been reported.
|
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
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
||||||
`feedback <https://github.com/ForgeFlow/stock-rma/issues/new?body=module:%20rma%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
`feedback <https://github.com/ForgeFlow/stock-rma/issues/new?body=module:%20rma%0Aversion:%2018.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.
|
Do not contact contributors directly about support or help with technical issues.
|
||||||
|
|
||||||
@@ -155,6 +155,6 @@ Contributors
|
|||||||
Maintainers
|
Maintainers
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
This module is part of the `ForgeFlow/stock-rma <https://github.com/ForgeFlow/stock-rma/tree/17.0/rma>`_ project on GitHub.
|
This module is part of the `ForgeFlow/stock-rma <https://github.com/ForgeFlow/stock-rma/tree/18.0/rma>`_ project on GitHub.
|
||||||
|
|
||||||
You are welcome to contribute.
|
You are welcome to contribute.
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
"name": "RMA (Return Merchandise Authorization)",
|
"name": "RMA (Return Merchandise Authorization)",
|
||||||
"version": "17.0.1.0.0",
|
"version": "18.0.1.0.0",
|
||||||
"license": "LGPL-3",
|
"license": "LGPL-3",
|
||||||
"category": "RMA",
|
"category": "RMA",
|
||||||
"summary": "Introduces the return merchandise authorization (RMA) process in odoo",
|
"summary": "Introduces the return merchandise authorization (RMA) process in odoo",
|
||||||
|
|||||||
@@ -78,7 +78,6 @@ class StockMove(models.Model):
|
|||||||
self,
|
self,
|
||||||
need,
|
need,
|
||||||
location_id,
|
location_id,
|
||||||
quant_ids=None,
|
|
||||||
lot_id=None,
|
lot_id=None,
|
||||||
package_id=None,
|
package_id=None,
|
||||||
owner_id=None,
|
owner_id=None,
|
||||||
@@ -94,7 +93,6 @@ class StockMove(models.Model):
|
|||||||
return super()._update_reserved_quantity(
|
return super()._update_reserved_quantity(
|
||||||
need,
|
need,
|
||||||
location_id,
|
location_id,
|
||||||
quant_ids=quant_ids,
|
|
||||||
lot_id=lot_id,
|
lot_id=lot_id,
|
||||||
package_id=package_id,
|
package_id=package_id,
|
||||||
owner_id=owner_id,
|
owner_id=owner_id,
|
||||||
|
|||||||
@@ -69,7 +69,6 @@ class StockWarehouse(models.Model):
|
|||||||
"usage": "internal",
|
"usage": "internal",
|
||||||
"location_id": wh.view_location_id.id,
|
"location_id": wh.view_location_id.id,
|
||||||
"company_id": wh.company_id.id,
|
"company_id": wh.company_id.id,
|
||||||
"return_location": True,
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
# RMA types
|
# RMA types
|
||||||
|
|||||||
@@ -1,24 +1,23 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" ?>
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
<odoo>
|
<odoo>
|
||||||
|
<record id="rma_order_line_report" model="ir.actions.report">
|
||||||
<record id="rma_order_line_report" model="ir.actions.report">
|
<field name="name">RMA</field>
|
||||||
<field name="name">RMA</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="report_type">qweb-pdf</field>
|
||||||
<field name="report_type">qweb-pdf</field>
|
<field name="report_name">rma.report_rma_order_line</field>
|
||||||
<field name="report_name">rma.report_rma_order_line</field>
|
<field name="report_file">rma.report_rma_order_line</field>
|
||||||
<field name="report_file">rma.report_rma_order_line</field>
|
<field name="print_report_name">('RMA - %s' % (object.name))</field>
|
||||||
<field name="print_report_name">('RMA - %s' % (object.name))</field>
|
<field name="binding_model_id" ref="model_rma_order_line" />
|
||||||
<field name="binding_model_id" ref="model_rma_order_line" />
|
<field name="binding_type">report</field>
|
||||||
<field name="binding_type">report</field>
|
</record>
|
||||||
</record>
|
<record id="rma_order_report" model="ir.actions.report">
|
||||||
<record id="rma_order_report" model="ir.actions.report">
|
<field name="name">RMA Group</field>
|
||||||
<field name="name">RMA Group</field>
|
<field name="model">rma.order</field>
|
||||||
<field name="model">rma.order</field>
|
<field name="report_type">qweb-pdf</field>
|
||||||
<field name="report_type">qweb-pdf</field>
|
<field name="report_name">rma.report_rma_order</field>
|
||||||
<field name="report_name">rma.report_rma_order</field>
|
<field name="report_file">rma.report_rma_order</field>
|
||||||
<field name="report_file">rma.report_rma_order</field>
|
<field name="print_report_name">('RMA Group - %s' % (object.name))</field>
|
||||||
<field name="print_report_name">('RMA Group - %s' % (object.name))</field>
|
<field name="binding_model_id" ref="model_rma_order" />
|
||||||
<field name="binding_model_id" ref="model_rma_order" />
|
<field name="binding_type">report</field>
|
||||||
<field name="binding_type">report</field>
|
</record>
|
||||||
</record>
|
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
<t t-call="web.external_layout">
|
<t t-call="web.external_layout">
|
||||||
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="oe_structure" />
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
<t
|
<t
|
||||||
@@ -39,11 +38,11 @@
|
|||||||
class="mt8"
|
class="mt8"
|
||||||
>
|
>
|
||||||
<strong>Shipping address:</strong>
|
<strong>Shipping address:</strong>
|
||||||
<div
|
<div
|
||||||
t-field="doc.customer_address_id"
|
t-field="doc.customer_address_id"
|
||||||
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
|
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
|
||||||
/>
|
/>
|
||||||
<p t-if="doc.customer_address_id.vat">VAT: <span
|
<p t-if="doc.customer_address_id.vat">VAT: <span
|
||||||
t-field="doc.customer_address_id.vat"
|
t-field="doc.customer_address_id.vat"
|
||||||
/></p>
|
/></p>
|
||||||
</div>
|
</div>
|
||||||
@@ -89,13 +88,15 @@
|
|||||||
<th name="quantity" class="text-right">Quantity</th>
|
<th name="quantity" class="text-right">Quantity</th>
|
||||||
<th name="unit_price" class="text-right">Unit Price</th>
|
<th name="unit_price" class="text-right">Unit Price</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td name="product"><span t-field="doc.product_id" /></td>
|
<td name="product">
|
||||||
<td name="lot" t-if="doc.lot_id"><span
|
<span t-field="doc.product_id" />
|
||||||
t-field="doc.lot_id"
|
</td>
|
||||||
/></td>
|
<td name="lot" t-if="doc.lot_id">
|
||||||
|
<span t-field="doc.lot_id" />
|
||||||
|
</td>
|
||||||
<td name="quantity" class="text-right">
|
<td name="quantity" class="text-right">
|
||||||
<span t-field="doc.product_qty" />
|
<span t-field="doc.product_qty" />
|
||||||
<span t-field="doc.uom_id" groups="uom.group_uom" />
|
<span t-field="doc.uom_id" groups="uom.group_uom" />
|
||||||
@@ -110,11 +111,15 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div t-if="doc.description">
|
<div t-if="doc.description">
|
||||||
<strong><p>Description</p></strong>
|
<strong>
|
||||||
|
<p>Description</p>
|
||||||
|
</strong>
|
||||||
<span t-field="doc.description" />
|
<span t-field="doc.description" />
|
||||||
</div>
|
</div>
|
||||||
<div t-if="doc.conditions">
|
<div t-if="doc.conditions">
|
||||||
<strong><p>Term and conditions</p></strong>
|
<strong>
|
||||||
|
<p>Term and conditions</p>
|
||||||
|
</strong>
|
||||||
<span t-field="doc.conditions" />
|
<span t-field="doc.conditions" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -138,7 +143,6 @@
|
|||||||
<t t-call="web.external_layout">
|
<t t-call="web.external_layout">
|
||||||
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="oe_structure" />
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
<t
|
<t
|
||||||
@@ -173,11 +177,11 @@
|
|||||||
class="mt8"
|
class="mt8"
|
||||||
>
|
>
|
||||||
<strong>Shipping address:</strong>
|
<strong>Shipping address:</strong>
|
||||||
<div
|
<div
|
||||||
t-field="doc.customer_address_id"
|
t-field="doc.customer_address_id"
|
||||||
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
|
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
|
||||||
/>
|
/>
|
||||||
<p t-if="doc.customer_address_id.vat">VAT: <span
|
<p t-if="doc.customer_address_id.vat">VAT: <span
|
||||||
t-field="doc.customer_address_id.vat"
|
t-field="doc.customer_address_id.vat"
|
||||||
/></p>
|
/></p>
|
||||||
</div>
|
</div>
|
||||||
@@ -228,15 +232,21 @@
|
|||||||
<th class="text-right">Quantity</th>
|
<th class="text-right">Quantity</th>
|
||||||
<th class="text-right">Unit Price</th>
|
<th class="text-right">Unit Price</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr t-foreach="doc.rma_line_ids" t-as="l">
|
<tr t-foreach="doc.rma_line_ids" t-as="l">
|
||||||
<td><span t-field="l.origin" /></td>
|
<td>
|
||||||
<td><span t-field="l.operation_id.name" /></td>
|
<span t-field="l.origin" />
|
||||||
<td><span t-field="l.product_id" /></td>
|
</td>
|
||||||
<td name="lot" t-if="print_lot_column"><span
|
<td>
|
||||||
t-field="l.lot_id"
|
<span t-field="l.operation_id.name" />
|
||||||
/></td>
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-field="l.product_id" />
|
||||||
|
</td>
|
||||||
|
<td name="lot" t-if="print_lot_column">
|
||||||
|
<span t-field="l.lot_id" />
|
||||||
|
</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
<span t-field="l.product_qty" />
|
<span t-field="l.product_qty" />
|
||||||
<span t-field="l.uom_id" groups="uom.group_uom" />
|
<span t-field="l.uom_id" groups="uom.group_uom" />
|
||||||
@@ -248,7 +258,9 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div t-if="doc.comment">
|
<div t-if="doc.comment">
|
||||||
<strong><p>Additional Information</p></strong>
|
<strong>
|
||||||
|
<p>Additional Information</p>
|
||||||
|
</strong>
|
||||||
<span t-field="doc.comment" />
|
<span t-field="doc.comment" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -8,10 +8,11 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
:Author: David Goodger (goodger@python.org)
|
:Author: David Goodger (goodger@python.org)
|
||||||
:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
|
:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
|
||||||
:Copyright: This stylesheet has been placed in the public domain.
|
:Copyright: This stylesheet has been placed in the public domain.
|
||||||
|
|
||||||
Default cascading style sheet for the HTML output of Docutils.
|
Default cascading style sheet for the HTML output of Docutils.
|
||||||
|
Despite the name, some widely supported CSS2 features are used.
|
||||||
|
|
||||||
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
|
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
|
||||||
customize this style sheet.
|
customize this style sheet.
|
||||||
@@ -274,7 +275,7 @@ pre.literal-block, pre.doctest-block, pre.math, pre.code {
|
|||||||
margin-left: 2em ;
|
margin-left: 2em ;
|
||||||
margin-right: 2em }
|
margin-right: 2em }
|
||||||
|
|
||||||
pre.code .ln { color: grey; } /* line numbers */
|
pre.code .ln { color: gray; } /* line numbers */
|
||||||
pre.code, code { background-color: #eeeeee }
|
pre.code, code { background-color: #eeeeee }
|
||||||
pre.code .comment, code .comment { color: #5C6576 }
|
pre.code .comment, code .comment { color: #5C6576 }
|
||||||
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
|
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
|
||||||
@@ -300,7 +301,7 @@ span.option {
|
|||||||
span.pre {
|
span.pre {
|
||||||
white-space: pre }
|
white-space: pre }
|
||||||
|
|
||||||
span.problematic {
|
span.problematic, pre.problematic {
|
||||||
color: red }
|
color: red }
|
||||||
|
|
||||||
span.section-subtitle {
|
span.section-subtitle {
|
||||||
@@ -368,7 +369,7 @@ ul.auto-toc {
|
|||||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
!! source digest: sha256:310ce4e3f5919e5be643c54f11481d09bb8fc79cab65f08ac969ef3bf9d799fe
|
!! source digest: sha256:310ce4e3f5919e5be643c54f11481d09bb8fc79cab65f08ac969ef3bf9d799fe
|
||||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||||
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/ForgeFlow/stock-rma/tree/17.0/rma"><img alt="ForgeFlow/stock-rma" src="https://img.shields.io/badge/github-ForgeFlow%2Fstock--rma-lightgray.png?logo=github" /></a></p>
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/ForgeFlow/stock-rma/tree/18.0/rma"><img alt="ForgeFlow/stock-rma" src="https://img.shields.io/badge/github-ForgeFlow%2Fstock--rma-lightgray.png?logo=github" /></a></p>
|
||||||
<p>A Return Merchandise Authorization (RMA), is a part of the process of
|
<p>A Return Merchandise Authorization (RMA), is a part of the process of
|
||||||
returning a product in order to receive a refund, replacement, or repair
|
returning a product in order to receive a refund, replacement, or repair
|
||||||
during the product’s warranty period.</p>
|
during the product’s warranty period.</p>
|
||||||
@@ -485,7 +486,7 @@ showing “Vendor Address” while it should be “Customer Address”.</li>
|
|||||||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/ForgeFlow/stock-rma/issues">GitHub Issues</a>.
|
<p>Bugs are tracked on <a class="reference external" href="https://github.com/ForgeFlow/stock-rma/issues">GitHub Issues</a>.
|
||||||
In case of trouble, please check there if your issue has already been reported.
|
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
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
||||||
<a class="reference external" href="https://github.com/ForgeFlow/stock-rma/issues/new?body=module:%20rma%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
<a class="reference external" href="https://github.com/ForgeFlow/stock-rma/issues/new?body=module:%20rma%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||||
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="credits">
|
<div class="section" id="credits">
|
||||||
@@ -511,7 +512,7 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
|
|||||||
</div>
|
</div>
|
||||||
<div class="section" id="maintainers">
|
<div class="section" id="maintainers">
|
||||||
<h2><a class="toc-backref" href="#toc-entry-11">Maintainers</a></h2>
|
<h2><a class="toc-backref" href="#toc-entry-11">Maintainers</a></h2>
|
||||||
<p>This module is part of the <a class="reference external" href="https://github.com/ForgeFlow/stock-rma/tree/17.0/rma">ForgeFlow/stock-rma</a> project on GitHub.</p>
|
<p>This module is part of the <a class="reference external" href="https://github.com/ForgeFlow/stock-rma/tree/18.0/rma">ForgeFlow/stock-rma</a> project on GitHub.</p>
|
||||||
<p>You are welcome to contribute.</p>
|
<p>You are welcome to contribute.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ class TestRma(common.TransactionCase):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def _create_product(cls, name):
|
def _create_product(cls, name):
|
||||||
return cls.product_product_model.create(
|
return cls.product_product_model.create(
|
||||||
{"name": name, "categ_id": cls.category.id, "type": "product"}
|
{"name": name, "categ_id": cls.category.id, "is_storable": True}
|
||||||
)
|
)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|||||||
@@ -8,67 +8,40 @@
|
|||||||
<field name="inherit_id" ref="base.res_config_settings_view_form" />
|
<field name="inherit_id" ref="base.res_config_settings_view_form" />
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//form" position="inside">
|
<xpath expr="//form" position="inside">
|
||||||
<div
|
<app
|
||||||
class="app_settings_block"
|
|
||||||
data-string="RMA"
|
data-string="RMA"
|
||||||
string="RMA"
|
string="RMA"
|
||||||
data-key="rma"
|
name="rma"
|
||||||
groups="rma.group_rma_manager"
|
groups="rma.group_rma_manager"
|
||||||
>
|
>
|
||||||
<h2>Return Merchandise Authorization</h2>
|
<block title="Return Merchandise Authorization" name="rma_config">
|
||||||
<div class="row mt16 o_settings_container">
|
<setting
|
||||||
<div
|
id="rma_delivery_address"
|
||||||
name="rma_delivery_address"
|
help="Display 3 fields on rma: partner, invoice address, delivery address"
|
||||||
class="col-12 col-lg-6 o_setting_box"
|
|
||||||
>
|
>
|
||||||
<div class="o_setting_left_pane">
|
<field name="group_rma_delivery_address" />
|
||||||
<field name="group_rma_delivery_address" />
|
</setting>
|
||||||
</div>
|
<setting
|
||||||
<div class="o_setting_right_pane">
|
id="group_rma_lines"
|
||||||
<label for="group_rma_delivery_address" />
|
help="Group RMA lines in one RMA group"
|
||||||
<div class="text-muted">
|
|
||||||
Display 3 fields on rma: partner, invoice address, delivery address
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
name="group_rma_lines"
|
|
||||||
class="col-12 col-lg-6 o_setting_box"
|
|
||||||
>
|
>
|
||||||
<div class="o_setting_left_pane">
|
<field name="group_rma_lines" />
|
||||||
<field name="group_rma_lines" />
|
</setting>
|
||||||
</div>
|
<setting id="rma_delivery_address" help="Enable RMA invoicing">
|
||||||
<div class="o_setting_right_pane">
|
<field name="module_rma_account" />
|
||||||
<label for="group_rma_lines" />
|
</setting>
|
||||||
<div class="text-muted">
|
</block>
|
||||||
Group RMA lines in one RMA group
|
</app>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div name="rma_account" class="col-12 col-lg-6 o_setting_box">
|
|
||||||
<div class="o_setting_left_pane">
|
|
||||||
<field name="module_rma_account" />
|
|
||||||
</div>
|
|
||||||
<div class="o_setting_right_pane">
|
|
||||||
<label for="module_rma_account" />
|
|
||||||
<div class="text-muted">
|
|
||||||
Enable RMA invoicing
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</xpath>
|
</xpath>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_config_settings" model="ir.actions.act_window">
|
<record id="action_rma_config_settings" model="ir.actions.act_window">
|
||||||
<field name="name">Settings</field>
|
<field name="name">Settings</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
|
||||||
<field name="res_model">res.config.settings</field>
|
<field name="res_model">res.config.settings</field>
|
||||||
<field name="view_mode">form</field>
|
<field name="view_mode">form</field>
|
||||||
<field name="target">inline</field>
|
<field name="target">inline</field>
|
||||||
<field name="context">{'module' : 'rma'}</field>
|
<field name="context">{'module' : 'rma', 'bin_size': False}</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" ?>
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
<odoo>
|
<odoo>
|
||||||
<record id="rma_operation_tree" model="ir.ui.view">
|
<record id="rma_operation_tree" model="ir.ui.view">
|
||||||
<field name="name">rma.operation.tree</field>
|
<field name="name">rma.operation.list</field>
|
||||||
<field name="model">rma.operation</field>
|
<field name="model">rma.operation</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree name="RMA Operations">
|
<list name="RMA Operations">
|
||||||
<field name="active" invisible="1" />
|
<field name="active" invisible="1" />
|
||||||
<field name="code" />
|
<field name="code" />
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="receipt_policy" />
|
<field name="receipt_policy" />
|
||||||
<field name="delivery_policy" />
|
<field name="delivery_policy" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
@@ -71,7 +71,7 @@
|
|||||||
<record id="action_rma_operation_customer" model="ir.actions.act_window">
|
<record id="action_rma_operation_customer" model="ir.actions.act_window">
|
||||||
<field name="name">Customer Operations</field>
|
<field name="name">Customer Operations</field>
|
||||||
<field name="res_model">rma.operation</field>
|
<field name="res_model">rma.operation</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="context">{'default_type': "customer"}</field>
|
<field name="context">{'default_type': "customer"}</field>
|
||||||
<field name="domain">[('type','=', 'customer')]</field>
|
<field name="domain">[('type','=', 'customer')]</field>
|
||||||
<field name="view_id" ref="rma_operation_tree" />
|
<field name="view_id" ref="rma_operation_tree" />
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
<record id="action_rma_operation_supplier" model="ir.actions.act_window">
|
<record id="action_rma_operation_supplier" model="ir.actions.act_window">
|
||||||
<field name="name">Supplier Operations</field>
|
<field name="name">Supplier Operations</field>
|
||||||
<field name="res_model">rma.operation</field>
|
<field name="res_model">rma.operation</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="context">{'default_type': "supplier"}</field>
|
<field name="context">{'default_type': "supplier"}</field>
|
||||||
<field name="domain">[('type','=', 'supplier')]</field>
|
<field name="domain">[('type','=', 'supplier')]</field>
|
||||||
<field name="view_id" ref="rma_operation_tree" />
|
<field name="view_id" ref="rma_operation_tree" />
|
||||||
|
|||||||
@@ -1,63 +1,63 @@
|
|||||||
<?xml version="1.0" ?>
|
<?xml version="1.0" ?>
|
||||||
<odoo>
|
<odoo>
|
||||||
<record id="view_rma_line_tree" model="ir.ui.view">
|
<record id="view_rma_line_tree" model="ir.ui.view">
|
||||||
<field name="name">rma.order.line.tree</field>
|
<field name="name">rma.order.line.list</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree name="RMA Line" decoration-info="state in ('draft','to_approve')">
|
<list name="RMA Line" decoration-info="state in ('draft','to_approve')">
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="partner_id" />
|
<field name="partner_id" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field
|
<field
|
||||||
name="lot_id"
|
name="lot_id"
|
||||||
groups="stock.group_production_lot"
|
groups="stock.group_production_lot"
|
||||||
context="{'default_product_id': product_id,}"
|
context="{'default_product_id': product_id,}"
|
||||||
/>
|
/>
|
||||||
<field name="rma_id" groups="rma.group_rma_groups" />
|
<field name="rma_id" groups="rma.group_rma_groups" />
|
||||||
<field name="origin" />
|
<field name="origin" />
|
||||||
<field name="date_rma" />
|
<field name="date_rma" />
|
||||||
<field name="operation_id" />
|
<field name="operation_id" />
|
||||||
<field name="supplier_address_id" />
|
<field name="supplier_address_id" />
|
||||||
<field name="uom_id" groups="uom.group_uom" />
|
<field name="uom_id" groups="uom.group_uom" />
|
||||||
<field name="product_qty" />
|
<field name="product_qty" />
|
||||||
<field name="price_unit" />
|
<field name="price_unit" />
|
||||||
<field name="state" />
|
<field name="state" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="view_rma_line_supplier_tree" model="ir.ui.view">
|
<record id="view_rma_line_supplier_tree" model="ir.ui.view">
|
||||||
<field name="name">rma.order.line.supplier.tree</field>
|
<field name="name">rma.order.line.supplier.list</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree name="RMA Line" decoration-info="state in ('draft','to_approve')">
|
<list name="RMA Line" decoration-info="state in ('draft','to_approve')">
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="partner_id" />
|
<field name="partner_id" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field
|
<field
|
||||||
name="lot_id"
|
name="lot_id"
|
||||||
groups="stock.group_production_lot"
|
groups="stock.group_production_lot"
|
||||||
context="{'default_product_id': product_id,}"
|
context="{'default_product_id': product_id,}"
|
||||||
/>
|
/>
|
||||||
<field name="rma_id" groups="rma.group_rma_groups" />
|
<field name="rma_id" groups="rma.group_rma_groups" />
|
||||||
<field name="origin" />
|
<field name="origin" />
|
||||||
<field name="date_rma" />
|
<field name="date_rma" />
|
||||||
<field name="operation_id" domain="[('type','=','supplier')]" />
|
<field name="operation_id" domain="[('type','=','supplier')]" />
|
||||||
<field name="uom_id" groups="uom.group_uom" />
|
<field name="uom_id" groups="uom.group_uom" />
|
||||||
<field name="product_qty" />
|
<field name="product_qty" />
|
||||||
<field name="price_unit" />
|
<field name="price_unit" />
|
||||||
<field name="state" />
|
<field name="state" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="view_rma_line_form" model="ir.ui.view">
|
<record id="view_rma_line_form" model="ir.ui.view">
|
||||||
<field name="name">rma.order.line.form</field>
|
<field name="name">rma.order.line.form</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<form string="RMA Line">
|
<form string="RMA Line">
|
||||||
<header>
|
<header>
|
||||||
<button
|
<button
|
||||||
name="action_rma_to_approve"
|
name="action_rma_to_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Request Approval"
|
string="Request Approval"
|
||||||
@@ -65,14 +65,14 @@
|
|||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_draft"
|
name="action_rma_draft"
|
||||||
type="object"
|
type="object"
|
||||||
string="Back to Draft"
|
string="Back to Draft"
|
||||||
invisible="state == 'draft'"
|
invisible="state == 'draft'"
|
||||||
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
|
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_approve"
|
name="action_rma_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Approve"
|
string="Approve"
|
||||||
@@ -80,37 +80,37 @@
|
|||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
groups="rma.group_rma_manager"
|
groups="rma.group_rma_manager"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_approve"
|
name="action_rma_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Back to Approved"
|
string="Back to Approved"
|
||||||
invisible="state != 'done'"
|
invisible="state != 'done'"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_done"
|
name="action_rma_done"
|
||||||
type="object"
|
type="object"
|
||||||
string="Done"
|
string="Done"
|
||||||
invisible="state in ('done', 'draft', 'canceled')"
|
invisible="state in ('done', 'draft', 'canceled')"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_cancel"
|
name="action_rma_cancel"
|
||||||
type="object"
|
type="object"
|
||||||
string="Cancel"
|
string="Cancel"
|
||||||
invisible="state in ('done', 'canceled')"
|
invisible="state in ('done', 'canceled')"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="state"
|
name="state"
|
||||||
widget="statusbar"
|
widget="statusbar"
|
||||||
statusbar_visible="draft,to_approve,approved,done"
|
statusbar_visible="draft,to_approve,approved,done"
|
||||||
nolabel="1"
|
nolabel="1"
|
||||||
/>
|
/>
|
||||||
</header>
|
</header>
|
||||||
<sheet>
|
<sheet>
|
||||||
<div name="button_box" class="oe_button_box">
|
<div name="button_box" class="oe_button_box">
|
||||||
<button
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_in_shipments"
|
name="action_view_in_shipments"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
@@ -118,13 +118,13 @@
|
|||||||
invisible="in_shipment_count == 0"
|
invisible="in_shipment_count == 0"
|
||||||
groups="stock.group_stock_user"
|
groups="stock.group_stock_user"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="in_shipment_count"
|
name="in_shipment_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Shipments"
|
string="Shipments"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_out_shipments"
|
name="action_view_out_shipments"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
@@ -132,19 +132,21 @@
|
|||||||
invisible="out_shipment_count == 0"
|
invisible="out_shipment_count == 0"
|
||||||
groups="stock.group_stock_user"
|
groups="stock.group_stock_user"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="out_shipment_count"
|
name="out_shipment_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Deliveries"
|
string="Deliveries"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
<!--Move this button to rma_account-->
|
<!--Move
|
||||||
<!--<button type="object" name="action_view_invoice"
|
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
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_rma_lines"
|
name="action_view_rma_lines"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
@@ -152,14 +154,14 @@
|
|||||||
groups="stock.group_stock_user"
|
groups="stock.group_stock_user"
|
||||||
invisible="rma_line_count == 0"
|
invisible="rma_line_count == 0"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="rma_line_count"
|
name="rma_line_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Supplier RMA"
|
string="Supplier RMA"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="oe_title" name="title">
|
<div class="oe_title" name="title">
|
||||||
<h1>
|
<h1>
|
||||||
<field
|
<field
|
||||||
name="name"
|
name="name"
|
||||||
@@ -167,16 +169,16 @@
|
|||||||
invisible="context.get('hide_title',False)"
|
invisible="context.get('hide_title',False)"
|
||||||
/>
|
/>
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<group>
|
<group>
|
||||||
<group name="partner">
|
<group name="partner">
|
||||||
<field
|
<field
|
||||||
name="partner_id"
|
name="partner_id"
|
||||||
context="{'res_partner_search_mode': 'customer'}"
|
context="{'res_partner_search_mode': 'customer'}"
|
||||||
string="Customer"
|
string="Customer"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="delivery_address_id"
|
name="delivery_address_id"
|
||||||
domain="['|', ('parent_id', '=', partner_id),
|
domain="['|', ('parent_id', '=', partner_id),
|
||||||
('id', '=', partner_id)]"
|
('id', '=', partner_id)]"
|
||||||
@@ -185,25 +187,25 @@
|
|||||||
groups='rma.group_rma_delivery_invoice_address'
|
groups='rma.group_rma_delivery_invoice_address'
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<group name="contact">
|
|
||||||
<field name="date_rma" />
|
|
||||||
<field name="requested_by" readonly="1" />
|
|
||||||
<field name="assigned_to" />
|
|
||||||
<field name="type" invisible="1" />
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<group name="product" string="Product">
|
<group name="contact">
|
||||||
<field
|
<field name="date_rma" />
|
||||||
|
<field name="requested_by" readonly="1" />
|
||||||
|
<field name="assigned_to" />
|
||||||
|
<field name="type" invisible="1" />
|
||||||
|
</group>
|
||||||
|
</group>
|
||||||
|
</group>
|
||||||
|
<group>
|
||||||
|
<group name="product" string="Product">
|
||||||
|
<field
|
||||||
name="product_id"
|
name="product_id"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<newline />
|
<newline />
|
||||||
<field name="product_tracking" invisible="1" />
|
<field name="product_tracking" invisible="1" />
|
||||||
<field
|
<field
|
||||||
name="lot_id"
|
name="lot_id"
|
||||||
groups="stock.group_production_lot"
|
groups="stock.group_production_lot"
|
||||||
required="product_tracking in ('serial', 'lot')"
|
required="product_tracking in ('serial', 'lot')"
|
||||||
@@ -211,29 +213,29 @@
|
|||||||
domain="[('product_id', '=', product_id)]"
|
domain="[('product_id', '=', product_id)]"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="under_warranty"
|
name="under_warranty"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<group name="product_qty" string="Quantity">
|
<group name="product_qty" string="Quantity">
|
||||||
<field
|
<field
|
||||||
name="product_qty"
|
name="product_qty"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="uom_id"
|
name="uom_id"
|
||||||
groups="uom.group_uom"
|
groups="uom.group_uom"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="price_unit"
|
name="price_unit"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
<group name="main_info" string="Origin">
|
</group>
|
||||||
<field
|
<group name="main_info" string="Origin">
|
||||||
|
<field
|
||||||
name="reference_move_id"
|
name="reference_move_id"
|
||||||
options="{'no_create': True}"
|
options="{'no_create': True}"
|
||||||
domain="[('picking_id.partner_id', '=', partner_id),
|
domain="[('picking_id.partner_id', '=', partner_id),
|
||||||
@@ -241,70 +243,70 @@
|
|||||||
('state', '=', 'done')]"
|
('state', '=', 'done')]"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<group name="operation" string="Operation">
|
<group name="operation" string="Operation">
|
||||||
<field
|
<field
|
||||||
name="operation_id"
|
name="operation_id"
|
||||||
domain="[('type','=','customer')]"
|
domain="[('type','=','customer')]"
|
||||||
/>
|
/>
|
||||||
<field name="receipt_policy" />
|
<field name="receipt_policy" />
|
||||||
<field name="delivery_policy" />
|
<field name="delivery_policy" />
|
||||||
</group>
|
|
||||||
<group name="description" string="Description">
|
|
||||||
<field name="description" nolabel="1" colspan="4" />
|
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
<notebook>
|
<group name="description" string="Description">
|
||||||
<page name="quantities" string="Quantities">
|
<field name="description" nolabel="1" colspan="4" />
|
||||||
<group name="quantities" col="4" string="Quantities">
|
</group>
|
||||||
<group
|
</group>
|
||||||
|
<notebook>
|
||||||
|
<page name="quantities" string="Quantities">
|
||||||
|
<group name="quantities" col="4" string="Quantities">
|
||||||
|
<group
|
||||||
name="receive"
|
name="receive"
|
||||||
invisible="receipt_policy == 'no'"
|
invisible="receipt_policy == 'no'"
|
||||||
>
|
>
|
||||||
<field name="qty_to_receive" />
|
<field name="qty_to_receive" />
|
||||||
<field name="qty_incoming" />
|
<field name="qty_incoming" />
|
||||||
<field name="qty_received" />
|
<field name="qty_received" />
|
||||||
</group>
|
</group>
|
||||||
<group
|
<group
|
||||||
name="deliver"
|
name="deliver"
|
||||||
invisible="delivery_policy == 'no'"
|
invisible="delivery_policy == 'no'"
|
||||||
>
|
>
|
||||||
<field name="qty_to_deliver" />
|
<field name="qty_to_deliver" />
|
||||||
<field name="qty_outgoing" />
|
<field name="qty_outgoing" />
|
||||||
<field name="qty_delivered" />
|
<field name="qty_delivered" />
|
||||||
</group>
|
</group>
|
||||||
<group
|
<group
|
||||||
name="supplier_rma"
|
name="supplier_rma"
|
||||||
invisible="type != 'customer' or not customer_to_supplier"
|
invisible="type != 'customer' or not customer_to_supplier"
|
||||||
>
|
>
|
||||||
<field name="qty_to_supplier_rma" />
|
<field name="qty_to_supplier_rma" />
|
||||||
<field name="qty_in_supplier_rma" />
|
<field name="qty_in_supplier_rma" />
|
||||||
</group>
|
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</group>
|
||||||
<page name="route" string="Routes">
|
</page>
|
||||||
<group name="inbound" string="Inbound">
|
<page name="route" string="Routes">
|
||||||
<field
|
<group name="inbound" string="Inbound">
|
||||||
|
<field
|
||||||
name="in_warehouse_id"
|
name="in_warehouse_id"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="location_id"
|
name="location_id"
|
||||||
domain="[('usage', '=', 'internal')]"
|
domain="[('usage', '=', 'internal')]"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="in_route_id"
|
name="in_route_id"
|
||||||
groups="stock.group_adv_location"
|
groups="stock.group_adv_location"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="customer_to_supplier"
|
name="customer_to_supplier"
|
||||||
invisible="type != 'customer'"
|
invisible="type != 'customer'"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="supplier_address_id"
|
name="supplier_address_id"
|
||||||
context="{'show_address': 1}"
|
context="{'show_address': 1}"
|
||||||
options="{'always_reload': 1}"
|
options="{'always_reload': 1}"
|
||||||
@@ -312,23 +314,23 @@
|
|||||||
invisible="customer_to_supplier == False"
|
invisible="customer_to_supplier == False"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<group name="outbound" string="Outbound">
|
<group name="outbound" string="Outbound">
|
||||||
<field
|
<field
|
||||||
name="out_warehouse_id"
|
name="out_warehouse_id"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="out_route_id"
|
name="out_route_id"
|
||||||
groups="stock.group_adv_location"
|
groups="stock.group_adv_location"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="supplier_to_customer"
|
name="supplier_to_customer"
|
||||||
invisible="type != 'supplier'"
|
invisible="type != 'supplier'"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="customer_address_id"
|
name="customer_address_id"
|
||||||
context="{'show_address': 1}"
|
context="{'show_address': 1}"
|
||||||
options="{'always_reload': 1}"
|
options="{'always_reload': 1}"
|
||||||
@@ -336,212 +338,200 @@
|
|||||||
invisible="supplier_to_customer == False"
|
invisible="supplier_to_customer == False"
|
||||||
readonly="state not in ['draft']"
|
readonly="state not in ['draft']"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page
|
<page
|
||||||
name="stock"
|
name="stock"
|
||||||
string="Stock Moves"
|
string="Stock Moves"
|
||||||
invisible="not move_ids"
|
invisible="not move_ids"
|
||||||
>
|
>
|
||||||
<field name="move_ids" nolabel="1" readonly="1" />
|
<field name="move_ids" nolabel="1" readonly="1" />
|
||||||
</page>
|
</page>
|
||||||
<page name="other" string="Other Info">
|
<page name="other" string="Other Info">
|
||||||
<group name="general" string="General">
|
<group name="general" string="General">
|
||||||
<field name="conditions" />
|
<field name="conditions" />
|
||||||
<field
|
<field name="rma_id" groups="rma.group_rma_groups" />
|
||||||
name="rma_id"
|
<field name="origin" />
|
||||||
groups="rma.group_rma_groups"
|
</group>
|
||||||
/>
|
<group
|
||||||
<field name="origin" />
|
|
||||||
</group>
|
|
||||||
<group
|
|
||||||
name="company"
|
name="company"
|
||||||
string="Company"
|
string="Company"
|
||||||
groups="base.group_multi_company"
|
groups="base.group_multi_company"
|
||||||
>
|
>
|
||||||
<field name="company_id" />
|
<field name="company_id" />
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
</notebook>
|
</notebook>
|
||||||
</sheet>
|
</sheet>
|
||||||
<div class="oe_chatter">
|
<chatter />
|
||||||
<field
|
</form>
|
||||||
name="message_follower_ids"
|
</field>
|
||||||
widget="mail_followers"
|
</record>
|
||||||
groups="base.group_user"
|
|
||||||
/>
|
|
||||||
<field name="message_ids" widget="mail_thread" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</field>
|
|
||||||
</record>
|
|
||||||
|
|
||||||
<record id="view_rma_line_supplier_form" model="ir.ui.view">
|
<record id="view_rma_line_supplier_form" model="ir.ui.view">
|
||||||
<field name="name">rma.order.line.supplier.form</field>
|
<field name="name">rma.order.line.supplier.form</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="inherit_id" ref="rma.view_rma_line_form" />
|
<field name="inherit_id" ref="rma.view_rma_line_form" />
|
||||||
<field name="mode">primary</field>
|
<field name="mode">primary</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath
|
<xpath
|
||||||
expr="//button[@name='action_view_rma_lines']/field"
|
expr="//button[@name='action_view_rma_lines']/field"
|
||||||
position="attributes"
|
position="attributes"
|
||||||
>
|
>
|
||||||
<attribute name="string">Customer RMA</attribute>
|
<attribute name="string">Customer RMA</attribute>
|
||||||
</xpath>
|
</xpath>
|
||||||
<field name="partner_id" position="attributes">
|
<field name="partner_id" position="attributes">
|
||||||
<attribute name="string">Supplier</attribute>
|
<attribute name="string">Supplier</attribute>
|
||||||
<attribute
|
<attribute
|
||||||
name="context"
|
name="context"
|
||||||
>{'res_partner_search_mode': 'supplier'}</attribute>
|
>{'res_partner_search_mode': 'supplier'}</attribute>
|
||||||
</field>
|
|
||||||
<field name="under_warranty" position="attributes">
|
|
||||||
<attribute name="invisible">1</attribute>
|
|
||||||
</field>
|
|
||||||
<field name="reference_move_id" position="attributes">
|
|
||||||
<attribute
|
|
||||||
name="domain"
|
|
||||||
>[('picking_id.partner_id', '=', partner_id),
|
|
||||||
('location_id.usage', '=', 'supplier'),
|
|
||||||
('state', '=', 'done')]</attribute>
|
|
||||||
</field>
|
|
||||||
<field name="operation_id" position="attributes">
|
|
||||||
<attribute name="domain">[('type','=','supplier')]</attribute>
|
|
||||||
</field>
|
|
||||||
</field>
|
</field>
|
||||||
</record>
|
<field name="under_warranty" position="attributes">
|
||||||
|
<attribute name="invisible">1</attribute>
|
||||||
|
</field>
|
||||||
|
<field name="reference_move_id" position="attributes">
|
||||||
|
<attribute name="domain">[('picking_id.partner_id', '=', partner_id),
|
||||||
|
('location_id.usage', '=', 'supplier'),
|
||||||
|
('state', '=', 'done')]</attribute>
|
||||||
|
</field>
|
||||||
|
<field name="operation_id" position="attributes">
|
||||||
|
<attribute name="domain">[('type','=','supplier')]</attribute>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
<record id="view_rma_rma_line_filter" model="ir.ui.view">
|
<record id="view_rma_rma_line_filter" model="ir.ui.view">
|
||||||
<field name="name">rma.order.line.select</field>
|
<field name="name">rma.order.line.select</field>
|
||||||
<field name="model">rma.order.line</field>
|
<field name="model">rma.order.line</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<search string="Search RMA line">
|
<search string="Search RMA line">
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="rma_id" groups="rma.group_rma_groups" />
|
<field name="rma_id" groups="rma.group_rma_groups" />
|
||||||
<field name="partner_id" />
|
<field name="partner_id" />
|
||||||
<field name="requested_by" />
|
<field name="requested_by" />
|
||||||
<field name="assigned_to" />
|
<field name="assigned_to" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field name="lot_id" />
|
<field name="lot_id" />
|
||||||
<field name="date_rma" />
|
<field name="date_rma" />
|
||||||
<separator />
|
<separator />
|
||||||
<filter
|
<filter
|
||||||
name="assigned_to_filter"
|
name="assigned_to_filter"
|
||||||
domain="[('assigned_to','=',uid)]"
|
domain="[('assigned_to','=',uid)]"
|
||||||
help="My RMAs"
|
help="My RMAs"
|
||||||
/>
|
/>
|
||||||
<separator />
|
<separator />
|
||||||
<group name="stock_quantities" groups="stock.group_stock_user">
|
<group name="stock_quantities" groups="stock.group_stock_user">
|
||||||
<filter
|
<filter
|
||||||
name="to_receive"
|
name="to_receive"
|
||||||
domain="[('state','!=', 'done'),('qty_to_receive','>',0.0)]"
|
domain="[('state','!=', 'done'),('qty_to_receive','>',0.0)]"
|
||||||
help="To Receive"
|
help="To Receive"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="to_deliver"
|
name="to_deliver"
|
||||||
domain="[('state','!=', 'done'),('qty_to_deliver','>',0.0)]"
|
domain="[('state','!=', 'done'),('qty_to_deliver','>',0.0)]"
|
||||||
help="To Deliver"
|
help="To Deliver"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<group name="rma_supplier_quantities">
|
<group name="rma_supplier_quantities">
|
||||||
<filter
|
<filter
|
||||||
name="to_send_to_supplier"
|
name="to_send_to_supplier"
|
||||||
domain="[('state','!=', 'done'),('qty_to_supplier_rma','>',0.0)]"
|
domain="[('state','!=', 'done'),('qty_to_supplier_rma','>',0.0)]"
|
||||||
help="To Send to Supplier RMA"
|
help="To Send to Supplier RMA"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<group expand="0" string="Group By">
|
<group expand="0" string="Group By">
|
||||||
<filter
|
<filter
|
||||||
name="status"
|
name="status"
|
||||||
string="State"
|
string="State"
|
||||||
domain="[]"
|
domain="[]"
|
||||||
context="{'group_by':'state'}"
|
context="{'group_by':'state'}"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="partner"
|
name="partner"
|
||||||
string="Partner"
|
string="Partner"
|
||||||
domain="[]"
|
domain="[]"
|
||||||
context="{'group_by':'partner_id'}"
|
context="{'group_by':'partner_id'}"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="operation"
|
name="operation"
|
||||||
string="Operation"
|
string="Operation"
|
||||||
domain="[]"
|
domain="[]"
|
||||||
context="{'group_by':'operation_id'}"
|
context="{'group_by':'operation_id'}"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="product"
|
name="product"
|
||||||
string="Product"
|
string="Product"
|
||||||
domain="[]"
|
domain="[]"
|
||||||
context="{'group_by':'product_id'}"
|
context="{'group_by':'product_id'}"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="to_receive"
|
name="to_receive"
|
||||||
string="To Receive"
|
string="To Receive"
|
||||||
domain="[('qty_to_receive', '>', 0)]"
|
domain="[('qty_to_receive', '>', 0)]"
|
||||||
context="{'group_by':'partner_id'}"
|
context="{'group_by':'partner_id'}"
|
||||||
/>
|
/>
|
||||||
<filter
|
<filter
|
||||||
name="to_deliver"
|
name="to_deliver"
|
||||||
string="To Deliver"
|
string="To Deliver"
|
||||||
domain="[('qty_to_deliver', '>', 0)]"
|
domain="[('qty_to_deliver', '>', 0)]"
|
||||||
context="{'group_by':'partner_id'}"
|
context="{'group_by':'partner_id'}"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</search>
|
</search>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_customer_lines" model="ir.actions.act_window">
|
<record id="action_rma_customer_lines" model="ir.actions.act_window">
|
||||||
<field name="name">Customer RMA</field>
|
<field name="name">Customer RMA</field>
|
||||||
<field name="res_model">rma.order.line</field>
|
<field name="res_model">rma.order.line</field>
|
||||||
<field name="domain">[('type','=', 'customer')]</field>
|
<field name="domain">[('type','=', 'customer')]</field>
|
||||||
<field name="context">{"search_default_assigned_to_filter":1}</field>
|
<field name="context">{"search_default_assigned_to_filter":1}</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="view_id" ref="view_rma_line_tree" />
|
<field name="view_id" ref="view_rma_line_tree" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_supplier_lines" model="ir.actions.act_window">
|
<record id="action_rma_supplier_lines" model="ir.actions.act_window">
|
||||||
<field name="name">Supplier RMA</field>
|
<field name="name">Supplier RMA</field>
|
||||||
<field name="res_model">rma.order.line</field>
|
<field name="res_model">rma.order.line</field>
|
||||||
<field name="domain">[('type','=', 'supplier')]</field>
|
<field name="domain">[('type','=', 'supplier')]</field>
|
||||||
<field
|
<field
|
||||||
name="context"
|
name="context"
|
||||||
>{"search_default_assigned_to_filter":1, "supplier":1}</field>
|
>{"search_default_assigned_to_filter":1, "supplier":1}</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="view_id" ref="view_rma_line_supplier_tree" />
|
<field name="view_id" ref="view_rma_line_supplier_tree" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_line_supplier_tree" model="ir.actions.act_window.view">
|
<record id="action_rma_line_supplier_tree" model="ir.actions.act_window.view">
|
||||||
<field eval="3" name="sequence" />
|
<field eval="3" name="sequence" />
|
||||||
<field name="view_mode">tree</field>
|
<field name="view_mode">list</field>
|
||||||
<field name="act_window_id" ref="action_rma_supplier_lines" />
|
<field name="act_window_id" ref="action_rma_supplier_lines" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_line_supplier_form" model="ir.actions.act_window.view">
|
<record id="action_rma_line_supplier_form" model="ir.actions.act_window.view">
|
||||||
<field eval="4" name="sequence" />
|
<field eval="4" name="sequence" />
|
||||||
<field name="view_mode">form</field>
|
<field name="view_mode">form</field>
|
||||||
<field name="view_id" ref="view_rma_line_supplier_form" />
|
<field name="view_id" ref="view_rma_line_supplier_form" />
|
||||||
<field name="act_window_id" ref="action_rma_supplier_lines" />
|
<field name="act_window_id" ref="action_rma_supplier_lines" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record model="ir.actions.server" id="action_request_approve_rma_order_line">
|
<record model="ir.actions.server" id="action_request_approve_rma_order_line">
|
||||||
<field name="name">Request Approval</field>
|
<field name="name">Request Approval</field>
|
||||||
<field name="model_id" ref="rma.model_rma_order_line" />
|
<field name="model_id" ref="rma.model_rma_order_line" />
|
||||||
<field name="binding_model_id" ref="rma.model_rma_order_line" />
|
<field name="binding_model_id" ref="rma.model_rma_order_line" />
|
||||||
<field name="state">code</field>
|
<field name="state">code</field>
|
||||||
<field name="code">
|
<field name="code">
|
||||||
if records.filtered(lambda x: x.state == "draft"):
|
if records.filtered(lambda x: x.state == "draft"):
|
||||||
records.filtered(lambda x: x.state == "draft").action_rma_to_approve()
|
records.filtered(lambda x: x.state == "draft").action_rma_to_approve()
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record model="ir.actions.server" id="action_request_cancel_rma_order_line">
|
<record model="ir.actions.server" id="action_request_cancel_rma_order_line">
|
||||||
<field name="name">Cancel</field>
|
<field name="name">Cancel</field>
|
||||||
<field name="model_id" ref="rma.model_rma_order_line" />
|
<field name="model_id" ref="rma.model_rma_order_line" />
|
||||||
<field name="binding_model_id" ref="rma.model_rma_order_line" />
|
<field name="binding_model_id" ref="rma.model_rma_order_line" />
|
||||||
<field name="state">code</field>
|
<field name="state">code</field>
|
||||||
<field name="code">
|
<field name="code">
|
||||||
records.action_rma_cancel()
|
records.action_rma_cancel()
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
@@ -1,30 +1,30 @@
|
|||||||
<?xml version="1.0" ?>
|
<?xml version="1.0" ?>
|
||||||
<odoo>
|
<odoo>
|
||||||
<record id="view_rma_tree" model="ir.ui.view">
|
<record id="view_rma_tree" model="ir.ui.view">
|
||||||
<field name="name">rma.order.tree</field>
|
<field name="name">rma.order.list</field>
|
||||||
<field name="model">rma.order</field>
|
<field name="model">rma.order</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree name="RMA">
|
<list name="RMA">
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="reference" />
|
<field name="reference" />
|
||||||
<field name="partner_id" groups="base.group_user" string="Customer" />
|
<field name="partner_id" groups="base.group_user" string="Customer" />
|
||||||
<field name="date_rma" />
|
<field name="date_rma" />
|
||||||
<field name="state" />
|
<field name="state" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="view_rma_supplier_tree" model="ir.ui.view">
|
<record id="view_rma_supplier_tree" model="ir.ui.view">
|
||||||
<field name="name">rma.order.supplier.tree</field>
|
<field name="name">rma.order.supplier.list</field>
|
||||||
<field name="model">rma.order</field>
|
<field name="model">rma.order</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree name="RMA">
|
<list name="RMA">
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="reference" />
|
<field name="reference" />
|
||||||
<field name="partner_id" groups="base.group_user" string="Supplier" />
|
<field name="partner_id" groups="base.group_user" string="Supplier" />
|
||||||
<field name="date_rma" />
|
<field name="date_rma" />
|
||||||
<field name="state" />
|
<field name="state" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
@@ -33,8 +33,8 @@
|
|||||||
<field name="model">rma.order</field>
|
<field name="model">rma.order</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<form string="RMA">
|
<form string="RMA">
|
||||||
<header>
|
<header>
|
||||||
<button
|
<button
|
||||||
name="action_rma_to_approve"
|
name="action_rma_to_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Request Approval"
|
string="Request Approval"
|
||||||
@@ -42,14 +42,14 @@
|
|||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_draft"
|
name="action_rma_draft"
|
||||||
type="object"
|
type="object"
|
||||||
string="Back to Draft"
|
string="Back to Draft"
|
||||||
invisible="state == 'draft'"
|
invisible="state == 'draft'"
|
||||||
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
|
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_approve"
|
name="action_rma_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Approve"
|
string="Approve"
|
||||||
@@ -57,72 +57,76 @@
|
|||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
groups="rma.group_rma_manager"
|
groups="rma.group_rma_manager"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_approve"
|
name="action_rma_approve"
|
||||||
type="object"
|
type="object"
|
||||||
string="Back to Approved"
|
string="Back to Approved"
|
||||||
invisible="state != 'done'"
|
invisible="state != 'done'"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_done"
|
name="action_rma_done"
|
||||||
type="object"
|
type="object"
|
||||||
string="Done"
|
string="Done"
|
||||||
invisible="state in ('done', 'draft', 'cancel')"
|
invisible="state in ('done', 'draft', 'cancel')"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<button
|
<button
|
||||||
name="action_rma_cancel"
|
name="action_rma_cancel"
|
||||||
type="object"
|
type="object"
|
||||||
string="Cancel"
|
string="Cancel"
|
||||||
invisible="state in ('done', 'cancel')"
|
invisible="state in ('done', 'cancel')"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="state"
|
name="state"
|
||||||
widget="statusbar"
|
widget="statusbar"
|
||||||
statusbar_visible="draft,to_approve,approved,done"
|
statusbar_visible="draft,to_approve,approved,done"
|
||||||
nolabel="1"
|
nolabel="1"
|
||||||
/>
|
/>
|
||||||
</header>
|
</header>
|
||||||
<sheet name='rma' string="RMA">
|
<sheet name='rma' string="RMA">
|
||||||
<div class="oe_button_box" name="button_box">
|
<div class="oe_button_box" name="button_box">
|
||||||
<button
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_in_shipments"
|
name="action_view_in_shipments"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-truck"
|
icon="fa-truck"
|
||||||
groups="stock.group_stock_user"
|
groups="stock.group_stock_user"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="in_shipment_count"
|
name="in_shipment_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Shipments"
|
string="Shipments"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_out_shipments"
|
name="action_view_out_shipments"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-truck"
|
icon="fa-truck"
|
||||||
groups="stock.group_stock_user"
|
groups="stock.group_stock_user"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="out_shipment_count"
|
name="out_shipment_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Deliveries"
|
string="Deliveries"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_lines"
|
name="action_view_lines"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-list"
|
icon="fa-list"
|
||||||
groups="rma.group_rma_customer_user"
|
groups="rma.group_rma_customer_user"
|
||||||
>
|
>
|
||||||
<field name="line_count" widget="statinfo" string="RMA Lines" />
|
<field
|
||||||
</button>
|
name="line_count"
|
||||||
<button
|
widget="statinfo"
|
||||||
|
string="RMA Lines"
|
||||||
|
/>
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
type="object"
|
type="object"
|
||||||
name="action_view_supplier_lines"
|
name="action_view_supplier_lines"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
@@ -130,61 +134,64 @@
|
|||||||
icon="fa-list"
|
icon="fa-list"
|
||||||
groups="rma.group_rma_supplier_user"
|
groups="rma.group_rma_supplier_user"
|
||||||
>
|
>
|
||||||
<field
|
<field
|
||||||
name="supplier_line_count"
|
name="supplier_line_count"
|
||||||
widget="statinfo"
|
widget="statinfo"
|
||||||
string="Rel. RMA Lines"
|
string="Rel. RMA Lines"
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="oe_title" name="title">
|
<div class="oe_title" name="title">
|
||||||
<h1>
|
<h1>
|
||||||
<field name="name" readonly="1" />
|
<field name="name" readonly="1" />
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<group>
|
<group>
|
||||||
<group name="info">
|
<group name="info">
|
||||||
<field name="type" readonly="1" invisible="1" />
|
<field name="type" readonly="1" invisible="1" />
|
||||||
<field
|
<field
|
||||||
name="partner_id"
|
name="partner_id"
|
||||||
context="{'res_partner_search_mode': 'customer'}"
|
context="{'res_partner_search_mode': 'customer'}"
|
||||||
string="Customer"
|
string="Customer"
|
||||||
/>
|
/>
|
||||||
<field name="reference" invisible="type != 'supplier'" />
|
<field name="reference" invisible="type != 'supplier'" />
|
||||||
<field name="date_rma" readonly="state != 'draft'" />
|
<field name="date_rma" readonly="state != 'draft'" />
|
||||||
|
</group>
|
||||||
|
<group name="contact">
|
||||||
|
<field name="requested_by" readonly="1" />
|
||||||
|
<field name="assigned_to" readonly="state != 'draft'" />
|
||||||
|
<field
|
||||||
|
name="company_id"
|
||||||
|
groups="base.group_multi_company"
|
||||||
|
/>
|
||||||
|
</group>
|
||||||
</group>
|
</group>
|
||||||
<group name="contact">
|
<group>
|
||||||
<field name="requested_by" readonly="1" />
|
<group name="inbound_route" string="Inbound">
|
||||||
<field name="assigned_to" readonly="state != 'draft'" />
|
<field
|
||||||
<field name="company_id" groups="base.group_multi_company" />
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<group name="inbound_route" string="Inbound">
|
|
||||||
<field
|
|
||||||
name="operation_default_id"
|
name="operation_default_id"
|
||||||
domain="[('type','=','customer')]"
|
domain="[('type','=','customer')]"
|
||||||
/>
|
/>
|
||||||
<field name="in_warehouse_id" readonly="state != 'draft'" />
|
<field name="in_warehouse_id" readonly="state != 'draft'" />
|
||||||
<field name="in_route_id" readonly="state != 'draft'" />
|
<field name="in_route_id" readonly="state != 'draft'" />
|
||||||
<field
|
<field
|
||||||
name="out_warehouse_id"
|
name="out_warehouse_id"
|
||||||
invisible="1"
|
invisible="1"
|
||||||
readonly="state != 'draft'"
|
readonly="state != 'draft'"
|
||||||
/>
|
/>
|
||||||
<field name="location_id" readonly="state != 'draft'" />
|
<field name="location_id" readonly="state != 'draft'" />
|
||||||
<field
|
<field
|
||||||
name="out_route_id"
|
name="out_route_id"
|
||||||
invisible="1"
|
invisible="1"
|
||||||
readonly="state != 'draft'"
|
readonly="state != 'draft'"
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="customer_to_supplier"
|
name="customer_to_supplier"
|
||||||
readonly="state != 'draft'"
|
readonly="state != 'draft'"
|
||||||
invisible="type != 'customer'"
|
invisible="type != 'customer'"
|
||||||
/>
|
/>
|
||||||
<field name="state" invisible="1" />
|
<field name="state" invisible="1" />
|
||||||
<field
|
<field
|
||||||
name="supplier_address_id"
|
name="supplier_address_id"
|
||||||
context="{'show_address': 1}"
|
context="{'show_address': 1}"
|
||||||
options="{'always_reload': 1}"
|
options="{'always_reload': 1}"
|
||||||
@@ -192,74 +199,80 @@
|
|||||||
invisible="customer_to_supplier == False"
|
invisible="customer_to_supplier == False"
|
||||||
readonly="state != 'draft'"
|
readonly="state != 'draft'"
|
||||||
/>
|
/>
|
||||||
|
</group>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
<group>
|
||||||
<group>
|
<group name="comments" string="Description" colspan="2">
|
||||||
<group name="comments" string="Description" colspan="2">
|
<field
|
||||||
<field
|
|
||||||
name="description"
|
name="description"
|
||||||
placeholder="This description will be copied to RMA lines."
|
placeholder="This description will be copied to RMA lines."
|
||||||
/>
|
/>
|
||||||
<field
|
<field
|
||||||
name="comment"
|
name="comment"
|
||||||
placeholder="Additional information will be printed in RMA group report."
|
placeholder="Additional information will be printed in RMA group report."
|
||||||
/>
|
/>
|
||||||
|
</group>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
<notebook colspan="4">
|
||||||
<notebook colspan="4">
|
<page string="RMA Lines" name="lines">
|
||||||
<page string="RMA Lines" name="lines">
|
<field
|
||||||
<field
|
|
||||||
name="rma_line_ids"
|
name="rma_line_ids"
|
||||||
context="{'default_rma_id': id,
|
context="{'default_rma_id': id,'default_partner_id': partner_id,'hide_title': True}"
|
||||||
'default_partner_id': partner_id,
|
|
||||||
'hide_title': True}"
|
|
||||||
>
|
>
|
||||||
<tree
|
<list
|
||||||
name="lines"
|
name="lines"
|
||||||
editable="bottom"
|
editable="bottom"
|
||||||
default_order="id asc"
|
default_order="id asc"
|
||||||
create="0"
|
create="0"
|
||||||
>
|
>
|
||||||
<field name="sequence" widget="handle" />
|
<field name="sequence" widget="handle" />
|
||||||
<field name="partner_id" invisible="True" />
|
<field name="partner_id" invisible="True" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field
|
<field
|
||||||
name="lot_id"
|
name="lot_id"
|
||||||
groups="stock.group_production_lot"
|
groups="stock.group_production_lot"
|
||||||
domain="[('product_id', '=', product_id)]"
|
domain="[('product_id', '=', product_id)]"
|
||||||
context="{'default_product_id': product_id}"
|
context="{'default_product_id': product_id}"
|
||||||
/>
|
/>
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="uom_id" groups="uom.group_uom" />
|
<field name="uom_id" groups="uom.group_uom" />
|
||||||
<field name="operation_id" />
|
<field name="operation_id" />
|
||||||
<field name="location_id" invisible="True" />
|
<field name="location_id" invisible="True" />
|
||||||
<field name="in_route_id" invisible="True" />
|
<field name="in_route_id" invisible="True" />
|
||||||
<field name="out_route_id" invisible="True" />
|
<field name="out_route_id" invisible="True" />
|
||||||
<field name="in_warehouse_id" invisible="True" />
|
<field name="in_warehouse_id" invisible="True" />
|
||||||
<field name="out_warehouse_id" invisible="True" />
|
<field name="out_warehouse_id" invisible="True" />
|
||||||
<field name="customer_to_supplier" invisible="True" />
|
<field
|
||||||
<field name="supplier_address_id" invisible="True" />
|
name="customer_to_supplier"
|
||||||
<field name="supplier_to_customer" invisible="True" />
|
invisible="True"
|
||||||
<field name="customer_address_id" invisible="True" />
|
/>
|
||||||
<field name="receipt_policy" invisible="True" />
|
<field
|
||||||
<field name="delivery_policy" invisible="True" />
|
name="supplier_address_id"
|
||||||
<field name="delivery_address_id" invisible="True" />
|
invisible="True"
|
||||||
<field name="product_qty" />
|
/>
|
||||||
<field name="price_unit" />
|
<field
|
||||||
<field name="state" />
|
name="supplier_to_customer"
|
||||||
</tree>
|
invisible="True"
|
||||||
</field>
|
/>
|
||||||
</page>
|
<field
|
||||||
</notebook>
|
name="customer_address_id"
|
||||||
</sheet>
|
invisible="True"
|
||||||
<div class="oe_chatter">
|
/>
|
||||||
<field
|
<field name="receipt_policy" invisible="True" />
|
||||||
name="message_follower_ids"
|
<field name="delivery_policy" invisible="True" />
|
||||||
widget="mail_followers"
|
<field
|
||||||
groups="base.group_user"
|
name="delivery_address_id"
|
||||||
/>
|
invisible="True"
|
||||||
<field name="message_ids" widget="mail_thread" />
|
/>
|
||||||
</div>
|
<field name="product_qty" />
|
||||||
|
<field name="price_unit" />
|
||||||
|
<field name="state" />
|
||||||
|
</list>
|
||||||
|
</field>
|
||||||
|
</page>
|
||||||
|
</notebook>
|
||||||
|
</sheet>
|
||||||
|
<chatter />
|
||||||
</form>
|
</form>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
@@ -342,7 +355,7 @@
|
|||||||
context="{'group_by':'date_rma'}"
|
context="{'group_by':'date_rma'}"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</search>
|
</search>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
@@ -351,7 +364,7 @@
|
|||||||
<field name="res_model">rma.order</field>
|
<field name="res_model">rma.order</field>
|
||||||
<field name="domain">[('type','=', 'customer')]</field>
|
<field name="domain">[('type','=', 'customer')]</field>
|
||||||
<field name="context">{'customer':1}</field>
|
<field name="context">{'customer':1}</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="view_id" ref="view_rma_tree" />
|
<field name="view_id" ref="view_rma_tree" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
@@ -360,13 +373,13 @@
|
|||||||
<field name="res_model">rma.order</field>
|
<field name="res_model">rma.order</field>
|
||||||
<field name="domain">[('type','=', 'supplier')]</field>
|
<field name="domain">[('type','=', 'supplier')]</field>
|
||||||
<field name="context">{'supplier':1}</field>
|
<field name="context">{'supplier':1}</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="view_id" ref="view_rma_supplier_tree" />
|
<field name="view_id" ref="view_rma_supplier_tree" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<record id="action_rma_supplier_tree" model="ir.actions.act_window.view">
|
<record id="action_rma_supplier_tree" model="ir.actions.act_window.view">
|
||||||
<field eval="1" name="sequence" />
|
<field eval="1" name="sequence" />
|
||||||
<field name="view_mode">tree</field>
|
<field name="view_mode">list</field>
|
||||||
<field name="act_window_id" ref="action_rma_supplier" />
|
<field name="act_window_id" ref="action_rma_supplier" />
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
<field name="inherit_id" ref="stock.view_picking_form" />
|
<field name="inherit_id" ref="stock.view_picking_form" />
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath
|
<xpath
|
||||||
expr="//page[@name='operations']/field[@name='move_ids_without_package']/tree"
|
expr="//page[@name='operations']/field[@name='move_ids_without_package']/list"
|
||||||
position="inside"
|
position="inside"
|
||||||
>
|
>
|
||||||
<field name="rma_line_id" optional="hide" invisible="not rma_line_id" />
|
<field name="rma_line_id" optional="hide" invisible="not rma_line_id" />
|
||||||
|
|||||||
@@ -9,8 +9,11 @@
|
|||||||
<field name="partner_id" string="Customer" />
|
<field name="partner_id" string="Customer" />
|
||||||
</group>
|
</group>
|
||||||
<separator string="Select Stock Moves to add" />
|
<separator string="Select Stock Moves to add" />
|
||||||
<field name="move_ids">
|
<field
|
||||||
<tree>
|
name="move_ids"
|
||||||
|
domain="[('picking_id.partner_id', '=', partner_id)]"
|
||||||
|
>
|
||||||
|
<list>
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field name="product_uom_qty" />
|
<field name="product_uom_qty" />
|
||||||
<field
|
<field
|
||||||
@@ -30,12 +33,13 @@
|
|||||||
<field name="create_date" groups="base.group_no_one" />
|
<field name="create_date" groups="base.group_no_one" />
|
||||||
<field name="date" string="Date" groups="base.group_no_one" />
|
<field name="date" string="Date" groups="base.group_no_one" />
|
||||||
<field name="state" />
|
<field name="state" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
<field name="show_lot_filter" invisible="1" />
|
<field name="show_lot_filter" invisible="1" />
|
||||||
<field name="lot_domain_ids" widget="many2many_tags" invisible="1" />
|
<field name="lot_domain_ids" widget="many2many_tags" invisible="1" />
|
||||||
<div class="oe_grey" invisible="show_lot_filter == False">
|
<div class="oe_grey" invisible="show_lot_filter == False">
|
||||||
The creation of the RMA Lines will be separated according to the lots or serials selected
|
The creation of the RMA Lines will be separated according to the lots or serials
|
||||||
|
selected
|
||||||
</div>
|
</div>
|
||||||
<div class="o_row">
|
<div class="o_row">
|
||||||
<label
|
<label
|
||||||
@@ -64,9 +68,7 @@
|
|||||||
name="add_lines"
|
name="add_lines"
|
||||||
type="object"
|
type="object"
|
||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
/>
|
/> or <button
|
||||||
or
|
|
||||||
<button
|
|
||||||
name="action_cancel"
|
name="action_cancel"
|
||||||
string="Cancel"
|
string="Cancel"
|
||||||
class="oe_link"
|
class="oe_link"
|
||||||
@@ -146,9 +148,7 @@
|
|||||||
name="add_lines"
|
name="add_lines"
|
||||||
type="object"
|
type="object"
|
||||||
class="oe_highlight"
|
class="oe_highlight"
|
||||||
/>
|
/> or <button
|
||||||
or
|
|
||||||
<button
|
|
||||||
name="action_cancel"
|
name="action_cancel"
|
||||||
string="Cancel"
|
string="Cancel"
|
||||||
class="oe_link"
|
class="oe_link"
|
||||||
|
|||||||
@@ -151,7 +151,7 @@ class RmaMakePicking(models.TransientModel):
|
|||||||
qty = item.qty_to_deliver
|
qty = item.qty_to_deliver
|
||||||
values = self._get_procurement_data(item, group, qty, picking_type)
|
values = self._get_procurement_data(item, group, qty, picking_type)
|
||||||
product = item.line_id.product_id
|
product = item.line_id.product_id
|
||||||
if float_compare(qty, 0, product.uom_id.rounding) != 1:
|
if float_compare(qty, 0, precision_rounding=product.uom_id.rounding) != 1:
|
||||||
raise ValidationError(
|
raise ValidationError(
|
||||||
_(
|
_(
|
||||||
"No quantity to transfer on %(arg1)s shipment of product %(arg2)s.",
|
"No quantity to transfer on %(arg1)s shipment of product %(arg2)s.",
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<form string="Select lines for picking" name="lines">
|
<form string="Select lines for picking" name="lines">
|
||||||
<separator string="Select lines for picking" />
|
<separator string="Select lines for picking" />
|
||||||
<field name="item_ids">
|
<field name="item_ids">
|
||||||
<tree name="RMA Lines" editable="bottom" create="false">
|
<list name="RMA Lines" editable="bottom" create="false">
|
||||||
<field
|
<field
|
||||||
name="rma_id"
|
name="rma_id"
|
||||||
groups="rma.group_rma_groups"
|
groups="rma.group_rma_groups"
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
<field name="line_id" invisible="1" />
|
<field name="line_id" invisible="1" />
|
||||||
<field name="uom_id" groups="uom.group_uom" readonly="1" />
|
<field name="uom_id" groups="uom.group_uom" readonly="1" />
|
||||||
<field name="qty_to_receive" readonly="0" />
|
<field name="qty_to_receive" readonly="0" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
<footer>
|
<footer>
|
||||||
<button
|
<button
|
||||||
@@ -46,14 +46,14 @@
|
|||||||
<form string="Select lines for picking" name="lines">
|
<form string="Select lines for picking" name="lines">
|
||||||
<separator string="Select lines for picking" />
|
<separator string="Select lines for picking" />
|
||||||
<field name="item_ids">
|
<field name="item_ids">
|
||||||
<tree name="RMA Lines" editable="bottom" create="false">
|
<list name="RMA Lines" editable="bottom" create="false">
|
||||||
<field name="rma_id" groups="rma.group_rma_groups" />
|
<field name="rma_id" groups="rma.group_rma_groups" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field name="product_qty" />
|
<field name="product_qty" />
|
||||||
<field name="line_id" invisible="1" />
|
<field name="line_id" invisible="1" />
|
||||||
<field name="uom_id" groups="uom.group_uom" />
|
<field name="uom_id" groups="uom.group_uom" />
|
||||||
<field name="qty_to_deliver" readonly="0" />
|
<field name="qty_to_deliver" readonly="0" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
<footer>
|
<footer>
|
||||||
<button
|
<button
|
||||||
|
|||||||
@@ -25,14 +25,14 @@
|
|||||||
<newline />
|
<newline />
|
||||||
<group>
|
<group>
|
||||||
<field name="item_ids" nolabel="1" colspan="2">
|
<field name="item_ids" nolabel="1" colspan="2">
|
||||||
<tree name="Details" editable="bottom" create="false">
|
<list name="Details" editable="bottom" create="false">
|
||||||
<field name="line_id" options="{'no_open': true}" />
|
<field name="line_id" options="{'no_open': true}" />
|
||||||
<field name="product_id" />
|
<field name="product_id" />
|
||||||
<field name="name" />
|
<field name="name" />
|
||||||
<field name="operation_id" />
|
<field name="operation_id" />
|
||||||
<field name="product_qty" />
|
<field name="product_qty" />
|
||||||
<field name="uom_id" groups="uom.group_uom" />
|
<field name="uom_id" groups="uom.group_uom" />
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</group>
|
</group>
|
||||||
<newline />
|
<newline />
|
||||||
|
|||||||
Reference in New Issue
Block a user