From 33d5b79dd1feaff9f309b3288293c1d3897b307e Mon Sep 17 00:00:00 2001 From: Marina Alapont Date: Wed, 3 Apr 2024 10:41:33 +0200 Subject: [PATCH 1/7] [ADD] partner_shipping_policy --- partner_shipping_policy/README.rst | 86 ++++ partner_shipping_policy/__init__.py | 1 + partner_shipping_policy/__manifest__.py | 16 + partner_shipping_policy/i18n/da_DK.po | 54 +++ .../i18n/partner_shipping_policy.pot | 51 +++ partner_shipping_policy/models/__init__.py | 2 + partner_shipping_policy/models/res_partner.py | 22 + partner_shipping_policy/models/sale_order.py | 23 + .../readme/CONTRIBUTORS.rst | 2 + .../readme/DESCRIPTION.rst | 4 + partner_shipping_policy/readme/USAGE.rst | 2 + .../static/description/index.html | 430 ++++++++++++++++++ partner_shipping_policy/tests/__init__.py | 1 + .../tests/test_partner_shipping_policy.py | 56 +++ .../views/res_partner_views.xml | 13 + 15 files changed, 763 insertions(+) create mode 100644 partner_shipping_policy/README.rst create mode 100644 partner_shipping_policy/__init__.py create mode 100644 partner_shipping_policy/__manifest__.py create mode 100644 partner_shipping_policy/i18n/da_DK.po create mode 100644 partner_shipping_policy/i18n/partner_shipping_policy.pot create mode 100644 partner_shipping_policy/models/__init__.py create mode 100644 partner_shipping_policy/models/res_partner.py create mode 100644 partner_shipping_policy/models/sale_order.py create mode 100644 partner_shipping_policy/readme/CONTRIBUTORS.rst create mode 100644 partner_shipping_policy/readme/DESCRIPTION.rst create mode 100644 partner_shipping_policy/readme/USAGE.rst create mode 100644 partner_shipping_policy/static/description/index.html create mode 100644 partner_shipping_policy/tests/__init__.py create mode 100644 partner_shipping_policy/tests/test_partner_shipping_policy.py create mode 100644 partner_shipping_policy/views/res_partner_views.xml diff --git a/partner_shipping_policy/README.rst b/partner_shipping_policy/README.rst new file mode 100644 index 00000000000..1b44e733ea9 --- /dev/null +++ b/partner_shipping_policy/README.rst @@ -0,0 +1,86 @@ +======================= +Partner Shipping Policy +======================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:bfd210083591cc81c62f4e516f83c3ff848a40edb2496ebc4f40b4477ec15d0b + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Fpartner--contact-lightgray.png?logo=github + :target: https://github.com/OCA/partner-contact/tree/16.0/partner_shipping_policy + :alt: OCA/partner-contact +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/partner-contact-16-0/partner-contact-16-0-partner_shipping_policy + :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/partner-contact&target_branch=16.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +A new field is introduced to specify the shipping policy for each partner. +In sales orders, the shipping policy will be set to the delivery address contact shipping policy. +If the field is empty, it falls back to the shipping policy set in the main contact. +If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +Fill in the shipping policy field for the contact in the contact form. You can find this new field in the "Sales & Purchase" tab. +When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy. + +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 +======= + +Authors +~~~~~~~ + +* ForgeFlow + +Contributors +~~~~~~~~~~~~ + +* Marina Alapont + + +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/partner-contact `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/partner_shipping_policy/__init__.py b/partner_shipping_policy/__init__.py new file mode 100644 index 00000000000..0650744f6bc --- /dev/null +++ b/partner_shipping_policy/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/partner_shipping_policy/__manifest__.py b/partner_shipping_policy/__manifest__.py new file mode 100644 index 00000000000..274f8515b66 --- /dev/null +++ b/partner_shipping_policy/__manifest__.py @@ -0,0 +1,16 @@ +# Copyright 2024 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Partner Shipping Policy", + "summary": "Define shipping policy at partners level.", + "author": "ForgeFlow,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/partner-contact", + "category": "Sales", + "version": "16.0.1.0.0", + "license": "AGPL-3", + "depends": ["sale_stock"], + "data": ["views/res_partner_views.xml"], + "installable": True, + "application": False, +} diff --git a/partner_shipping_policy/i18n/da_DK.po b/partner_shipping_policy/i18n/da_DK.po new file mode 100644 index 00000000000..ef609e99cd7 --- /dev/null +++ b/partner_shipping_policy/i18n/da_DK.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_shipping_policy +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0+e\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-04-03 08:34+0000\n" +"PO-Revision-Date: 2024-04-03 08:34+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: partner_shipping_policy +#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__direct +msgid "As soon as possible" +msgstr "Hurtigst muligt" + +#. module: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_res_partner +msgid "Contact" +msgstr "Kontakt" + +#. module: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_sale_order +msgid "Sales Order" +msgstr "Salgsordre" + +#. module: partner_shipping_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_users__picking_policy +msgid "Shipping Policy" +msgstr "Afsendelses måde" + +#. module: partner_shipping_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_users__picking_policy +msgid "" +"Shipping policy to use in this partner's sales orders. If you deliver all " +"products at once, the delivery order will be scheduled based on the greatest" +" product lead time. Otherwise, it will be based on the shortest." +msgstr "" +"Forsendelsespolitik til brug i denne partner salgsordrer. Hvis du levere alle " +"produkter samtidigt, vil leveringsordren blive planlagt ud fra den længste" +" produkt ledetid. Ellers vil den være baseret på den korteste." + +#. module: partner_shipping_policy +#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__one +msgid "When all products are ready" +msgstr "Når alle produkter er klar" diff --git a/partner_shipping_policy/i18n/partner_shipping_policy.pot b/partner_shipping_policy/i18n/partner_shipping_policy.pot new file mode 100644 index 00000000000..21cd929e11c --- /dev/null +++ b/partner_shipping_policy/i18n/partner_shipping_policy.pot @@ -0,0 +1,51 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_shipping_policy +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.0+e\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-04-03 08:33+0000\n" +"PO-Revision-Date: 2024-04-03 08:33+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: partner_shipping_policy +#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__direct +msgid "As soon as possible" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_res_partner +msgid "Contact" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_users__picking_policy +msgid "Shipping Policy" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_users__picking_policy +msgid "" +"Shipping policy to use in this partner's sales orders. If you deliver all " +"products at once, the delivery order will be scheduled based on the greatest" +" product lead time. Otherwise, it will be based on the shortest." +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__one +msgid "When all products are ready" +msgstr "" diff --git a/partner_shipping_policy/models/__init__.py b/partner_shipping_policy/models/__init__.py new file mode 100644 index 00000000000..17c6cc85d0c --- /dev/null +++ b/partner_shipping_policy/models/__init__.py @@ -0,0 +1,2 @@ +from . import res_partner +from . import sale_order diff --git a/partner_shipping_policy/models/res_partner.py b/partner_shipping_policy/models/res_partner.py new file mode 100644 index 00000000000..49681661ab2 --- /dev/null +++ b/partner_shipping_policy/models/res_partner.py @@ -0,0 +1,22 @@ +# Copyright 2024 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class Partner(models.Model): + _inherit = "res.partner" + + picking_policy = fields.Selection( + selection="_get_picking_policy_selection", + string="Shipping Policy", + help="Shipping policy to use in this partner's sales orders. If you deliver all " + "products at once, the delivery order will be scheduled based on the greatest " + "product lead time. Otherwise, it will be based on the shortest.", + ) + + @api.model + def _get_picking_policy_selection(self): + return self.env["sale.order"].fields_get(["picking_policy"])["picking_policy"][ + "selection" + ] diff --git a/partner_shipping_policy/models/sale_order.py b/partner_shipping_policy/models/sale_order.py new file mode 100644 index 00000000000..95525cada77 --- /dev/null +++ b/partner_shipping_policy/models/sale_order.py @@ -0,0 +1,23 @@ +# Copyright 2024 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class SaleOrder(models.Model): + _inherit = "sale.order" + + # Convert field to a computed + picking_policy = fields.Selection( + compute="_compute_picking_policy", store=True, readonly=False + ) + + @api.depends("partner_id") + def _compute_picking_policy(self): + for this in self: + picking_policy = ( + this.partner_shipping_id.picking_policy + or this.partner_id.picking_policy + or self.default_get(["picking_policy"]).get("picking_policy") + ) + this.picking_policy = picking_policy diff --git a/partner_shipping_policy/readme/CONTRIBUTORS.rst b/partner_shipping_policy/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000000..3d26413f19c --- /dev/null +++ b/partner_shipping_policy/readme/CONTRIBUTORS.rst @@ -0,0 +1,2 @@ +* Marina Alapont + diff --git a/partner_shipping_policy/readme/DESCRIPTION.rst b/partner_shipping_policy/readme/DESCRIPTION.rst new file mode 100644 index 00000000000..2bc5db103f5 --- /dev/null +++ b/partner_shipping_policy/readme/DESCRIPTION.rst @@ -0,0 +1,4 @@ +A new field is introduced to specify the shipping policy for each partner. +In sales orders, the shipping policy will be set to the delivery address contact shipping policy. +If the field is empty, it falls back to the shipping policy set in the main contact. +If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value. diff --git a/partner_shipping_policy/readme/USAGE.rst b/partner_shipping_policy/readme/USAGE.rst new file mode 100644 index 00000000000..063dcc49336 --- /dev/null +++ b/partner_shipping_policy/readme/USAGE.rst @@ -0,0 +1,2 @@ +Fill in the shipping policy field for the contact in the contact form. You can find this new field in the "Sales & Purchase" tab. +When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy. diff --git a/partner_shipping_policy/static/description/index.html b/partner_shipping_policy/static/description/index.html new file mode 100644 index 00000000000..3f5fbf3dfa3 --- /dev/null +++ b/partner_shipping_policy/static/description/index.html @@ -0,0 +1,430 @@ + + + + + + +Partner Shipping Policy + + + +
+

