diff --git a/partner_stock_risk/README.rst b/partner_stock_risk/README.rst new file mode 100644 index 000000000..5b6199a24 --- /dev/null +++ b/partner_stock_risk/README.rst @@ -0,0 +1,58 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +================== +Partner Stock Risk +================== + +Extends Partner Financial Risk to manage stock moves. + +If any limit is exceed the partner gets forbidden to transfer stock move. + +Usage +===== + +To use this module, you need to: + +#. Go to *Customers > Financial Risk* +#. Set limits and choose options to compute in credit limit +#. Go to *Inventory > All Operations* +#. Try transfer a risk exceed partner picking + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/134/10.0 + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. 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 feedback. + +Credits +======= + +Contributors +------------ + +* Carlos Dauden +* Pedro M. Baeza +* David Vidal + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit https://odoo-community.org. diff --git a/partner_stock_risk/__init__.py b/partner_stock_risk/__init__.py new file mode 100644 index 000000000..cde864bae --- /dev/null +++ b/partner_stock_risk/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import models diff --git a/partner_stock_risk/__manifest__.py b/partner_stock_risk/__manifest__.py new file mode 100644 index 000000000..f66da8196 --- /dev/null +++ b/partner_stock_risk/__manifest__.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +# Copyright 2016 Carlos Dauden +# Copyright 2017 David Vidal +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +{ + 'name': 'Partner Stock Risk', + 'summary': 'Manage partner risk in stock moves', + 'version': '10.0.1.0.0', + 'category': 'Sales Management', + 'license': 'AGPL-3', + 'author': 'Tecnativa,' + 'Odoo Community Association (OCA)', + 'website': 'https://www.tecnativa.com', + 'depends': [ + 'stock', + 'partner_financial_risk' + ], + 'installable': True, +} diff --git a/partner_stock_risk/i18n/ca.po b/partner_stock_risk/i18n/ca.po new file mode 100644 index 000000000..ff65b5eb2 --- /dev/null +++ b/partner_stock_risk/i18n/ca.po @@ -0,0 +1,44 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# Carles Antoli , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Moviments d'estoc" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Transferència" diff --git a/partner_stock_risk/i18n/de.po b/partner_stock_risk/i18n/de.po new file mode 100644 index 000000000..8e42d907c --- /dev/null +++ b/partner_stock_risk/i18n/de.po @@ -0,0 +1,46 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +# Rudolf Schnapka , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Rudolf Schnapka , 2017\n" +"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "Finanzielles Risiko überschritten\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" +"Überschreitung des finanziellen Riskos beim Partner:\n" +"%s" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Lagerbewegung" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Umbuchung" diff --git a/partner_stock_risk/i18n/es.po b/partner_stock_risk/i18n/es.po new file mode 100644 index 000000000..1c96e9742 --- /dev/null +++ b/partner_stock_risk/i18n/es.po @@ -0,0 +1,45 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_sale_risk +# +# Translators: +# Carlos Dauden , 2017 +msgid "" +msgstr "" +"Project-Id-Version: partner-contact (9.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-05-29 15:53+0200\n" +"PO-Revision-Date: 2017-05-29 15:54+0200\n" +"Last-Translator: Carlos Dauden \n" +"Language-Team: Spanish (http://www.transifex.com/oca/OCA-partner-contact-9-0/" +"language/es/)\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.8.7.1\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "Riesgo financiero excedido.\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "Riesgo financiero excedido en empresa: %s" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimiento de existencias" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Transferir" diff --git a/partner_stock_risk/i18n/es_AR.po b/partner_stock_risk/i18n/es_AR.po new file mode 100644 index 000000000..3a95a8ad6 --- /dev/null +++ b/partner_stock_risk/i18n/es_AR.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Argentina) (https://www.transifex.com/oca/teams/23907/es_AR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_AR\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimiento de stock" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/es_MX.po b/partner_stock_risk/i18n/es_MX.po new file mode 100644 index 000000000..2d6a1d4e8 --- /dev/null +++ b/partner_stock_risk/i18n/es_MX.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Mexico) (https://www.transifex.com/oca/teams/23907/es_MX/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_MX\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimiento bursátil" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/fi.po b/partner_stock_risk/i18n/fi.po new file mode 100644 index 000000000..571269659 --- /dev/null +++ b/partner_stock_risk/i18n/fi.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Varastosiirto" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/fr.po b/partner_stock_risk/i18n/fr.po new file mode 100644 index 000000000..207ce01dd --- /dev/null +++ b/partner_stock_risk/i18n/fr.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Mouvement de stock" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Transférer" diff --git a/partner_stock_risk/i18n/gl.po b/partner_stock_risk/i18n/gl.po new file mode 100644 index 000000000..a40fa05c5 --- /dev/null +++ b/partner_stock_risk/i18n/gl.po @@ -0,0 +1,44 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# César Castro Cruz , 2017 +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: gl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movemento de existencias" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Transferencia" diff --git a/partner_stock_risk/i18n/hr.po b/partner_stock_risk/i18n/hr.po new file mode 100644 index 000000000..a1a9639a5 --- /dev/null +++ b/partner_stock_risk/i18n/hr.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Skladišni prenos" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/it.po b/partner_stock_risk/i18n/it.po new file mode 100644 index 000000000..f42f2fba8 --- /dev/null +++ b/partner_stock_risk/i18n/it.po @@ -0,0 +1,44 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +# Paolo Valier , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Paolo Valier , 2017\n" +"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimento di magazzino" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Trasferisci" diff --git a/partner_stock_risk/i18n/pt.po b/partner_stock_risk/i18n/pt.po new file mode 100644 index 000000000..88fae76a9 --- /dev/null +++ b/partner_stock_risk/i18n/pt.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimento Stock" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/pt_BR.po b/partner_stock_risk/i18n/pt_BR.po new file mode 100644 index 000000000..0204b9b0a --- /dev/null +++ b/partner_stock_risk/i18n/pt_BR.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Movimentação de estoque" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/ro.po b/partner_stock_risk/i18n/ro.po new file mode 100644 index 000000000..a7803deec --- /dev/null +++ b/partner_stock_risk/i18n/ro.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# Dorin Hongu , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Dorin Hongu , 2017\n" +"Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/ro/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ro\n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Mișcare stoc" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/sl.po b/partner_stock_risk/i18n/sl.po new file mode 100644 index 000000000..606c3d41e --- /dev/null +++ b/partner_stock_risk/i18n/sl.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Premik zaloge" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "Premestitev" diff --git a/partner_stock_risk/i18n/tr.po b/partner_stock_risk/i18n/tr.po new file mode 100644 index 000000000..3db371c1e --- /dev/null +++ b/partner_stock_risk/i18n/tr.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# Ahmet Altinisik , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Ahmet Altinisik , 2017\n" +"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Stok hareketi" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/tr_TR.po b/partner_stock_risk/i18n/tr_TR.po new file mode 100644 index 000000000..5ba2d5365 --- /dev/null +++ b/partner_stock_risk/i18n/tr_TR.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# Ediz Duman , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Ediz Duman , 2017\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/tr_TR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr_TR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Stok Hareketi" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/vi_VN.po b/partner_stock_risk/i18n/vi_VN.po new file mode 100644 index 000000000..1d029f1e2 --- /dev/null +++ b/partner_stock_risk/i18n/vi_VN.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Vietnamese (Viet Nam) (https://www.transifex.com/oca/teams/23907/vi_VN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: vi_VN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "Dịch chuyển kho" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/i18n/zh_CN.po b/partner_stock_risk/i18n/zh_CN.po new file mode 100644 index 000000000..e991775cd --- /dev/null +++ b/partner_stock_risk/i18n/zh_CN.po @@ -0,0 +1,43 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_stock_risk +# +# Translators: +# Jeffery CHEN , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 9.0c\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-06-02 00:47+0000\n" +"PO-Revision-Date: 2017-06-02 00:47+0000\n" +"Last-Translator: Jeffery CHEN , 2017\n" +"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:31 +#, python-format +msgid "Financial risk exceeded \n" +msgstr "" + +#. module: partner_stock_risk +#: code:addons/partner_stock_risk/models/stock.py:20 +#, python-format +msgid "" +"Financial risk exceeded in partner:\n" +"%s" +msgstr "" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_move +msgid "Stock Move" +msgstr "库存移动" + +#. module: partner_stock_risk +#: model:ir.model,name:partner_stock_risk.model_stock_picking +msgid "Transfer" +msgstr "" diff --git a/partner_stock_risk/models/__init__.py b/partner_stock_risk/models/__init__.py new file mode 100644 index 000000000..b8574150c --- /dev/null +++ b/partner_stock_risk/models/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import stock diff --git a/partner_stock_risk/models/stock.py b/partner_stock_risk/models/stock.py new file mode 100644 index 000000000..36920220a --- /dev/null +++ b/partner_stock_risk/models/stock.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +# Copyright 2016 Carlos Dauden +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import _, api, exceptions, models + + +class StockMove(models.Model): + _inherit = 'stock.move' + + @api.multi + def action_done(self): + if not self.env.context.get('bypass_risk'): + moves = self.filtered(lambda x: ( + x.location_dest_id.usage == 'customer' and + x.partner_id.risk_exception + )) + if moves: + raise exceptions.UserError( + _("Financial risk exceeded in partner:\n%s") % + moves.mapped('partner_id.name')) + return super(StockMove, self).action_done() + + +class StockPicking(models.Model): + _inherit = 'stock.picking' + + @api.multi + def show_risk_wizard(self, continue_method): + return self.env['partner.risk.exceeded.wiz'].create({ + 'exception_msg': _("Financial risk exceeded \n"), + 'partner_id': self.partner_id.id, + 'origin_reference': '%s,%s' % (self._name, self.id), + 'continue_method': continue_method, + }).action_show() + + @api.multi + def action_confirm(self): + if not self.env.context.get('bypass_risk'): + if (self.location_dest_id.usage == 'customer' and + self.partner_id.risk_exception): + return self.show_risk_wizard('action_confirm') + return super(StockPicking, self).action_confirm() + + @api.multi + def action_assign(self): + if not self.env.context.get('bypass_risk') and \ + self.filtered('partner_id.risk_exception'): + params = self.env.context.get('params', {}) + if 'purchase.order' not in params and 'sale.order' not in params: + return self.show_risk_wizard('action_assign') + return super(StockPicking, self).action_assign() + + @api.multi + def force_assign(self): + if not self.env.context.get('bypass_risk'): + if (self.location_dest_id.usage == 'customer' and + self.partner_id.risk_exception): + return self.show_risk_wizard('force_assign') + return super(StockPicking, self).force_assign() + + @api.multi + def do_new_transfer(self): + if not self.env.context.get('bypass_risk'): + if (self.location_dest_id.usage == 'customer' and + self.partner_id.risk_exception): + return self.show_risk_wizard('do_new_transfer') + return super(StockPicking, self).do_new_transfer() diff --git a/partner_stock_risk/tests/__init__.py b/partner_stock_risk/tests/__init__.py new file mode 100644 index 000000000..c1736b020 --- /dev/null +++ b/partner_stock_risk/tests/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import test_partner_stock_risk diff --git a/partner_stock_risk/tests/test_partner_stock_risk.py b/partner_stock_risk/tests/test_partner_stock_risk.py new file mode 100644 index 000000000..e2651e8ca --- /dev/null +++ b/partner_stock_risk/tests/test_partner_stock_risk.py @@ -0,0 +1,97 @@ +# -*- coding: utf-8 -*- +# Copyright 2016 Carlos Dauden +# Copyright 2017 David Vidal +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import exceptions +from odoo.tests import common + + +class TestPartnerStocklRisk(common.SavepointCase): + + @classmethod + def setUpClass(cls): + super(TestPartnerStocklRisk, cls).setUpClass() + cls.partner = cls.env['res.partner'].create({ + 'name': 'Partner test', + 'customer': True, + }) + cls.product = cls.env['product.product'].create({ + 'name': 'Test product', + }) + cls.location = cls.env['stock.location'].create({ + 'name': 'Test location', + 'usage': 'internal', + }) + cls.location_customers = cls.env['stock.location'].create({ + 'name': 'Test location customers', + 'usage': 'customer', + }) + cls.sequence = cls.env['ir.sequence'].create({ + 'name': 'test seq', + 'implementation': 'standard', + 'padding': 1, + 'number_increment': 1, + }) + cls.stock_picking_type = cls.env['stock.picking.type'].create({ + 'name': 'Test picking type', + 'code': 'outgoing', + 'sequence_id': cls.sequence.id, + }) + cls.quant = cls.env['stock.quant'].create({ + 'qty': 100, + 'location_id': cls.location.id, + 'product_id': cls.product.id, + }) + cls.picking = cls.env['stock.picking'].create({ + 'picking_type_id': cls.stock_picking_type.id, + 'location_id': cls.location.id, + 'location_dest_id': cls.location_customers.id, + 'partner_id': cls.partner.id, + }) + cls.move = cls.env['stock.move'].create({ + 'name': '/', + 'picking_id': cls.picking.id, + 'product_uom_qty': 10, + 'product_uom': cls.product.uom_id.id, + 'location_id': cls.location.id, + 'location_dest_id': + cls.location_customers.id, + 'product_id': cls.product.id, + }) + cls.env.user.lang = 'en_US' + + def test_stock_move_ok(self): + self.move.action_done() + + def test_stock_move_error(self): + self.partner.risk_exception = True + self.move.partner_id = self.partner + with self.assertRaises(exceptions.UserError): + self.move.action_done() + + def test_stock_picking_ok(self): + self.picking.action_assign() + self.picking.force_assign() + self.picking.action_confirm() + + def test_stock_picking_error(self): + self.partner.risk_exception = True + res = self.picking.action_assign() + self.assertEqual(res['name'], 'Partner risk exceeded') + res = self.picking.force_assign() + self.assertEqual(res['name'], 'Partner risk exceeded') + res = self.picking.action_confirm() + self.assertEqual(res['name'], 'Partner risk exceeded') + + def test_do_new_transfer_ok(self): + self.picking.action_assign() + self.picking.pack_operation_product_ids[:1].qty_done = 5 + self.picking.do_new_transfer() + + def test_do_new_transfer_error(self): + self.picking.action_assign() + self.picking.pack_operation_product_ids[:1].qty_done = 5 + self.partner.risk_exception = True + res = self.picking.do_new_transfer() + self.assertEqual(res['name'], 'Partner risk exceeded')