1+ #!/usr/bin/env python
2+ """
3+ This module prints a label used to certify International Priority shipments.
4+ """
5+ import logging
6+ from cert_config import CONFIG_OBJ , SHIPPER_CONTACT_INFO , SHIPPER_ADDRESS , LABEL_SPECIFICATION
7+ from cert_config import transfer_config_dict
8+ from cert_config import LabelPrinterClass
9+ from fedex .services .ship_service import FedexProcessShipmentRequest
10+
11+ logging .basicConfig (level = logging .INFO )
12+
13+ shipment = FedexProcessShipmentRequest (CONFIG_OBJ )
14+ shipment .RequestedShipment .DropoffType = 'REGULAR_PICKUP'
15+ shipment .RequestedShipment .ServiceType = 'FEDEX_GROUND'
16+ shipment .RequestedShipment .PackagingType = 'YOUR_PACKAGING'
17+ shipment .RequestedShipment .PackageDetail = 'INDIVIDUAL_PACKAGES'
18+
19+ # Shipper contact info.
20+ transfer_config_dict (shipment .RequestedShipment .Shipper .Contact ,
21+ SHIPPER_CONTACT_INFO )
22+
23+ # Shipper address.
24+ transfer_config_dict (shipment .RequestedShipment .Shipper .Address ,
25+ SHIPPER_ADDRESS )
26+
27+ # Recipient contact info.
28+ shipment .RequestedShipment .Recipient .Contact .PersonName = 'Recipient Name'
29+ shipment .RequestedShipment .Recipient .Contact .CompanyName = 'Recipient Company'
30+ shipment .RequestedShipment .Recipient .Contact .PhoneNumber = '9012637906'
31+
32+ # Recipient address
33+ shipment .RequestedShipment .Recipient .Address .StreetLines = ['Address Line 1' ]
34+ shipment .RequestedShipment .Recipient .Address .City = 'Herndon'
35+ shipment .RequestedShipment .Recipient .Address .StateOrProvinceCode = 'VA'
36+ shipment .RequestedShipment .Recipient .Address .PostalCode = '20171'
37+ shipment .RequestedShipment .Recipient .Address .CountryCode = 'US'
38+
39+ shipment .RequestedShipment .ShippingChargesPayment .PaymentType = 'SENDER'
40+
41+ # Label config.
42+ transfer_config_dict (shipment .RequestedShipment .LabelSpecification ,
43+ LABEL_SPECIFICATION )
44+
45+ package1_weight = shipment .create_wsdl_object_of_type ('Weight' )
46+ package1_weight .Value = 1.0
47+ package1_weight .Units = "LB"
48+ package1 = shipment .create_wsdl_object_of_type ('RequestedPackageLineItem' )
49+ package1 .Weight = package1_weight
50+ shipment .add_package (package1 )
51+
52+ shipment .send_request ()
53+ device = LabelPrinterClass (shipment )
54+ device .print_label ()
55+
56+ shipment .RequestedShipment .Recipient .Address .StreetLines = ['456 Peach St' ]
57+ shipment .RequestedShipment .Recipient .Address .City = 'Atlanta'
58+ shipment .RequestedShipment .Recipient .Address .StateOrProvinceCode = 'GA'
59+ shipment .RequestedShipment .Recipient .Address .PostalCode = '30303'
60+ shipment .RequestedShipment .Recipient .Address .CountryCode = 'US'
61+
62+ shipment .send_request ()
63+ device = LabelPrinterClass (shipment )
64+ device .print_label ()
65+
66+ shipment .RequestedShipment .Recipient .Address .StreetLines = ['321 Ground Rd' ]
67+ shipment .RequestedShipment .Recipient .Address .City = 'New York'
68+ shipment .RequestedShipment .Recipient .Address .StateOrProvinceCode = 'NY'
69+ shipment .RequestedShipment .Recipient .Address .PostalCode = '10042'
70+ shipment .RequestedShipment .Recipient .Address .CountryCode = 'US'
71+
72+ shipment .send_request ()
73+ device = LabelPrinterClass (shipment )
74+ device .print_label ()
0 commit comments