Partner Shipping Policy

+ + +

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

+

A new field is introduced to specify the shipping policy for each partner. +In sales orders, the shipping policy will be set to the delivery address contact shipping policy. +If the field is empty, it falls back to the shipping policy set in the main contact. +If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value.

+

Table of contents

+ +
+

Usage

+

Fill in the shipping policy field for the contact in the contact form. You can find this new field in the “Sales & Purchase” tab. +When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy.

+
+
+

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

+
+

Authors

+
    +
  • ForgeFlow
  • +
+
+
+

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/partner-contact project on GitHub.

+

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

+
+
+
+ + diff --git a/partner_shipping_policy/tests/__init__.py b/partner_shipping_policy/tests/__init__.py new file mode 100644 index 00000000000..845dabf6050 --- /dev/null +++ b/partner_shipping_policy/tests/__init__.py @@ -0,0 +1 @@ +from . import test_partner_shipping_policy diff --git a/partner_shipping_policy/tests/test_partner_shipping_policy.py b/partner_shipping_policy/tests/test_partner_shipping_policy.py new file mode 100644 index 00000000000..77ec0a837bd --- /dev/null +++ b/partner_shipping_policy/tests/test_partner_shipping_policy.py @@ -0,0 +1,56 @@ +# Copyright 2024 ForgeFlow S.L. (https://www.forgeflow.com) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.tests.common import Form, TransactionCase + + +class TestPartnerShippingPolicy(TransactionCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.partner_model = cls.env["res.partner"] + cls.sale_order_model = cls.env["sale.order"] + cls.partner = cls.partner_model.create( + {"name": "Test Partner", "picking_policy": "one"} + ) + cls.delivery_address = cls.partner_model.create( + { + "name": "Test Delivery Address", + "picking_policy": "direct", + "type": "delivery", + "parent_id": cls.partner.id, + } + ) + cls.partner_2 = cls.partner_model.create( + {"name": "Test Partner 2", "picking_policy": ""} + ) + cls.partner_3 = cls.partner_model.create( + {"name": "Test Partner 3", "picking_policy": "one"} + ) + + cls.env["ir.config_parameter"].sudo().set_param( + "sale_stock.default_picking_policy", "direct" + ) + + def test_01_partner_picking_policy(self): + sale_selection = self.env["sale.order"].fields_get(["picking_policy"])[ + "picking_policy" + ]["selection"] + partner_selection = self.env["res.partner"].fields_get(["picking_policy"])[ + "picking_policy" + ]["selection"] + self.assertEqual(sale_selection, partner_selection) + + def test_02_partner_picking_policy(self): + sale_form = Form(self.sale_order_model) + sale_form.partner_id = self.partner + self.assertEqual(sale_form.picking_policy, self.delivery_address.picking_policy) + sale_form.partner_id = self.partner_2 + self.assertEqual( + sale_form.picking_policy, + self.env["sale.order"] + .default_get(["picking_policy"]) + .get("picking_policy"), + ) + sale_form.partner_id = self.partner_3 + self.assertEqual(sale_form.picking_policy, self.partner_3.picking_policy) diff --git a/partner_shipping_policy/views/res_partner_views.xml b/partner_shipping_policy/views/res_partner_views.xml new file mode 100644 index 00000000000..95a5e951200 --- /dev/null +++ b/partner_shipping_policy/views/res_partner_views.xml @@ -0,0 +1,13 @@ + + + + + res.partner + + + + + + + + From c69c844180dc71112bc2c9dc341355abf9be1807 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Mon, 19 Aug 2024 10:51:40 +0000 Subject: [PATCH 2/7] [UPD] Update partner_shipping_policy.pot --- .../i18n/partner_shipping_policy.pot | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/partner_shipping_policy/i18n/partner_shipping_policy.pot b/partner_shipping_policy/i18n/partner_shipping_policy.pot index 21cd929e11c..991add3e664 100644 --- a/partner_shipping_policy/i18n/partner_shipping_policy.pot +++ b/partner_shipping_policy/i18n/partner_shipping_policy.pot @@ -4,10 +4,8 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 16.0+e\n" +"Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 08:33+0000\n" -"PO-Revision-Date: 2024-04-03 08:33+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -16,13 +14,16 @@ msgstr "" "Plural-Forms: \n" #. module: partner_shipping_policy -#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__direct -msgid "As soon as possible" +#: model:ir.model,name:partner_shipping_policy.model_res_partner +msgid "Contact" msgstr "" #. module: partner_shipping_policy -#: model:ir.model,name:partner_shipping_policy.model_res_partner -msgid "Contact" +#: model:ir.model.fields,help:partner_shipping_policy.field_sale_order__picking_policy +msgid "" +"If you deliver all products at once, the delivery order will be scheduled " +"based on the greatest product lead time. Otherwise, it will be based on the " +"shortest." msgstr "" #. module: partner_shipping_policy @@ -33,6 +34,7 @@ msgstr "" #. module: partner_shipping_policy #: model:ir.model.fields,field_description:partner_shipping_policy.field_res_partner__picking_policy #: model:ir.model.fields,field_description:partner_shipping_policy.field_res_users__picking_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_sale_order__picking_policy msgid "Shipping Policy" msgstr "" @@ -44,8 +46,3 @@ msgid "" "products at once, the delivery order will be scheduled based on the greatest" " product lead time. Otherwise, it will be based on the shortest." msgstr "" - -#. module: partner_shipping_policy -#: model:ir.model.fields.selection,name:partner_shipping_policy.selection__res_partner__picking_policy__one -msgid "When all products are ready" -msgstr "" From 7948454fbe2573f4ac95d568528fa0dbf9c9dd16 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 19 Aug 2024 10:56:11 +0000 Subject: [PATCH 3/7] [BOT] post-merge updates --- partner_shipping_policy/README.rst | 2 +- .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 14 ++++++++------ 3 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 partner_shipping_policy/static/description/icon.png diff --git a/partner_shipping_policy/README.rst b/partner_shipping_policy/README.rst index 1b44e733ea9..4f90b13a597 100644 --- a/partner_shipping_policy/README.rst +++ b/partner_shipping_policy/README.rst @@ -7,7 +7,7 @@ Partner Shipping Policy !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:bfd210083591cc81c62f4e516f83c3ff848a40edb2496ebc4f40b4477ec15d0b + !! source digest: sha256:0103ff75596e588ec836ca48c37ee0fdd424696dc4d8c2d6266a66d28c7c85f7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/partner_shipping_policy/static/description/icon.png b/partner_shipping_policy/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/partner_shipping_policy/static/description/index.html b/partner_shipping_policy/static/description/index.html index 3f5fbf3dfa3..11f245a7787 100644 --- a/partner_shipping_policy/static/description/index.html +++ b/partner_shipping_policy/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 { @@ -367,7 +367,7 @@

