我已经为运输方法集成了矩阵率模块。但我得到了额外的要求
通过更改仓库选项显示动态运费。
例如,当用户选择仓库A,然后时,我有2个仓库A和B.运费价格应相应更新。与仓库B的情况相同。
我很困惑,我该怎么做?
请帮忙。
答案 0 :(得分:0)
我正在努力争取类似的要求。我必须根据用户选择的邮资方式设置运费。
如果它可以帮助你,我将继续这样做:
创建一个自定义送货方式,让用户选择仓库/邮资/其他。它将显示在OnePageCheckout运输方法步骤中。您可以轻松创建一种新的送货方式,只需谷歌即可。
在模板/结帐/ shipping_method / available.phtml中添加if($_rate->getCode()=='yourmodule_code')
条件
然后编写用户可以看到的单选按钮的代码。例如。对于Warehouse1和Warehouse2。
根据用户选择使用您的模块的collectRates()方法[已覆盖]设置运费率
public function collectRates(Mage_Shipping_Model_Rate_Request $request) {
$result = Mage::getModel('shipping/rate_result');
if($show){
$method = Mage::getModel('shipping/rate_result_method');
$method->setCarrier($this->_code);
$method->setMethod($this->_code);
$method->setCarrierTitle($this->getConfigData('title'));
$method->setMethodTitle($this->getConfigData('name'));
$method->setPrice($price); //this price you can get from available.phtml using AJAX
$method->setCost($price);
$result->append($method);
}else{
$error = Mage::getModel('shipping/rate_result_error');
$error->setCarrier($this->_code);
$error->setCarrierTitle($this->getConfigData('name'));
$error->setErrorMessage($this->getConfigData('specificerrmsg'));
$result->append($error);
}
return $result;
}
希望它有所帮助。