Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/old/vendor/extmag/dhlshipping2/Helper/Response/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/vendor/extmag/dhlshipping2/Helper/Response/Ship.php
<?php
/**
 * Copyright © Extmag. All rights reserved.
 */

namespace Extmag\DhlShipping\Helper\Response;

use Exception;

class Ship extends Dhl
{
    /**
     * @var string
     */
    protected $requestType = 'Ship';

    /**
     * @inheritdoc
     */
    protected function parseSuccess(array $data, string $context)
    {
        $service = [];
        try {
            if (!empty($data['AirwayBillNumber'])) {
                $service['ShipmentIdentification'] = $data['AirwayBillNumber'];

                if (!empty($data['ShippingCharge'])
                    && !empty($data['Rated']) && $data['Rated'] == 'Y'
                ) {
                    $service['TotalCharge'] = $data['ShippingCharge'];
                }

                $service['Currency'] = $data['CurrencyCode'] ?: 'NaN';
                if (!empty($data['QtdSInAdCur'])) {
                    foreach ($data['QtdSInAdCur'] as $qtdSInAdCur) {
                        if (!empty($qtdSInAdCur['CurrencyCode'])
                            && $qtdSInAdCur['CurrencyCode'] == $service['Currency']
                        ) {
                            $service['TotalCharge'] = $qtdSInAdCur['ShippingCharge'];
                            break;
                        }
                    }
                }

                $iterLabel = 0;
                foreach ($this->get($data['LabelImage']['MultiLabels']['MultiLabel'] ?? []) as $item) {
                    $docNames = explode("_", $item['DocName'], 2);
                    /* Get ArchiveDoc */
                    if (trim($docNames[0]) == 'Archive') {
                        $service['ArchiveDoc'][] = [
                            'Format' => $item['DocFormat'],
                            'Data'   => $item['DocImageVal'],
                        ];
                    }
                    /* END Get ArchiveDoc */

                    /* Get Labels */
                    if (trim($docNames[0]) == 'TransportLabel') {
                        $service['Labels'][] = [
                            'TrackingNumber' => trim($docNames[1]),
                            'Format'         => $item['DocFormat'],
                            'Data'           => $item['DocImageVal'],
                        ];
                        $iterLabel ++;
                    }
                    /* END Get Labels */

                    /* Get CustomInvoiceImage */
                    if (trim($docNames[0]) == 'CustomInvoiceImage') {
                        $service['Form'][] = [
                            'Type'   => 'invoice',
                            'Format' => $item['DocFormat'],
                            'Data'   => $item['DocImageVal'],
                        ];
                    }
                    /* END Get CustomInvoiceImage */
                }
            }
        } catch (Exception $e) {
            $this->manager->warning($e->getMessage() . ' :  ' . $e->getTraceAsString());
        }

        $service['Status']  = 1;
        $service['Carrier'] = $this->carrier;
        $service['Context'] = $context;
        $service['Type']    = $this->requestType;

        return $service;
    }
}

Spamworldpro Mini