Partner Shipping Policy

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:bfd210083591cc81c62f4e516f83c3ff848a40edb2496ebc4f40b4477ec15d0b +!! source digest: sha256:0103ff75596e588ec836ca48c37ee0fdd424696dc4d8c2d6266a66d28c7c85f7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

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

A new field is introduced to specify the shipping policy for each partner. @@ -417,7 +417,9 @@

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.

From f95a12c827e71e70fe0792b32fa849be212f3170 Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 26 Aug 2024 09:50:47 +0000 Subject: [PATCH 4/7] Added translation using Weblate (Italian) --- partner_shipping_policy/i18n/it.po | 49 ++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 partner_shipping_policy/i18n/it.po diff --git a/partner_shipping_policy/i18n/it.po b/partner_shipping_policy/i18n/it.po new file mode 100644 index 00000000000..ea4beab7d2c --- /dev/null +++ b/partner_shipping_policy/i18n/it.po @@ -0,0 +1,49 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_shipping_policy +# +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: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_res_partner +msgid "Contact" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_sale_order__picking_policy +msgid "" +"If you deliver all products at once, the delivery order will be scheduled " +"based on the greatest product lead time. Otherwise, it will be based on the " +"shortest." +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model,name:partner_shipping_policy.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_res_users__picking_policy +#: model:ir.model.fields,field_description:partner_shipping_policy.field_sale_order__picking_policy +msgid "Shipping Policy" +msgstr "" + +#. module: partner_shipping_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_partner__picking_policy +#: model:ir.model.fields,help:partner_shipping_policy.field_res_users__picking_policy +msgid "" +"Shipping policy to use in this partner's sales orders. If you deliver all " +"products at once, the delivery order will be scheduled based on the greatest" +" product lead time. Otherwise, it will be based on the shortest." +msgstr "" From 662ce633ed19cdfc0c9363bccc59444a6e26b76f Mon Sep 17 00:00:00 2001 From: mymage Date: Mon, 26 Aug 2024 09:51:10 +0000 Subject: [PATCH 5/7] Translated using Weblate (Italian) Currently translated at 100.0% (5 of 5 strings) Translation: partner-contact-16.0/partner-contact-16.0-partner_shipping_policy Translate-URL: https://translation.odoo-community.org/projects/partner-contact-16-0/partner-contact-16-0-partner_shipping_policy/it/ --- partner_shipping_policy/i18n/it.po | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/partner_shipping_policy/i18n/it.po b/partner_shipping_policy/i18n/it.po index ea4beab7d2c..6de7efc4ac2 100644 --- a/partner_shipping_policy/i18n/it.po +++ b/partner_shipping_policy/i18n/it.po @@ -6,18 +6,20 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2024-08-26 12:06+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 5.6.2\n" #. module: partner_shipping_policy #: model:ir.model,name:partner_shipping_policy.model_res_partner msgid "Contact" -msgstr "" +msgstr "Contatto" #. module: partner_shipping_policy #: model:ir.model.fields,help:partner_shipping_policy.field_sale_order__picking_policy @@ -26,18 +28,21 @@ msgid "" "based on the greatest product lead time. Otherwise, it will be based on the " "shortest." msgstr "" +"Se tutti i prodotti vengono consegnati insieme, l'ordine di consegna verrà " +"pianificato in base al tempo di attraversamento maggiore. Altrimenti, verrà " +"utilizzato il più corto." #. module: partner_shipping_policy #: model:ir.model,name:partner_shipping_policy.model_sale_order msgid "Sales Order" -msgstr "" +msgstr "Ordine di vendita" #. module: partner_shipping_policy #: model:ir.model.fields,field_description:partner_shipping_policy.field_res_partner__picking_policy #: model:ir.model.fields,field_description:partner_shipping_policy.field_res_users__picking_policy #: model:ir.model.fields,field_description:partner_shipping_policy.field_sale_order__picking_policy msgid "Shipping Policy" -msgstr "" +msgstr "Politica di spedizione" #. module: partner_shipping_policy #: model:ir.model.fields,help:partner_shipping_policy.field_res_partner__picking_policy @@ -47,3 +52,7 @@ msgid "" "products at once, the delivery order will be scheduled based on the greatest" " product lead time. Otherwise, it will be based on the shortest." msgstr "" +"La politica di spedizione da utilizzare negli ordini di vendita di questo " +"partner. Se si consegnano tutti i prodotti in una volta, l'ordine di " +"consegna verrà pianificato in base al lead time del prodotto più lungo. In " +"caso contrario, verrà basato sul più breve." From 63ca7627f27bd1265be4158cc83b8034f53389b4 Mon Sep 17 00:00:00 2001 From: Samir GUESMI Date: Tue, 4 Feb 2025 16:36:38 +0100 Subject: [PATCH 6/7] [IMP] partner_shipping_policy: pre-commit auto fixes --- partner_shipping_policy/README.rst | 35 ++++++++++--------- partner_shipping_policy/pyproject.toml | 3 ++ .../readme/CONTRIBUTORS.md | 1 + .../readme/CONTRIBUTORS.rst | 2 -- partner_shipping_policy/readme/DESCRIPTION.md | 6 ++++ .../readme/DESCRIPTION.rst | 4 --- partner_shipping_policy/readme/USAGE.md | 4 +++ partner_shipping_policy/readme/USAGE.rst | 2 -- .../static/description/index.html | 22 +++++++----- .../views/res_partner_views.xml | 1 - 10 files changed, 46 insertions(+), 34 deletions(-) create mode 100644 partner_shipping_policy/pyproject.toml create mode 100644 partner_shipping_policy/readme/CONTRIBUTORS.md delete mode 100644 partner_shipping_policy/readme/CONTRIBUTORS.rst create mode 100644 partner_shipping_policy/readme/DESCRIPTION.md delete mode 100644 partner_shipping_policy/readme/DESCRIPTION.rst create mode 100644 partner_shipping_policy/readme/USAGE.md delete mode 100644 partner_shipping_policy/readme/USAGE.rst diff --git a/partner_shipping_policy/README.rst b/partner_shipping_policy/README.rst index 4f90b13a597..0d7690bdbdd 100644 --- a/partner_shipping_policy/README.rst +++ b/partner_shipping_policy/README.rst @@ -17,21 +17,23 @@ Partner Shipping Policy :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fpartner--contact-lightgray.png?logo=github - :target: https://github.com/OCA/partner-contact/tree/16.0/partner_shipping_policy + :target: https://github.com/OCA/partner-contact/tree/18.0/partner_shipping_policy :alt: OCA/partner-contact .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/partner-contact-16-0/partner-contact-16-0-partner_shipping_policy + :target: https://translation.odoo-community.org/projects/partner-contact-18-0/partner-contact-18-0-partner_shipping_policy :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/partner-contact&target_branch=16.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/partner-contact&target_branch=18.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| -A new field is introduced to specify the shipping policy for each partner. -In sales orders, the shipping policy will be set to the delivery address contact shipping policy. -If the field is empty, it falls back to the shipping policy set in the main contact. -If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value. +A new field is introduced to specify the shipping policy for each +partner. In sales orders, the shipping policy will be set to the +delivery address contact shipping policy. If the field is empty, it +falls back to the shipping policy set in the main contact. If neither +the delivery address nor the customer contact has a shipping policy set, +it will be set with the configured default value. **Table of contents** @@ -41,8 +43,10 @@ If neither the delivery address nor the customer contact has a shipping policy s Usage ===== -Fill in the shipping policy field for the contact in the contact form. You can find this new field in the "Sales & Purchase" tab. -When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy. +Fill in the shipping policy field for the contact in the contact form. +You can find this new field in the "Sales & Purchase" tab. When creating +a sales order the shipping policy will be set taking into account the +delivery address shipping policy or the main contact shipping policy. Bug Tracker =========== @@ -50,7 +54,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. @@ -58,18 +62,17 @@ Credits ======= Authors -~~~~~~~ +------- * ForgeFlow Contributors -~~~~~~~~~~~~ - -* Marina Alapont +------------ +- Marina Alapont Maintainers -~~~~~~~~~~~ +----------- This module is maintained by the OCA. @@ -81,6 +84,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/partner-contact `_ project on GitHub. +This module is part of the `OCA/partner-contact `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/partner_shipping_policy/pyproject.toml b/partner_shipping_policy/pyproject.toml new file mode 100644 index 00000000000..4231d0cccb3 --- /dev/null +++ b/partner_shipping_policy/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/partner_shipping_policy/readme/CONTRIBUTORS.md b/partner_shipping_policy/readme/CONTRIBUTORS.md new file mode 100644 index 00000000000..25a2caefd61 --- /dev/null +++ b/partner_shipping_policy/readme/CONTRIBUTORS.md @@ -0,0 +1 @@ +- Marina Alapont \<\> diff --git a/partner_shipping_policy/readme/CONTRIBUTORS.rst b/partner_shipping_policy/readme/CONTRIBUTORS.rst deleted file mode 100644 index 3d26413f19c..00000000000 --- a/partner_shipping_policy/readme/CONTRIBUTORS.rst +++ /dev/null @@ -1,2 +0,0 @@ -* Marina Alapont - diff --git a/partner_shipping_policy/readme/DESCRIPTION.md b/partner_shipping_policy/readme/DESCRIPTION.md new file mode 100644 index 00000000000..273999f65e7 --- /dev/null +++ b/partner_shipping_policy/readme/DESCRIPTION.md @@ -0,0 +1,6 @@ +A new field is introduced to specify the shipping policy for each +partner. In sales orders, the shipping policy will be set to the +delivery address contact shipping policy. If the field is empty, it +falls back to the shipping policy set in the main contact. If neither +the delivery address nor the customer contact has a shipping policy set, +it will be set with the configured default value. diff --git a/partner_shipping_policy/readme/DESCRIPTION.rst b/partner_shipping_policy/readme/DESCRIPTION.rst deleted file mode 100644 index 2bc5db103f5..00000000000 --- a/partner_shipping_policy/readme/DESCRIPTION.rst +++ /dev/null @@ -1,4 +0,0 @@ -A new field is introduced to specify the shipping policy for each partner. -In sales orders, the shipping policy will be set to the delivery address contact shipping policy. -If the field is empty, it falls back to the shipping policy set in the main contact. -If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value. diff --git a/partner_shipping_policy/readme/USAGE.md b/partner_shipping_policy/readme/USAGE.md new file mode 100644 index 00000000000..0d032729d10 --- /dev/null +++ b/partner_shipping_policy/readme/USAGE.md @@ -0,0 +1,4 @@ +Fill in the shipping policy field for the contact in the contact form. +You can find this new field in the "Sales & Purchase" tab. When creating +a sales order the shipping policy will be set taking into account the +delivery address shipping policy or the main contact shipping policy. diff --git a/partner_shipping_policy/readme/USAGE.rst b/partner_shipping_policy/readme/USAGE.rst deleted file mode 100644 index 063dcc49336..00000000000 --- a/partner_shipping_policy/readme/USAGE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fill in the shipping policy field for the contact in the contact form. You can find this new field in the "Sales & Purchase" tab. -When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy. diff --git a/partner_shipping_policy/static/description/index.html b/partner_shipping_policy/static/description/index.html index 11f245a7787..2c3422a74c5 100644 --- a/partner_shipping_policy/static/description/index.html +++ b/partner_shipping_policy/static/description/index.html @@ -369,11 +369,13 @@

