本文整理汇总了PHP中Mage_Shipping_Model_Rate_Request::getLimitMethod方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Shipping_Model_Rate_Request::getLimitMethod方法的具体用法?PHP Mage_Shipping_Model_Rate_Request::getLimitMethod怎么用?PHP Mage_Shipping_Model_Rate_Request::getLimitMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Shipping_Model_Rate_Request
的用法示例。
在下文中一共展示了Mage_Shipping_Model_Rate_Request::getLimitMethod方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
}
if ($request->getTntAccount()) {
$r->setTntAccount($request->getTntAccount());
} else {
$r->setTntAccount($this->getConfigData('account'));
}
if ($request->getExpZipCode()) {
$r->setExpZipCode($request->getExpZipCode());
} else {
$r->setExpZipCode(Mage::getStoreConfig('carriers/tnt/code_postal', $this->getStore()));
}
if ($request->getExpCity()) {
$r->setExpCity($request->getExpCity());
} else {
$r->setExpCity(Mage::getStoreConfig('carriers/tnt/ville', $this->getStore()));
}
if ($request->getDestPostcode()) {
$r->setDestPostcode($request->getDestPostcode());
} else {
}
if ($request->getDestCity()) {
$r->setDestCity($request->getDestCity());
} else {
}
$this->_rawRequest = $r;
return $this;
}
示例2: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
}
if ($request->getFedexAccount()) {
$account = $request->getFedexAccount();
} else {
$account = $this->getConfigData('account');
}
$r->setAccount($account);
if ($request->getFedexDropoff()) {
$dropoff = $request->getFedexDropoff();
} else {
$dropoff = $this->getConfigData('dropoff');
}
$r->setDropoffType($dropoff);
if ($request->getFedexPackaging()) {
$packaging = $request->getFedexPackaging();
} else {
$packaging = $this->getConfigData('packaging');
}
$r->setPackaging($packaging);
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry(Mage::getModel('directory/country')->load($origCountry)->getIso2Code());
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig('shipping/origin/postcode', $this->getStore()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountry(Mage::getModel('directory/country')->load($destCountry)->getIso2Code());
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
} else {
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeight($weight);
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$this->_rawRequest = $r;
return $this;
}
示例3: setRequest
/**
* Prepare and set request to this instance
*
* @param Mage_Shipping_Model_Rate_Request $request
* @return Mage_Usa_Model_Shipping_Carrier_Fedex
*/
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
}
if ($request->getFedexAccount()) {
$account = $request->getFedexAccount();
} else {
$account = $this->getConfigData('account');
}
$r->setAccount($account);
if ($request->getFedexDropoff()) {
$dropoff = $request->getFedexDropoff();
} else {
$dropoff = $this->getConfigData('dropoff');
}
$r->setDropoffType($dropoff);
if ($request->getFedexPackaging()) {
$packaging = $request->getFedexPackaging();
} else {
$packaging = $this->getConfigData('packaging');
}
$r->setPackaging($packaging);
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig(Mage_Shipping_Model_Shipping::XML_PATH_STORE_COUNTRY_ID, $request->getStoreId());
}
$r->setOrigCountry(Mage::getModel('directory/country')->load($origCountry)->getIso2Code());
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig(Mage_Shipping_Model_Shipping::XML_PATH_STORE_ZIP, $request->getStoreId()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountry(Mage::getModel('directory/country')->load($destCountry)->getIso2Code());
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
} else {
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeight($weight);
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackagePhysicalValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$r->setMeterNumber($this->getConfigData('meter_number'));
$r->setKey($this->getConfigData('key'));
$r->setPassword($this->getConfigData('password'));
$r->setIsReturn($request->getIsReturn());
$r->setBaseSubtotalInclTax($request->getBaseSubtotalInclTax());
$this->_rawRequest = $r;
return $this;
}
示例4: setRequest
/**
* Prepare and set request to this instance
*
* @param Mage_Shipping_Model_Rate_Request $request
* @return Mage_Usa_Model_Shipping_Carrier_Usps
*/
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
} else {
$r->setService('ALL');
}
if ($request->getUspsUserid()) {
$userId = $request->getUspsUserid();
} else {
$userId = $this->getConfigData('userid');
}
$r->setUserId($userId);
if ($request->getUspsContainer()) {
$container = $request->getUspsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($container);
if ($request->getUspsSize()) {
$size = $request->getUspsSize();
} else {
$size = $this->getConfigData('size');
}
$r->setSize($size);
if ($request->getGirth()) {
$girth = $request->getGirth();
} else {
$girth = $this->getConfigData('girth');
}
$r->setGirth($girth);
if ($request->getHeight()) {
$height = $request->getHeight();
} else {
$height = $this->getConfigData('height');
}
$r->setHeight($height);
if ($request->getLength()) {
$length = $request->getLength();
} else {
$length = $this->getConfigData('length');
}
$r->setLength($length);
if ($request->getWidth()) {
$width = $request->getWidth();
} else {
$width = $this->getConfigData('width');
}
$r->setWidth($width);
if ($request->getUspsMachinable()) {
$machinable = $request->getUspsMachinable();
} else {
$machinable = $this->getConfigData('machinable');
}
$r->setMachinable($machinable);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig(Mage_Shipping_Model_Shipping::XML_PATH_STORE_ZIP, $request->getStoreId()));
}
if ($request->getOrigCountryId()) {
$r->setOrigCountryId($request->getOrigCountryId());
} else {
$r->setOrigCountryId(Mage::getStoreConfig(Mage_Shipping_Model_Shipping::XML_PATH_STORE_COUNTRY_ID, $request->getStoreId()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountryId($destCountry);
if (!$this->_isUSCountry($destCountry)) {
$r->setDestCountryName($this->_getCountryName($destCountry));
}
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeightPounds(floor($weight));
$r->setWeightOunces(round(($weight - floor($weight)) * self::OUNCES_POUND, 1));
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$r->setBaseSubtotalInclTax($request->getBaseSubtotalInclTax());
$this->_rawRequest = $r;
return $this;
}
示例5: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
$r->setStoreId($request->getStoreId());
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
}
if ($request->getDhlId()) {
$id = $request->getDhlId();
} else {
$id = $this->getConfigData('id');
}
$r->setId($id);
if ($request->getDhlPassword()) {
$password = $request->getDhlPassword();
} else {
$password = $this->getConfigData('password');
}
$r->setPassword($password);
if ($request->getDhlAccount()) {
$accountNbr = $request->getDhlAccount();
} else {
$accountNbr = $this->getConfigData('account');
}
$r->setAccountNbr($accountNbr);
if ($request->getDhlShippingKey()) {
$shippingKey = $request->getDhlShippingKey();
} else {
$shippingKey = $this->getConfigData('shipping_key');
}
$r->setShippingKey($shippingKey);
if ($request->getDhlShippingIntlKey()) {
$shippingKey = $request->getDhlShippingIntlKey();
} else {
$shippingKey = $this->getConfigData('shipping_intlkey');
}
$r->setShippingIntlKey($shippingKey);
if ($request->getDhlShipmentType()) {
$shipmentType = $request->getDhlShipmentType();
} else {
$shipmentType = $this->getConfigData('shipment_type');
}
$r->setShipmentType($shipmentType);
if ($request->getDhlDutiable()) {
$shipmentDutible = $request->getDhlDutiable();
} else {
$shipmentDutible = $this->getConfigData('dutiable');
}
$r->setDutiable($shipmentDutible);
if ($request->getDhlDutyPaymentType()) {
$dutypaytype = $request->getDhlDutyPaymentType();
} else {
$dutypaytype = $this->getConfigData('dutypaymenttype');
}
$r->setDutyPaymentType($dutypaytype);
if ($request->getDhlContentDesc()) {
$contentdesc = $request->getDhlContentDesc();
} else {
$contentdesc = $this->getConfigData('contentdesc');
}
$r->setContentDesc($contentdesc);
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
}
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry($origCountry);
/*
* DHL only accepts weight as a whole number. Maximum length is 3 digits.
*/
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$shippingWeight = round(max(1, $weight), 0);
$r->setValue(round($request->getPackageValue(), 2));
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$r->setDestStreet(Mage::helper('core/string')->substr($request->getDestStreet(), 0, 35));
$r->setDestCity($request->getDestCity());
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
//for DHL, puero rico state for US will assume as puerto rico country
//for puerto rico, dhl will ship as international
if ($destCountry == self::USA_COUNTRY_ID && ($request->getDestPostcode() == '00912' || $request->getDestRegionCode() == self::PUERTORICO_COUNTRY_ID)) {
$destCountry = self::PUERTORICO_COUNTRY_ID;
}
$r->setDestCountryId($destCountry);
$r->setDestState($request->getDestRegionCode());
$r->setWeight($shippingWeight);
$r->setFreeMethodWeight($request->getFreeMethodWeight());
$this->_rawRequest = $r;
// $methods = explode(',', $this->getConfigData('allowed_methods'));
//
// $freeMethod = $this->getConfigData('free_method');
//
// $internationcode = $this->getCode('international_searvice');
//.........这里部分代码省略.........
示例6: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
} else {
$r->setService('ALL');
}
if ($request->getUspsUserid()) {
$userId = $request->getUspsUserid();
} else {
$userId = $this->getConfigData('userid');
}
$r->setUserId($userId);
if ($request->getUspsContainer()) {
$container = $request->getUspsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($container);
if ($request->getUspsSize()) {
$size = $request->getUspsSize();
} else {
$size = $this->getConfigData('size');
}
$r->setSize($size);
if ($request->getUspsMachinable()) {
$machinable = $request->getUspsMachinable();
} else {
$machinable = $this->getConfigData('machinable');
}
$r->setMachinable($machinable);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig('shipping/origin/postcode'));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountryId($destCountry);
/*
for GB, we cannot use United Kingdom
*/
if ($destCountry == 'GB') {
$countryName = 'Great Britain and Northern Ireland';
} else {
$countries = Mage::getResourceModel('directory/country_collection')->addCountryIdFilter($destCountry)->load()->getItems();
$country = array_shift($countries);
$countryName = $country->getName();
}
$r->setDestCountryName($countryName);
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeightPounds(floor($weight));
$r->setWeightOunces(round(($weight - floor($weight)) * 16, 1));
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$this->_rawRequest = $r;
return $this;
}
示例7: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
} else {
$r->setService('ALL');
}
if ($request->getUspsUserid()) {
$userId = $request->getUspsUserid();
} else {
$userId = $this->getConfigData('userid');
}
$r->setUserId($userId);
if ($request->getUspsContainer()) {
$container = $request->getUspsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($container);
if ($request->getUspsSize()) {
$size = $request->getUspsSize();
} else {
$size = $this->getConfigData('size');
}
$r->setSize($size);
if ($request->getUspsMachinable()) {
$machinable = $request->getUspsMachinable();
} else {
$machinable = $this->getConfigData('machinable');
}
$r->setMachinable($machinable);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig(Mage_Shipping_Model_Config::XML_PATH_ORIGIN_POSTCODE, $this->getStore()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountryId($destCountry);
if (!$this->_isUSCountry($destCountry)) {
$r->setDestCountryName($this->_getCountryName($destCountry));
}
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeightPounds(floor($weight));
$r->setWeightOunces(round(($weight - floor($weight)) * 16, 1));
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
$this->_rawRequest = $r;
return $this;
}
示例8: process
public function process(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
}
if ($request->getDhlId()) {
$id = $request->getDhlId();
} else {
$id = $this->getConfigData('id');
}
$r->setId($id);
if ($request->getDhlPassword()) {
$password = $request->getDhlPassword();
} else {
$password = $this->getConfigData('password');
}
$r->setPassword($password);
if ($request->getDhlAccount()) {
$accountNbr = $request->getDhlAccount();
} else {
$accountNbr = $this->getConfigData('account');
}
$r->setAccountNbr($accountNbr);
if ($request->getDhlShippingKey()) {
$shippingKey = $request->getDhlShippingKey();
} else {
$shippingKey = $this->getConfigData('shipping_key');
}
$r->setShippingKey($shippingKey);
if ($request->getDhlShippingIntlKey()) {
$shippingKey = $request->getDhlShippingIntlKey();
} else {
$shippingKey = $this->getConfigData('shipping_intlkey');
}
$r->setShippingIntlKey($shippingKey);
if ($request->getDhlShipmentType()) {
$shipmentType = $request->getDhlShipmentType();
} else {
$shipmentType = $this->getConfigData('shipment_type');
}
$r->setShipmentType($shipmentType);
if ($request->getDhlDutiable()) {
$shipmentDutible = $request->getDhlDutiable();
} else {
$shipmentDutible = $this->getConfigData('dutiable');
}
$r->setDutiable($shipmentDutible);
if ($request->getDhlDutyPaymentType()) {
$dutypaytype = $request->getDhlDutyPaymentType();
} else {
$dutypaytype = $this->getConfigData('dutypaymenttype');
}
$r->setDutyPaymentType($dutypaytype);
if ($request->getDhlContentDesc()) {
$contentdesc = $request->getDhlContentDesc();
} else {
$contentdesc = $this->getConfigData('contentdesc');
}
$r->setContentDesc($contentdesc);
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
}
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry($origCountry);
/*
* DHL only accepts weight as a whole number. Maximum length is 3 digits.
*/
$shippingWeight = round(min(1, $request->getPackageWeight()), 0);
$freeMethodWeight = round(min(1, $request->getFreeMethodWeight()), 0);
$r->setValue(round($request->getPackageValue(), 2));
$r->setDestStreet(substr($request->getDestStreet(), 0, 35));
$r->setDestCity($request->getDestCity());
$r->setDestCountryId($request->getDestCountryId());
$r->setDestState($request->getDestRegionCode());
$this->_rawRequest = $r;
$methods = explode(',', $this->getConfigData('allowed_methods'));
$freeMethod = $this->getConfigData('free_method');
$internationcode = $this->getCode('international_searvice');
foreach ($methods as $method) {
if ($method == $internationcode && $r->getDestCountryId() != self::USA_COUNTRY_ID || $method != $internationcode && $r->getDestCountryId() == self::USA_COUNTRY_ID) {
$weight = $freeMethod == $method ? $freeMethodWeight : $shippingWeight;
if ($weight > 0) {
$this->_rawRequest->setWeight($weight);
$this->_rawRequest->setService($method);
$this->_getQuotes();
} else {
$this->_dhlRates[$method] = array('term' => $this->getCode('service', $method), 'price_total' => 0);
}
}
}
return $this;
}
示例9: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setAction($this->getCode('action', 'single'));
$r->setProduct($request->getLimitMethod());
} else {
$r->setAction($this->getCode('action', 'all'));
$r->setProduct('GNDRES');
}
if ($request->getUpsPickup()) {
$pickup = $request->getUpsPickup();
} else {
$pickup = $this->getConfigData('pickup');
}
$r->setPickup($this->getCode('pickup', $pickup));
if ($request->getUpsContainer()) {
$container = $request->getUpsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($this->getCode('container', $container));
if ($request->getUpsDestType()) {
$destType = $request->getUpsDestType();
} else {
$destType = $this->getConfigData('dest_type');
}
$r->setDestType($this->getCode('dest_type', $destType));
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry(Mage::getModel('directory/country')->load($origCountry)->getIso2Code());
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig('shipping/origin/postcode', $this->getStore()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountry(Mage::getModel('directory/country')->load($destCountry)->getIso2Code());
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
} else {
}
$r->setWeight($request->getPackageWeight());
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
if ($request->getUpsUnitMeasure()) {
$unit = $request->getUpsUnitMeasure();
} else {
$unit = $this->getConfigData('unit_of_measure');
}
$r->setUnitMeasure($unit);
$this->_rawRequest = $r;
return $this;
}
示例10: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$accArray = array();
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
//TODO is this reqd?
$r->setService($request->getLimitMethod());
} else {
$r->setService('ALL');
}
$r->setUserId($this->getConfigData('userid'));
$r->setPassword($this->getConfigData('password'));
$r->setBusRole('Shipper');
$r->setPaymentTerms($this->getConfigData('payment_terms'));
$r->setContainer($this->getConfigData('container'));
$r->setAllowedMethods($this->getConfigData('allowed_methods'));
$r->setOriginLiftgateReqd($this->getConfigData('liftgate_origin'));
$r->setOriginResidential($this->getConfigData('residential_origin'));
/* if ($this->getConfigData('hazardous')) {
$r->setHazmatInd('Y');
$accArray[]="ZHM";
} else {
$r->setHazmatInd('N');
}*/
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = Mage::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry(Mage::getModel('directory/country')->load($origCountry)->getIso2Code());
if ($request->getOrigRegionCode()) {
$origRegionCode = $request->getOrigRegionCode();
} else {
$origRegionCode = Mage::getStoreConfig('shipping/origin/region_id', $this->getStore());
if (is_numeric($origRegionCode)) {
$origRegionCode = Mage::getModel('directory/region')->load($origRegionCode)->getCode();
}
}
$r->setOrigRegionCode($origRegionCode);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig('shipping/origin/postcode', $this->getStore()));
}
if ($request->getOrigCity()) {
$r->setOrigCity($request->getOrigCity());
} else {
$r->setOrigCity(Mage::getStoreConfig('shipping/origin/city', $this->getStore()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
//for UPS, puero rico state for US will assume as puerto rico country
if ($destCountry == self::USA_COUNTRY_ID && ($request->getDestPostcode() == '00912' || $request->getDestRegionCode() == self::PUERTORICO_COUNTRY_ID)) {
$destCountry = self::PUERTORICO_COUNTRY_ID;
}
// For UPS, Guam state of the USA will be represented by Guam country
if ($destCountry == self::USA_COUNTRY_ID && $request->getDestRegionCode() == self::GUAM_REGION_CODE) {
$destCountry = self::GUAM_COUNTRY_ID;
}
$r->setDestCountry(Mage::getModel('directory/country')->load($destCountry)->getIso2Code());
$r->setDestRegionCode($request->getDestRegionCode());
if ($request->getDestPostcode()) {
$r->setDestPostal('US' == $r->getDestCountry() ? substr($request->getDestPostcode(), 0, 5) : $request->getDestPostcode());
} else {
}
$r->setPayorName($this->getConfigData('payor_name'));
if ($request->getPayorCountry()) {
$payorCountry = $request->getPayorCountry();
} else {
$payorCountry = $this->getConfigData('payor_country_id');
}
$r->setPayorCountry(Mage::getModel('directory/country')->load($payorCountry)->getIso2Code());
if ($request->getPayorRegionCode()) {
$payorRegionCode = $request->getPayorRegionCode();
} else {
$payorRegionCode = $this->getConfigData('payor_region_id');
if (is_numeric($payorRegionCode)) {
$payorRegionCode = Mage::getModel('directory/region')->load($payorRegionCode)->getCode();
}
}
$r->setPayorRegionCode($payorRegionCode);
if ($request->getPayorPostcode()) {
$r->setPayorPostal($request->getPayorPostcode());
} else {
$r->setPayorPostal($this->getConfigData('payor_postcode'));
}
if ($request->getPayorCity()) {
$r->setPayorCity($request->getPayorCity());
} else {
$r->setPayorCity($this->getConfigData('payor_city'));
}
if ($request->getPayorStreetAddress()) {
$r->setPayorStreetAddress($request->getPayorStreetAddress());
} else {
$r->setPayorStreetAddress($this->getConfigData('payor_street_address'));
//.........这里部分代码省略.........
示例11: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setAction($this->getCode('action', 'single'));
$r->setProduct($request->getLimitMethod());
} else {
$r->setAction($this->getCode('action', 'all'));
$r->setProduct('GND' . $this->getConfigData('dest_type'));
}
if ($request->getUpsPickup()) {
$pickup = $request->getUpsPickup();
} else {
$pickup = $this->getConfigData('pickup');
}
$r->setPickup($this->getCode('pickup', $pickup));
if ($request->getUpsContainer()) {
$container = $request->getUpsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($this->getCode('container', $container));
if ($request->getUpsDestType()) {
$destType = $request->getUpsDestType();
} else {
$destType = $this->getConfigData('dest_type');
}
$r->setDestType($this->getCode('dest_type', $destType));
if ($request->getOrigCountry()) {
$origCountry = $request->getOrigCountry();
} else {
$origCountry = AO::getStoreConfig('shipping/origin/country_id', $this->getStore());
}
$r->setOrigCountry(AO::getModel('directory/country')->load($origCountry)->getIso2Code());
if ($request->getOrigRegionCode()) {
$origRegionCode = $request->getOrigRegionCode();
} else {
$origRegionCode = AO::getStoreConfig('shipping/origin/region_id', $this->getStore());
if (is_numeric($origRegionCode)) {
$origRegionCode = AO::getModel('directory/region')->load($origRegionCode)->getCode();
}
}
$r->setOrigRegionCode($origRegionCode);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(AO::getStoreConfig('shipping/origin/postcode', $this->getStore()));
}
if ($request->getOrigCity()) {
$r->setOrigCity($request->getOrigCity());
} else {
$r->setOrigCity(AO::getStoreConfig('shipping/origin/city', $this->getStore()));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
//for UPS, puero rico state for US will assume as puerto rico country
if ($destCountry == self::USA_COUNTRY_ID && ($request->getDestPostcode() == '00912' || $request->getDestRegionCode() == self::PUERTORICO_COUNTRY_ID)) {
$destCountry = self::PUERTORICO_COUNTRY_ID;
}
$r->setDestCountry(AO::getModel('directory/country')->load($destCountry)->getIso2Code());
$r->setDestRegionCode($request->getDestRegionCode());
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
} else {
}
$weight = $this->getTotalNumOfBoxes($request->getPackageWeight());
$r->setWeight($weight);
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->setFreeMethodWeight($request->getFreeMethodWeight());
}
$r->setValue($request->getPackageValue());
$r->setValueWithDiscount($request->getPackageValueWithDiscount());
if ($request->getUpsUnitMeasure()) {
$unit = $request->getUpsUnitMeasure();
} else {
$unit = $this->getConfigData('unit_of_measure');
}
$r->setUnitMeasure($unit);
$this->_rawRequest = $r;
return $this;
}
示例12: setRequest
public function setRequest(Mage_Shipping_Model_Rate_Request $request)
{
$this->_request = $request;
$r = new Varien_Object();
if ($request->getLimitMethod()) {
$r->setService($request->getLimitMethod());
} else {
$r->setService('ALL');
}
if ($request->getUspsUserid()) {
$userId = $request->getUspsUserid();
} else {
$userId = $this->getConfigData('userid');
}
$r->setUserId($userId);
if ($request->getUspsContainer()) {
$container = $request->getUspsContainer();
} else {
$container = $this->getConfigData('container');
}
$r->setContainer($container);
if ($request->getUspsSize()) {
$size = $request->getUspsSize();
} else {
$size = $this->getConfigData('size');
}
$r->setSize($size);
if ($request->getUspsMachinable()) {
$machinable = $request->getUspsMachinable();
} else {
$machinable = $this->getConfigData('machinable');
}
$r->setMachinable($machinable);
if ($request->getOrigPostcode()) {
$r->setOrigPostal($request->getOrigPostcode());
} else {
$r->setOrigPostal(Mage::getStoreConfig('shipping/origin/postcode'));
}
if ($request->getDestCountryId()) {
$destCountry = $request->getDestCountryId();
} else {
$destCountry = self::USA_COUNTRY_ID;
}
$r->setDestCountryId($destCountry);
$countries = Mage::getResourceModel('directory/country_collection')->addCountryIdFilter($destCountry)->load()->getItems();
$country = array_shift($countries);
$r->setDestCountryName($country->getName());
if ($request->getDestPostcode()) {
$r->setDestPostal($request->getDestPostcode());
} else {
}
$r->setWeightPounds(floor($request->getPackageWeight()));
$r->setWeightOunces(floor(($request->getPackageWeight() - floor($request->getPackageWeight())) * 16));
if ($request->getFreeMethodWeight() != $request->getPackageWeight()) {
$r->settFreeMethodWeightPounds(floor($request->getFreeMethodWeight()));
$r->settFreeMethodWeightOunces(($request->getFreeMethodWeight() - floor($request->getFreeMethodWeight())) * 16);
}
$r->setValue($request->getPackageValue());
$this->_rawRequest = $r;
return $this;
}