2525use Order ;
2626use Address ;
2727use Country ;
28+ use Currency ;
2829use DbQuery ;
2930use Product ;
3031use LinkCore ;
@@ -74,6 +75,15 @@ public function __construct()
7475 ]));
7576 $ this ->dpdClient = $ clientBuilder ->buildAuthenticatedByPassword ($ username , $ password );
7677
78+ $ this ->dpdClient ->getAuthentication ()->setJwtToken (
79+ Configuration::get ('dpdconnect_jwt_token ' ) ?: null
80+ );
81+
82+ $ this ->dpdClient ->getAuthentication ()->setTokenUpdateCallback (function ($ jwtToken ) {
83+ Configuration::updateValue ('dpdconnect_jwt_token ' , $ jwtToken );
84+ $ this ->dpdClient ->getAuthentication ()->setJwtToken ($ jwtToken );
85+ });
86+
7787 $ this ->dpdError = new DpdError ();
7888 $ this ->dpdParcelPredict = new DpdParcelPredict ();
7989 }
@@ -225,6 +235,8 @@ public function generateShipmentInfo($orderId, $parcelCount, $return)
225235 'phoneNumber ' => Configuration::get ('PS_SHOP_PHONE ' ),
226236 'email ' => Configuration::get ('dpdconnect_email ' ),
227237 'commercialAddress ' => true ,
238+ 'vatnumber ' => (Configuration::get ('dpdconnect_vatnumber ' ) === null ) ? 'null ' : Configuration::get ('dpdconnect_vatnumber ' ),
239+ 'eorinumber ' => (Configuration::get ('dpdconnect_eorinumber ' ) === null ) ? 'null ' : Configuration::get ('dpdconnect_eorinumber ' ),
228240 ],
229241 'receiver ' => [
230242 'name1 ' => $ fullName ,
@@ -234,12 +246,13 @@ public function generateShipmentInfo($orderId, $parcelCount, $return)
234246 'city ' => $ address ->city ,
235247 'phoneNumber ' => $ phone ,
236248 'commercialAddress ' => false ,
237- 'vat_number ' => Configuration::get ('dpdconnect_vatnumber ' ),
238- 'eori_number ' => Configuration::get ('dpdconnect_eorinumber ' ),
249+ 'vatnumber ' => (Configuration:: get ( ' dpdconnect_vatnumber ' ) === null ) ? ' null ' : Configuration::get ('dpdconnect_vatnumber ' ),
250+ 'eorinumber ' => (Configuration:: get ( ' dpdconnect_eorinumber ' ) === null ) ? ' null ' : Configuration::get ('dpdconnect_eorinumber ' ),
239251 ],
240252 'product ' => [
241253 'productCode ' => $ productCode ,
242254 'saturdayDelivery ' => $ saturdayDelivery ,
255+ 'homeDelivery ' => $ this ->dpdParcelPredict ->checkIfPredictCarrier ($ orderId ) || $ this ->dpdParcelPredict ->checkIfSaturdayCarrier ($ orderId )
243256 ],
244257 ];
245258
@@ -276,9 +289,10 @@ public function generateShipmentInfo($orderId, $parcelCount, $return)
276289 array_push ($ shipment ['parcels ' ], $ parcelInfo );
277290 }
278291
292+ $ currency = new Currency ($ tempOrder ->id_currency );
279293 $ shipment ['customs ' ] = [
280294 'terms ' => 'DAP ' ,
281- 'totalCurrency ' => ' EUR ' ,
295+ 'totalCurrency ' => $ currency -> iso_code ,
282296 ];
283297
284298 $ totalAmount = 0 ;
@@ -311,16 +325,19 @@ public function generateShipmentInfo($orderId, $parcelCount, $return)
311325
312326 $ shipment ['customs ' ]['totalAmount ' ] = (float ) $ totalAmount ;
313327
314- $ consignee = [
328+ $ consignor = [
315329 'name1 ' => Configuration::get ('dpdconnect_company ' ),
316330 'street ' => Configuration::get ('dpdconnect_street ' ),
317331 'postalcode ' => Configuration::get ('dpdconnect_postalcode ' ),
318332 'city ' => Configuration::get ('dpdconnect_place ' ),
319333 'country ' => strtoupper (Configuration::get ('dpdconnect_country ' )),
320334 'commercialAddress ' => true ,
335+ 'sprn ' => Configuration::get ('dpdconnect_spr ' ) ?: '' ,
336+ 'vatnumber ' => (Configuration::get ('dpdconnect_vatnumber ' ) === null ) ? 'null ' : Configuration::get ('dpdconnect_vatnumber ' ),
337+ 'eorinumber ' => (Configuration::get ('dpdconnect_eorinumber ' ) === null ) ? 'null ' : Configuration::get ('dpdconnect_eorinumber ' ),
321338 ];
322339
323- $ consignor = [
340+ $ consignee = [
324341 'name1 ' => $ fullName ,
325342 'street ' => $ street ,
326343 'postalcode ' => $ address ->postcode ,
0 commit comments