Partner Shipping Policy

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:0103ff75596e588ec836ca48c37ee0fdd424696dc4d8c2d6266a66d28c7c85f7 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

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

-

A new field is introduced to specify the shipping policy for each partner. -In sales orders, the shipping policy will be set to the delivery address contact shipping policy. -If the field is empty, it falls back to the shipping policy set in the main contact. -If neither the delivery address nor the customer contact has a shipping policy set, it will be set with the configured default value.

+

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

+

A new field is introduced to specify the shipping policy for each +partner. In sales orders, the shipping policy will be set to the +delivery address contact shipping policy. If the field is empty, it +falls back to the shipping policy set in the main contact. If neither +the delivery address nor the customer contact has a shipping policy set, +it will be set with the configured default value.

Table of contents

    @@ -389,15 +391,17 @@

    Partner Shipping Policy

Usage

-

Fill in the shipping policy field for the contact in the contact form. You can find this new field in the “Sales & Purchase” tab. -When creating a sales order the shipping policy will be set taking into account the delivery address shipping policy or the main contact shipping policy.

+

Fill in the shipping policy field for the contact in the contact form. +You can find this new field in the “Sales & Purchase” tab. When creating +a sales order the shipping policy will be set taking into account the +delivery address shipping policy or the main contact shipping policy.

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.

