本文整理汇总了PHP中Magento\Framework\DataObject::getCountryRecipient方法的典型用法代码示例。如果您正苦于以下问题:PHP DataObject::getCountryRecipient方法的具体用法?PHP DataObject::getCountryRecipient怎么用?PHP DataObject::getCountryRecipient使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Framework\DataObject
的用法示例。
在下文中一共展示了DataObject::getCountryRecipient方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _getAllowedContainers
/**
* Get allowed containers of carrier
*
* @param \Magento\Framework\DataObject|null $params
* @return array|bool
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.NPathComplexity)
*/
protected function _getAllowedContainers(\Magento\Framework\DataObject $params = null)
{
$containersAll = $this->getContainerTypesAll();
if (empty($containersAll)) {
return [];
}
if (empty($params)) {
return $containersAll;
}
$containersFilter = $this->getContainerTypesFilter();
$containersFiltered = [];
$method = $params->getMethod();
$countryShipper = $params->getCountryShipper();
$countryRecipient = $params->getCountryRecipient();
if (empty($containersFilter)) {
return $containersAll;
}
if (!$params || !$method || !$countryShipper || !$countryRecipient) {
return $containersAll;
}
if ($countryShipper == self::USA_COUNTRY_ID && $countryRecipient == self::USA_COUNTRY_ID) {
$direction = 'within_us';
} else {
if ($countryShipper == self::USA_COUNTRY_ID && $countryRecipient != self::USA_COUNTRY_ID) {
$direction = 'from_us';
} else {
return $containersAll;
}
}
foreach ($containersFilter as $dataItem) {
$containers = $dataItem['containers'];
$filters = $dataItem['filters'];
if (!empty($filters[$direction]['method']) && in_array($method, $filters[$direction]['method'])) {
foreach ($containers as $container) {
if (!empty($containersAll[$container])) {
$containersFiltered[$container] = $containersAll[$container];
}
}
}
}
return !empty($containersFiltered) ? $containersFiltered : $containersAll;
}
示例2: getContentTypes
/**
* Return content types of package
*
* @param \Magento\Framework\DataObject $params
* @return array
*/
public function getContentTypes(\Magento\Framework\DataObject $params)
{
$countryShipper = $params->getCountryShipper();
$countryRecipient = $params->getCountryRecipient();
if ($countryShipper == self::USA_COUNTRY_ID && $countryRecipient != self::USA_COUNTRY_ID) {
return ['MERCHANDISE' => __('Merchandise'), 'SAMPLE' => __('Sample'), 'GIFT' => __('Gift'), 'DOCUMENTS' => __('Documents'), 'RETURN' => __('Return'), 'OTHER' => __('Other')];
}
return [];
}
示例3: getDeliveryConfirmationTypes
/**
* Return delivery confirmation types of carrier
*
* @param \Magento\Framework\DataObject|null $params
* @return array|bool
*/
public function getDeliveryConfirmationTypes(\Magento\Framework\DataObject $params = null)
{
$countryRecipient = $params != null ? $params->getCountryRecipient() : null;
$deliveryConfirmationTypes = [];
switch ($this->_getDeliveryConfirmationLevel($countryRecipient)) {
case self::DELIVERY_CONFIRMATION_PACKAGE:
$deliveryConfirmationTypes = [1 => __('Delivery Confirmation'), 2 => __('Signature Required'), 3 => __('Adult Signature Required')];
break;
case self::DELIVERY_CONFIRMATION_SHIPMENT:
$deliveryConfirmationTypes = [1 => __('Signature Required'), 2 => __('Adult Signature Required')];
break;
default:
break;
}
array_unshift($deliveryConfirmationTypes, __('Not Required'));
return $deliveryConfirmationTypes;
}