From ca916725b142b5f3265f2606c59e1b30760a9d06 Mon Sep 17 00:00:00 2001 From: Francesco Apruzzese Date: Thu, 12 Oct 2023 12:00:36 +0200 Subject: [PATCH 1/9] [ADD][product_brand_stock] New module --- product_brand_stock/README.rst | 76 ++++ product_brand_stock/__init__.py | 26 ++ product_brand_stock/__manifest__.py | 19 + .../i18n/product_brand_stock.pot | 48 ++ product_brand_stock/models/__init__.py | 6 + product_brand_stock/models/stock_move.py | 16 + product_brand_stock/models/stock_move_line.py | 16 + product_brand_stock/models/stock_quant.py | 16 + product_brand_stock/readme/CONTRIBUTORS.rst | 1 + product_brand_stock/readme/DESCRIPTION.rst | 1 + product_brand_stock/readme/USAGE.rst | 1 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 421 ++++++++++++++++++ .../views/stock_move_line_views.xml | 33 ++ .../views/stock_move_views.xml | 33 ++ .../views/stock_quant_views.xml | 33 ++ 16 files changed, 746 insertions(+) create mode 100644 product_brand_stock/README.rst create mode 100644 product_brand_stock/__init__.py create mode 100644 product_brand_stock/__manifest__.py create mode 100644 product_brand_stock/i18n/product_brand_stock.pot create mode 100644 product_brand_stock/models/__init__.py create mode 100644 product_brand_stock/models/stock_move.py create mode 100644 product_brand_stock/models/stock_move_line.py create mode 100644 product_brand_stock/models/stock_quant.py create mode 100644 product_brand_stock/readme/CONTRIBUTORS.rst create mode 100644 product_brand_stock/readme/DESCRIPTION.rst create mode 100644 product_brand_stock/readme/USAGE.rst create mode 100644 product_brand_stock/static/description/icon.png create mode 100644 product_brand_stock/static/description/index.html create mode 100644 product_brand_stock/views/stock_move_line_views.xml create mode 100644 product_brand_stock/views/stock_move_views.xml create mode 100644 product_brand_stock/views/stock_quant_views.xml diff --git a/product_brand_stock/README.rst b/product_brand_stock/README.rst new file mode 100644 index 000000000..f8a3ac9a4 --- /dev/null +++ b/product_brand_stock/README.rst @@ -0,0 +1,76 @@ +=================== +Product Brand Stock +=================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:0da92363dac5134681371fc006dff2952e36047a6e38d03c5be198dc94b5131f + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbrand-lightgray.png?logo=github + :target: https://github.com/OCA/brand/tree/16.0/product_brand_stock + :alt: OCA/brand +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/brand-16-0/brand-16-0-product_brand_stock + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/brand&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows to work with product_brand in Stock reports. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +#. "Brand" group and filter is now available in Stock search views + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Contributors +~~~~~~~~~~~~ + +* Francesco Apruzzese + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +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. + +This module is part of the `OCA/brand `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_brand_stock/__init__.py b/product_brand_stock/__init__.py new file mode 100644 index 000000000..c9d607f59 --- /dev/null +++ b/product_brand_stock/__init__.py @@ -0,0 +1,26 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from psycopg2 import sql + +from . import models + + +def pre_init_hook(cr): + to_init_tables = ( + "stock_move", + "stock_move_line", + "stock_quant", + ) + for to_init_table in to_init_tables: + query_alter = sql.SQL( + "ALTER TABLE {} ADD COLUMN IF NOT EXISTS product_brand_id integer" + ).format(sql.Identifier(to_init_table)) + query_update = sql.SQL( + "UPDATE {} x SET product_brand_id=t.product_brand_id " + "FROM product_product p " + "INNER JOIN product_template t ON t.id = p.product_tmpl_id " + "WHERE x.product_id=p.id" + ).format(sql.Identifier(to_init_table)) + cr.execute(query_alter) + cr.execute(query_update) diff --git a/product_brand_stock/__manifest__.py b/product_brand_stock/__manifest__.py new file mode 100644 index 000000000..61f52aab5 --- /dev/null +++ b/product_brand_stock/__manifest__.py @@ -0,0 +1,19 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + "name": "Product Brand Stock", + "summary": """ + This module allows to work with product_brand in Stock.""", + "version": "16.0.1.0.0", + "license": "AGPL-3", + "author": "Odoo Community Association (OCA)", + "website": "https://github.com/OCA/brand", + "depends": ["product_brand", "stock"], + "data": [ + "views/stock_quant_views.xml", + "views/stock_move_views.xml", + "views/stock_move_line_views.xml", + ], + "pre_init_hook": "pre_init_hook", +} diff --git a/product_brand_stock/i18n/product_brand_stock.pot b/product_brand_stock/i18n/product_brand_stock.pot new file mode 100644 index 000000000..d82d9cba4 --- /dev/null +++ b/product_brand_stock/i18n/product_brand_stock.pot @@ -0,0 +1,48 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_brand_stock +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0+e-20230816\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-10-12 15:14+0000\n" +"PO-Revision-Date: 2023-10-12 15:14+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: product_brand_stock +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_quant__product_brand_id +#: model_terms:ir.ui.view,arch_db:product_brand_stock.quant_search_view +#: model_terms:ir.ui.view,arch_db:product_brand_stock.stock_move_line_view_search +#: model_terms:ir.ui.view,arch_db:product_brand_stock.view_move_search +msgid "Brand" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move_line +msgid "Product Moves (Stock Move Line)" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_quant +msgid "Quants" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model.fields,help:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_quant__product_brand_id +msgid "Select a brand for this product" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move +msgid "Stock Move" +msgstr "" diff --git a/product_brand_stock/models/__init__.py b/product_brand_stock/models/__init__.py new file mode 100644 index 000000000..026b2813e --- /dev/null +++ b/product_brand_stock/models/__init__.py @@ -0,0 +1,6 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import stock_quant +from . import stock_move +from . import stock_move_line diff --git a/product_brand_stock/models/stock_move.py b/product_brand_stock/models/stock_move.py new file mode 100644 index 000000000..b99b5ad7b --- /dev/null +++ b/product_brand_stock/models/stock_move.py @@ -0,0 +1,16 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class StockMove(models.Model): + + _inherit = "stock.move" + + product_brand_id = fields.Many2one( + comodel_name="product.brand", + related="product_id.product_brand_id", + string="Brand", + store=True, + ) diff --git a/product_brand_stock/models/stock_move_line.py b/product_brand_stock/models/stock_move_line.py new file mode 100644 index 000000000..14dac2ebb --- /dev/null +++ b/product_brand_stock/models/stock_move_line.py @@ -0,0 +1,16 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class StockMoveLine(models.Model): + + _inherit = "stock.move.line" + + product_brand_id = fields.Many2one( + comodel_name="product.brand", + related="product_id.product_brand_id", + string="Brand", + store=True, + ) diff --git a/product_brand_stock/models/stock_quant.py b/product_brand_stock/models/stock_quant.py new file mode 100644 index 000000000..9118e613d --- /dev/null +++ b/product_brand_stock/models/stock_quant.py @@ -0,0 +1,16 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class StockQuant(models.Model): + + _inherit = "stock.quant" + + product_brand_id = fields.Many2one( + comodel_name="product.brand", + related="product_id.product_brand_id", + string="Brand", + store=True, + ) diff --git a/product_brand_stock/readme/CONTRIBUTORS.rst b/product_brand_stock/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..3fd46fcdc --- /dev/null +++ b/product_brand_stock/readme/CONTRIBUTORS.rst @@ -0,0 +1 @@ +* Francesco Apruzzese diff --git a/product_brand_stock/readme/DESCRIPTION.rst b/product_brand_stock/readme/DESCRIPTION.rst new file mode 100644 index 000000000..81145d7d7 --- /dev/null +++ b/product_brand_stock/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module allows to work with product_brand in Stock reports. diff --git a/product_brand_stock/readme/USAGE.rst b/product_brand_stock/readme/USAGE.rst new file mode 100644 index 000000000..6aaf6085f --- /dev/null +++ b/product_brand_stock/readme/USAGE.rst @@ -0,0 +1 @@ +#. "Brand" group and filter is now available in Stock search views diff --git a/product_brand_stock/static/description/icon.png b/product_brand_stock/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/product_brand_stock/static/description/index.html b/product_brand_stock/static/description/index.html new file mode 100644 index 000000000..c4a601362 --- /dev/null +++ b/product_brand_stock/static/description/index.html @@ -0,0 +1,421 @@ + + + + + + +Product Brand Stock + + + +
+