@@ -423,7 +427,7 @@

Maintainers

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/partner-contact project on GitHub.

+

This module is part of the OCA/partner-contact project on GitHub.

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

diff --git a/partner_shipping_policy/views/res_partner_views.xml b/partner_shipping_policy/views/res_partner_views.xml index 95a5e951200..fc312e8a045 100644 --- a/partner_shipping_policy/views/res_partner_views.xml +++ b/partner_shipping_policy/views/res_partner_views.xml @@ -1,6 +1,5 @@ - res.partner From 59b5a50231f27ee06c9cb38530c24c4919662ee2 Mon Sep 17 00:00:00 2001 From: Samir GUESMI Date: Tue, 4 Feb 2025 16:38:46 +0100 Subject: [PATCH 7/7] [MIG] partner_shipping_policy: Migration to 18.0 --- partner_shipping_policy/__manifest__.py | 2 +- partner_shipping_policy/models/res_partner.py | 6 +++--- .../tests/test_partner_shipping_policy.py | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/partner_shipping_policy/__manifest__.py b/partner_shipping_policy/__manifest__.py index 274f8515b66..2d54cad91b4 100644 --- a/partner_shipping_policy/__manifest__.py +++ b/partner_shipping_policy/__manifest__.py @@ -7,7 +7,7 @@ "author": "ForgeFlow,Odoo Community Association (OCA)", "website": "https://github.com/OCA/partner-contact", "category": "Sales", - "version": "16.0.1.0.0", + "version": "18.0.1.0.0", "license": "AGPL-3", "depends": ["sale_stock"], "data": ["views/res_partner_views.xml"], diff --git a/partner_shipping_policy/models/res_partner.py b/partner_shipping_policy/models/res_partner.py index 49681661ab2..c39962ef381 100644 --- a/partner_shipping_policy/models/res_partner.py +++ b/partner_shipping_policy/models/res_partner.py @@ -10,9 +10,9 @@ class Partner(models.Model): picking_policy = fields.Selection( selection="_get_picking_policy_selection", string="Shipping Policy", - help="Shipping policy to use in this partner's sales orders. If you deliver all " - "products at once, the delivery order will be scheduled based on the greatest " - "product lead time. Otherwise, it will be based on the shortest.", + help="Shipping policy to use in this partner's sales orders. If you deliver " + "all products at once, the delivery order will be scheduled based on the " + "greatest product lead time. Otherwise, it will be based on the shortest.", ) @api.model diff --git a/partner_shipping_policy/tests/test_partner_shipping_policy.py b/partner_shipping_policy/tests/test_partner_shipping_policy.py index 77ec0a837bd..eab578401ce 100644 --- a/partner_shipping_policy/tests/test_partner_shipping_policy.py +++ b/partner_shipping_policy/tests/test_partner_shipping_policy.py @@ -1,7 +1,8 @@ # Copyright 2024 ForgeFlow S.L. (https://www.forgeflow.com) # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -from odoo.tests.common import Form, TransactionCase +from odoo.tests import Form +from odoo.tests.common import TransactionCase class TestPartnerShippingPolicy(TransactionCase):