<?php class Bysoft_Export_Model_Order extends Mage_Core_Model_Abstract { protected function _construct(){ $this->_init("export/order"); $this->_write = Mage::getSingleton('core/resource')->getConnection('core_write'); } public function truncate_table() { $sql = 'truncate table bysoft_exportorder'; $this->_write->query($sql); } public function run($start = '', $end = '') { $this->truncate_table(); //get all complete or processing or shipped order $order_collection = Mage::getModel('sales/order')->getCollection() ->addFieldToFilter('status', array('in'=>array('complete','processing','shipped'))); if ($start) { $start_year = substr($start, 0, 4); $start_month = substr($start, 4, 2); $start_date = substr($start, 6, 2); $start_datetime = $start_year . '-' . $start_month . '-' .$start_date . ' 0:0:0'; $order_collection->addFieldToFilter('created_at', array('gt'=>$start_datetime)); } if ($end) { $end_year = substr($end, 0, 4); $end_month = substr($end, 4, 2); $end_date = substr($start, 6, 2); $end_datetime = $end_year . '-' . $end_month . '-' .$end_date . ' 23:59:59'; $order_collection->addFieldToFilter('created_at', array('lt'=>$end_datetime)); } $order_collection->setOrder('created_at', 'ASC'); foreach ($order_collection as $_order) { //get all order itemes $order_increment_id = $_order->getData('increment_id'); $purchased_on = $_order->getData('created_at'); $ordered_items = $_order->getAllVisibleItems(); $shippingId = $_order->getShippingAddress()->getId(); $shippingAddress = Mage::getModel('sales/order_address')->load($shippingId); $shipping_to_name = $shippingAddress->getData('firstname') . ' ' . $shippingAddress->getData('lastname'); $status = $_order->getData('status'); foreach ($ordered_items as $item) { $sku = $item->getSku(); $_product = Mage::getModel('catalog/product')->loadByAttribute('sku', $sku); if ($_product) { $_product = Mage::getModel('catalog/product')->load($_product->getId()); //get config sku if ($_product->getTypeId() == 'simple') { $parentIds = Mage::getResourceSingleton('catalog/product_type_configurable') ->getParentIdsByChild($_product->getId()); $conifg_product = Mage::getModel('catalog/product')->load($parentIds[0]); } else { $conifg_product = $_product; } $config_sku = $conifg_product->getSku(); //get third category name $categoryIds = $conifg_product->getCategoryIds(); foreach ($categoryIds as $cid) { $cate = Mage::getModel('catalog/category')->load($cid); if ($cate->getLevel() == 4) { //get category name $cate_name = $cate->getName(); $cate_name_parent = Mage::getModel('catalog/category')->load($cate->getParentId()); if ($cate_name_parent) { //get gender $gender_cate = Mage::getModel('catalog/category')->load($cate_name_parent->getParentId()); $gender = $gender_cate->getName(); } } } //get en name $en_name = $_product->getData('en_name'); //get size $size = $_product->getAttributeText('size'); //get qty $qty = $item->getData('qty_ordered'); //get original_price $org_price = $_product->getData('price'); //get sp price $special_price = $_product->getSpecialPrice(); //get row_total $paid_amount =$item->getPrice() - $item->getDiscountAmount(); //save into order object $export_oder = Mage::getModel('export/order'); $export_oder->setData('order_increment_id', $order_increment_id); $export_oder->setData('purchased_on',$purchased_on); $export_oder->setData('ship_to_name', $shipping_to_name); $export_oder->setData('status', $status); $export_oder->setData('cate_name', $cate_name); $export_oder->setData('gender', $gender); $export_oder->setData('en_name', $en_name); $export_oder->setData('config_sku', $config_sku); $export_oder->setData('size', $size); $export_oder->setData('qty', $qty); $export_oder->setData('org_price',$org_price); $export_oder->setData('special_price', $special_price); $export_oder->setData('paid_amount', $paid_amount); $export_oder->save(); var_dump('order:' . $order_increment_id . ' item id:' .$item->getId() . ' save successed!'); } } } } }
相关推荐
Magento Order Export 模块是为Magento电子商务平台设计的一个功能,用于导出订单数据。这个模块允许管理员方便地将Magento商店中的订单信息导出为可处理的格式,例如CSV或XML,以便进行数据分析、备份或其他外部...
magento 1.8 sample data 1.6
Magento 商城 Data Feed 是一种数据交换机制,它允许商家将产品信息、库存状态等关键数据导出,以便在其他平台(如广告网络、价格比较网站或市场)上使用。Data Feed 对于电子商务运营至关重要,因为它提高了产品的...
Magento Dataflow是一个强大的工具,主要用于在Magento电子商务平台中导入和导出数据,如产品、客户、订单等。这个工具允许商家高效地管理大量的数据,从而提高运营效率。"magento-shb-dataflow"是一个增强版的Data...
这会创建 Magento 需要的所有表,包括 `catalog_product_entity`(产品信息)、`sales_flat_order`(订单数据)、`customer_entity`(客户信息)等。 4. **加载样本数据**:除了基础架构,这个包可能还包含一些示例...
"DeleteOrder"插件是针对Magento系统的一个特定解决方案,解决了在默认情况下,Magento系统不支持直接删除订单的问题。这个插件允许用户在必要时永久删除订单,但需要注意的是,一旦订单被删除,数据将无法恢复,...
"Magento Placed Order Export"是一个专门为Magento设计的扩展,其核心功能是在用户下订单时自动导出订单的详细信息,方便商家进行数据管理、分析或与第三方系统集成。 首先,让我们深入了解Magento的订单处理流程...
`Varien_Data_Collection`是Magento中最常用的数据集合类,它为开发者提供了一种高效的方式来管理多个对象。其主要特点包括: - **数据存储**:集合中的数据通常是以对象的形式存储的,这些对象可以是任何继承自`...
此 magento 产品导出基于 Aten Software Product Data Exporter for Magento。 修复了 db 表前缀的错误,删除了未使用的列,仅类别导出类别 ID(特别是 magmi 导入) 如何使用: 打开 export.php 并在第 43 行...
文件名"magento-sample-data-1.6.0.0"中的数字"1.6.0.0"表示这是针对Magento 1.6.0.0版本的,这意味着它可能不适用于更高或更低版本的Magento。在安装前,确保你的Magento环境与数据包兼容,以免出现兼容性问题。 ...
在本主题“Magento数据演示”中,我们将深入探讨如何利用提供的压缩包文件`magento_sample_data_for_1.9.0.0.sql`来设置一个预填充的数据环境,以便快速了解和测试Magento 1.9系统。 首先,`magento_sample_data_...
同时,检查并修改`core_config_data`表中的`web/unsecure/base_url`和`web/secure/base_url`,确保它们指向新服务器的URL。 如果目标服务器有SSL证书,还需要在Magento后台系统设置中启用SSL,并更新相应的URL。 ...
压缩的Magento 1.9样本数据提供以下变体: 65M 64M 40M 26M 24M 19M 样本数据包的大小为317MB,这很荒谬,由于找不到合适的替代来源,我决定一起整理一个小脚本,以压缩样本中的图像和MP3文件数据存档。 我的意图是...
**SYSTEMLOGS**, **DATAFLOW**, **EAVENTITYTYPE**, **EAVATTRIBUTE**:这些表涉及标签管理、系统布局、API接口、目录管理、事件报告、系统日志、数据流控制、实体类型定义和属性定义,共同支持了Magento系统的全面...
Magento-sample-data-1.6.1.0这个压缩包就提供了这样的数据集,让你能够在安装Magento 1.6.1.0时预填充商店信息,无需从零开始创建所有内容。 样例数据的安装通常包括以下几个步骤: 1. **下载并解压**: 首先,你...
该压缩包文件“magento-sample-data-1.6.1.0”通常包括以下内容: 1. **产品数据**:各种类型的示例商品,例如服装、电子产品、家居用品等,每个产品都有详细的描述、图片、价格、库存信息等,帮助用户了解如何在...
- **$paymentData** (`Array`, 默认为 `array('method' => 'bkext_payment')`): 支付方式数据,包括支付方法等信息。 - **$session** (`Object`, 可选): 会话对象,用于设置报价到会话中。 #### 四、函数实现细节 1...
4. **使用Magento的shell命令**:Magento提供了一系列的shell脚本,位于`app/code/core/Mage/Dataflow/Model/Convert/Adapter/Db/Sql/`目录下,可以用来生成SQL导出。通过命令行工具,你可以调用这些脚本,比如`...