Product Brand Stock

+ + +

Beta License: AGPL-3 OCA/brand Translate me on Weblate Try me on Runboat

+

This module allows to work with product_brand in Stock reports.

+

Table of contents

+ +
+

Usage

+
    +
  1. “Brand” group and filter is now available in Stock search views
  2. +
+
+
+

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 to smash it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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.

+

This module is part of the OCA/brand project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/product_brand_stock/views/stock_move_line_views.xml b/product_brand_stock/views/stock_move_line_views.xml new file mode 100644 index 000000000..0e5bd4da8 --- /dev/null +++ b/product_brand_stock/views/stock_move_line_views.xml @@ -0,0 +1,33 @@ + + + + + stock.move.line.search + stock.move.line + + + + + + + + + + + + + stock.move.line.tree + stock.move.line + + + + + + + + + diff --git a/product_brand_stock/views/stock_move_views.xml b/product_brand_stock/views/stock_move_views.xml new file mode 100644 index 000000000..836c340df --- /dev/null +++ b/product_brand_stock/views/stock_move_views.xml @@ -0,0 +1,33 @@ + + + + + stock.move.search + stock.move + + + + + + + + + + + + + stock.move.tree + stock.move + + + + + + + + + diff --git a/product_brand_stock/views/stock_quant_views.xml b/product_brand_stock/views/stock_quant_views.xml new file mode 100644 index 000000000..814cd349c --- /dev/null +++ b/product_brand_stock/views/stock_quant_views.xml @@ -0,0 +1,33 @@ + + + + + stock.quant.search + stock.quant + + + + + + + + + + + + + stock.quant.tree.editable + stock.quant + + + + + + + + + From aebae5bfee3366054bf05a1af133412d7bb65301 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Thu, 2 Nov 2023 10:59:35 +0000 Subject: [PATCH 2/9] [UPD] Update product_brand_stock.pot --- product_brand_stock/i18n/product_brand_stock.pot | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/product_brand_stock/i18n/product_brand_stock.pot b/product_brand_stock/i18n/product_brand_stock.pot index d82d9cba4..f61d8118d 100644 --- a/product_brand_stock/i18n/product_brand_stock.pot +++ b/product_brand_stock/i18n/product_brand_stock.pot @@ -4,10 +4,8 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 16.0+e-20230816\n" +"Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-10-12 15:14+0000\n" -"PO-Revision-Date: 2023-10-12 15:14+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" From d0c943b94afc271e2f3947c87cfd1826339df85b Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 2 Nov 2023 11:03:28 +0000 Subject: [PATCH 3/9] [BOT] post-merge updates --- product_brand_stock/README.rst | 2 +- product_brand_stock/static/description/index.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/product_brand_stock/README.rst b/product_brand_stock/README.rst index f8a3ac9a4..97e1016e6 100644 --- a/product_brand_stock/README.rst +++ b/product_brand_stock/README.rst @@ -7,7 +7,7 @@ Product Brand Stock !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:0da92363dac5134681371fc006dff2952e36047a6e38d03c5be198dc94b5131f + !! source digest: sha256:9535914a3601b18268ce5e492244bfd5c7acc5f9de0d4c64387343a36803df09 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/product_brand_stock/static/description/index.html b/product_brand_stock/static/description/index.html index c4a601362..6ba8af7b0 100644 --- a/product_brand_stock/static/description/index.html +++ b/product_brand_stock/static/description/index.html @@ -1,4 +1,4 @@ - + @@ -367,7 +367,7 @@

