magento 开发 — 新增一个简单的退货流程

1,860 人次阅读
没有评论

共计 727 个字符,预计需要花费 2 分钟才能阅读完成。

在现有的Magento系统中,客户在前台并没有一个可以申请退货的地方,退货操作只能由商家一方在后台操作。应客户需求,我为系统新增了一个前台客户可以申请退货的功能,并新增一个订单状态来保存客户申请之后的订单状态,下面简单描述下流程。

1、新增一个订单状态

Magento的订单状态是由配置文件中配置的,打开config.xml文件,在global标签中新增如下代码

[php]<sales>
<order>
<statuses>
<refunding translate="label"><label>On Refunding</label></refunding>
</statuses>
<states>
<refunding>
<statuses>
<refunding/>
</statuses>
</refunding>
</states>
</order>
</sales>[/php]

我把它命名为“退货申请中”,这时可以在后台的订单状态下拉框中看到这个新状态
magento 开发 -- 新增一个简单的退货流程
2、前台我的订单处新增可供客户点击的“退货”链接

判断订单状态,如果订单状态为完成(complete),在状态后新增超链接“退货”

magento 开发 -- 新增一个简单的退货流程

3、对客户点击退货时改变订单状态

将上面的退货的链接地址指向Controller的一个Action,当前订单的订单号作为参数传递给这个Action,修改订单状态的代码如下

[php]$order = Mage::getModel(‘sales/order’)->loadByIncrementId($orderid);

$order->setData(‘status’,’refunding’);
$order->save();[/php]

其中refunding是之前新增的订单状态

操作后前台效果

magento 开发 -- 新增一个简单的退货流程

后台效果

magento 开发 -- 新增一个简单的退货流程

正文完
 0