changeset b56a95400a89 in modules/stock_shipment_measurements:default
details: 
https://hg.tryton.org/modules/stock_shipment_measurements?cmd=changeset&node=b56a95400a89
description:
        Include package weight to weight parcel

        issue10145
        review335721002
diffstat:

 CHANGELOG             |   2 ++
 stock.py              |  17 +++++++++++++++++
 tryton.cfg            |   1 +
 view/package_form.xml |   3 ++-
 4 files changed, 22 insertions(+), 1 deletions(-)

diffs (61 lines):

diff -r fa93541ea52a -r b56a95400a89 CHANGELOG
--- a/CHANGELOG Sat Dec 19 17:08:47 2020 +0100
+++ b/CHANGELOG Mon Mar 29 23:40:01 2021 +0200
@@ -1,3 +1,5 @@
+* Include additional package weight to weight parcel
+
 Version 5.8.0 - 2020-11-02
 * Bug fixes (see mercurial logs for details)
 * Remove support for Python 3.5
diff -r fa93541ea52a -r b56a95400a89 stock.py
--- a/stock.py  Sat Dec 19 17:08:47 2020 +0100
+++ b/stock.py  Mon Mar 29 23:40:01 2021 +0200
@@ -223,6 +223,23 @@
             (move.to_location == location.id)
             & (location.type == 'customer'))
 
+    @fields.depends('carrier')
+    def _parcel_weight(self, parcel):
+        pool = Pool()
+        ModelData = pool.get('ir.model.data')
+        Uom = pool.get('product.uom')
+        kg = Uom(ModelData.get_id('product', 'uom_kilogram'))
+        weight = super()._parcel_weight(parcel)
+        if self.carrier:
+            carrier_uom = self.carrier.weight_uom
+            packages = {p for l in parcel for p in l.package_path}
+            for package in packages:
+                if package.additional_weight:
+                    weight += Uom.compute_qty(
+                        kg, package.additional_weight, carrier_uom,
+                        round=False)
+        return weight
+
 
 class ShipmentOutReturn(MeasurementsMixin, object, metaclass=PoolMeta):
     __name__ = 'stock.shipment.out.return'
diff -r fa93541ea52a -r b56a95400a89 tryton.cfg
--- a/tryton.cfg        Sat Dec 19 17:08:47 2020 +0100
+++ b/tryton.cfg        Mon Mar 29 23:40:01 2021 +0200
@@ -6,6 +6,7 @@
     product_measurements
     stock
 extras_depend:
+    carrier_weight
     stock_package
 xml:
     stock.xml
diff -r fa93541ea52a -r b56a95400a89 view/package_form.xml
--- a/view/package_form.xml     Sat Dec 19 17:08:47 2020 +0100
+++ b/view/package_form.xml     Mon Mar 29 23:40:01 2021 +0200
@@ -2,8 +2,9 @@
 <!-- This file is part of Tryton.  The COPYRIGHT file at the top level of
 this repository contains the full copyright notices and license terms. -->
 <data>
-    <xpath expr="/form/field[@name='children']" position="after">
+    <xpath expr="//page[@id='measurements']" position="inside">
         <label name="additional_weight"/>
         <field name="additional_weight"/>
+        <newline/>
     </xpath>
 </data>

Reply via email to