changeset d067454b00c6 in modules/stock_package_shipping_dpd:default
details: 
https://hg.tryton.org/modules/stock_package_shipping_dpd?cmd=changeset&node=d067454b00c6
description:
        Add wizard to print shipping labels

        issue10834
        review375701002
diffstat:

 carrier.py                      |  7 +++++++
 stock.py                        |  3 +++
 tests/scenario_shipping_dpd.rst |  2 ++
 3 files changed, 12 insertions(+), 0 deletions(-)

diffs (46 lines):

diff -r 1f7037d2bba9 -r d067454b00c6 carrier.py
--- a/carrier.py        Tue Oct 05 12:45:39 2021 +0200
+++ b/carrier.py        Mon Oct 11 18:50:11 2021 +0200
@@ -107,3 +107,10 @@
                     'invisible': Eval('shipping_service') != 'dpd',
                     }),
             ]
+
+    @property
+    def shipping_label_mimetype(self):
+        mimetype = super().shipping_label_mimetype
+        if self.shipping_service == 'dpd':
+            mimetype = 'application/pdf'
+        return mimetype
diff -r 1f7037d2bba9 -r d067454b00c6 stock.py
--- a/stock.py  Tue Oct 05 12:45:39 2021 +0200
+++ b/stock.py  Mon Oct 11 18:50:11 2021 +0200
@@ -124,6 +124,7 @@
         if not credential.depot or not credential.token:
             credential.update_token()
 
+        carrier = shipment.carrier
         shipping_client = get_client(credential.server, SHIPMENT_SERVICE)
         print_options = self.get_print_options(shipment)
         packages = shipment.root_packages
@@ -178,6 +179,8 @@
         parcels = response.parcelInformation
         for package, label, parcel in zip_longest(packages, labels, parcels):
             package.shipping_label = fields.Binary.cast(label.getvalue())
+            package.shipping_label_mimetype = (
+                carrier.shipping_label_mimetype)
             package.shipping_reference = parcel.parcelLabelNumber
         Package.save(packages)
         shipment.save()
diff -r 1f7037d2bba9 -r d067454b00c6 tests/scenario_shipping_dpd.rst
--- a/tests/scenario_shipping_dpd.rst   Tue Oct 05 12:45:39 2021 +0200
+++ b/tests/scenario_shipping_dpd.rst   Mon Oct 11 18:50:11 2021 +0200
@@ -221,6 +221,8 @@
     >>> pack, = shipment.root_packages
     >>> pack.shipping_label is not None
     True
+    >>> pack.shipping_label_mimetype
+    'application/pdf'
     >>> pack.shipping_reference is not None
     True
     >>> 
pack.shipping_tracking_url.startswith('https://tracking.dpd.de/status/')

Reply via email to