Product Brand Stock

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:0da92363dac5134681371fc006dff2952e36047a6e38d03c5be198dc94b5131f +!! source digest: sha256:9535914a3601b18268ce5e492244bfd5c7acc5f9de0d4c64387343a36803df09 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/brand Translate me on Weblate Try me on Runboat

This module allows to work with product_brand in Stock reports.

From d5d99c50f891745a805b86f1daaf927253b07e0c Mon Sep 17 00:00:00 2001 From: Ivorra78 Date: Thu, 28 Dec 2023 17:39:51 +0000 Subject: [PATCH 4/9] Added translation using Weblate (Spanish) --- product_brand_stock/i18n/es.po | 47 ++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 product_brand_stock/i18n/es.po diff --git a/product_brand_stock/i18n/es.po b/product_brand_stock/i18n/es.po new file mode 100644 index 000000000..6770b1492 --- /dev/null +++ b/product_brand_stock/i18n/es.po @@ -0,0 +1,47 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_brand_stock +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. module: product_brand_stock +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_quant__product_brand_id +#: model_terms:ir.ui.view,arch_db:product_brand_stock.quant_search_view +#: model_terms:ir.ui.view,arch_db:product_brand_stock.stock_move_line_view_search +#: model_terms:ir.ui.view,arch_db:product_brand_stock.view_move_search +msgid "Brand" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move_line +msgid "Product Moves (Stock Move Line)" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_quant +msgid "Quants" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model.fields,help:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_quant__product_brand_id +msgid "Select a brand for this product" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move +msgid "Stock Move" +msgstr "" From 13c96bca75f349e23aa346d09ba29fe761023b82 Mon Sep 17 00:00:00 2001 From: Ivorra78 Date: Thu, 28 Dec 2023 17:40:15 +0000 Subject: [PATCH 5/9] Translated using Weblate (Spanish) Currently translated at 100.0% (5 of 5 strings) Translation: brand-16.0/brand-16.0-product_brand_stock Translate-URL: https://translation.odoo-community.org/projects/brand-16-0/brand-16-0-product_brand_stock/es/ --- product_brand_stock/i18n/es.po | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/product_brand_stock/i18n/es.po b/product_brand_stock/i18n/es.po index 6770b1492..a5d15ba50 100644 --- a/product_brand_stock/i18n/es.po +++ b/product_brand_stock/i18n/es.po @@ -6,13 +6,15 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2023-12-28 20:34+0000\n" +"Last-Translator: Ivorra78 \n" "Language-Team: none\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. module: product_brand_stock #: model:ir.model.fields,field_description:product_brand_stock.field_stock_move__product_brand_id @@ -22,26 +24,26 @@ msgstr "" #: model_terms:ir.ui.view,arch_db:product_brand_stock.stock_move_line_view_search #: model_terms:ir.ui.view,arch_db:product_brand_stock.view_move_search msgid "Brand" -msgstr "" +msgstr "Marca" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_move_line msgid "Product Moves (Stock Move Line)" -msgstr "" +msgstr "Movimientos de Producto (Línea de Movimiento de Existencias)" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_quant msgid "Quants" -msgstr "" +msgstr "Cantds" #. module: product_brand_stock #: model:ir.model.fields,help:product_brand_stock.field_stock_move__product_brand_id #: model:ir.model.fields,help:product_brand_stock.field_stock_move_line__product_brand_id #: model:ir.model.fields,help:product_brand_stock.field_stock_quant__product_brand_id msgid "Select a brand for this product" -msgstr "" +msgstr "Seleccione una marca para este producto" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_move msgid "Stock Move" -msgstr "" +msgstr "Movimiento de Existencias" From 517ee2943c8f4b8eae43fe0fc616f163f7e1d1b8 Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 3 May 2024 13:45:43 +0000 Subject: [PATCH 6/9] Added translation using Weblate (Italian) --- product_brand_stock/i18n/it.po | 47 ++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 product_brand_stock/i18n/it.po diff --git a/product_brand_stock/i18n/it.po b/product_brand_stock/i18n/it.po new file mode 100644 index 000000000..4d31ef1c7 --- /dev/null +++ b/product_brand_stock/i18n/it.po @@ -0,0 +1,47 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * product_brand_stock +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. module: product_brand_stock +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,field_description:product_brand_stock.field_stock_quant__product_brand_id +#: model_terms:ir.ui.view,arch_db:product_brand_stock.quant_search_view +#: model_terms:ir.ui.view,arch_db:product_brand_stock.stock_move_line_view_search +#: model_terms:ir.ui.view,arch_db:product_brand_stock.view_move_search +msgid "Brand" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move_line +msgid "Product Moves (Stock Move Line)" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_quant +msgid "Quants" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model.fields,help:product_brand_stock.field_stock_move__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_move_line__product_brand_id +#: model:ir.model.fields,help:product_brand_stock.field_stock_quant__product_brand_id +msgid "Select a brand for this product" +msgstr "" + +#. module: product_brand_stock +#: model:ir.model,name:product_brand_stock.model_stock_move +msgid "Stock Move" +msgstr "" From 247d0f0bdfae7d0b738b243414e539889edeacb0 Mon Sep 17 00:00:00 2001 From: mymage Date: Fri, 3 May 2024 13:57:10 +0000 Subject: [PATCH 7/9] Translated using Weblate (Italian) Currently translated at 100.0% (5 of 5 strings) Translation: brand-16.0/brand-16.0-product_brand_stock Translate-URL: https://translation.odoo-community.org/projects/brand-16-0/brand-16-0-product_brand_stock/it/ --- product_brand_stock/i18n/it.po | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/product_brand_stock/i18n/it.po b/product_brand_stock/i18n/it.po index 4d31ef1c7..08cfc43e7 100644 --- a/product_brand_stock/i18n/it.po +++ b/product_brand_stock/i18n/it.po @@ -6,13 +6,15 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2024-05-03 16:34+0000\n" +"Last-Translator: mymage \n" "Language-Team: none\n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. module: product_brand_stock #: model:ir.model.fields,field_description:product_brand_stock.field_stock_move__product_brand_id @@ -22,26 +24,26 @@ msgstr "" #: model_terms:ir.ui.view,arch_db:product_brand_stock.stock_move_line_view_search #: model_terms:ir.ui.view,arch_db:product_brand_stock.view_move_search msgid "Brand" -msgstr "" +msgstr "Marca" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_move_line msgid "Product Moves (Stock Move Line)" -msgstr "" +msgstr "Movimenti prodotto (riga movimento di magazzino)" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_quant msgid "Quants" -msgstr "" +msgstr "Quanti" #. module: product_brand_stock #: model:ir.model.fields,help:product_brand_stock.field_stock_move__product_brand_id #: model:ir.model.fields,help:product_brand_stock.field_stock_move_line__product_brand_id #: model:ir.model.fields,help:product_brand_stock.field_stock_quant__product_brand_id msgid "Select a brand for this product" -msgstr "" +msgstr "Scegliere una marca per questo prodotto" #. module: product_brand_stock #: model:ir.model,name:product_brand_stock.model_stock_move msgid "Stock Move" -msgstr "" +msgstr "Movimento di magazzino" From 1fb9f42a38c3a8bbf67c9c0e4cffc8fbd17c905d Mon Sep 17 00:00:00 2001 From: Bhavesh Heliconia Date: Tue, 11 Feb 2025 09:51:12 +0530 Subject: [PATCH 8/9] [IMP] product_brand_stock: pre-commit auto fixes --- product_brand_stock/README.rst | 18 +++++++++--------- product_brand_stock/models/stock_move.py | 1 - product_brand_stock/models/stock_move_line.py | 1 - product_brand_stock/models/stock_quant.py | 1 - product_brand_stock/pyproject.toml | 3 +++ product_brand_stock/readme/CONTRIBUTORS.md | 1 + product_brand_stock/readme/CONTRIBUTORS.rst | 1 - .../readme/{DESCRIPTION.rst => DESCRIPTION.md} | 0 product_brand_stock/readme/USAGE.md | 1 + product_brand_stock/readme/USAGE.rst | 1 - .../static/description/index.html | 18 ++++++++++-------- 11 files changed, 24 insertions(+), 22 deletions(-) create mode 100644 product_brand_stock/pyproject.toml create mode 100644 product_brand_stock/readme/CONTRIBUTORS.md delete mode 100644 product_brand_stock/readme/CONTRIBUTORS.rst rename product_brand_stock/readme/{DESCRIPTION.rst => DESCRIPTION.md} (100%) create mode 100644 product_brand_stock/readme/USAGE.md delete mode 100644 product_brand_stock/readme/USAGE.rst diff --git a/product_brand_stock/README.rst b/product_brand_stock/README.rst index 97e1016e6..d5397a704 100644 --- a/product_brand_stock/README.rst +++ b/product_brand_stock/README.rst @@ -17,13 +17,13 @@ Product Brand Stock :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbrand-lightgray.png?logo=github - :target: https://github.com/OCA/brand/tree/16.0/product_brand_stock + :target: https://github.com/OCA/brand/tree/17.0/product_brand_stock :alt: OCA/brand .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/brand-16-0/brand-16-0-product_brand_stock + :target: https://translation.odoo-community.org/projects/brand-17-0/brand-17-0-product_brand_stock :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/brand&target_branch=16.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/brand&target_branch=17.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -38,7 +38,7 @@ This module allows to work with product_brand in Stock reports. Usage ===== -#. "Brand" group and filter is now available in Stock search views +1. "Brand" group and filter is now available in Stock search views Bug Tracker =========== @@ -46,7 +46,7 @@ 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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -54,12 +54,12 @@ Credits ======= Contributors -~~~~~~~~~~~~ +------------ -* Francesco Apruzzese +- Francesco Apruzzese Maintainers -~~~~~~~~~~~ +----------- This module is maintained by the OCA. @@ -71,6 +71,6 @@ 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. -This module is part of the `OCA/brand `_ project on GitHub. +This module is part of the `OCA/brand `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/product_brand_stock/models/stock_move.py b/product_brand_stock/models/stock_move.py index b99b5ad7b..9a558d932 100644 --- a/product_brand_stock/models/stock_move.py +++ b/product_brand_stock/models/stock_move.py @@ -5,7 +5,6 @@ class StockMove(models.Model): - _inherit = "stock.move" product_brand_id = fields.Many2one( diff --git a/product_brand_stock/models/stock_move_line.py b/product_brand_stock/models/stock_move_line.py index 14dac2ebb..acb9f8928 100644 --- a/product_brand_stock/models/stock_move_line.py +++ b/product_brand_stock/models/stock_move_line.py @@ -5,7 +5,6 @@ class StockMoveLine(models.Model): - _inherit = "stock.move.line" product_brand_id = fields.Many2one( diff --git a/product_brand_stock/models/stock_quant.py b/product_brand_stock/models/stock_quant.py index 9118e613d..055a40729 100644 --- a/product_brand_stock/models/stock_quant.py +++ b/product_brand_stock/models/stock_quant.py @@ -5,7 +5,6 @@ class StockQuant(models.Model): - _inherit = "stock.quant" product_brand_id = fields.Many2one( diff --git a/product_brand_stock/pyproject.toml b/product_brand_stock/pyproject.toml new file mode 100644 index 000000000..4231d0ccc --- /dev/null +++ b/product_brand_stock/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/product_brand_stock/readme/CONTRIBUTORS.md b/product_brand_stock/readme/CONTRIBUTORS.md new file mode 100644 index 000000000..8996cf54e --- /dev/null +++ b/product_brand_stock/readme/CONTRIBUTORS.md @@ -0,0 +1 @@ +- Francesco Apruzzese \<\> diff --git a/product_brand_stock/readme/CONTRIBUTORS.rst b/product_brand_stock/readme/CONTRIBUTORS.rst deleted file mode 100644 index 3fd46fcdc..000000000 --- a/product_brand_stock/readme/CONTRIBUTORS.rst +++ /dev/null @@ -1 +0,0 @@ -* Francesco Apruzzese diff --git a/product_brand_stock/readme/DESCRIPTION.rst b/product_brand_stock/readme/DESCRIPTION.md similarity index 100% rename from product_brand_stock/readme/DESCRIPTION.rst rename to product_brand_stock/readme/DESCRIPTION.md diff --git a/product_brand_stock/readme/USAGE.md b/product_brand_stock/readme/USAGE.md new file mode 100644 index 000000000..58920f41c --- /dev/null +++ b/product_brand_stock/readme/USAGE.md @@ -0,0 +1 @@ +1. "Brand" group and filter is now available in Stock search views diff --git a/product_brand_stock/readme/USAGE.rst b/product_brand_stock/readme/USAGE.rst deleted file mode 100644 index 6aaf6085f..000000000 --- a/product_brand_stock/readme/USAGE.rst +++ /dev/null @@ -1 +0,0 @@ -#. "Brand" group and filter is now available in Stock search views diff --git a/product_brand_stock/static/description/index.html b/product_brand_stock/static/description/index.html index 6ba8af7b0..28c4e41c0 100644 --- a/product_brand_stock/static/description/index.html +++ b/product_brand_stock/static/description/index.html @@ -1,4 +1,3 @@ - @@ -9,10 +8,11 @@ /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $ +:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. +Despite the name, some widely supported CSS2 features are used. See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to customize this style sheet. @@ -275,7 +275,7 @@ margin-left: 2em ; margin-right: 2em } -pre.code .ln { color: grey; } /* line numbers */ +pre.code .ln { color: gray; } /* line numbers */ pre.code, code { background-color: #eeeeee } pre.code .comment, code .comment { color: #5C6576 } pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold } @@ -301,7 +301,7 @@ span.pre { white-space: pre } -span.problematic { +span.problematic, pre.problematic { color: red } span.section-subtitle { @@ -369,7 +369,7 @@

