文件
xionggeshop/addons/shopro_aliyun_express/library/ExpressProviderRouter.php

34 行
1.1 KiB
PHP

<?php
namespace addons\shopro_aliyun_express\library;
use addons\shopro_aliyun_express\library\provider\AliyunExpressProvider;
use addons\shopro_aliyun_express\library\provider\ExpressBirdProvider;
use addons\shopro_aliyun_express\library\provider\KdniaoExpressProvider;
use addons\shopro_aliyun_express\library\provider\ProviderInterface;
class ExpressProviderRouter
{
public static function resolve($provider = null)
{
$provider = $provider ?: ExpressConfig::getInstance()->getProvider();
switch ($provider) {
case 'kdniao':
return new KdniaoExpressProvider();
case 'expressbird':
return new ExpressBirdProvider();
case 'aliyun':
default:
return new AliyunExpressProvider();
}
}
public static function query($waybillNo, $phone = '', $expressCode = '', $provider = null)
{
/** @var ProviderInterface $instance */
$instance = self::resolve($provider);
return $instance->query($waybillNo, $phone, $expressCode);
}
}