mirror of
https://github.com/OCA/rma.git
synced 2025-02-16 17:11:47 +02:00
[MIG] rma: Migration to 13.0
This commit is contained in:
committed by
Víctor Martínez
parent
bbc1c95e8e
commit
3408e5bf92
@@ -7,20 +7,20 @@ Return Merchandise Authorization Management
|
|||||||
!! changes will be overwritten. !!
|
!! changes will be overwritten. !!
|
||||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
|
||||||
:target: https://odoo-community.org/page/development-status
|
:target: https://odoo-community.org/page/development-status
|
||||||
:alt: Beta
|
:alt: Production/Stable
|
||||||
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
|
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
|
||||||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||||
:alt: License: AGPL-3
|
:alt: License: AGPL-3
|
||||||
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github
|
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github
|
||||||
:target: https://github.com/OCA/rma/tree/12.0/rma
|
:target: https://github.com/OCA/rma/tree/13.0/rma
|
||||||
:alt: OCA/rma
|
:alt: OCA/rma
|
||||||
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
||||||
:target: https://translation.odoo-community.org/projects/rma-12-0/rma-12-0-rma
|
:target: https://translation.odoo-community.org/projects/rma-13-0/rma-13-0-rma
|
||||||
:alt: Translate me on Weblate
|
:alt: Translate me on Weblate
|
||||||
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
||||||
:target: https://runbot.odoo-community.org/runbot/145/12.0
|
:target: https://runbot.odoo-community.org/runbot/145/13.0
|
||||||
:alt: Try me on Runbot
|
:alt: Try me on Runbot
|
||||||
|
|
||||||
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
||||||
@@ -120,7 +120,7 @@ Bug Tracker
|
|||||||
Bugs are tracked on `GitHub Issues <https://github.com/OCA/rma/issues>`_.
|
Bugs are tracked on `GitHub Issues <https://github.com/OCA/rma/issues>`_.
|
||||||
In case of trouble, please check there if your issue has already been reported.
|
In case of trouble, please check there if your issue has already been reported.
|
||||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||||
`feedback <https://github.com/OCA/rma/issues/new?body=module:%20rma%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
`feedback <https://github.com/OCA/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.
|
Do not contact contributors directly about support or help with technical issues.
|
||||||
|
|
||||||
@@ -162,6 +162,6 @@ Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|
|||||||
|
|
||||||
|maintainer-ernestotejeda|
|
|maintainer-ernestotejeda|
|
||||||
|
|
||||||
This module is part of the `OCA/rma <https://github.com/OCA/rma/tree/12.0/rma>`_ project on GitHub.
|
This module is part of the `OCA/rma <https://github.com/OCA/rma/tree/13.0/rma>`_ project on GitHub.
|
||||||
|
|
||||||
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
||||||
|
|||||||
@@ -3,19 +3,20 @@
|
|||||||
{
|
{
|
||||||
"name": "Return Merchandise Authorization Management",
|
"name": "Return Merchandise Authorization Management",
|
||||||
"summary": "Return Merchandise Authorization (RMA)",
|
"summary": "Return Merchandise Authorization (RMA)",
|
||||||
"version": "12.0.1.6.0",
|
"version": "13.0.1.0.0",
|
||||||
"development_status": "Beta",
|
"development_status": "Production/Stable",
|
||||||
"category": "RMA",
|
"category": "RMA",
|
||||||
"website": "https://github.com/OCA/rma",
|
"website": "https://github.com/OCA/rma",
|
||||||
"author": "Tecnativa, Odoo Community Association (OCA)",
|
"author": "Tecnativa, Odoo Community Association (OCA)",
|
||||||
"maintainers": ["ernestotejeda"],
|
"maintainers": ["ernestotejeda"],
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"depends": ["account", "stock",],
|
"depends": ["account", "stock"],
|
||||||
"data": [
|
"data": [
|
||||||
"views/report_rma.xml",
|
"views/report_rma.xml",
|
||||||
"report/report.xml",
|
"report/report.xml",
|
||||||
"data/mail_data.xml",
|
"data/mail_data.xml",
|
||||||
"data/rma_operation_data.xml",
|
"data/rma_operation_data.xml",
|
||||||
|
"data/stock_data.xml",
|
||||||
"security/rma_security.xml",
|
"security/rma_security.xml",
|
||||||
"security/ir.model.access.csv",
|
"security/ir.model.access.csv",
|
||||||
"wizard/stock_picking_return_views.xml",
|
"wizard/stock_picking_return_views.xml",
|
||||||
|
|||||||
9
rma/data/stock_data.xml
Normal file
9
rma/data/stock_data.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<data noupdate="1">
|
||||||
|
<record id="stock_location_rma" model="stock.location">
|
||||||
|
<field name="name">RMA</field>
|
||||||
|
<field name="location_id" ref="stock.stock_location_locations" />
|
||||||
|
<field name="usage">view</field>
|
||||||
|
<field name="company_id" />
|
||||||
|
</record>
|
||||||
|
</data>
|
||||||
13
rma/hooks.py
13
rma/hooks.py
@@ -23,12 +23,13 @@ def post_init_hook(cr, registry):
|
|||||||
|
|
||||||
def create_rma_locations(warehouse):
|
def create_rma_locations(warehouse):
|
||||||
stock_location = env["stock.location"]
|
stock_location = env["stock.location"]
|
||||||
location_vals = warehouse._get_locations_values({})
|
if not warehouse.rma_loc_id:
|
||||||
for field_name, values in location_vals.items():
|
rma_location_vals = warehouse._get_rma_location_values()
|
||||||
if field_name == "rma_loc_id" and not warehouse.rma_loc_id:
|
warehouse.rma_loc_id = (
|
||||||
warehouse.rma_loc_id = (
|
stock_location.with_context(active_test=False)
|
||||||
stock_location.with_context(active_test=False).create(values).id
|
.create(rma_location_vals)
|
||||||
)
|
.id
|
||||||
|
)
|
||||||
|
|
||||||
def create_rma_picking_types(whs):
|
def create_rma_picking_types(whs):
|
||||||
ir_sequence_sudo = env["ir.sequence"].sudo()
|
ir_sequence_sudo = env["ir.sequence"].sudo()
|
||||||
|
|||||||
239
rma/i18n/es.po
239
rma/i18n/es.po
@@ -6,8 +6,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Odoo Server 12.0\n"
|
"Project-Id-Version: Odoo Server 12.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-06-21 05:13+0000\n"
|
"POT-Creation-Date: 2020-10-23 20:11+0000\n"
|
||||||
"PO-Revision-Date: 2020-10-06 14:16+0000\n"
|
"PO-Revision-Date: 2020-10-23 16:21-0400\n"
|
||||||
"Last-Translator: David Vidal <david.vidal@tecnativa.com>\n"
|
"Last-Translator: David Vidal <david.vidal@tecnativa.com>\n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: es\n"
|
"Language: es\n"
|
||||||
@@ -15,7 +15,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 3.10\n"
|
"X-Generator: Poedit 2.0.6\n"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:mail.template,report_name:rma.mail_template_rma_notification
|
#: model:mail.template,report_name:rma.mail_template_rma_notification
|
||||||
@@ -28,16 +28,25 @@ msgid "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
|||||||
msgstr "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
msgstr "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma_team.py:46
|
#: code:addons/rma/models/rma_team.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s (copy)"
|
msgid "%s (copy)"
|
||||||
msgstr "%s (copia)"
|
msgstr "%s (copia)"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: code:addons/rma/models/rma.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "<b>E-mail subject:</b> %s<br/><br/><b>E-mail body:</b><br/>%s"
|
||||||
|
msgstr ""
|
||||||
|
"<b>Asunto del correo electrónico:</b> %s<br/><br/><b>Cuerpo del correo "
|
||||||
|
"electrónico:</b><br/>%s"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
||||||
|
#, fuzzy
|
||||||
msgid ""
|
msgid ""
|
||||||
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
"<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
||||||
" Dear ${object.partner_id.name}\n"
|
" Dear ${object.partner_id.name}\n"
|
||||||
" % if object.partner_id.parent_id:\n"
|
" % if object.partner_id.parent_id:\n"
|
||||||
" (${object.partner_id.parent_id.name})\n"
|
" (${object.partner_id.parent_id.name})\n"
|
||||||
@@ -48,7 +57,7 @@ msgid ""
|
|||||||
" <br/><br/>\n"
|
" <br/><br/>\n"
|
||||||
" Do not hesitate to contact us if you have any question.\n"
|
" Do not hesitate to contact us if you have any question.\n"
|
||||||
"</p>\n"
|
"</p>\n"
|
||||||
"</div>\n"
|
" </div>\n"
|
||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
@@ -77,12 +86,18 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-check\"/> <b>Paid</b>"
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
"<i class=\"fa fa-fw fa-check\"/>\n"
|
||||||
|
" <b>Paid</b>"
|
||||||
msgstr "<i class=\"fa fa-fw fa-check\"/><b>Pagado</b>"
|
msgstr "<i class=\"fa fa-fw fa-check\"/><b>Pagado</b>"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-clock-o\"/> <b>Waiting Payment</b>"
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
"<i class=\"fa fa-fw fa-clock-o\"/>\n"
|
||||||
|
" <b>Waiting Payment</b>"
|
||||||
msgstr "<i class=\"fa fa-fw fa-clock-o\"/><b>Esperando Pago</b>"
|
msgstr "<i class=\"fa fa-fw fa-clock-o\"/><b>Esperando Pago</b>"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -290,6 +305,11 @@ msgstr "Activo"
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Actividades"
|
msgstr "Actividades"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Activity Exception Decoration"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
||||||
msgid "Activity State"
|
msgid "Activity State"
|
||||||
@@ -369,7 +389,7 @@ msgid "Cancel"
|
|||||||
msgstr "Cancelar"
|
msgstr "Cancelar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__cancelled
|
||||||
msgid "Canceled"
|
msgid "Canceled"
|
||||||
msgstr "Cancelado"
|
msgstr "Cancelado"
|
||||||
|
|
||||||
@@ -411,7 +431,8 @@ msgid "Confirm"
|
|||||||
msgstr "Confirmar"
|
msgstr "Confirmar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__confirmed
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Confirmed"
|
msgid "Confirmed"
|
||||||
msgstr "Confirmado"
|
msgstr "Confirmado"
|
||||||
|
|
||||||
@@ -455,7 +476,7 @@ msgid "Customer Portal URL"
|
|||||||
msgstr "URL del portal de cliente"
|
msgstr "URL del portal de cliente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:42
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__date
|
#: model:ir.model.fields,field_description:rma.field_rma__date
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
@@ -525,7 +546,8 @@ msgid "Display Name"
|
|||||||
msgstr "Nombre mostrado"
|
msgstr "Nombre mostrado"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__draft
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Draft"
|
msgid "Draft"
|
||||||
msgstr "Borrador"
|
msgstr "Borrador"
|
||||||
|
|
||||||
@@ -535,20 +557,6 @@ msgstr "Borrador"
|
|||||||
msgid "Draft RMA"
|
msgid "Draft RMA"
|
||||||
msgstr "RMA en estado Borrador"
|
msgstr "RMA en estado Borrador"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: code:addons/rma/models/rma.py:1098
|
|
||||||
#, python-format
|
|
||||||
msgid ""
|
|
||||||
"E-mail subject: %s\n"
|
|
||||||
"\n"
|
|
||||||
"E-mail body:\n"
|
|
||||||
"%s"
|
|
||||||
msgstr ""
|
|
||||||
"Asunto del correo electrónico: %s\n"
|
|
||||||
"\n"
|
|
||||||
"Cuerpo del correo electrónico:\n"
|
|
||||||
"%s"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
||||||
msgid "Email"
|
msgid "Email"
|
||||||
@@ -560,7 +568,7 @@ msgid "Email Alias"
|
|||||||
msgstr "Pseudónimo de correo"
|
msgstr "Pseudónimo de correo"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_split.py:63
|
#: code:addons/rma/wizard/rma_split.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Extracted RMA"
|
msgid "Extracted RMA"
|
||||||
msgstr "RMA Extraído"
|
msgstr "RMA Extraído"
|
||||||
@@ -612,20 +620,28 @@ msgstr ""
|
|||||||
"contiene el seudónimo para la creación de tareas)"
|
"contiene el seudónimo para la creación de tareas)"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_icon
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
msgid "Icon"
|
||||||
msgid "If checked new messages require your attention."
|
msgstr ""
|
||||||
msgstr "Si está marcado, hay nuevos mensajes que requieren su atención."
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_icon
|
||||||
|
msgid "Icon to indicate an exception activity."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
||||||
msgid "If checked, new messages require your attention."
|
msgid "If checked, new messages require your attention."
|
||||||
msgstr "Si está marcado, hay nuevos mensajes que requieren su atención."
|
msgstr "Si está marcado, hay nuevos mensajes que requieren su atención."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_has_sms_error
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_sms_error
|
||||||
msgid "If checked, some messages have a delivery error."
|
msgid "If checked, some messages have a delivery error."
|
||||||
msgstr "Si se encuentra marcado, algunos mensajes tienen error de envío."
|
msgstr "Si se encuentra marcado, algunos mensajes tienen error de envío."
|
||||||
|
|
||||||
@@ -639,32 +655,32 @@ msgstr ""
|
|||||||
"sin eliminarlo."
|
"sin eliminarlo."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1102
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Incoming e-mail"
|
msgid "Incoming e-mail"
|
||||||
msgstr "Correo electrónico entrante"
|
msgstr "Correo electrónico entrante"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice
|
|
||||||
msgid "Invoice"
|
|
||||||
msgstr "Factura"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
||||||
msgid "Invoice Address"
|
msgid "Invoice Address"
|
||||||
msgstr "Dirección de factura"
|
msgstr "Dirección de factura"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice_line
|
|
||||||
msgid "Invoice Line"
|
|
||||||
msgstr "Linea de factura"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
||||||
msgid "Is Follower"
|
msgid "Is Follower"
|
||||||
msgstr "Es un seguidor"
|
msgstr "Es un seguidor"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move
|
||||||
|
msgid "Journal Entries"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move_line
|
||||||
|
msgid "Journal Item"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
||||||
@@ -708,7 +724,7 @@ msgid "Lock"
|
|||||||
msgstr "Bloquear"
|
msgstr "Bloquear"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__locked
|
||||||
msgid "Locked"
|
msgid "Locked"
|
||||||
msgstr "Bloqueado"
|
msgstr "Bloqueado"
|
||||||
|
|
||||||
@@ -741,7 +757,7 @@ msgid "Messages"
|
|||||||
msgstr "Mensajes"
|
msgstr "Mensajes"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:43
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__name
|
#: model:ir.model.fields,field_description:rma.field_rma__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
||||||
@@ -750,8 +766,7 @@ msgid "Name"
|
|||||||
msgstr "Nombre"
|
msgstr "Nombre"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:31 code:addons/rma/models/rma.py:494
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: code:addons/rma/models/rma.py:1101
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "New"
|
msgid "New"
|
||||||
msgstr "Nuevo"
|
msgstr "Nuevo"
|
||||||
@@ -772,24 +787,24 @@ msgid "Next Activity Type"
|
|||||||
msgstr "Siguiente tipo de actividad"
|
msgstr "Siguiente tipo de actividad"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:772
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a replacement."
|
msgid "None of the selected RMAs can perform a replacement."
|
||||||
msgstr "Ninguno de los RMAs seleccionados puede realizar un reemplazo."
|
msgstr "Ninguno de los RMAs seleccionados puede realizar un reemplazo."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:755
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a return."
|
msgid "None of the selected RMAs can perform a return."
|
||||||
msgstr "Ninguno de los RMAs seleccionados puede realizar una devolución."
|
msgstr "Ninguno de los RMAs seleccionados puede realizar una devolución."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__1
|
||||||
msgid "Normal"
|
msgid "Normal"
|
||||||
msgstr "Normal"
|
msgstr "Normal"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__0
|
||||||
msgid "Not urgent"
|
msgid "Not urgent"
|
||||||
msgstr "No Urgente"
|
msgstr "No Urgente"
|
||||||
|
|
||||||
@@ -802,8 +817,8 @@ msgstr "Número de acciones"
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
||||||
msgid "Number of error"
|
msgid "Number of errors"
|
||||||
msgstr "Número de error"
|
msgstr "Número de errores"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_needaction_counter
|
#: model:ir.model.fields,help:rma.field_rma__message_needaction_counter
|
||||||
@@ -854,11 +869,6 @@ msgstr "Movimiento"
|
|||||||
msgid "Other Information"
|
msgid "Other Information"
|
||||||
msgstr "Otra información"
|
msgstr "Otra información"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Overdue"
|
|
||||||
msgstr "Vencidas"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
||||||
msgid "Owner"
|
msgid "Owner"
|
||||||
@@ -889,11 +899,6 @@ msgstr ""
|
|||||||
msgid "Partner"
|
msgid "Partner"
|
||||||
msgstr "Empresa"
|
msgstr "Empresa"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Planned"
|
|
||||||
msgstr "Planeado"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -948,7 +953,8 @@ msgid "Quantity"
|
|||||||
msgstr "Cantidad"
|
msgstr "Cantidad"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_delivery.py:49 sql_constraint:rma.split.wizard:0
|
#: code:addons/rma/wizard/rma_delivery.py:0
|
||||||
|
#: model:ir.model.constraint,message:rma.constraint_rma_split_wizard_check_product_uom_qty_positive
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Quantity must be greater than 0."
|
msgid "Quantity must be greater than 0."
|
||||||
msgstr "La cantidad debe ser mayor que cero."
|
msgstr "La cantidad debe ser mayor que cero."
|
||||||
@@ -959,7 +965,7 @@ msgid "Quantity to extract"
|
|||||||
msgstr "Cantidad a extraer"
|
msgstr "Cantidad a extraer"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:805
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Quantity to extract cannot be greater than remaining delivery quantity (%s "
|
"Quantity to extract cannot be greater than remaining delivery quantity (%s "
|
||||||
@@ -976,7 +982,7 @@ msgstr "Cantidad a extraer en nuevo RMA."
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_action
|
#: model:ir.actions.act_window,name:rma.rma_action
|
||||||
#: model:ir.model,name:rma.model_rma
|
#: model:ir.model,name:rma.model_rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_account_invoice_line__rma_id
|
#: model:ir.model.fields,field_description:rma.field_account_move_line__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
||||||
#: model:ir.module.category,name:rma.rma_module_category
|
#: model:ir.module.category,name:rma.rma_module_category
|
||||||
@@ -993,7 +999,7 @@ msgid "RMA #"
|
|||||||
msgstr "RMA nº"
|
msgstr "RMA nº"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/res_company.py:18
|
#: code:addons/rma/models/res_company.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Code"
|
msgid "RMA Code"
|
||||||
msgstr "Código de RMA"
|
msgstr "Código de RMA"
|
||||||
@@ -1009,7 +1015,7 @@ msgid "RMA Deadline"
|
|||||||
msgstr "RMA fecha límite"
|
msgstr "RMA fecha límite"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:82
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Delivery Orders"
|
msgid "RMA Delivery Orders"
|
||||||
msgstr "Órdenes de entrega de RMA"
|
msgstr "Órdenes de entrega de RMA"
|
||||||
@@ -1047,7 +1053,7 @@ msgid "RMA Out Type"
|
|||||||
msgstr "Tipo de operación para entrega de RMA"
|
msgstr "Tipo de operación para entrega de RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:73
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Receipts"
|
msgid "RMA Receipts"
|
||||||
msgstr "Recepciones de RMA"
|
msgstr "Recepciones de RMA"
|
||||||
@@ -1137,7 +1143,8 @@ msgid "Receipt"
|
|||||||
msgstr "Recepción"
|
msgstr "Recepción"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__received
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Received"
|
msgid "Received"
|
||||||
msgstr "Recibido"
|
msgstr "Recibido"
|
||||||
|
|
||||||
@@ -1157,7 +1164,7 @@ msgid "Reference of the document that generated this RMA."
|
|||||||
msgstr "Referencia al documento que generó este RMA."
|
msgstr "Referencia al documento que generó este RMA."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:693
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: model:rma.operation,name:rma.rma_operation_refund
|
#: model:rma.operation,name:rma.rma_operation_refund
|
||||||
@@ -1176,7 +1183,7 @@ msgid "Refund line"
|
|||||||
msgstr "Línea de factura rectificativa"
|
msgstr "Línea de factura rectificativa"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__refunded
|
||||||
msgid "Refunded"
|
msgid "Refunded"
|
||||||
msgstr "Reembolsado"
|
msgstr "Reembolsado"
|
||||||
|
|
||||||
@@ -1196,8 +1203,8 @@ msgid "Repair"
|
|||||||
msgstr "Reparar"
|
msgstr "Reparar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__replace
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
#: model:rma.operation,name:rma.rma_operation_replace
|
#: model:rma.operation,name:rma.rma_operation_replace
|
||||||
msgid "Replace"
|
msgid "Replace"
|
||||||
msgstr "Reemplazar"
|
msgstr "Reemplazar"
|
||||||
@@ -1208,12 +1215,12 @@ msgid "Replace Product"
|
|||||||
msgstr "Reemplazar producto"
|
msgstr "Reemplazar producto"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__replaced
|
||||||
msgid "Replaced"
|
msgid "Replaced"
|
||||||
msgstr "Reemplazado"
|
msgstr "Reemplazado"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1011
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-id=\"%d"
|
"Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-id=\"%d"
|
||||||
@@ -1225,7 +1232,7 @@ msgstr ""
|
|||||||
"picking\" data-oe-id=\"%d\">%s</a>) ha sido creado."
|
"picking\" data-oe-id=\"%d\">%s</a>) ha sido creado."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1022
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" "
|
"Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" "
|
||||||
@@ -1249,7 +1256,7 @@ msgid "Requested operation"
|
|||||||
msgstr "Operación solicitada"
|
msgstr "Operación solicitada"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:736
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Required field(s):%s"
|
msgid "Required field(s):%s"
|
||||||
msgstr "Campo(s) requerido(s):%s"
|
msgstr "Campo(s) requerido(s):%s"
|
||||||
@@ -1272,13 +1279,13 @@ msgstr "Albarán de devolución"
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__return
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
msgid "Return to customer"
|
msgid "Return to customer"
|
||||||
msgstr "Devolver al cliente"
|
msgstr "Devolver al cliente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:972
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</"
|
"Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</"
|
||||||
@@ -1288,7 +1295,7 @@ msgstr ""
|
|||||||
"\" data-oe-id=\"%d\">%s</a> ha sido creada."
|
"\" data-oe-id=\"%d\">%s</a> ha sido creada."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__returned
|
||||||
msgid "Returned"
|
msgid "Returned"
|
||||||
msgstr "Devuelto"
|
msgstr "Devuelto"
|
||||||
|
|
||||||
@@ -1297,6 +1304,13 @@ msgstr "Devuelto"
|
|||||||
msgid "Rma Count"
|
msgid "Rma Count"
|
||||||
msgstr "Cantidad de RMAs"
|
msgstr "Cantidad de RMAs"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_sms_error
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_sms_error
|
||||||
|
#, fuzzy
|
||||||
|
msgid "SMS Delivery error"
|
||||||
|
msgstr "Error de Envío de Mensaje"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
||||||
msgid "Scheduled Date"
|
msgid "Scheduled Date"
|
||||||
@@ -1328,13 +1342,13 @@ msgid "Sequence"
|
|||||||
msgstr "Secuencia"
|
msgstr "Secuencia"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:48
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA in"
|
msgid "Sequence RMA in"
|
||||||
msgstr "Secuencia de recepción de RMA"
|
msgstr "Secuencia de recepción de RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:53
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA out"
|
msgid "Sequence RMA out"
|
||||||
msgstr "Secuencia de entrega de RMA"
|
msgstr "Secuencia de entrega de RMA"
|
||||||
@@ -1366,7 +1380,7 @@ msgid "Split RMA"
|
|||||||
msgstr "Dividir RMA"
|
msgstr "Dividir RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:889
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been "
|
"Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been "
|
||||||
@@ -1382,7 +1396,7 @@ msgid "State"
|
|||||||
msgstr "Estado"
|
msgstr "Estado"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:44
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
@@ -1423,7 +1437,7 @@ msgid "Team Members"
|
|||||||
msgstr "Miembros del equipo"
|
msgstr "Miembros del equipo"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: sql_constraint:rma.operation:0
|
#: model:ir.model.constraint,message:rma.constraint_rma_operation_name_uniq
|
||||||
msgid "That operation name already exists !"
|
msgid "That operation name already exists !"
|
||||||
msgstr "¡El nombre de operación ya existe!"
|
msgstr "¡El nombre de operación ya existe!"
|
||||||
|
|
||||||
@@ -1462,7 +1476,7 @@ msgstr ""
|
|||||||
"dirección."
|
"dirección."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_move.py:64
|
#: code:addons/rma/models/stock_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"The quantity done for the product '%s' must be equal to its initial demand "
|
"The quantity done for the product '%s' must be equal to its initial demand "
|
||||||
@@ -1472,13 +1486,13 @@ msgstr ""
|
|||||||
"inicial porque el movimiento está enlazado a un RMA (%s)."
|
"inicial porque el movimiento está enlazado a un RMA (%s)."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:793
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "The quantity to return is greater than remaining quantity."
|
msgid "The quantity to return is greater than remaining quantity."
|
||||||
msgstr "La cantidad a devolver es mayor que la cantidad restante del RMA."
|
msgstr "La cantidad a devolver es mayor que la cantidad restante del RMA."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/account_invoice.py:22
|
#: code:addons/rma/models/account_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"There is at least one invoice lines whose quantity is less than the quantity "
|
"There is at least one invoice lines whose quantity is less than the quantity "
|
||||||
@@ -1488,19 +1502,19 @@ msgstr ""
|
|||||||
"cantidad especificada en el RMA asociado."
|
"cantidad especificada en el RMA asociado."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:782
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot be split."
|
msgid "This RMA cannot be split."
|
||||||
msgstr "Este RMA no puede ser dividido."
|
msgstr "Este RMA no puede ser dividido."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:769
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a replacement."
|
msgid "This RMA cannot perform a replacement."
|
||||||
msgstr "Este RMA no puede realizar un reemplazo."
|
msgstr "Este RMA no puede realizar un reemplazo."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:752
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a return."
|
msgid "This RMA cannot perform a return."
|
||||||
msgstr "Este RMA no puede realizar una devolución."
|
msgstr "Este RMA no puede realizar una devolución."
|
||||||
@@ -1511,11 +1525,6 @@ msgstr "Este RMA no puede realizar una devolución."
|
|||||||
msgid "To Refund"
|
msgid "To Refund"
|
||||||
msgstr "Reembolsar"
|
msgstr "Reembolsar"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Today"
|
|
||||||
msgstr "Hoy"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model,name:rma.model_stock_picking
|
#: model:ir.model,name:rma.model_stock_picking
|
||||||
msgid "Transfer"
|
msgid "Transfer"
|
||||||
@@ -1531,6 +1540,11 @@ msgstr "Tipo"
|
|||||||
msgid "Type of Operation"
|
msgid "Type of Operation"
|
||||||
msgstr "Tipo de operación"
|
msgstr "Tipo de operación"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Type of the exception activity on record."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Unassigned RMAs"
|
msgid "Unassigned RMAs"
|
||||||
@@ -1570,7 +1584,7 @@ msgid "UoM"
|
|||||||
msgstr "UdM"
|
msgstr "UdM"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__2
|
||||||
msgid "Urgent"
|
msgid "Urgent"
|
||||||
msgstr "Urgente"
|
msgstr "Urgente"
|
||||||
|
|
||||||
@@ -1590,17 +1604,17 @@ msgid "Users"
|
|||||||
msgstr "Usuarios"
|
msgstr "Usuarios"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__3
|
||||||
msgid "Very Urgent"
|
msgid "Very Urgent"
|
||||||
msgstr "Muy Urgente"
|
msgstr "Muy Urgente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_replacement
|
||||||
msgid "Waiting for replacement"
|
msgid "Waiting for replacement"
|
||||||
msgstr "Esperando por reemplazo"
|
msgstr "Esperando por reemplazo"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_return
|
||||||
msgid "Waiting for return"
|
msgid "Waiting for return"
|
||||||
msgstr "Esperando por devolución"
|
msgstr "Esperando por devolución"
|
||||||
|
|
||||||
@@ -1624,13 +1638,13 @@ msgid "Website communication history"
|
|||||||
msgstr "Historial de comunicaciones del sitio web"
|
msgstr "Historial de comunicaciones del sitio web"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:516
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You cannot delete RMAs that are not in draft state"
|
msgid "You cannot delete RMAs that are not in draft state"
|
||||||
msgstr "No puede eliminar RMAs que no estén en estado borrador"
|
msgstr "No puede eliminar RMAs que no estén en estado borrador"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/stock_picking_return.py:55
|
#: code:addons/rma/wizard/stock_picking_return.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"You must specify the 'Customer' in the 'Stock Picking' from which RMAs will "
|
"You must specify the 'Customer' in the 'Stock Picking' from which RMAs will "
|
||||||
@@ -1639,6 +1653,11 @@ msgstr ""
|
|||||||
"Debe seleccionar el 'Cliente' en la 'Orden de Entrega' desde la cual los "
|
"Debe seleccionar el 'Cliente' en la 'Orden de Entrega' desde la cual los "
|
||||||
"RMAs serán creados"
|
"RMAs serán creados"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.actions.report,print_report_name:rma.report_rma_action
|
||||||
|
msgid "object._get_report_base_filename()"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:res.groups,comment:rma.rma_group_user_all
|
#: model:res.groups,comment:rma.rma_group_user_all
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -1660,6 +1679,24 @@ msgstr ""
|
|||||||
"El usuario tendrá acceso a la configuración de RMA y a los informes "
|
"El usuario tendrá acceso a la configuración de RMA y a los informes "
|
||||||
"estadísticos."
|
"estadísticos."
|
||||||
|
|
||||||
|
#~ msgid "If checked new messages require your attention."
|
||||||
|
#~ msgstr "Si está marcado, hay nuevos mensajes que requieren su atención."
|
||||||
|
|
||||||
|
#~ msgid "Invoice"
|
||||||
|
#~ msgstr "Factura"
|
||||||
|
|
||||||
|
#~ msgid "Invoice Line"
|
||||||
|
#~ msgstr "Linea de factura"
|
||||||
|
|
||||||
|
#~ msgid "Overdue"
|
||||||
|
#~ msgstr "Vencidas"
|
||||||
|
|
||||||
|
#~ msgid "Planned"
|
||||||
|
#~ msgstr "Planeado"
|
||||||
|
|
||||||
|
#~ msgid "Today"
|
||||||
|
#~ msgstr "Hoy"
|
||||||
|
|
||||||
#~ msgid "Waiting for refund"
|
#~ msgid "Waiting for refund"
|
||||||
#~ msgstr "Esperando por reembolso"
|
#~ msgstr "Esperando por reembolso"
|
||||||
|
|
||||||
|
|||||||
@@ -27,16 +27,22 @@ msgid "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
|||||||
msgstr "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
msgstr "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma_team.py:46
|
#: code:addons/rma/models/rma_team.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s (copy)"
|
msgid "%s (copy)"
|
||||||
msgstr "%s (Cópia)"
|
msgstr "%s (Cópia)"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: code:addons/rma/models/rma.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "<b>E-mail subject:</b> %s<br/><br/><b>E-mail body:</b><br/>%s"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
||||||
msgid ""
|
msgid ""
|
||||||
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
"<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
||||||
" Dear ${object.partner_id.name}\n"
|
" Dear ${object.partner_id.name}\n"
|
||||||
" % if object.partner_id.parent_id:\n"
|
" % if object.partner_id.parent_id:\n"
|
||||||
" (${object.partner_id.parent_id.name})\n"
|
" (${object.partner_id.parent_id.name})\n"
|
||||||
@@ -47,23 +53,9 @@ msgid ""
|
|||||||
" <br/><br/>\n"
|
" <br/><br/>\n"
|
||||||
" Do not hesitate to contact us if you have any question.\n"
|
" Do not hesitate to contact us if you have any question.\n"
|
||||||
"</p>\n"
|
"</p>\n"
|
||||||
"</div>\n"
|
" </div>\n"
|
||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
|
||||||
"<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
|
||||||
" Dear ${object.partner_id.name}\n"
|
|
||||||
" % if object.partner_id.parent_id:\n"
|
|
||||||
" (${object.partner_id.parent_id.name})\n"
|
|
||||||
" % endif\n"
|
|
||||||
" <br/><br/>\n"
|
|
||||||
" Aqui está o RMA <strong>${object.name}</strong> from ${object.company_id."
|
|
||||||
"name}.\n"
|
|
||||||
" <br/><br/>\n"
|
|
||||||
" Não deixe de nos contactar se houver qualquer dúvida ou outra questão.\n"
|
|
||||||
"</p>\n"
|
|
||||||
"</div>\n"
|
|
||||||
" "
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
@@ -76,13 +68,17 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-check\"/> <b>Paid</b>"
|
msgid ""
|
||||||
msgstr "<i class=\"fa fa-fw fa-check\"/> <b>Pago</b>"
|
"<i class=\"fa fa-fw fa-check\"/>\n"
|
||||||
|
" <b>Paid</b>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-clock-o\"/> <b>Waiting Payment</b>"
|
msgid ""
|
||||||
msgstr "<i class=\"fa fa-fw fa-clock-o\"/> <b>Aguardando Pagamento</b>"
|
"<i class=\"fa fa-fw fa-clock-o\"/>\n"
|
||||||
|
" <b>Waiting Payment</b>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
@@ -289,6 +285,11 @@ msgstr "Ativar/Ativo(a)"
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr "Atividades"
|
msgstr "Atividades"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Activity Exception Decoration"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
||||||
msgid "Activity State"
|
msgid "Activity State"
|
||||||
@@ -368,7 +369,7 @@ msgid "Cancel"
|
|||||||
msgstr "Cancelar"
|
msgstr "Cancelar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__cancelled
|
||||||
msgid "Canceled"
|
msgid "Canceled"
|
||||||
msgstr "Cancelado(a)"
|
msgstr "Cancelado(a)"
|
||||||
|
|
||||||
@@ -410,7 +411,8 @@ msgid "Confirm"
|
|||||||
msgstr "Confirmar"
|
msgstr "Confirmar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__confirmed
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Confirmed"
|
msgid "Confirmed"
|
||||||
msgstr "Confirmado(a)"
|
msgstr "Confirmado(a)"
|
||||||
|
|
||||||
@@ -454,7 +456,7 @@ msgid "Customer Portal URL"
|
|||||||
msgstr "URL do portal do cliente"
|
msgstr "URL do portal do cliente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:42
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__date
|
#: model:ir.model.fields,field_description:rma.field_rma__date
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
@@ -524,7 +526,8 @@ msgid "Display Name"
|
|||||||
msgstr "Exibir Nome"
|
msgstr "Exibir Nome"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__draft
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Draft"
|
msgid "Draft"
|
||||||
msgstr "Rascunho"
|
msgstr "Rascunho"
|
||||||
|
|
||||||
@@ -534,20 +537,6 @@ msgstr "Rascunho"
|
|||||||
msgid "Draft RMA"
|
msgid "Draft RMA"
|
||||||
msgstr "Rascunho do RMA"
|
msgstr "Rascunho do RMA"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: code:addons/rma/models/rma.py:1098
|
|
||||||
#, python-format
|
|
||||||
msgid ""
|
|
||||||
"E-mail subject: %s\n"
|
|
||||||
"\n"
|
|
||||||
"E-mail body:\n"
|
|
||||||
"%s"
|
|
||||||
msgstr ""
|
|
||||||
"Assunto do E-mail: %s\n"
|
|
||||||
"\n"
|
|
||||||
"Corpo do E-mail:\n"
|
|
||||||
"%s"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
||||||
msgid "Email"
|
msgid "Email"
|
||||||
@@ -559,7 +548,7 @@ msgid "Email Alias"
|
|||||||
msgstr "Alias do Email"
|
msgstr "Alias do Email"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_split.py:63
|
#: code:addons/rma/wizard/rma_split.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Extracted RMA"
|
msgid "Extracted RMA"
|
||||||
msgstr "RMA Extraído"
|
msgstr "RMA Extraído"
|
||||||
@@ -611,20 +600,28 @@ msgstr ""
|
|||||||
"de criação da tarefa)"
|
"de criação da tarefa)"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_icon
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
msgid "Icon"
|
||||||
msgid "If checked new messages require your attention."
|
msgstr ""
|
||||||
msgstr "Se marcada, novas mensagens requerem sua atenção."
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_icon
|
||||||
|
msgid "Icon to indicate an exception activity."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
||||||
msgid "If checked, new messages require your attention."
|
msgid "If checked, new messages require your attention."
|
||||||
msgstr "Se marcada, novas mensagens requerem sua atenção."
|
msgstr "Se marcada, novas mensagens requerem sua atenção."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_has_sms_error
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_sms_error
|
||||||
msgid "If checked, some messages have a delivery error."
|
msgid "If checked, some messages have a delivery error."
|
||||||
msgstr "Se marcada, algumas mensagens apresentam um erro de entrega."
|
msgstr "Se marcada, algumas mensagens apresentam um erro de entrega."
|
||||||
|
|
||||||
@@ -638,32 +635,32 @@ msgstr ""
|
|||||||
"sem removê-lo."
|
"sem removê-lo."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1102
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Incoming e-mail"
|
msgid "Incoming e-mail"
|
||||||
msgstr "E-mail recebido"
|
msgstr "E-mail recebido"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice
|
|
||||||
msgid "Invoice"
|
|
||||||
msgstr "Fatura"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
||||||
msgid "Invoice Address"
|
msgid "Invoice Address"
|
||||||
msgstr "Endereço de Faturamento"
|
msgstr "Endereço de Faturamento"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice_line
|
|
||||||
msgid "Invoice Line"
|
|
||||||
msgstr "Linha da Fatura"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
||||||
msgid "Is Follower"
|
msgid "Is Follower"
|
||||||
msgstr "É Seguidor"
|
msgstr "É Seguidor"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move
|
||||||
|
msgid "Journal Entries"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move_line
|
||||||
|
msgid "Journal Item"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
||||||
@@ -707,7 +704,7 @@ msgid "Lock"
|
|||||||
msgstr "Travar"
|
msgstr "Travar"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__locked
|
||||||
msgid "Locked"
|
msgid "Locked"
|
||||||
msgstr "Travado"
|
msgstr "Travado"
|
||||||
|
|
||||||
@@ -740,7 +737,7 @@ msgid "Messages"
|
|||||||
msgstr "Mensagens"
|
msgstr "Mensagens"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:43
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__name
|
#: model:ir.model.fields,field_description:rma.field_rma__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
||||||
@@ -749,8 +746,7 @@ msgid "Name"
|
|||||||
msgstr "Nome"
|
msgstr "Nome"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:31 code:addons/rma/models/rma.py:494
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: code:addons/rma/models/rma.py:1101
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "New"
|
msgid "New"
|
||||||
msgstr "Novo(a)"
|
msgstr "Novo(a)"
|
||||||
@@ -771,24 +767,24 @@ msgid "Next Activity Type"
|
|||||||
msgstr "Tipo da Próxima Atividade"
|
msgstr "Tipo da Próxima Atividade"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:772
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a replacement."
|
msgid "None of the selected RMAs can perform a replacement."
|
||||||
msgstr "Nenhum dos RMAs selecionados pode executar uma substituição."
|
msgstr "Nenhum dos RMAs selecionados pode executar uma substituição."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:755
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a return."
|
msgid "None of the selected RMAs can perform a return."
|
||||||
msgstr "Nenhum dos RMAs selecionados pode executar uma devolução."
|
msgstr "Nenhum dos RMAs selecionados pode executar uma devolução."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__1
|
||||||
msgid "Normal"
|
msgid "Normal"
|
||||||
msgstr "Normal"
|
msgstr "Normal"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__0
|
||||||
msgid "Not urgent"
|
msgid "Not urgent"
|
||||||
msgstr "Não é urgente"
|
msgstr "Não é urgente"
|
||||||
|
|
||||||
@@ -801,8 +797,8 @@ msgstr "Número de Ações"
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
||||||
msgid "Number of error"
|
msgid "Number of errors"
|
||||||
msgstr "Número de Erros"
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_needaction_counter
|
#: model:ir.model.fields,help:rma.field_rma__message_needaction_counter
|
||||||
@@ -853,11 +849,6 @@ msgstr "Origem da Movimentação"
|
|||||||
msgid "Other Information"
|
msgid "Other Information"
|
||||||
msgstr "Outra Informação"
|
msgstr "Outra Informação"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Overdue"
|
|
||||||
msgstr "Vencidos(as)"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
||||||
msgid "Owner"
|
msgid "Owner"
|
||||||
@@ -889,11 +880,6 @@ msgstr ""
|
|||||||
msgid "Partner"
|
msgid "Partner"
|
||||||
msgstr "Parceiro"
|
msgstr "Parceiro"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Planned"
|
|
||||||
msgstr "Planejado)a)"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -947,7 +933,8 @@ msgid "Quantity"
|
|||||||
msgstr "Quantidade"
|
msgstr "Quantidade"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_delivery.py:49 sql_constraint:rma.split.wizard:0
|
#: code:addons/rma/wizard/rma_delivery.py:0
|
||||||
|
#: model:ir.model.constraint,message:rma.constraint_rma_split_wizard_check_product_uom_qty_positive
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Quantity must be greater than 0."
|
msgid "Quantity must be greater than 0."
|
||||||
msgstr "Quantidade precisa ser maior que zero."
|
msgstr "Quantidade precisa ser maior que zero."
|
||||||
@@ -958,7 +945,7 @@ msgid "Quantity to extract"
|
|||||||
msgstr "Quantidade a extrair"
|
msgstr "Quantidade a extrair"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:805
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Quantity to extract cannot be greater than remaining delivery quantity (%s "
|
"Quantity to extract cannot be greater than remaining delivery quantity (%s "
|
||||||
@@ -975,7 +962,7 @@ msgstr "Quantidade a extrair para um novo RMA."
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_action
|
#: model:ir.actions.act_window,name:rma.rma_action
|
||||||
#: model:ir.model,name:rma.model_rma
|
#: model:ir.model,name:rma.model_rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_account_invoice_line__rma_id
|
#: model:ir.model.fields,field_description:rma.field_account_move_line__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
||||||
#: model:ir.module.category,name:rma.rma_module_category
|
#: model:ir.module.category,name:rma.rma_module_category
|
||||||
@@ -992,7 +979,7 @@ msgid "RMA #"
|
|||||||
msgstr "RMA #"
|
msgstr "RMA #"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/res_company.py:18
|
#: code:addons/rma/models/res_company.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Code"
|
msgid "RMA Code"
|
||||||
msgstr "Código RMA"
|
msgstr "Código RMA"
|
||||||
@@ -1008,7 +995,7 @@ msgid "RMA Deadline"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:82
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Delivery Orders"
|
msgid "RMA Delivery Orders"
|
||||||
msgstr "Pedidos de Entrega RMA"
|
msgstr "Pedidos de Entrega RMA"
|
||||||
@@ -1046,7 +1033,7 @@ msgid "RMA Out Type"
|
|||||||
msgstr "Tipo Saída RMA"
|
msgstr "Tipo Saída RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:73
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Receipts"
|
msgid "RMA Receipts"
|
||||||
msgstr "Recebimentos RMA"
|
msgstr "Recebimentos RMA"
|
||||||
@@ -1135,7 +1122,8 @@ msgid "Receipt"
|
|||||||
msgstr "Recebimento"
|
msgstr "Recebimento"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__received
|
||||||
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Received"
|
msgid "Received"
|
||||||
msgstr "Recebido"
|
msgstr "Recebido"
|
||||||
|
|
||||||
@@ -1155,7 +1143,7 @@ msgid "Reference of the document that generated this RMA."
|
|||||||
msgstr "Referência do documento que gerou este RMA."
|
msgstr "Referência do documento que gerou este RMA."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:693
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: model:rma.operation,name:rma.rma_operation_refund
|
#: model:rma.operation,name:rma.rma_operation_refund
|
||||||
@@ -1174,7 +1162,7 @@ msgid "Refund line"
|
|||||||
msgstr "Linha de Restituição"
|
msgstr "Linha de Restituição"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__refunded
|
||||||
msgid "Refunded"
|
msgid "Refunded"
|
||||||
msgstr "Restituído"
|
msgstr "Restituído"
|
||||||
|
|
||||||
@@ -1194,8 +1182,8 @@ msgid "Repair"
|
|||||||
msgstr "Reparo"
|
msgstr "Reparo"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__replace
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
#: model:rma.operation,name:rma.rma_operation_replace
|
#: model:rma.operation,name:rma.rma_operation_replace
|
||||||
msgid "Replace"
|
msgid "Replace"
|
||||||
msgstr "Substituir"
|
msgstr "Substituir"
|
||||||
@@ -1206,12 +1194,12 @@ msgid "Replace Product"
|
|||||||
msgstr "Substituir Produto"
|
msgstr "Substituir Produto"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__replaced
|
||||||
msgid "Replaced"
|
msgid "Replaced"
|
||||||
msgstr "Substituído"
|
msgstr "Substituído"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1011
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-id=\"%d"
|
"Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-id=\"%d"
|
||||||
@@ -1223,7 +1211,7 @@ msgstr ""
|
|||||||
"data-oe-id=\"%d\">%s</a> foi criada."
|
"data-oe-id=\"%d\">%s</a> foi criada."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1022
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" "
|
"Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" "
|
||||||
@@ -1247,7 +1235,7 @@ msgid "Requested operation"
|
|||||||
msgstr "Operação Solicitada"
|
msgstr "Operação Solicitada"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:736
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Required field(s):%s"
|
msgid "Required field(s):%s"
|
||||||
msgstr "Campo(s) Solicitado(s):%s"
|
msgstr "Campo(s) Solicitado(s):%s"
|
||||||
@@ -1270,13 +1258,13 @@ msgstr "Retorno de Coleta"
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__return
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
msgid "Return to customer"
|
msgid "Return to customer"
|
||||||
msgstr "Retornar ao cliente"
|
msgstr "Retornar ao cliente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:972
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</"
|
"Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</"
|
||||||
@@ -1286,7 +1274,7 @@ msgstr ""
|
|||||||
"a> foi criado."
|
"a> foi criado."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__returned
|
||||||
msgid "Returned"
|
msgid "Returned"
|
||||||
msgstr "Retornado(a)"
|
msgstr "Retornado(a)"
|
||||||
|
|
||||||
@@ -1295,6 +1283,12 @@ msgstr "Retornado(a)"
|
|||||||
msgid "Rma Count"
|
msgid "Rma Count"
|
||||||
msgstr "Contagem de RMA"
|
msgstr "Contagem de RMA"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_sms_error
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_sms_error
|
||||||
|
msgid "SMS Delivery error"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
||||||
msgid "Scheduled Date"
|
msgid "Scheduled Date"
|
||||||
@@ -1326,13 +1320,13 @@ msgid "Sequence"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:48
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA in"
|
msgid "Sequence RMA in"
|
||||||
msgstr "Sequência de Entrada RMA"
|
msgstr "Sequência de Entrada RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:53
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA out"
|
msgid "Sequence RMA out"
|
||||||
msgstr "Sequência de Saída RMA"
|
msgstr "Sequência de Saída RMA"
|
||||||
@@ -1364,7 +1358,7 @@ msgid "Split RMA"
|
|||||||
msgstr "Dividir RMA"
|
msgstr "Dividir RMA"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:889
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been "
|
"Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been "
|
||||||
@@ -1380,7 +1374,7 @@ msgid "State"
|
|||||||
msgstr "Situação"
|
msgstr "Situação"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:44
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
@@ -1421,7 +1415,7 @@ msgid "Team Members"
|
|||||||
msgstr "Membros da Equipe"
|
msgstr "Membros da Equipe"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: sql_constraint:rma.operation:0
|
#: model:ir.model.constraint,message:rma.constraint_rma_operation_name_uniq
|
||||||
msgid "That operation name already exists !"
|
msgid "That operation name already exists !"
|
||||||
msgstr "Esse nome de operação já existe!"
|
msgstr "Esse nome de operação já existe!"
|
||||||
|
|
||||||
@@ -1459,7 +1453,7 @@ msgstr ""
|
|||||||
"nenhum usuário do sistema for encontrado para esse endereço."
|
"nenhum usuário do sistema for encontrado para esse endereço."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_move.py:64
|
#: code:addons/rma/models/stock_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"The quantity done for the product '%s' must be equal to its initial demand "
|
"The quantity done for the product '%s' must be equal to its initial demand "
|
||||||
@@ -1469,13 +1463,13 @@ msgstr ""
|
|||||||
"inicial, porque a movimentação do estoque está vinculada a uma RMA (%s)."
|
"inicial, porque a movimentação do estoque está vinculada a uma RMA (%s)."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:793
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "The quantity to return is greater than remaining quantity."
|
msgid "The quantity to return is greater than remaining quantity."
|
||||||
msgstr "A quantidade a retornar é maior que a quantidade restante."
|
msgstr "A quantidade a retornar é maior que a quantidade restante."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/account_invoice.py:22
|
#: code:addons/rma/models/account_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"There is at least one invoice lines whose quantity is less than the quantity "
|
"There is at least one invoice lines whose quantity is less than the quantity "
|
||||||
@@ -1485,19 +1479,19 @@ msgstr ""
|
|||||||
"especificada na sua RMA vinculada."
|
"especificada na sua RMA vinculada."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:782
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot be split."
|
msgid "This RMA cannot be split."
|
||||||
msgstr "Esta RMA não pode ser dividida."
|
msgstr "Esta RMA não pode ser dividida."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:769
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a replacement."
|
msgid "This RMA cannot perform a replacement."
|
||||||
msgstr "Esta RMA não pode executar uma substituição."
|
msgstr "Esta RMA não pode executar uma substituição."
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:752
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a return."
|
msgid "This RMA cannot perform a return."
|
||||||
msgstr "Este RMA não pode executar uma devolução."
|
msgstr "Este RMA não pode executar uma devolução."
|
||||||
@@ -1508,11 +1502,6 @@ msgstr "Este RMA não pode executar uma devolução."
|
|||||||
msgid "To Refund"
|
msgid "To Refund"
|
||||||
msgstr "A Ser Restituído"
|
msgstr "A Ser Restituído"
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Today"
|
|
||||||
msgstr "Hoje"
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model,name:rma.model_stock_picking
|
#: model:ir.model,name:rma.model_stock_picking
|
||||||
msgid "Transfer"
|
msgid "Transfer"
|
||||||
@@ -1528,6 +1517,11 @@ msgstr "Tipo"
|
|||||||
msgid "Type of Operation"
|
msgid "Type of Operation"
|
||||||
msgstr "Tipo de Operação"
|
msgstr "Tipo de Operação"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Type of the exception activity on record."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Unassigned RMAs"
|
msgid "Unassigned RMAs"
|
||||||
@@ -1567,7 +1561,7 @@ msgid "UoM"
|
|||||||
msgstr "Unidade de Medida"
|
msgstr "Unidade de Medida"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__2
|
||||||
msgid "Urgent"
|
msgid "Urgent"
|
||||||
msgstr "Urgente"
|
msgstr "Urgente"
|
||||||
|
|
||||||
@@ -1587,17 +1581,17 @@ msgid "Users"
|
|||||||
msgstr "Usuários"
|
msgstr "Usuários"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__3
|
||||||
msgid "Very Urgent"
|
msgid "Very Urgent"
|
||||||
msgstr "Muito Urgente"
|
msgstr "Muito Urgente"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_replacement
|
||||||
msgid "Waiting for replacement"
|
msgid "Waiting for replacement"
|
||||||
msgstr "Aguardando Substituição"
|
msgstr "Aguardando Substituição"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_return
|
||||||
msgid "Waiting for return"
|
msgid "Waiting for return"
|
||||||
msgstr "Aguardando Devolução"
|
msgstr "Aguardando Devolução"
|
||||||
|
|
||||||
@@ -1621,13 +1615,13 @@ msgid "Website communication history"
|
|||||||
msgstr "Histórico de Comunicação Através do Site"
|
msgstr "Histórico de Comunicação Através do Site"
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:516
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You cannot delete RMAs that are not in draft state"
|
msgid "You cannot delete RMAs that are not in draft state"
|
||||||
msgstr "Você não pode apagar RMAs que não estejam na situação \"Rascunho\""
|
msgstr "Você não pode apagar RMAs que não estejam na situação \"Rascunho\""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/stock_picking_return.py:55
|
#: code:addons/rma/wizard/stock_picking_return.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"You must specify the 'Customer' in the 'Stock Picking' from which RMAs will "
|
"You must specify the 'Customer' in the 'Stock Picking' from which RMAs will "
|
||||||
@@ -1636,6 +1630,11 @@ msgstr ""
|
|||||||
"Você deve especificar o 'Cliente' na 'Seleção de estoque' a partir do qual "
|
"Você deve especificar o 'Cliente' na 'Seleção de estoque' a partir do qual "
|
||||||
"as RMAs serão criadas"
|
"as RMAs serão criadas"
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.actions.report,print_report_name:rma.report_rma_action
|
||||||
|
msgid "object._get_report_base_filename()"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:res.groups,comment:rma.rma_group_user_all
|
#: model:res.groups,comment:rma.rma_group_user_all
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -1656,6 +1655,76 @@ msgstr ""
|
|||||||
"o usuário terá acesso à configuração RMA, bem como aos relatórios "
|
"o usuário terá acesso à configuração RMA, bem como aos relatórios "
|
||||||
"estatísticos."
|
"estatísticos."
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
|
#~ "<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
||||||
|
#~ " Dear ${object.partner_id.name}\n"
|
||||||
|
#~ " % if object.partner_id.parent_id:\n"
|
||||||
|
#~ " (${object.partner_id.parent_id.name})\n"
|
||||||
|
#~ " % endif\n"
|
||||||
|
#~ " <br/><br/>\n"
|
||||||
|
#~ " Here is the RMA <strong>${object.name}</strong> from ${object."
|
||||||
|
#~ "company_id.name}.\n"
|
||||||
|
#~ " <br/><br/>\n"
|
||||||
|
#~ " Do not hesitate to contact us if you have any question.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "</div>\n"
|
||||||
|
#~ " "
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
|
#~ "<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
||||||
|
#~ " Dear ${object.partner_id.name}\n"
|
||||||
|
#~ " % if object.partner_id.parent_id:\n"
|
||||||
|
#~ " (${object.partner_id.parent_id.name})\n"
|
||||||
|
#~ " % endif\n"
|
||||||
|
#~ " <br/><br/>\n"
|
||||||
|
#~ " Aqui está o RMA <strong>${object.name}</strong> from ${object."
|
||||||
|
#~ "company_id.name}.\n"
|
||||||
|
#~ " <br/><br/>\n"
|
||||||
|
#~ " Não deixe de nos contactar se houver qualquer dúvida ou outra "
|
||||||
|
#~ "questão.\n"
|
||||||
|
#~ "</p>\n"
|
||||||
|
#~ "</div>\n"
|
||||||
|
#~ " "
|
||||||
|
|
||||||
|
#~ msgid "<i class=\"fa fa-fw fa-check\"/> <b>Paid</b>"
|
||||||
|
#~ msgstr "<i class=\"fa fa-fw fa-check\"/> <b>Pago</b>"
|
||||||
|
|
||||||
|
#~ msgid "<i class=\"fa fa-fw fa-clock-o\"/> <b>Waiting Payment</b>"
|
||||||
|
#~ msgstr "<i class=\"fa fa-fw fa-clock-o\"/> <b>Aguardando Pagamento</b>"
|
||||||
|
|
||||||
|
#~ msgid ""
|
||||||
|
#~ "E-mail subject: %s\n"
|
||||||
|
#~ "\n"
|
||||||
|
#~ "E-mail body:\n"
|
||||||
|
#~ "%s"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "Assunto do E-mail: %s\n"
|
||||||
|
#~ "\n"
|
||||||
|
#~ "Corpo do E-mail:\n"
|
||||||
|
#~ "%s"
|
||||||
|
|
||||||
|
#~ msgid "If checked new messages require your attention."
|
||||||
|
#~ msgstr "Se marcada, novas mensagens requerem sua atenção."
|
||||||
|
|
||||||
|
#~ msgid "Invoice"
|
||||||
|
#~ msgstr "Fatura"
|
||||||
|
|
||||||
|
#~ msgid "Invoice Line"
|
||||||
|
#~ msgstr "Linha da Fatura"
|
||||||
|
|
||||||
|
#~ msgid "Number of error"
|
||||||
|
#~ msgstr "Número de Erros"
|
||||||
|
|
||||||
|
#~ msgid "Overdue"
|
||||||
|
#~ msgstr "Vencidos(as)"
|
||||||
|
|
||||||
|
#~ msgid "Planned"
|
||||||
|
#~ msgstr "Planejado)a)"
|
||||||
|
|
||||||
|
#~ msgid "Today"
|
||||||
|
#~ msgstr "Hoje"
|
||||||
|
|
||||||
#~ msgid "Waiting for refund"
|
#~ msgid "Waiting for refund"
|
||||||
#~ msgstr "Aguardando Restituição"
|
#~ msgstr "Aguardando Restituição"
|
||||||
|
|
||||||
|
|||||||
320
rma/i18n/rma.pot
320
rma/i18n/rma.pot
@@ -1,12 +1,12 @@
|
|||||||
# Translation of Odoo Server.
|
# Translation of Odoo Server.
|
||||||
# This file contains the translation of the following modules:
|
# This file contains the translation of the following modules:
|
||||||
# * rma
|
# * rma
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Odoo Server 12.0\n"
|
"Project-Id-Version: Odoo Server 13.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"Last-Translator: <>\n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -24,15 +24,22 @@ msgid "${object.company_id.name} RMA (Ref ${object.name or 'n/a' })"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma_team.py:46
|
#: code:addons/rma/models/rma_team.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%s (copy)"
|
msgid "%s (copy)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: code:addons/rma/models/rma.py:0
|
||||||
|
#, python-format
|
||||||
|
msgid "<b>E-mail subject:</b> %s<br/><br/><b>E-mail body:</b><br/>%s"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
#: model:mail.template,body_html:rma.mail_template_rma_notification
|
||||||
msgid "<div style=\"margin: 0px; padding: 0px;\">\n"
|
msgid ""
|
||||||
"<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
"<div style=\"margin: 0px; padding: 0px;\">\n"
|
||||||
|
" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n"
|
||||||
" Dear ${object.partner_id.name}\n"
|
" Dear ${object.partner_id.name}\n"
|
||||||
" % if object.partner_id.parent_id:\n"
|
" % if object.partner_id.parent_id:\n"
|
||||||
" (${object.partner_id.parent_id.name})\n"
|
" (${object.partner_id.parent_id.name})\n"
|
||||||
@@ -42,7 +49,7 @@ msgid "<div style=\"margin: 0px; padding: 0px;\">\n"
|
|||||||
" <br/><br/>\n"
|
" <br/><br/>\n"
|
||||||
" Do not hesitate to contact us if you have any question.\n"
|
" Do not hesitate to contact us if you have any question.\n"
|
||||||
"</p>\n"
|
"</p>\n"
|
||||||
"</div>\n"
|
" </div>\n"
|
||||||
" "
|
" "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -53,42 +60,58 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-check\"/> <b>Paid</b>"
|
msgid ""
|
||||||
|
"<i class=\"fa fa-fw fa-check\"/>\n"
|
||||||
|
" <b>Paid</b>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-fw fa-clock-o\"/> <b>Waiting Payment</b>"
|
msgid ""
|
||||||
|
"<i class=\"fa fa-fw fa-clock-o\"/>\n"
|
||||||
|
" <b>Waiting Payment</b>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-pencil-square-o mr-1\" role=\"img\" aria-label=\"Download\" title=\"Download\"/>"
|
msgid ""
|
||||||
|
"<i class=\"fa fa-pencil-square-o mr-1\" role=\"img\" aria-label=\"Download\""
|
||||||
|
" title=\"Download\"/>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<i class=\"fa fa-truck mr-1\" role=\"img\" aria-label=\"Download\" title=\"Download\"/>"
|
msgid ""
|
||||||
|
"<i class=\"fa fa-truck mr-1\" role=\"img\" aria-label=\"Download\" "
|
||||||
|
"title=\"Download\"/>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<span class=\"badge badge-danger label-text-align\"><i class=\"fa fa-fw fa-times\"/> Cancelled</span>"
|
msgid ""
|
||||||
|
"<span class=\"badge badge-danger label-text-align\"><i class=\"fa fa-fw fa-"
|
||||||
|
"times\"/> Cancelled</span>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<span class=\"badge badge-info label-text-align\"><i class=\"fa fa-fw fa-clock-o\"/> Preparation</span>"
|
msgid ""
|
||||||
|
"<span class=\"badge badge-info label-text-align\"><i class=\"fa fa-fw fa-"
|
||||||
|
"clock-o\"/> Preparation</span>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<span class=\"badge badge-success label-text-align\"><i class=\"fa fa-fw fa-truck\"/> Shipped</span>"
|
msgid ""
|
||||||
|
"<span class=\"badge badge-success label-text-align\"><i class=\"fa fa-fw fa-"
|
||||||
|
"truck\"/> Shipped</span>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
#: model_terms:ir.ui.view,arch_db:rma.portal_rma_page
|
||||||
msgid "<span class=\"badge badge-warning label-text-align\"><i class=\"fa fa-fw fa-clock-o\"/> Partially Available</span>"
|
msgid ""
|
||||||
|
"<span class=\"badge badge-warning label-text-align\"><i class=\"fa fa-fw fa-"
|
||||||
|
"clock-o\"/> Partially Available</span>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -209,7 +232,9 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_defaults
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_defaults
|
||||||
msgid "A Python dictionary that will be evaluated to provide default values when creating new records for this alias."
|
msgid ""
|
||||||
|
"A Python dictionary that will be evaluated to provide default values when "
|
||||||
|
"creating new records for this alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -238,6 +263,11 @@ msgstr ""
|
|||||||
msgid "Activities"
|
msgid "Activities"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Activity Exception Decoration"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_state
|
||||||
msgid "Activity State"
|
msgid "Activity State"
|
||||||
@@ -317,7 +347,7 @@ msgid "Cancel"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__cancelled
|
||||||
msgid "Canceled"
|
msgid "Canceled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -359,8 +389,8 @@ msgid "Confirm"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__confirmed
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
#: selection:rma,state:0
|
|
||||||
msgid "Confirmed"
|
msgid "Confirmed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -404,7 +434,7 @@ msgid "Customer Portal URL"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:42
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__date
|
#: model:ir.model.fields,field_description:rma.field_rma__date
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
@@ -474,8 +504,8 @@ msgid "Display Name"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__draft
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
#: selection:rma,state:0
|
|
||||||
msgid "Draft"
|
msgid "Draft"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -485,15 +515,6 @@ msgstr ""
|
|||||||
msgid "Draft RMA"
|
msgid "Draft RMA"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: code:addons/rma/models/rma.py:1098
|
|
||||||
#, python-format
|
|
||||||
msgid "E-mail subject: %s\n"
|
|
||||||
"\n"
|
|
||||||
"E-mail body:\n"
|
|
||||||
"%s"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_team_view_form
|
||||||
msgid "Email"
|
msgid "Email"
|
||||||
@@ -505,7 +526,7 @@ msgid "Email Alias"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_split.py:63
|
#: code:addons/rma/wizard/rma_split.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Extracted RMA"
|
msgid "Extracted RMA"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -549,59 +570,71 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_parent_thread_id
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_parent_thread_id
|
||||||
msgid "ID of the parent record holding the alias (example: project holding the task creation alias)"
|
msgid ""
|
||||||
|
"ID of the parent record holding the alias (example: project holding the task"
|
||||||
|
" creation alias)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
#: model:ir.model.fields,field_description:rma.field_rma__activity_exception_icon
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
msgid "Icon"
|
||||||
msgid "If checked new messages require your attention."
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_icon
|
||||||
|
msgid "Icon to indicate an exception activity."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_unread
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
#: model:ir.model.fields,help:rma.field_rma_team__message_needaction
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_unread
|
||||||
msgid "If checked, new messages require your attention."
|
msgid "If checked, new messages require your attention."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__message_has_sms_error
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_error
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma_team__message_has_sms_error
|
||||||
msgid "If checked, some messages have a delivery error."
|
msgid "If checked, some messages have a delivery error."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__active
|
#: model:ir.model.fields,help:rma.field_rma_team__active
|
||||||
msgid "If the active field is set to false, it will allow you to hide the RMA Team without removing it."
|
msgid ""
|
||||||
|
"If the active field is set to false, it will allow you to hide the RMA Team "
|
||||||
|
"without removing it."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1102
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Incoming e-mail"
|
msgid "Incoming e-mail"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice
|
|
||||||
msgid "Invoice"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
#: model:ir.model.fields,field_description:rma.field_rma__partner_invoice_id
|
||||||
msgid "Invoice Address"
|
msgid "Invoice Address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: model:ir.model,name:rma.model_account_invoice_line
|
|
||||||
msgid "Invoice Line"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma__message_is_follower
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_is_follower
|
||||||
msgid "Is Follower"
|
msgid "Is Follower"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move
|
||||||
|
msgid "Journal Entries"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model,name:rma.model_account_move_line
|
||||||
|
msgid "Journal Item"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma____last_update
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard____last_update
|
||||||
@@ -645,7 +678,7 @@ msgid "Lock"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__locked
|
||||||
msgid "Locked"
|
msgid "Locked"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -678,7 +711,7 @@ msgid "Messages"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:43
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__name
|
#: model:ir.model.fields,field_description:rma.field_rma__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
#: model:ir.model.fields,field_description:rma.field_rma_operation__name
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
#: model:ir.model.fields,field_description:rma.field_rma_team__name
|
||||||
@@ -687,9 +720,8 @@ msgid "Name"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:31
|
#: code:addons/rma/models/rma.py:0 code:addons/rma/models/rma.py:0
|
||||||
#: code:addons/rma/models/rma.py:494
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: code:addons/rma/models/rma.py:1101
|
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "New"
|
msgid "New"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -710,24 +742,24 @@ msgid "Next Activity Type"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:772
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a replacement."
|
msgid "None of the selected RMAs can perform a replacement."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:755
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "None of the selected RMAs can perform a return."
|
msgid "None of the selected RMAs can perform a return."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__1
|
||||||
msgid "Normal"
|
msgid "Normal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__0
|
||||||
msgid "Not urgent"
|
msgid "Not urgent"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -740,7 +772,7 @@ msgstr ""
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_error_counter
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_error_counter
|
||||||
msgid "Number of error"
|
msgid "Number of errors"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -763,7 +795,10 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_force_thread_id
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_force_thread_id
|
||||||
msgid "Optional ID of a thread (record) to which all incoming messages will be attached, even if they did not reply to it. If set, this will disable the creation of new records completely."
|
msgid ""
|
||||||
|
"Optional ID of a thread (record) to which all incoming messages will be "
|
||||||
|
"attached, even if they did not reply to it. If set, this will disable the "
|
||||||
|
"creation of new records completely."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -786,11 +821,6 @@ msgstr ""
|
|||||||
msgid "Other Information"
|
msgid "Other Information"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Overdue"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
#: model:ir.model.fields,field_description:rma.field_rma_team__alias_user_id
|
||||||
msgid "Owner"
|
msgid "Owner"
|
||||||
@@ -808,7 +838,10 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_parent_model_id
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_parent_model_id
|
||||||
msgid "Parent model holding the alias. The model holding the alias reference is not necessarily the model given by alias_model_id (example: project (parent_model) and task (model))"
|
msgid ""
|
||||||
|
"Parent model holding the alias. The model holding the alias reference is not"
|
||||||
|
" necessarily the model given by alias_model_id (example: project "
|
||||||
|
"(parent_model) and task (model))"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -816,18 +849,13 @@ msgstr ""
|
|||||||
msgid "Partner"
|
msgid "Partner"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Planned"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_contact
|
||||||
msgid "Policy to post a message on the document using the mailgateway.\n"
|
msgid ""
|
||||||
|
"Policy to post a message on the document using the mailgateway.\n"
|
||||||
"- everyone: everyone can post\n"
|
"- everyone: everyone can post\n"
|
||||||
"- partners: only authenticated partners\n"
|
"- partners: only authenticated partners\n"
|
||||||
"- followers: only followers of the related document or members of following channels\n"
|
"- followers: only followers of the related document or members of following channels\n"
|
||||||
""
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -868,8 +896,8 @@ msgid "Quantity"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/rma_delivery.py:49
|
#: code:addons/rma/wizard/rma_delivery.py:0
|
||||||
#: sql_constraint:rma.split.wizard:0
|
#: model:ir.model.constraint,message:rma.constraint_rma_split_wizard_check_product_uom_qty_positive
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Quantity must be greater than 0."
|
msgid "Quantity must be greater than 0."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -880,9 +908,11 @@ msgid "Quantity to extract"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:805
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Quantity to extract cannot be greater than remaining delivery quantity (%s %s)"
|
msgid ""
|
||||||
|
"Quantity to extract cannot be greater than remaining delivery quantity (%s "
|
||||||
|
"%s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -893,7 +923,7 @@ msgstr ""
|
|||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_action
|
#: model:ir.actions.act_window,name:rma.rma_action
|
||||||
#: model:ir.model,name:rma.model_rma
|
#: model:ir.model,name:rma.model_rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_account_invoice_line__rma_id
|
#: model:ir.model.fields,field_description:rma.field_account_move_line__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
#: model:ir.model.fields,field_description:rma.field_rma_split_wizard__rma_id
|
||||||
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
#: model:ir.model.fields,field_description:rma.field_stock_warehouse__rma
|
||||||
#: model:ir.module.category,name:rma.rma_module_category
|
#: model:ir.module.category,name:rma.rma_module_category
|
||||||
@@ -910,7 +940,7 @@ msgid "RMA #"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/res_company.py:18
|
#: code:addons/rma/models/res_company.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Code"
|
msgid "RMA Code"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -926,7 +956,7 @@ msgid "RMA Deadline"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:82
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Delivery Orders"
|
msgid "RMA Delivery Orders"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -964,7 +994,7 @@ msgid "RMA Out Type"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:73
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "RMA Receipts"
|
msgid "RMA Receipts"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1053,8 +1083,8 @@ msgid "Receipt"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__received
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
#: selection:rma,state:0
|
|
||||||
msgid "Received"
|
msgid "Received"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1074,7 +1104,7 @@ msgid "Reference of the document that generated this RMA."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:693
|
#: code:addons/rma/models/rma.py:0
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
#: model:ir.model.fields,field_description:rma.field_rma__refund_id
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: model:rma.operation,name:rma.rma_operation_refund
|
#: model:rma.operation,name:rma.rma_operation_refund
|
||||||
@@ -1093,7 +1123,7 @@ msgid "Refund line"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__refunded
|
||||||
msgid "Refunded"
|
msgid "Refunded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1113,8 +1143,8 @@ msgid "Repair"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__replace
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
#: model:rma.operation,name:rma.rma_operation_replace
|
#: model:rma.operation,name:rma.rma_operation_replace
|
||||||
msgid "Replace"
|
msgid "Replace"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1125,20 +1155,27 @@ msgid "Replace Product"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__replaced
|
||||||
msgid "Replaced"
|
msgid "Replaced"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1011
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-id=\"%d\">%s</a> (Picking <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</a>) has been created."
|
msgid ""
|
||||||
|
"Replacement: Move <a href=\"#\" data-oe-model=\"stock.move\" data-oe-"
|
||||||
|
"id=\"%d\">%s</a> (Picking <a href=\"#\" data-oe-model=\"stock.picking\" "
|
||||||
|
"data-oe-id=\"%d\">%s</a>) has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:1022
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" data-oe-id=\"%d\">%s</a><br/>Quantity %f %s<br/>This replacement did not create a new move, but one of the previously created moves was updated with this data."
|
msgid ""
|
||||||
|
"Replacement:<br/>Product <a href=\"#\" data-oe-model=\"product.product\" "
|
||||||
|
"data-oe-id=\"%d\">%s</a><br/>Quantity %f %s<br/>This replacement did not "
|
||||||
|
"create a new move, but one of the previously created moves was updated with "
|
||||||
|
"this data."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -1152,7 +1189,7 @@ msgid "Requested operation"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:736
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Required field(s):%s"
|
msgid "Required field(s):%s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1175,19 +1212,21 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
#: model:ir.actions.act_window,name:rma.rma_delivery_wizard_action
|
||||||
|
#: model:ir.model.fields.selection,name:rma.selection__rma_delivery_wizard__type__return
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_form
|
||||||
#: selection:rma.delivery.wizard,type:0
|
|
||||||
msgid "Return to customer"
|
msgid "Return to customer"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:972
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-id=\"%d\">%s</a> has been created."
|
msgid ""
|
||||||
|
"Return: <a href=\"#\" data-oe-model=\"stock.picking\" data-oe-"
|
||||||
|
"id=\"%d\">%s</a> has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__returned
|
||||||
msgid "Returned"
|
msgid "Returned"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1196,6 +1235,12 @@ msgstr ""
|
|||||||
msgid "Rma Count"
|
msgid "Rma Count"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma__message_has_sms_error
|
||||||
|
#: model:ir.model.fields,field_description:rma.field_rma_team__message_has_sms_error
|
||||||
|
msgid "SMS Delivery error"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
#: model:ir.model.fields,field_description:rma.field_rma_delivery_wizard__scheduled_date
|
||||||
msgid "Scheduled Date"
|
msgid "Scheduled Date"
|
||||||
@@ -1227,13 +1272,13 @@ msgid "Sequence"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:48
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA in"
|
msgid "Sequence RMA in"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_warehouse.py:53
|
#: code:addons/rma/models/stock_warehouse.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Sequence RMA out"
|
msgid "Sequence RMA out"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1265,9 +1310,11 @@ msgid "Split RMA"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:889
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been created."
|
msgid ""
|
||||||
|
"Split: <a href=\"#\" data-oe-model=\"rma\" data-oe-id=\"%d\">%s</a> has been"
|
||||||
|
" created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -1277,7 +1324,7 @@ msgid "State"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/controllers/main.py:44
|
#: code:addons/rma/controllers/main.py:0
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
#: model_terms:ir.ui.view,arch_db:rma.portal_my_rmas
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
@@ -1285,7 +1332,8 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma__activity_state
|
#: model:ir.model.fields,help:rma.field_rma__activity_state
|
||||||
msgid "Status based on activities\n"
|
msgid ""
|
||||||
|
"Status based on activities\n"
|
||||||
"Overdue: Due date is already passed\n"
|
"Overdue: Due date is already passed\n"
|
||||||
"Today: Activity date is today\n"
|
"Today: Activity date is today\n"
|
||||||
"Planned: Future activities."
|
"Planned: Future activities."
|
||||||
@@ -1313,57 +1361,70 @@ msgid "Team Members"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: sql_constraint:rma.operation:0
|
#: model:ir.model.constraint,message:rma.constraint_rma_operation_name_uniq
|
||||||
msgid "That operation name already exists !"
|
msgid "That operation name already exists !"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_model_id
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_model_id
|
||||||
msgid "The model (Odoo Document Kind) to which this alias corresponds. Any incoming email that does not reply to an existing record will cause the creation of a new record of this model (e.g. a Project Task)"
|
msgid ""
|
||||||
|
"The model (Odoo Document Kind) to which this alias corresponds. Any incoming"
|
||||||
|
" email that does not reply to an existing record will cause the creation of "
|
||||||
|
"a new record of this model (e.g. a Project Task)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_name
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_name
|
||||||
msgid "The name of the email alias, e.g. 'jobs' if you want to catch emails for <jobs@example.odoo.com>"
|
msgid ""
|
||||||
|
"The name of the email alias, e.g. 'jobs' if you want to catch emails for "
|
||||||
|
"<jobs@example.odoo.com>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model.fields,help:rma.field_rma_team__alias_user_id
|
#: model:ir.model.fields,help:rma.field_rma_team__alias_user_id
|
||||||
msgid "The owner of records created upon receiving emails on this alias. If this field is not set the system will attempt to find the right owner based on the sender (From) address, or will use the Administrator account if no system user is found for that address."
|
msgid ""
|
||||||
|
"The owner of records created upon receiving emails on this alias. If this "
|
||||||
|
"field is not set the system will attempt to find the right owner based on "
|
||||||
|
"the sender (From) address, or will use the Administrator account if no "
|
||||||
|
"system user is found for that address."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/stock_move.py:64
|
#: code:addons/rma/models/stock_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "The quantity done for the product '%s' must be equal to its initial demand because the stock move is linked to an RMA (%s)."
|
msgid ""
|
||||||
|
"The quantity done for the product '%s' must be equal to its initial demand "
|
||||||
|
"because the stock move is linked to an RMA (%s)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:793
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "The quantity to return is greater than remaining quantity."
|
msgid "The quantity to return is greater than remaining quantity."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/account_invoice.py:22
|
#: code:addons/rma/models/account_move.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "There is at least one invoice lines whose quantity is less than the quantity specified in its linked RMA."
|
msgid ""
|
||||||
|
"There is at least one invoice lines whose quantity is less than the quantity"
|
||||||
|
" specified in its linked RMA."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:782
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot be split."
|
msgid "This RMA cannot be split."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:769
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a replacement."
|
msgid "This RMA cannot perform a replacement."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:752
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This RMA cannot perform a return."
|
msgid "This RMA cannot perform a return."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1374,11 +1435,6 @@ msgstr ""
|
|||||||
msgid "To Refund"
|
msgid "To Refund"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
|
||||||
#: selection:rma,activity_state:0
|
|
||||||
msgid "Today"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:ir.model,name:rma.model_stock_picking
|
#: model:ir.model,name:rma.model_stock_picking
|
||||||
msgid "Transfer"
|
msgid "Transfer"
|
||||||
@@ -1394,6 +1450,11 @@ msgstr ""
|
|||||||
msgid "Type of Operation"
|
msgid "Type of Operation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.model.fields,help:rma.field_rma__activity_exception_decoration
|
||||||
|
msgid "Type of the exception activity on record."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
#: model_terms:ir.ui.view,arch_db:rma.rma_view_search
|
||||||
msgid "Unassigned RMAs"
|
msgid "Unassigned RMAs"
|
||||||
@@ -1433,7 +1494,7 @@ msgid "UoM"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__2
|
||||||
msgid "Urgent"
|
msgid "Urgent"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1453,17 +1514,17 @@ msgid "Users"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,priority:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__priority__3
|
||||||
msgid "Very Urgent"
|
msgid "Very Urgent"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_replacement
|
||||||
msgid "Waiting for replacement"
|
msgid "Waiting for replacement"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: selection:rma,state:0
|
#: model:ir.model.fields.selection,name:rma.selection__rma__state__waiting_return
|
||||||
msgid "Waiting for return"
|
msgid "Waiting for return"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1487,20 +1548,28 @@ msgid "Website communication history"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/models/rma.py:516
|
#: code:addons/rma/models/rma.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You cannot delete RMAs that are not in draft state"
|
msgid "You cannot delete RMAs that are not in draft state"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: code:addons/rma/wizard/stock_picking_return.py:55
|
#: code:addons/rma/wizard/stock_picking_return.py:0
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "You must specify the 'Customer' in the 'Stock Picking' from which RMAs will be created"
|
msgid ""
|
||||||
|
"You must specify the 'Customer' in the 'Stock Picking' from which RMAs will "
|
||||||
|
"be created"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#. module: rma
|
||||||
|
#: model:ir.actions.report,print_report_name:rma.report_rma_action
|
||||||
|
msgid "object._get_report_base_filename()"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:res.groups,comment:rma.rma_group_user_all
|
#: model:res.groups,comment:rma.rma_group_user_all
|
||||||
msgid "the user will have access to all records of everyone in the RMA application."
|
msgid ""
|
||||||
|
"the user will have access to all records of everyone in the RMA application."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
@@ -1510,6 +1579,7 @@ msgstr ""
|
|||||||
|
|
||||||
#. module: rma
|
#. module: rma
|
||||||
#: model:res.groups,comment:rma.rma_group_manager
|
#: model:res.groups,comment:rma.rma_group_manager
|
||||||
msgid "the user will have an access to the RMA configuration as well as statistic reports."
|
msgid ""
|
||||||
|
"the user will have an access to the RMA configuration as well as statistic "
|
||||||
|
"reports."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
# Copyright 2020 Tecnativa - David Vidal
|
|
||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
|
||||||
from openupgradelib import openupgrade
|
|
||||||
|
|
||||||
|
|
||||||
@openupgrade.migrate()
|
|
||||||
def migrate(env, version):
|
|
||||||
# Convert Text description field to Html
|
|
||||||
openupgrade.convert_field_to_html(env.cr, "rma", "description", "description")
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from . import account_invoice
|
from . import account_move
|
||||||
from . import rma
|
from . import rma
|
||||||
from . import rma_operation
|
from . import rma_operation
|
||||||
from . import rma_team
|
from . import rma_team
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ from odoo.exceptions import ValidationError
|
|||||||
from odoo.tools import float_compare
|
from odoo.tools import float_compare
|
||||||
|
|
||||||
|
|
||||||
class AccountInvoice(models.Model):
|
class AccountMove(models.Model):
|
||||||
_inherit = "account.invoice"
|
_inherit = "account.move"
|
||||||
|
|
||||||
def action_invoice_open(self):
|
def post(self):
|
||||||
""" Avoids to validate a refund with less quantity of product than
|
""" Avoids to validate a refund with less quantity of product than
|
||||||
quantity in the linked RMA.
|
quantity in the linked RMA.
|
||||||
"""
|
"""
|
||||||
@@ -33,7 +33,7 @@ class AccountInvoice(models.Model):
|
|||||||
"less than the quantity specified in its linked RMA."
|
"less than the quantity specified in its linked RMA."
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
return super().action_invoice_open()
|
return super().post()
|
||||||
|
|
||||||
def unlink(self):
|
def unlink(self):
|
||||||
rma = self.mapped("invoice_line_ids.rma_id")
|
rma = self.mapped("invoice_line_ids.rma_id")
|
||||||
@@ -41,7 +41,7 @@ class AccountInvoice(models.Model):
|
|||||||
return super().unlink()
|
return super().unlink()
|
||||||
|
|
||||||
|
|
||||||
class AccountInvoiceLine(models.Model):
|
class AccountMoveLine(models.Model):
|
||||||
_inherit = "account.invoice.line"
|
_inherit = "account.move.line"
|
||||||
|
|
||||||
rma_id = fields.Many2one(comodel_name="rma", string="RMA",)
|
rma_id = fields.Many2one(comodel_name="rma", string="RMA",)
|
||||||
@@ -16,9 +16,7 @@ class ResPartner(models.Model):
|
|||||||
rma_data = self.env["rma"].read_group(
|
rma_data = self.env["rma"].read_group(
|
||||||
[("partner_id", "in", self.ids)], ["partner_id"], ["partner_id"]
|
[("partner_id", "in", self.ids)], ["partner_id"], ["partner_id"]
|
||||||
)
|
)
|
||||||
mapped_data = {
|
mapped_data = {r["partner_id"][0]: r["partner_id_count"] for r in rma_data}
|
||||||
r["partner_id"][0]: r["partner_id_count"] for r in rma_data
|
|
||||||
}
|
|
||||||
for record in self:
|
for record in self:
|
||||||
record.rma_count = mapped_data.get(record.id, 0)
|
record.rma_count = mapped_data.get(record.id, 0)
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ from odoo.exceptions import ValidationError
|
|||||||
from odoo.tests import Form
|
from odoo.tests import Form
|
||||||
from odoo.tools import html2plaintext
|
from odoo.tools import html2plaintext
|
||||||
|
|
||||||
import odoo.addons.decimal_precision as dp
|
|
||||||
from odoo.addons.stock.models.stock_move import PROCUREMENT_PRIORITIES
|
from odoo.addons.stock.models.stock_move import PROCUREMENT_PRIORITIES
|
||||||
|
|
||||||
|
|
||||||
@@ -34,7 +33,7 @@ class Rma(models.Model):
|
|||||||
)
|
)
|
||||||
origin = fields.Char(
|
origin = fields.Char(
|
||||||
string="Source Document",
|
string="Source Document",
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
help="Reference of the document that generated this RMA.",
|
help="Reference of the document that generated this RMA.",
|
||||||
)
|
)
|
||||||
date = fields.Datetime(
|
date = fields.Datetime(
|
||||||
@@ -45,24 +44,26 @@ class Rma(models.Model):
|
|||||||
states={"draft": [("readonly", False)]},
|
states={"draft": [("readonly", False)]},
|
||||||
)
|
)
|
||||||
deadline = fields.Date(
|
deadline = fields.Date(
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
)
|
)
|
||||||
user_id = fields.Many2one(
|
user_id = fields.Many2one(
|
||||||
comodel_name="res.users",
|
comodel_name="res.users",
|
||||||
string="Responsible",
|
string="Responsible",
|
||||||
track_visibility="always",
|
index=True,
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
default=lambda self: self.env.user,
|
||||||
|
tracking=True,
|
||||||
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
)
|
)
|
||||||
team_id = fields.Many2one(
|
team_id = fields.Many2one(
|
||||||
comodel_name="rma.team",
|
comodel_name="rma.team",
|
||||||
string="RMA team",
|
string="RMA team",
|
||||||
index=True,
|
index=True,
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
)
|
)
|
||||||
company_id = fields.Many2one(
|
company_id = fields.Many2one(
|
||||||
comodel_name="res.company",
|
comodel_name="res.company",
|
||||||
default=lambda self: self.env.user.company_id,
|
default=lambda self: self.env.company,
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
)
|
)
|
||||||
partner_id = fields.Many2one(
|
partner_id = fields.Many2one(
|
||||||
string="Customer",
|
string="Customer",
|
||||||
@@ -70,14 +71,14 @@ class Rma(models.Model):
|
|||||||
readonly=True,
|
readonly=True,
|
||||||
states={"draft": [("readonly", False)]},
|
states={"draft": [("readonly", False)]},
|
||||||
index=True,
|
index=True,
|
||||||
track_visibility="always",
|
tracking=True,
|
||||||
)
|
)
|
||||||
partner_invoice_id = fields.Many2one(
|
partner_invoice_id = fields.Many2one(
|
||||||
string="Invoice Address",
|
string="Invoice Address",
|
||||||
comodel_name="res.partner",
|
comodel_name="res.partner",
|
||||||
readonly=True,
|
readonly=True,
|
||||||
states={"draft": [("readonly", False)]},
|
states={"draft": [("readonly", False)]},
|
||||||
domain=[("customer", "=", True)],
|
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]",
|
||||||
help="Refund address for current RMA.",
|
help="Refund address for current RMA.",
|
||||||
)
|
)
|
||||||
commercial_partner_id = fields.Many2one(
|
commercial_partner_id = fields.Many2one(
|
||||||
@@ -111,7 +112,7 @@ class Rma(models.Model):
|
|||||||
string="Quantity",
|
string="Quantity",
|
||||||
required=True,
|
required=True,
|
||||||
default=1.0,
|
default=1.0,
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
readonly=True,
|
readonly=True,
|
||||||
states={"draft": [("readonly", False)]},
|
states={"draft": [("readonly", False)]},
|
||||||
)
|
)
|
||||||
@@ -158,10 +159,10 @@ class Rma(models.Model):
|
|||||||
],
|
],
|
||||||
default="draft",
|
default="draft",
|
||||||
copy=False,
|
copy=False,
|
||||||
track_visibility="onchange",
|
tracking=True,
|
||||||
)
|
)
|
||||||
description = fields.Html(
|
description = fields.Html(
|
||||||
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)],},
|
states={"locked": [("readonly", True)], "cancelled": [("readonly", True)]},
|
||||||
)
|
)
|
||||||
# Reception fields
|
# Reception fields
|
||||||
location_id = fields.Many2one(
|
location_id = fields.Many2one(
|
||||||
@@ -178,10 +179,10 @@ class Rma(models.Model):
|
|||||||
)
|
)
|
||||||
# Refund fields
|
# Refund fields
|
||||||
refund_id = fields.Many2one(
|
refund_id = fields.Many2one(
|
||||||
comodel_name="account.invoice", string="Refund", readonly=True, copy=False,
|
comodel_name="account.move", string="Refund", readonly=True, copy=False,
|
||||||
)
|
)
|
||||||
refund_line_id = fields.Many2one(
|
refund_line_id = fields.Many2one(
|
||||||
comodel_name="account.invoice.line",
|
comodel_name="account.move.line",
|
||||||
string="Refund line",
|
string="Refund line",
|
||||||
readonly=True,
|
readonly=True,
|
||||||
copy=False,
|
copy=False,
|
||||||
@@ -200,26 +201,27 @@ class Rma(models.Model):
|
|||||||
)
|
)
|
||||||
delivered_qty = fields.Float(
|
delivered_qty = fields.Float(
|
||||||
string="Delivered qty",
|
string="Delivered qty",
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
compute="_compute_delivered_qty",
|
compute="_compute_delivered_qty",
|
||||||
store=True,
|
store=True,
|
||||||
)
|
)
|
||||||
delivered_qty_done = fields.Float(
|
delivered_qty_done = fields.Float(
|
||||||
string="Delivered qty done",
|
string="Delivered qty done",
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
compute="_compute_delivered_qty",
|
compute="_compute_delivered_qty",
|
||||||
|
compute_sudo=True,
|
||||||
)
|
)
|
||||||
can_be_returned = fields.Boolean(compute="_compute_can_be_returned",)
|
can_be_returned = fields.Boolean(compute="_compute_can_be_returned",)
|
||||||
can_be_replaced = fields.Boolean(compute="_compute_can_be_replaced",)
|
can_be_replaced = fields.Boolean(compute="_compute_can_be_replaced",)
|
||||||
can_be_locked = fields.Boolean(compute="_compute_can_be_locked",)
|
can_be_locked = fields.Boolean(compute="_compute_can_be_locked",)
|
||||||
remaining_qty = fields.Float(
|
remaining_qty = fields.Float(
|
||||||
string="Remaining delivered qty",
|
string="Remaining delivered qty",
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
compute="_compute_remaining_qty",
|
compute="_compute_remaining_qty",
|
||||||
)
|
)
|
||||||
remaining_qty_to_done = fields.Float(
|
remaining_qty_to_done = fields.Float(
|
||||||
string="Remaining delivered qty to done",
|
string="Remaining delivered qty to done",
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
compute="_compute_remaining_qty",
|
compute="_compute_remaining_qty",
|
||||||
)
|
)
|
||||||
# Split fields
|
# Split fields
|
||||||
@@ -457,7 +459,7 @@ class Rma(models.Model):
|
|||||||
and not self.location_id
|
and not self.location_id
|
||||||
):
|
):
|
||||||
# If this condition is True, it is because a picking is not set
|
# If this condition is True, it is because a picking is not set
|
||||||
company = self.company_id or self.env.user.company_id
|
company = self.company_id or self.env.company
|
||||||
warehouse = self.env["stock.warehouse"].search(
|
warehouse = self.env["stock.warehouse"].search(
|
||||||
[("company_id", "=", company.id)], limit=1
|
[("company_id", "=", company.id)], limit=1
|
||||||
)
|
)
|
||||||
@@ -465,19 +467,21 @@ class Rma(models.Model):
|
|||||||
return {"domain": {"product_uom": domain_product_uom}}
|
return {"domain": {"product_uom": domain_product_uom}}
|
||||||
|
|
||||||
# CRUD methods (ORM overrides)
|
# CRUD methods (ORM overrides)
|
||||||
@api.model
|
@api.model_create_multi
|
||||||
def create(self, vals):
|
def create(self, vals_list):
|
||||||
if vals.get("name", _("New")) == _("New"):
|
for vals in vals_list:
|
||||||
ir_sequence = self.env["ir.sequence"]
|
if vals.get("name", _("New")) == _("New"):
|
||||||
if "company_id" in vals:
|
ir_sequence = self.env["ir.sequence"]
|
||||||
ir_sequence = ir_sequence.with_context(force_company=vals["company_id"])
|
if "company_id" in vals:
|
||||||
vals["name"] = ir_sequence.next_by_code("rma")
|
ir_sequence = ir_sequence.with_context(
|
||||||
# Assign a default team_id which will be the first in the sequence
|
force_company=vals["company_id"]
|
||||||
if "team_id" not in vals:
|
)
|
||||||
vals["team_id"] = self.env["rma.team"].search([], limit=1).id
|
vals["name"] = ir_sequence.next_by_code("rma")
|
||||||
return super().create(vals)
|
# Assign a default team_id which will be the first in the sequence
|
||||||
|
if "team_id" not in vals:
|
||||||
|
vals["team_id"] = self.env["rma.team"].search([], limit=1).id
|
||||||
|
return super().create(vals_list)
|
||||||
|
|
||||||
@api.multi
|
|
||||||
def copy(self, default=None):
|
def copy(self, default=None):
|
||||||
team = super().copy(default)
|
team = super().copy(default)
|
||||||
for follower in self.message_follower_ids:
|
for follower in self.message_follower_ids:
|
||||||
@@ -529,9 +533,7 @@ class Rma(models.Model):
|
|||||||
reception_move = self._create_receptions_from_picking()
|
reception_move = self._create_receptions_from_picking()
|
||||||
else:
|
else:
|
||||||
reception_move = self._create_receptions_from_product()
|
reception_move = self._create_receptions_from_product()
|
||||||
self.write(
|
self.write({"reception_move_id": reception_move.id, "state": "confirmed"})
|
||||||
{"reception_move_id": reception_move.id, "state": "confirmed",}
|
|
||||||
)
|
|
||||||
if self.partner_id not in self.message_partner_ids:
|
if self.partner_id not in self.message_partner_ids:
|
||||||
self.message_subscribe([self.partner_id.id])
|
self.message_subscribe([self.partner_id.id])
|
||||||
|
|
||||||
@@ -547,24 +549,24 @@ class Rma(models.Model):
|
|||||||
for rmas in group_dict.values():
|
for rmas in group_dict.values():
|
||||||
origin = ", ".join(rmas.mapped("name"))
|
origin = ", ".join(rmas.mapped("name"))
|
||||||
invoice_form = Form(
|
invoice_form = Form(
|
||||||
self.env["account.invoice"].with_context(
|
self.env["account.move"].with_context(
|
||||||
default_type="out_refund", company_id=rmas[0].company_id.id,
|
default_type="out_refund", company_id=rmas[0].company_id.id,
|
||||||
),
|
),
|
||||||
"account.invoice_form",
|
"account.view_move_form",
|
||||||
)
|
)
|
||||||
rmas[0]._prepare_refund(invoice_form, origin)
|
rmas[0]._prepare_refund(invoice_form, origin)
|
||||||
refund = invoice_form.save()
|
refund = invoice_form.save()
|
||||||
for rma in rmas:
|
for rma in rmas:
|
||||||
|
# For each iteration the Form is edited, a new invoice line
|
||||||
|
# is added and then saved. This is to generate the other
|
||||||
|
# lines of the accounting entry and to specify the associated
|
||||||
|
# RMA to that new invoice line.
|
||||||
|
invoice_form = Form(refund)
|
||||||
with invoice_form.invoice_line_ids.new() as line_form:
|
with invoice_form.invoice_line_ids.new() as line_form:
|
||||||
rma._prepare_refund_line(line_form)
|
rma._prepare_refund_line(line_form)
|
||||||
# rma_id is not present in the form view, so we need to get
|
refund = invoice_form.save()
|
||||||
# the 'values to save' to add the rma id and use the
|
line = refund.invoice_line_ids.filtered(lambda r: not r.rma_id)
|
||||||
# create method instead of save the form. We also need
|
line.rma_id = rma.id
|
||||||
# the new refund line id to be linked to the rma.
|
|
||||||
refund_vals = invoice_form._values_to_save(all_fields=True)
|
|
||||||
line_vals = refund_vals["invoice_line_ids"][-1][2]
|
|
||||||
line_vals.update(invoice_id=refund.id, rma_id=rma.id)
|
|
||||||
line = self.env["account.invoice.line"].create(line_vals)
|
|
||||||
rma.write(
|
rma.write(
|
||||||
{
|
{
|
||||||
"refund_line_id": line.id,
|
"refund_line_id": line.id,
|
||||||
@@ -572,6 +574,7 @@ class Rma(models.Model):
|
|||||||
"state": "refunded",
|
"state": "refunded",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
refund.invoice_origin = origin
|
||||||
refund.message_post_with_view(
|
refund.message_post_with_view(
|
||||||
"mail.message_origin_link",
|
"mail.message_origin_link",
|
||||||
values={"self": refund, "origin": rmas},
|
values={"self": refund, "origin": rmas},
|
||||||
@@ -683,8 +686,8 @@ class Rma(models.Model):
|
|||||||
"type": "ir.actions.act_window",
|
"type": "ir.actions.act_window",
|
||||||
"view_type": "form",
|
"view_type": "form",
|
||||||
"view_mode": "form",
|
"view_mode": "form",
|
||||||
"res_model": "account.invoice",
|
"res_model": "account.move",
|
||||||
"views": [(self.env.ref("account.invoice_form").id, "form")],
|
"views": [(self.env.ref("account.view_move_form").id, "form")],
|
||||||
"res_id": self.refund_id.id,
|
"res_id": self.refund_id.id,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -800,12 +803,15 @@ class Rma(models.Model):
|
|||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
create_vals = {}
|
create_vals = {}
|
||||||
if self.location_id:
|
if self.location_id:
|
||||||
create_vals["location_id"] = self.location_id.id
|
create_vals.update(
|
||||||
|
location_id=self.location_id.id, picking_id=self.picking_id.id,
|
||||||
|
)
|
||||||
return_wizard = (
|
return_wizard = (
|
||||||
self.env["stock.return.picking"]
|
self.env["stock.return.picking"]
|
||||||
.with_context(active_id=self.picking_id.id, active_ids=self.picking_id.ids,)
|
.with_context(active_id=self.picking_id.id, active_ids=self.picking_id.ids,)
|
||||||
.create(create_vals)
|
.create(create_vals)
|
||||||
)
|
)
|
||||||
|
return_wizard._onchange_picking_id()
|
||||||
return_wizard.product_return_moves.filtered(
|
return_wizard.product_return_moves.filtered(
|
||||||
lambda r: r.move_id != self.move_id
|
lambda r: r.move_id != self.move_id
|
||||||
).unlink()
|
).unlink()
|
||||||
@@ -843,7 +849,6 @@ class Rma(models.Model):
|
|||||||
return picking.move_lines
|
return picking.move_lines
|
||||||
|
|
||||||
def _prepare_picking(self, picking_form):
|
def _prepare_picking(self, picking_form):
|
||||||
picking_form.company_id = self.company_id
|
|
||||||
picking_form.origin = self.name
|
picking_form.origin = self.name
|
||||||
picking_form.partner_id = self.partner_id
|
picking_form.partner_id = self.partner_id
|
||||||
picking_form.location_dest_id = self.location_id
|
picking_form.location_dest_id = self.location_id
|
||||||
@@ -898,9 +903,7 @@ class Rma(models.Model):
|
|||||||
rma.action_refund
|
rma.action_refund
|
||||||
"""
|
"""
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
invoice_form.company_id = self.company_id
|
|
||||||
invoice_form.partner_id = self.partner_invoice_id
|
invoice_form.partner_id = self.partner_invoice_id
|
||||||
invoice_form.origin = origin
|
|
||||||
|
|
||||||
def _prepare_refund_line(self, line_form):
|
def _prepare_refund_line(self, line_form):
|
||||||
""" Hook method for preparing a refund line Form.
|
""" Hook method for preparing a refund line Form.
|
||||||
@@ -914,7 +917,7 @@ class Rma(models.Model):
|
|||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
line_form.product_id = self.product_id
|
line_form.product_id = self.product_id
|
||||||
line_form.quantity = self.product_uom_qty
|
line_form.quantity = self.product_uom_qty
|
||||||
line_form.uom_id = self.product_uom
|
line_form.product_uom_id = self.product_uom
|
||||||
line_form.price_unit = self._get_refund_line_price_unit()
|
line_form.price_unit = self._get_refund_line_price_unit()
|
||||||
|
|
||||||
def _get_refund_line_price_unit(self):
|
def _get_refund_line_price_unit(self):
|
||||||
@@ -928,7 +931,8 @@ class Rma(models.Model):
|
|||||||
self._ensure_can_be_returned()
|
self._ensure_can_be_returned()
|
||||||
self._ensure_qty_to_return(qty, uom)
|
self._ensure_qty_to_return(qty, uom)
|
||||||
group_dict = {}
|
group_dict = {}
|
||||||
for record in self.filtered("can_be_returned"):
|
rmas_to_return = self.filtered("can_be_returned")
|
||||||
|
for record in rmas_to_return:
|
||||||
key = (record.partner_id.id, record.company_id.id, record.warehouse_id)
|
key = (record.partner_id.id, record.company_id.id, record.warehouse_id)
|
||||||
group_dict.setdefault(key, self.env["rma"])
|
group_dict.setdefault(key, self.env["rma"])
|
||||||
group_dict[key] |= record
|
group_dict[key] |= record
|
||||||
@@ -972,11 +976,10 @@ class Rma(models.Model):
|
|||||||
values={"self": picking, "origin": rmas},
|
values={"self": picking, "origin": rmas},
|
||||||
subtype_id=self.env.ref("mail.mt_note").id,
|
subtype_id=self.env.ref("mail.mt_note").id,
|
||||||
)
|
)
|
||||||
self.write({"state": "waiting_return"})
|
rmas_to_return.write({"state": "waiting_return"})
|
||||||
|
|
||||||
def _prepare_returning_picking(self, picking_form, origin=None):
|
def _prepare_returning_picking(self, picking_form, origin=None):
|
||||||
picking_form.picking_type_id = self.warehouse_id.rma_out_type_id
|
picking_form.picking_type_id = self.warehouse_id.rma_out_type_id
|
||||||
picking_form.company_id = self.company_id
|
|
||||||
picking_form.origin = origin or self.name
|
picking_form.origin = origin or self.name
|
||||||
picking_form.partner_id = self.partner_id
|
picking_form.partner_id = self.partner_id
|
||||||
|
|
||||||
@@ -1052,15 +1055,18 @@ class Rma(models.Model):
|
|||||||
values = self._prepare_procurement_values(
|
values = self._prepare_procurement_values(
|
||||||
self.procurement_group_id, scheduled_date, warehouse
|
self.procurement_group_id, scheduled_date, warehouse
|
||||||
)
|
)
|
||||||
self.env["procurement.group"].run(
|
procurement = self.env["procurement.group"].Procurement(
|
||||||
product,
|
product,
|
||||||
qty,
|
qty,
|
||||||
uom,
|
uom,
|
||||||
self.partner_id.property_stock_customer,
|
self.partner_id.property_stock_customer,
|
||||||
self.product_id.display_name,
|
self.product_id.display_name,
|
||||||
self.procurement_group_id.name,
|
self.procurement_group_id.name,
|
||||||
|
self.company_id,
|
||||||
values,
|
values,
|
||||||
)
|
)
|
||||||
|
self.env["procurement.group"].run([procurement])
|
||||||
|
return True
|
||||||
|
|
||||||
def _prepare_procurement_values(
|
def _prepare_procurement_values(
|
||||||
self, group_id, scheduled_date, warehouse,
|
self, group_id, scheduled_date, warehouse,
|
||||||
@@ -1077,11 +1083,11 @@ class Rma(models.Model):
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Mail business methods
|
# Mail business methods
|
||||||
def _track_subtype(self, init_values):
|
def _creation_subtype(self):
|
||||||
self.ensure_one()
|
if self.state in ("draft", "confirmed"):
|
||||||
if "state" in init_values and self.state == "draft":
|
return self.env.ref("rma.mt_rma_draft")
|
||||||
return "rma.mt_rma_draft"
|
else:
|
||||||
return super()._track_subtype(init_values)
|
return super()._creation_subtype()
|
||||||
|
|
||||||
def message_new(self, msg_dict, custom_values=None):
|
def message_new(self, msg_dict, custom_values=None):
|
||||||
"""Extract the needed values from an incoming rma emails data-set
|
"""Extract the needed values from an incoming rma emails data-set
|
||||||
@@ -1091,7 +1097,10 @@ class Rma(models.Model):
|
|||||||
custom_values = {}
|
custom_values = {}
|
||||||
subject = msg_dict.get("subject", "")
|
subject = msg_dict.get("subject", "")
|
||||||
body = html2plaintext(msg_dict.get("body", ""))
|
body = html2plaintext(msg_dict.get("body", ""))
|
||||||
desc = _("E-mail subject: %s\n\nE-mail body:\n%s") % (subject, body)
|
desc = _("<b>E-mail subject:</b> %s<br/><br/><b>E-mail body:</b><br/>%s") % (
|
||||||
|
subject,
|
||||||
|
body,
|
||||||
|
)
|
||||||
defaults = {
|
defaults = {
|
||||||
"description": desc,
|
"description": desc,
|
||||||
"name": _("New"),
|
"name": _("New"),
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from odoo import _, api, fields, models
|
from odoo import _, fields, models
|
||||||
|
|
||||||
|
|
||||||
class RmaTeam(models.Model):
|
class RmaTeam(models.Model):
|
||||||
@@ -20,7 +20,7 @@ class RmaTeam(models.Model):
|
|||||||
company_id = fields.Many2one(
|
company_id = fields.Many2one(
|
||||||
comodel_name="res.company",
|
comodel_name="res.company",
|
||||||
string="Company",
|
string="Company",
|
||||||
default=lambda self: self.env.user.company_id,
|
default=lambda self: self.env.company,
|
||||||
)
|
)
|
||||||
user_id = fields.Many2one(
|
user_id = fields.Many2one(
|
||||||
comodel_name="res.users",
|
comodel_name="res.users",
|
||||||
@@ -32,7 +32,6 @@ class RmaTeam(models.Model):
|
|||||||
comodel_name="res.users", inverse_name="rma_team_id", string="Team Members",
|
comodel_name="res.users", inverse_name="rma_team_id", string="Team Members",
|
||||||
)
|
)
|
||||||
|
|
||||||
@api.multi
|
|
||||||
def copy(self, default=None):
|
def copy(self, default=None):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
if default is None:
|
if default is None:
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ class StockMove(models.Model):
|
|||||||
cancelled_moves.mapped("rma_id").update_replaced_state()
|
cancelled_moves.mapped("rma_id").update_replaced_state()
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def _action_done(self):
|
def _action_done(self, cancel_backorder=False):
|
||||||
""" Avoids to validate stock.move with less quantity than the
|
""" Avoids to validate stock.move with less quantity than the
|
||||||
quantity in the linked receiver RMA. It also set the appropriated
|
quantity in the linked receiver RMA. It also set the appropriated
|
||||||
linked RMA to 'received' or 'delivered'.
|
linked RMA to 'received' or 'delivered'.
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from odoo import api, fields, models
|
from odoo import fields, models
|
||||||
|
|
||||||
|
|
||||||
class StockPicking(models.Model):
|
class StockPicking(models.Model):
|
||||||
@@ -13,7 +13,6 @@ class StockPicking(models.Model):
|
|||||||
for rec in self:
|
for rec in self:
|
||||||
rec.rma_count = len(rec.move_lines.mapped("rma_ids"))
|
rec.rma_count = len(rec.move_lines.mapped("rma_ids"))
|
||||||
|
|
||||||
@api.multi
|
|
||||||
def copy(self, default=None):
|
def copy(self, default=None):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
if self.env.context.get("set_rma_picking_type"):
|
if self.env.context.get("set_rma_picking_type"):
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
# Copyright 2020 Tecnativa - Ernesto Tejeda
|
||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from odoo import _, fields, models
|
from odoo import _, api, fields, models
|
||||||
|
|
||||||
|
|
||||||
class StockWarehouse(models.Model):
|
class StockWarehouse(models.Model):
|
||||||
@@ -23,21 +23,33 @@ class StockWarehouse(models.Model):
|
|||||||
)
|
)
|
||||||
rma_loc_id = fields.Many2one(comodel_name="stock.location", string="RMA Location",)
|
rma_loc_id = fields.Many2one(comodel_name="stock.location", string="RMA Location",)
|
||||||
|
|
||||||
def _get_locations_values(self, vals):
|
@api.model_create_multi
|
||||||
values = super()._get_locations_values(vals)
|
def create(self, vals_list):
|
||||||
values.update(
|
""" To create an RMA location and link it with a new warehouse,
|
||||||
{
|
this method is overridden instead of '_get_locations_values'
|
||||||
"rma_loc_id": {
|
method because the locations that are created with the
|
||||||
"name": "RMA",
|
values returned by that method are forced to be children
|
||||||
"active": True,
|
of view_location_id, and we don't want that.
|
||||||
"return_location": True,
|
"""
|
||||||
"usage": "internal",
|
res = super().create(vals_list)
|
||||||
"company_id": vals.get("company_id", self.company_id.id),
|
stock_location = self.env["stock.location"]
|
||||||
"location_id": self.view_location_id.id,
|
for record in res:
|
||||||
},
|
rma_location_vals = record._get_rma_location_values()
|
||||||
}
|
record.rma_loc_id = stock_location.create(rma_location_vals).id
|
||||||
)
|
return res
|
||||||
return values
|
|
||||||
|
def _get_rma_location_values(self):
|
||||||
|
""" this method is intended to be used by 'create' method
|
||||||
|
to create a new RMA location to be linked to a new warehouse.
|
||||||
|
"""
|
||||||
|
return {
|
||||||
|
"name": self.view_location_id.name,
|
||||||
|
"active": True,
|
||||||
|
"return_location": True,
|
||||||
|
"usage": "internal",
|
||||||
|
"company_id": self.company_id.id,
|
||||||
|
"location_id": self.env.ref("rma.stock_location_rma").id,
|
||||||
|
}
|
||||||
|
|
||||||
def _get_sequence_values(self):
|
def _get_sequence_values(self):
|
||||||
values = super()._get_sequence_values()
|
values = super()._get_sequence_values()
|
||||||
@@ -79,6 +91,8 @@ class StockWarehouse(models.Model):
|
|||||||
"default_location_src_id": False,
|
"default_location_src_id": False,
|
||||||
"default_location_dest_id": self.rma_loc_id.id,
|
"default_location_dest_id": self.rma_loc_id.id,
|
||||||
"sequence": max_sequence + 1,
|
"sequence": max_sequence + 1,
|
||||||
|
"sequence_code": "RMA/IN",
|
||||||
|
"company_id": self.company_id.id,
|
||||||
},
|
},
|
||||||
"rma_out_type_id": {
|
"rma_out_type_id": {
|
||||||
"name": _("RMA Delivery Orders"),
|
"name": _("RMA Delivery Orders"),
|
||||||
@@ -88,6 +102,8 @@ class StockWarehouse(models.Model):
|
|||||||
"default_location_src_id": self.rma_loc_id.id,
|
"default_location_src_id": self.rma_loc_id.id,
|
||||||
"default_location_dest_id": False,
|
"default_location_dest_id": False,
|
||||||
"sequence": max_sequence + 2,
|
"sequence": max_sequence + 2,
|
||||||
|
"sequence_code": "RMA/OUT",
|
||||||
|
"company_id": self.company_id.id,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -97,8 +113,8 @@ class StockWarehouse(models.Model):
|
|||||||
data = super()._get_picking_type_update_values()
|
data = super()._get_picking_type_update_values()
|
||||||
data.update(
|
data.update(
|
||||||
{
|
{
|
||||||
"rma_in_type_id": {"default_location_dest_id": self.rma_loc_id.id,},
|
"rma_in_type_id": {"default_location_dest_id": self.rma_loc_id.id},
|
||||||
"rma_out_type_id": {"default_location_src_id": self.rma_loc_id.id,},
|
"rma_out_type_id": {"default_location_src_id": self.rma_loc_id.id},
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
return data
|
return data
|
||||||
|
|||||||
@@ -69,7 +69,7 @@
|
|||||||
<field name="global" eval="True" />
|
<field name="global" eval="True" />
|
||||||
<field
|
<field
|
||||||
name="domain_force"
|
name="domain_force"
|
||||||
>['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field>
|
>['|',('company_id','=',False),('company_id','in',company_ids)]</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="rma_team_rule_multi_company" model="ir.rule">
|
<record id="rma_team_rule_multi_company" model="ir.rule">
|
||||||
<field name="name">RMA team multi-company</field>
|
<field name="name">RMA team multi-company</field>
|
||||||
@@ -77,7 +77,7 @@
|
|||||||
<field name="global" eval="True" />
|
<field name="global" eval="True" />
|
||||||
<field
|
<field
|
||||||
name="domain_force"
|
name="domain_force"
|
||||||
>['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field>
|
>['|',('company_id','=',False),('company_id','in',company_ids)]</field>
|
||||||
</record>
|
</record>
|
||||||
<!-- New users will belong to rma_group_user_own -->
|
<!-- New users will belong to rma_group_user_own -->
|
||||||
<record id="base.default_user" model="res.users">
|
<record id="base.default_user" model="res.users">
|
||||||
|
|||||||
@@ -367,7 +367,7 @@ ul.auto-toc {
|
|||||||
!! This file is generated by oca-gen-addon-readme !!
|
!! This file is generated by oca-gen-addon-readme !!
|
||||||
!! changes will be overwritten. !!
|
!! changes will be overwritten. !!
|
||||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||||
<p><a class="reference external" 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" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/rma/tree/12.0/rma"><img alt="OCA/rma" src="https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/rma-12-0/rma-12-0-rma"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/145/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Production/Stable" src="https://img.shields.io/badge/maturity-Production%2FStable-green.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/rma/tree/13.0/rma"><img alt="OCA/rma" src="https://img.shields.io/badge/github-OCA%2Frma-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/rma-13-0/rma-13-0-rma"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/145/13.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||||
<p>This module allows you to manage <a class="reference external" href="https://en.wikipedia.org/wiki/Return_merchandise_authorization">Return Merchandise Authorization (RMA)</a>.
|
<p>This module allows you to manage <a class="reference external" href="https://en.wikipedia.org/wiki/Return_merchandise_authorization">Return Merchandise Authorization (RMA)</a>.
|
||||||
RMA documents can be created from scratch, from a delivery order or from
|
RMA documents can be created from scratch, from a delivery order or from
|
||||||
an incoming email. Product receptions and returning delivery operations
|
an incoming email. Product receptions and returning delivery operations
|
||||||
@@ -477,7 +477,7 @@ the product of that move is.</li>
|
|||||||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/rma/issues">GitHub Issues</a>.
|
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/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 smashing it by providing a detailed and welcomed
|
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||||
<a class="reference external" href="https://github.com/OCA/rma/issues/new?body=module:%20rma%0Aversion:%2012.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/OCA/rma/issues/new?body=module:%20rma%0Aversion:%2013.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">
|
||||||
@@ -508,7 +508,7 @@ mission is to support the collaborative development of Odoo features and
|
|||||||
promote its widespread use.</p>
|
promote its widespread use.</p>
|
||||||
<p>Current <a class="reference external" href="https://odoo-community.org/page/maintainer-role">maintainer</a>:</p>
|
<p>Current <a class="reference external" href="https://odoo-community.org/page/maintainer-role">maintainer</a>:</p>
|
||||||
<p><a class="reference external" href="https://github.com/ernestotejeda"><img alt="ernestotejeda" src="https://github.com/ernestotejeda.png?size=40px" /></a></p>
|
<p><a class="reference external" href="https://github.com/ernestotejeda"><img alt="ernestotejeda" src="https://github.com/ernestotejeda.png?size=40px" /></a></p>
|
||||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/rma/tree/12.0/rma">OCA/rma</a> project on GitHub.</p>
|
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/rma/tree/13.0/rma">OCA/rma</a> project on GitHub.</p>
|
||||||
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -2,9 +2,10 @@
|
|||||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
from odoo.exceptions import UserError, ValidationError
|
from odoo.exceptions import UserError, ValidationError
|
||||||
from odoo.tests import Form, SavepointCase
|
from odoo.tests import Form, SavepointCase, tagged
|
||||||
|
|
||||||
|
|
||||||
|
@tagged("post_install", "-at_install")
|
||||||
class TestRma(SavepointCase):
|
class TestRma(SavepointCase):
|
||||||
@classmethod
|
@classmethod
|
||||||
def setUpClass(cls):
|
def setUpClass(cls):
|
||||||
@@ -16,27 +17,11 @@ class TestRma(SavepointCase):
|
|||||||
[("company_id", "=", cls.company.id)], limit=1
|
[("company_id", "=", cls.company.id)], limit=1
|
||||||
)
|
)
|
||||||
cls.rma_loc = cls.warehouse_company.rma_loc_id
|
cls.rma_loc = cls.warehouse_company.rma_loc_id
|
||||||
account_pay = cls.env["account.account"].create(
|
|
||||||
{
|
|
||||||
"code": "X1111",
|
|
||||||
"name": "Creditors - (test)",
|
|
||||||
"user_type_id": cls.env.ref("account.data_account_type_payable").id,
|
|
||||||
"reconcile": True,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
cls.journal = cls.env["account.journal"].create(
|
|
||||||
{
|
|
||||||
"name": "sale_0",
|
|
||||||
"code": "SALE0",
|
|
||||||
"type": "sale",
|
|
||||||
"default_debit_account_id": account_pay.id,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
cls.product = cls.product_product.create(
|
cls.product = cls.product_product.create(
|
||||||
{"name": "Product test 1", "type": "product",}
|
{"name": "Product test 1", "type": "product"}
|
||||||
)
|
)
|
||||||
account_type = cls.env["account.account.type"].create(
|
account_type = cls.env["account.account.type"].create(
|
||||||
{"name": "RCV type", "type": "receivable",}
|
{"name": "RCV type", "type": "receivable", "internal_group": "income"}
|
||||||
)
|
)
|
||||||
cls.account_receiv = cls.env["account.account"].create(
|
cls.account_receiv = cls.env["account.account"].create(
|
||||||
{
|
{
|
||||||
@@ -116,7 +101,6 @@ class TestRma(SavepointCase):
|
|||||||
),
|
),
|
||||||
view="stock.view_picking_form",
|
view="stock.view_picking_form",
|
||||||
)
|
)
|
||||||
picking_form.company_id = self.company
|
|
||||||
picking_form.partner_id = self.partner
|
picking_form.partner_id = self.partner
|
||||||
with picking_form.move_ids_without_package.new() as move:
|
with picking_form.move_ids_without_package.new() as move:
|
||||||
move.product_id = self.product
|
move.product_id = self.product
|
||||||
@@ -148,7 +132,7 @@ class TestRma(SavepointCase):
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
product_2 = self.product_product.create(
|
product_2 = self.product_product.create(
|
||||||
{"name": "Product test 2", "type": "product", "uom_id": uom_ten.id,}
|
{"name": "Product test 2", "type": "product", "uom_id": uom_ten.id}
|
||||||
)
|
)
|
||||||
outgoing_picking_type = self.env["stock.picking.type"].search(
|
outgoing_picking_type = self.env["stock.picking.type"].search(
|
||||||
[
|
[
|
||||||
@@ -165,8 +149,6 @@ class TestRma(SavepointCase):
|
|||||||
),
|
),
|
||||||
view="stock.view_picking_form",
|
view="stock.view_picking_form",
|
||||||
)
|
)
|
||||||
picking_form.company_id = self.company
|
|
||||||
picking_form.partner_id = self.partner
|
|
||||||
picking_form.partner_id = self.partner
|
picking_form.partner_id = self.partner
|
||||||
with picking_form.move_ids_without_package.new() as move:
|
with picking_form.move_ids_without_package.new() as move:
|
||||||
move.product_id = product_2
|
move.product_id = product_2
|
||||||
@@ -275,16 +257,20 @@ class TestRma(SavepointCase):
|
|||||||
self.assertEqual(rma.refund_id.state, "draft")
|
self.assertEqual(rma.refund_id.state, "draft")
|
||||||
self.assertEqual(rma.refund_line_id.product_id, rma.product_id)
|
self.assertEqual(rma.refund_line_id.product_id, rma.product_id)
|
||||||
self.assertEqual(rma.refund_line_id.quantity, 10)
|
self.assertEqual(rma.refund_line_id.quantity, 10)
|
||||||
self.assertEqual(rma.refund_line_id.uom_id, rma.product_uom)
|
self.assertEqual(rma.refund_line_id.product_uom_id, rma.product_uom)
|
||||||
self.assertEqual(rma.state, "refunded")
|
self.assertEqual(rma.state, "refunded")
|
||||||
self.assertFalse(rma.can_be_refunded)
|
self.assertFalse(rma.can_be_refunded)
|
||||||
self.assertFalse(rma.can_be_returned)
|
self.assertFalse(rma.can_be_returned)
|
||||||
self.assertFalse(rma.can_be_replaced)
|
self.assertFalse(rma.can_be_replaced)
|
||||||
rma.refund_line_id.quantity = 9
|
with Form(rma.refund_line_id.move_id) as refund_form:
|
||||||
|
with refund_form.invoice_line_ids.edit(0) as refund_line:
|
||||||
|
refund_line.quantity = 9
|
||||||
with self.assertRaises(ValidationError):
|
with self.assertRaises(ValidationError):
|
||||||
rma.refund_id.action_invoice_open()
|
rma.refund_id.post()
|
||||||
rma.refund_line_id.quantity = 10
|
with Form(rma.refund_line_id.move_id) as refund_form:
|
||||||
rma.refund_id.action_invoice_open()
|
with refund_form.invoice_line_ids.edit(0) as refund_line:
|
||||||
|
refund_line.quantity = 10
|
||||||
|
rma.refund_id.post()
|
||||||
self.assertFalse(rma.can_be_refunded)
|
self.assertFalse(rma.can_be_refunded)
|
||||||
self.assertFalse(rma.can_be_returned)
|
self.assertFalse(rma.can_be_returned)
|
||||||
self.assertFalse(rma.can_be_replaced)
|
self.assertFalse(rma.can_be_replaced)
|
||||||
@@ -354,14 +340,18 @@ class TestRma(SavepointCase):
|
|||||||
for rma in all_rmas:
|
for rma in all_rmas:
|
||||||
self.assertEqual(rma.product_id, rma.refund_line_id.product_id)
|
self.assertEqual(rma.product_id, rma.refund_line_id.product_id)
|
||||||
self.assertEqual(rma.product_uom_qty, rma.refund_line_id.quantity)
|
self.assertEqual(rma.product_uom_qty, rma.refund_line_id.quantity)
|
||||||
self.assertEqual(rma.product_uom, rma.refund_line_id.uom_id)
|
self.assertEqual(rma.product_uom, rma.refund_line_id.product_uom_id)
|
||||||
# Less quantity -> error on confirm
|
# Less quantity -> error on confirm
|
||||||
rma_2.refund_line_id.quantity = 14
|
with Form(rma_2.refund_line_id.move_id) as refund_form:
|
||||||
|
with refund_form.invoice_line_ids.edit(1) as refund_line:
|
||||||
|
refund_line.quantity = 14
|
||||||
with self.assertRaises(ValidationError):
|
with self.assertRaises(ValidationError):
|
||||||
refund_1.action_invoice_open()
|
refund_1.post()
|
||||||
rma_2.refund_line_id.quantity = 15
|
with Form(rma_2.refund_line_id.move_id) as refund_form:
|
||||||
refund_1.action_invoice_open()
|
with refund_form.invoice_line_ids.edit(1) as refund_line:
|
||||||
refund_2.action_invoice_open()
|
refund_line.quantity = 15
|
||||||
|
refund_1.post()
|
||||||
|
refund_2.post()
|
||||||
|
|
||||||
def test_replace(self):
|
def test_replace(self):
|
||||||
# Create, confirm and receive an RMA
|
# Create, confirm and receive an RMA
|
||||||
@@ -573,8 +563,9 @@ class TestRma(SavepointCase):
|
|||||||
return_wizard = (
|
return_wizard = (
|
||||||
self.env["stock.return.picking"]
|
self.env["stock.return.picking"]
|
||||||
.with_context(active_id=origin_delivery.id, active_ids=origin_delivery.ids,)
|
.with_context(active_id=origin_delivery.id, active_ids=origin_delivery.ids,)
|
||||||
.create({"create_rma": True})
|
.create({"create_rma": True, "picking_id": origin_delivery.id})
|
||||||
)
|
)
|
||||||
|
return_wizard._onchange_picking_id()
|
||||||
picking_action = return_wizard.create_returns()
|
picking_action = return_wizard.create_returns()
|
||||||
# Each origin move is linked to a different RMA
|
# Each origin move is linked to a different RMA
|
||||||
origin_moves = origin_delivery.move_lines
|
origin_moves = origin_delivery.move_lines
|
||||||
@@ -657,7 +648,11 @@ class TestRma(SavepointCase):
|
|||||||
|
|
||||||
def test_rma_picking_type_default_values(self):
|
def test_rma_picking_type_default_values(self):
|
||||||
warehouse = self.env["stock.warehouse"].create(
|
warehouse = self.env["stock.warehouse"].create(
|
||||||
{"name": "Stock - RMA Test", "code": "SRT",}
|
{"name": "Stock - RMA Test", "code": "SRT"}
|
||||||
)
|
)
|
||||||
self.assertFalse(warehouse.rma_in_type_id.use_create_lots)
|
self.assertFalse(warehouse.rma_in_type_id.use_create_lots)
|
||||||
self.assertTrue(warehouse.rma_in_type_id.use_existing_lots)
|
self.assertTrue(warehouse.rma_in_type_id.use_existing_lots)
|
||||||
|
|
||||||
|
def test_quantities_on_hand(self):
|
||||||
|
rma = self._create_confirm_receive(self.partner, self.product, 10, self.rma_loc)
|
||||||
|
self.assertEqual(rma.product_id.qty_available, 0)
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
priority="30"
|
priority="30"
|
||||||
>
|
>
|
||||||
<xpath expr="//div[hasclass('o_portal_docs')]" position="inside">
|
<xpath expr="//div[hasclass('o_portal_docs')]" position="inside">
|
||||||
<t t-call="portal.portal_docs_entry" t-if="rma_count">
|
<t t-call="portal.portal_docs_entry">
|
||||||
<t t-set="title">RMA Orders</t>
|
<t t-set="title">RMA Orders</t>
|
||||||
<t t-set="url" t-value="'/my/rmas'" />
|
<t t-set="url" t-value="'/my/rmas'" />
|
||||||
<t t-set="count" t-value="rma_count" />
|
<t t-set="count" t-value="rma_count" />
|
||||||
@@ -157,9 +157,9 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col flex-grow-0 pr-3">
|
<div class="col flex-grow-0 pr-3">
|
||||||
<img
|
<img
|
||||||
t-if="rma.partner_id.image"
|
t-if="rma.partner_id.image_1024"
|
||||||
class="rounded-circle mt-1 o_portal_contact_img"
|
class="rounded-circle mt-1 o_portal_contact_img"
|
||||||
t-att-src="image_data_uri(rma.partner_id.image)"
|
t-att-src="image_data_uri(rma.partner_id.image_1024)"
|
||||||
alt="Contact"
|
alt="Contact"
|
||||||
/>
|
/>
|
||||||
<img
|
<img
|
||||||
@@ -184,9 +184,9 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col flex-grow-0 pr-3">
|
<div class="col flex-grow-0 pr-3">
|
||||||
<img
|
<img
|
||||||
t-if="rma.user_id.image"
|
t-if="rma.user_id.image_1024"
|
||||||
class="rounded-circle mt-1 o_portal_contact_img"
|
class="rounded-circle mt-1 o_portal_contact_img"
|
||||||
t-att-src="image_data_uri(rma.user_id.image)"
|
t-att-src="image_data_uri(rma.user_id.image_1024)"
|
||||||
alt="Contact"
|
alt="Contact"
|
||||||
/>
|
/>
|
||||||
<img
|
<img
|
||||||
@@ -360,10 +360,10 @@
|
|||||||
aria-label="Download"
|
aria-label="Download"
|
||||||
title="Download"
|
title="Download"
|
||||||
/>
|
/>
|
||||||
<span t-esc="refund.number" class="mr-lg-3" />
|
<span t-esc="refund.name" class="mr-lg-3" />
|
||||||
<div class="d-lg-inline-block">Date: <span
|
<div class="d-lg-inline-block">Date: <span
|
||||||
class="text-muted"
|
class="text-muted"
|
||||||
t-field="refund.date_invoice"
|
t-field="refund.invoice_date"
|
||||||
/></div>
|
/></div>
|
||||||
</div>
|
</div>
|
||||||
<span
|
<span
|
||||||
|
|||||||
@@ -141,7 +141,6 @@
|
|||||||
<record id="rma_team_action" model="ir.actions.act_window">
|
<record id="rma_team_action" model="ir.actions.act_window">
|
||||||
<field name="name">RMA team</field>
|
<field name="name">RMA team</field>
|
||||||
<field name="res_model">rma.team</field>
|
<field name="res_model">rma.team</field>
|
||||||
<field name="view_type">form</field>
|
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">tree,form</field>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
<p class="o_view_nocontent_smiling_face">
|
<p class="o_view_nocontent_smiling_face">
|
||||||
|
|||||||
@@ -352,7 +352,6 @@
|
|||||||
<record id="rma_action" model="ir.actions.act_window">
|
<record id="rma_action" model="ir.actions.act_window">
|
||||||
<field name="name">RMA</field>
|
<field name="name">RMA</field>
|
||||||
<field name="res_model">rma</field>
|
<field name="res_model">rma</field>
|
||||||
<field name="view_type">form</field>
|
|
||||||
<field name="view_mode">tree,form,pivot,calendar,activity</field>
|
<field name="view_mode">tree,form,pivot,calendar,activity</field>
|
||||||
<field name="context">{"search_default_user_id": uid}</field>
|
<field name="context">{"search_default_user_id": uid}</field>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
|
|||||||
@@ -4,8 +4,6 @@
|
|||||||
from odoo import _, api, fields, models
|
from odoo import _, api, fields, models
|
||||||
from odoo.exceptions import ValidationError
|
from odoo.exceptions import ValidationError
|
||||||
|
|
||||||
import odoo.addons.decimal_precision as dp
|
|
||||||
|
|
||||||
|
|
||||||
class RmaReDeliveryWizard(models.TransientModel):
|
class RmaReDeliveryWizard(models.TransientModel):
|
||||||
_name = "rma.delivery.wizard"
|
_name = "rma.delivery.wizard"
|
||||||
@@ -13,7 +11,7 @@ class RmaReDeliveryWizard(models.TransientModel):
|
|||||||
|
|
||||||
rma_count = fields.Integer()
|
rma_count = fields.Integer()
|
||||||
type = fields.Selection(
|
type = fields.Selection(
|
||||||
selection=[("replace", "Replace"), ("return", "Return to customer"),],
|
selection=[("replace", "Replace"), ("return", "Return to customer")],
|
||||||
string="Type",
|
string="Type",
|
||||||
required=True,
|
required=True,
|
||||||
)
|
)
|
||||||
@@ -21,10 +19,10 @@ class RmaReDeliveryWizard(models.TransientModel):
|
|||||||
comodel_name="product.product", string="Replace Product",
|
comodel_name="product.product", string="Replace Product",
|
||||||
)
|
)
|
||||||
product_uom_qty = fields.Float(
|
product_uom_qty = fields.Float(
|
||||||
string="Product qty", digits=dp.get_precision("Product Unit of Measure"),
|
string="Product qty", digits="Product Unit of Measure",
|
||||||
)
|
)
|
||||||
product_uom = fields.Many2one(comodel_name="uom.uom", string="Unit of measure",)
|
product_uom = fields.Many2one(comodel_name="uom.uom", string="Unit of measure")
|
||||||
scheduled_date = fields.Datetime(required=True, default=fields.Datetime.now(),)
|
scheduled_date = fields.Datetime(required=True, default=fields.Datetime.now())
|
||||||
warehouse_id = fields.Many2one(
|
warehouse_id = fields.Many2one(
|
||||||
comodel_name="stock.warehouse", string="Warehouse", required=True,
|
comodel_name="stock.warehouse", string="Warehouse", required=True,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -57,13 +57,11 @@
|
|||||||
<act_window
|
<act_window
|
||||||
id="rma_delivery_wizard_action"
|
id="rma_delivery_wizard_action"
|
||||||
name="Return to customer"
|
name="Return to customer"
|
||||||
src_model="rma"
|
binding_model="rma"
|
||||||
|
binding_views="list"
|
||||||
res_model="rma.delivery.wizard"
|
res_model="rma.delivery.wizard"
|
||||||
view_type="form"
|
|
||||||
view_mode="form"
|
view_mode="form"
|
||||||
key2="client_action_multi"
|
|
||||||
target="new"
|
target="new"
|
||||||
multi="True"
|
|
||||||
context="{'rma_delivery_type': 'return'}"
|
context="{'rma_delivery_type': 'return'}"
|
||||||
/>
|
/>
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|||||||
@@ -3,8 +3,6 @@
|
|||||||
|
|
||||||
from odoo import _, api, fields, models
|
from odoo import _, api, fields, models
|
||||||
|
|
||||||
import odoo.addons.decimal_precision as dp
|
|
||||||
|
|
||||||
|
|
||||||
class RmaReSplitWizard(models.TransientModel):
|
class RmaReSplitWizard(models.TransientModel):
|
||||||
_name = "rma.split.wizard"
|
_name = "rma.split.wizard"
|
||||||
@@ -13,7 +11,7 @@ class RmaReSplitWizard(models.TransientModel):
|
|||||||
rma_id = fields.Many2one(comodel_name="rma", string="RMA",)
|
rma_id = fields.Many2one(comodel_name="rma", string="RMA",)
|
||||||
product_uom_qty = fields.Float(
|
product_uom_qty = fields.Float(
|
||||||
string="Quantity to extract",
|
string="Quantity to extract",
|
||||||
digits=dp.get_precision("Product Unit of Measure"),
|
digits="Product Unit of Measure",
|
||||||
required=True,
|
required=True,
|
||||||
help="Quantity to extract to a new RMA.",
|
help="Quantity to extract to a new RMA.",
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -31,7 +31,6 @@
|
|||||||
<record id="rma_split_wizard_action" model="ir.actions.act_window">
|
<record id="rma_split_wizard_action" model="ir.actions.act_window">
|
||||||
<field name="name">Split RMA</field>
|
<field name="name">Split RMA</field>
|
||||||
<field name="res_model">rma.split.wizard</field>
|
<field name="res_model">rma.split.wizard</field>
|
||||||
<field name="view_type">form</field>
|
|
||||||
<field name="view_mode">form</field>
|
<field name="view_mode">form</field>
|
||||||
<field name="target">new</field>
|
<field name="target">new</field>
|
||||||
</record>
|
</record>
|
||||||
|
|||||||
@@ -25,14 +25,28 @@ class ReturnPicking(models.TransientModel):
|
|||||||
if self.create_rma:
|
if self.create_rma:
|
||||||
warehouse = self.picking_id.picking_type_id.warehouse_id
|
warehouse = self.picking_id.picking_type_id.warehouse_id
|
||||||
self.location_id = warehouse.rma_loc_id.id
|
self.location_id = warehouse.rma_loc_id.id
|
||||||
rma_loc = warehouse.search([]).mapped("rma_loc_id")
|
rma_loc = warehouse.search(
|
||||||
|
[("company_id", "=", self.picking_id.company_id.id)]
|
||||||
|
).mapped("rma_loc_id")
|
||||||
rma_loc_domain = [("id", "child_of", rma_loc.ids)]
|
rma_loc_domain = [("id", "child_of", rma_loc.ids)]
|
||||||
else:
|
else:
|
||||||
self.location_id = self.default_get(["location_id"])["location_id"]
|
# If self.create_rma is not True, the value of the location and
|
||||||
|
# the location domain will be the same as assigned by default.
|
||||||
|
location_id = self.picking_id.location_id.id
|
||||||
|
return_picking_type = self.picking_id.picking_type_id.return_picking_type_id
|
||||||
|
if return_picking_type.default_location_dest_id.return_location:
|
||||||
|
location_id = return_picking_type.default_location_dest_id.id
|
||||||
|
self.location_id = location_id
|
||||||
rma_loc_domain = [
|
rma_loc_domain = [
|
||||||
"|",
|
"|",
|
||||||
("id", "=", self.picking_id.location_id.id),
|
("id", "=", self.picking_id.location_id.id),
|
||||||
|
"|",
|
||||||
|
"&",
|
||||||
("return_location", "=", True),
|
("return_location", "=", True),
|
||||||
|
("company_id", "=", False),
|
||||||
|
"&",
|
||||||
|
("return_location", "=", True),
|
||||||
|
("company_id", "=", self.picking_id.company_id.id),
|
||||||
]
|
]
|
||||||
return {"domain": {"location_id": rma_loc_domain}}
|
return {"domain": {"location_id": rma_loc_domain}}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user