errogaht/delivery-aggregator

目前不可用!PЭК、Деловые линии、Желдор服务聚合器

1.0.0 2017-05-23 09:55 UTC

This package is not auto-updated.

Last update: 2024-09-29 03:05:59 UTC


README

Broccoli-dev 制作

服务聚合器,适用于需要运输大量货物的PЭК、Деловые линии、Желдор、Del线

目前是第一个可以使用的版本

composer require errogaht/delivery-aggregator

目前只支持PЭК、Del线

在example_usage.php中展示了如何使用

use Errogaht\DeliveryAggregator\Carrier\Dellin;
use Errogaht\DeliveryAggregator\Carrier\Jde;
use Errogaht\DeliveryAggregator\Carrier\Pec;
use Errogaht\DeliveryAggregator\Entity\Cargo;
use Errogaht\DeliveryAggregator\Entity\CargoItem;
use Errogaht\DeliveryAggregator\Entity\Transfer;
use Errogaht\DeliveryAggregator\ShippingManager;

$config = require __DIR__ . '/config.php';


$cargo = new Cargo();
$item = new CargoItem();
$item->setHeight(250)->setLength(252)->setWidth(252)->setWeight(15000)->setPrice(1000);
$cargo->addItem($item);
$cargo->addItem($item);


$transfer = new Transfer();
$transfer
    ->setIsInsurance(true)
    ->setIsDelivery(false)
    ->setCityFrom('Москва')
    ->setCityTo('Владивосток')
    ->setIsPickup(false);

$manager = new ShippingManager($config);
$manager->setCargo($cargo);
$manager->setTransfer($transfer);


$carrier = new Pec();
$carrierTransfer = $carrier->getCarrierTransfer();
$carrierTransfer->cargoIsHardPack = true;
$manager->addCarrier($carrier);



$carrier = new Dellin();
$carrierTransfer = $carrier->getCarrierTransfer();
$carrierTransfer->cargoIsHardPack = true;
$carrierTransfer->from = '7800000000000000000000000';
$manager->addCarrier($carrier);

$offers = $manager->calculate();
d($offers);