changeset 7b9b11081b50 in modules/sale_shipment_cost:6.2
details: 
https://hg.tryton.org/modules/sale_shipment_cost?cmd=changeset&node=7b9b11081b50
description:
        Use 'default' for default value of shipment cost on party

        issue11774
        review424051003
        (grafted from bc97fcd2805c49d32eb835c4a3d00f3690ea0ee6)
diffstat:

 party.py |  14 +++++++++++++-
 sale.py  |   2 +-
 2 files changed, 14 insertions(+), 2 deletions(-)

diffs (43 lines):

diff -r 316bc6a7d45f -r 7b9b11081b50 party.py
--- a/party.py  Wed Aug 17 23:46:23 2022 +0200
+++ b/party.py  Fri Oct 28 00:43:56 2022 +0200
@@ -4,7 +4,15 @@
 from trytond.pool import PoolMeta, Pool
 from trytond.transaction import Transaction
 
-from trytond.modules.sale.party import get_sale_methods
+
+def get_sale_methods(field_name):
+    @classmethod
+    def func(cls):
+        pool = Pool()
+        Sale = pool.get('sale.sale')
+        return Sale.fields_get([field_name])[field_name]['selection'] + [
+            ('default', "")]
+    return func
 
 
 class Party(metaclass=PoolMeta):
@@ -25,6 +33,10 @@
     get_sale_shipment_cost_method = get_sale_methods('shipment_cost_method')
 
     @classmethod
+    def default_sale_shipment_cost_method(cls, **pattern):
+        return 'default'
+
+    @classmethod
     def copy(cls, parties, default=None):
         context = Transaction().context
         default = default.copy() if default else {}
diff -r 316bc6a7d45f -r 7b9b11081b50 sale.py
--- a/sale.py   Wed Aug 17 23:46:23 2022 +0200
+++ b/sale.py   Fri Oct 28 00:43:56 2022 +0200
@@ -153,7 +153,7 @@
             self.carrier = self.available_carriers[0]
         elif not self.available_carriers:
             self.carrier = None
-        if self.party and self.party.sale_shipment_cost_method:
+        if self.party and self.party.sale_shipment_cost_method != 'default':
             self.shipment_cost_method = self.party.sale_shipment_cost_method
         else:
             self.shipment_cost_method = self.default_shipment_cost_method()

Reply via email to