【问题标题】:Magento - Indicate on credit memo whether items were returned to stockMagento - 在贷项通知单上注明物品是否已退回库存
【发布时间】:2012-11-14 11:54:17
【问题描述】:

我需要自定义贷项凭单页面以存储商品是否已退回库存。

我已在以下位置识别出观察者:

app\code\core\Mage\CatalogInventory\Model\Observer.php
refundOrderInventory()

当管理员提交贷项通知单并勾选“返回库存”复选框时触发。所以我知道我可以添加自己的观察者来编写/保存一些东西。

但我不知道如何为 Credit Memo 产品项目添加额外属性。

谁能指点一下?

更新: 我还可以通过编辑添加额外的 Returned to Stock 表格单元格:

app\design\adminhtml\default\default\template\sales\order\creditmemo\view\items.phtml

app\design\adminhtml\default\default\template\sales\order\creditmemo\view\items\renderer\default.phtml

给我这个:

我已经硬编码了您在其中看到的“YES”值。我需要找到某种方法使其成为可写/可读的贷项备忘录产品属性。

【问题讨论】:

  • 数据库或 html 输入字段中的额外字段?
  • 我需要保存它,所以数据库。这样我就可以在贷项通知单上显示它,就像它重新打开时的文本一样。
  • 我想更好的表达方式是,我需要在贷项通知单项目中添加一个returned_to_stock 属性。

标签: magento


【解决方案1】:

您需要在安装脚本中将属性和列添加到您的 creditmemo 项目实体中。确保您的设置类为Mage_Eav_Model_Entity_Setup,因为Mage_Core_Model_Resource_Setup 中没有addAttribute() 函数。

$installer->addAttribute('creditmemo_item', 'returned_to_stock', array('type' => 'int', 'grid' => true, 'source' => 'adminhtml/system_config_source_yesno'));
$installer->getConnection()->addColumn($installer->getTable('sales/creditmemo_item'), 'returned_to_stock', 'TINYINT(1) unsigned DEFAULT 0');

然后,在您的观察者中(请不要修改您在此处列出的观察者),将值设置为 true,如下所示(我只是复制了您列出的函数,并对其稍作修改以证明我的观点):

public function refundOrderInventory($observer)
{
    $creditmemo = $observer->getEvent()->getCreditmemo();
    $items = array();
    foreach ($creditmemo->getAllItems() as $item) {
        $return = false;
        if ($item->hasBackToStock()) {
            if ($item->getBackToStock() && $item->getQty()) {
                $return = true;
            }
        } elseif (Mage::helper('cataloginventory')->isAutoReturnEnabled()) {
            $return = true;
        }
        if ($return) {
            $item->setReturnedToStock(1);
        }
    }
}

【讨论】:

    猜你喜欢
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-27
    • 1970-01-01
    相关资源
    最近更新 更多