Product Brand Stock

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:9535914a3601b18268ce5e492244bfd5c7acc5f9de0d4c64387343a36803df09 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/brand Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/brand Translate me on Weblate Try me on Runboat

This module allows to work with product_brand in Stock reports.

Table of contents

@@ -394,7 +394,7 @@

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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -408,11 +408,13 @@

Contributors

Maintainers

This module is maintained by the OCA.

-Odoo Community Association + +Odoo Community Association +

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.

-

This module is part of the OCA/brand project on GitHub.

+

This module is part of the OCA/brand project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 8d35ac8b39198158beb8f0cc77998b4b8b5c2a15 Mon Sep 17 00:00:00 2001 From: Bhavesh Heliconia Date: Tue, 11 Feb 2025 09:53:55 +0530 Subject: [PATCH 9/9] [MIG] product_brand_stock: Migration to 17.0 --- product_brand_stock/README.rst | 3 + product_brand_stock/__init__.py | 6 +- product_brand_stock/__manifest__.py | 2 +- product_brand_stock/readme/CONTRIBUTORS.md | 2 + .../static/description/index.html | 4 + product_brand_stock/tests/__init__.py | 1 + .../tests/test_product_brand_stock.py | 80 +++++++++++++++++++ 7 files changed, 94 insertions(+), 4 deletions(-) create mode 100644 product_brand_stock/tests/__init__.py create mode 100644 product_brand_stock/tests/test_product_brand_stock.py diff --git a/product_brand_stock/README.rst b/product_brand_stock/README.rst index d5397a704..1764d5c1c 100644 --- a/product_brand_stock/README.rst +++ b/product_brand_stock/README.rst @@ -57,6 +57,9 @@ Contributors ------------ - Francesco Apruzzese +- `Heliconia Solutions Pvt. Ltd. `__ + + - Bhavesh Heliconia Maintainers ----------- diff --git a/product_brand_stock/__init__.py b/product_brand_stock/__init__.py index c9d607f59..87db78229 100644 --- a/product_brand_stock/__init__.py +++ b/product_brand_stock/__init__.py @@ -6,7 +6,7 @@ from . import models -def pre_init_hook(cr): +def pre_init_hook(env): to_init_tables = ( "stock_move", "stock_move_line", @@ -22,5 +22,5 @@ def pre_init_hook(cr): "INNER JOIN product_template t ON t.id = p.product_tmpl_id " "WHERE x.product_id=p.id" ).format(sql.Identifier(to_init_table)) - cr.execute(query_alter) - cr.execute(query_update) + env.cr.execute(query_alter) + env.cr.execute(query_update) diff --git a/product_brand_stock/__manifest__.py b/product_brand_stock/__manifest__.py index 61f52aab5..101e0daf5 100644 --- a/product_brand_stock/__manifest__.py +++ b/product_brand_stock/__manifest__.py @@ -5,7 +5,7 @@ "name": "Product Brand Stock", "summary": """ This module allows to work with product_brand in Stock.""", - "version": "16.0.1.0.0", + "version": "17.0.1.0.0", "license": "AGPL-3", "author": "Odoo Community Association (OCA)", "website": "https://github.com/OCA/brand", diff --git a/product_brand_stock/readme/CONTRIBUTORS.md b/product_brand_stock/readme/CONTRIBUTORS.md index 8996cf54e..3491cb7cb 100644 --- a/product_brand_stock/readme/CONTRIBUTORS.md +++ b/product_brand_stock/readme/CONTRIBUTORS.md @@ -1 +1,3 @@ - Francesco Apruzzese \<\> +- [Heliconia Solutions Pvt. Ltd.](https://www.heliconia.io) + - Bhavesh Heliconia diff --git a/product_brand_stock/static/description/index.html b/product_brand_stock/static/description/index.html index 28c4e41c0..daf8a92b7 100644 --- a/product_brand_stock/static/description/index.html +++ b/product_brand_stock/static/description/index.html @@ -403,6 +403,10 @@

Credits

Contributors

diff --git a/product_brand_stock/tests/__init__.py b/product_brand_stock/tests/__init__.py new file mode 100644 index 000000000..af14dd348 --- /dev/null +++ b/product_brand_stock/tests/__init__.py @@ -0,0 +1 @@ +from . import test_product_brand_stock diff --git a/product_brand_stock/tests/test_product_brand_stock.py b/product_brand_stock/tests/test_product_brand_stock.py new file mode 100644 index 000000000..a3fab9025 --- /dev/null +++ b/product_brand_stock/tests/test_product_brand_stock.py @@ -0,0 +1,80 @@ +# Copyright 2023 Francesco Apruzzese +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.addons.base.tests.common import BaseCommon + + +class TestStockMove(BaseCommon): + @classmethod + def setUpClass(self): + super().setUpClass() + + # Create product brand + self.product_brand = self.env["product.brand"].create({"name": "Test Brand"}) + + # Create a product with a brand + self.product = self.env["product.product"].create( + { + "name": "Test Product", + "type": "product", + "product_brand_id": self.product_brand.id, + } + ) + + # Create a stock.move record + self.stock_move = self.env["stock.move"].create( + { + "name": "Test Move", + "product_id": self.product.id, + "product_uom_qty": 10, + "product_uom": self.product.uom_id.id, + "location_id": self.env.ref("stock.stock_location_stock").id, + "location_dest_id": self.env.ref("stock.stock_location_customers").id, + } + ) + + def test_product_brand_on_stock_move(self): + # Check if the 'product_brand_id' field is + # correctly set on the stock.move record + self.assertEqual( + self.stock_move.product_brand_id, + self.product_brand, + "The product brand on the stock move should match the product's brand.", + ) + + def test_product_brand_on_stock_move_line(self): + # Create a stock move line linked to the stock move + stock_move_line = self.env["stock.move.line"].create( + { + "move_id": self.stock_move.id, + "product_id": self.product.id, + "product_uom_id": self.product.uom_id.id, + "location_id": self.env.ref("stock.stock_location_stock").id, + "location_dest_id": self.env.ref("stock.stock_location_customers").id, + } + ) + + # Check if the 'product_brand_id' is correctly set on the stock move line + self.assertEqual( + stock_move_line.product_brand_id, + self.product_brand, + "The product brand on the stock move line " + "should match the product's brand.", + ) + + def test_product_brand_on_stock_quant(self): + # Create a stock quant for the product + stock_quant = self.env["stock.quant"].create( + { + "product_id": self.product.id, + "location_id": self.env.ref("stock.stock_location_stock").id, + "quantity": 10, + } + ) + + # Check if the 'product_brand_id' is correctly set on the stock quant + self.assertEqual( + stock_quant.product_brand_id, + self.product_brand, + "The product brand on the stock quant should match the product's brand.", + )