我正在考虑将来自不同订单的多件商品放入同一个包装箱中。理想情况下,当我去发货时,在该订单的商品部分,该客户的所有未清项目都会显示出来。我已将生成项目的代码隔离到:
应用程序/设计/ adminhtml /默认/ MyTemplate的/模板/销售/订单/装运/创建/ items.phtml
以及该文件中的代码行:
$ _ items = $ this-> getShipment() - > getAllItems();
在函数getAllItems中我添加了以下代码:
$cust_orders = Mage::getModel('sales/order')->getCollection()
->addAttributeToSelect('*')
->addAttributeToSelect('entity_id')
->addFieldToFilter('customer_id',$this->getCustomerId());
foreach ($cust_orders as $order) {
$order_id = $order->getEntityId();
$cust_items = Mage::getModel('sales/order_item')
->getCollection()
->addAttributeToSelect('*')
->addFieldToFilter('order_id', $order_id);
foreach ($cust_items as $cust_item) {
{ help! }
}
我需要一些帮助!部分。我正在尝试将新数组($ cust_items)正确地放入数组$ items中。但我似乎无法想象那部分...它似乎是使用getItemsCollection函数填充对象;我正在做的事情已经漂浮了......
如果您有任何新想法,请告诉我。感谢。
答案 0 :(得分:0)
$cust_orders = Mage::getModel('sales/order')->getCollection()
->addAttributeToSelect('*')
->addAttributeToSelect('entity_id')
->addFieldToFilter('customer_id',$this->getCustomerId());
foreach ($cust_orders as $order) {
$order_id = $order->getEntityId();
$cust_items = Mage::getModel('sales/order_shipment_item')
->getCollection()
->addAttributeToSelect('*')
->addFieldToFilter('parent_id', $order_id);
foreach ($cust_items as $cust_item) {
$items[] = $cust_item;
}
其他一些小调整和更多测试,但我看起来很好。
这个答案显然是错误的......仍在努力寻找解决方案......对我来说非常困惑......