Version Notes
This is stable version of this extension and has been tested on various version of community editions.
In this particular version we are supporting it to run on PHP V 5.4.X
Download this release
Release Info
Developer | Rave Infosys |
Extension | Raveinfosys_OrderExporter |
Version | 1.0.0 |
Comparing to | |
See all releases |
Version 1.0.0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter.php +12 -0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit.php +45 -0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Form.php +19 -0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Tab/Form.php +76 -0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Tabs.php +24 -0
- app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Grid.php +143 -0
- app/code/community/Raveinfosys/Exporter/Block/Exporter.php +17 -0
- app/code/community/Raveinfosys/Exporter/Block/Sales/Order/Form/Form.php +12 -0
- app/code/community/Raveinfosys/Exporter/Block/Sales/Order/Items.php +12 -0
- app/code/community/Raveinfosys/Exporter/Helper/Data.php +98 -0
- app/code/community/Raveinfosys/Exporter/Model/Createorder.php +444 -0
- app/code/community/Raveinfosys/Exporter/Model/Exporter.php +136 -0
- app/code/community/Raveinfosys/Exporter/Model/Exportorders.php +321 -0
- app/code/community/Raveinfosys/Exporter/Model/Importorders.php +280 -0
- app/code/community/Raveinfosys/Exporter/Model/Operations/Creditmemo.php +86 -0
- app/code/community/Raveinfosys/Exporter/Model/Operations/Invoice.php +48 -0
- app/code/community/Raveinfosys/Exporter/Model/Operations/Shipment.php +50 -0
- app/code/community/Raveinfosys/Exporter/controllers/Adminhtml/ExporterController.php +57 -0
- app/code/community/Raveinfosys/Exporter/controllers/Adminhtml/ImporterController.php +46 -0
- app/code/community/Raveinfosys/Exporter/etc/config.xml +138 -0
- app/design/adminhtml/default/default/layout/exporter.xml +20 -0
- app/etc/modules/Raveinfosys_Exporter.xml +9 -0
- package.xml +19 -0
- var/raveinfosys/exporter/order_exception_log.htm +1 -0
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter.php
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter extends Mage_Adminhtml_Block_Widget_Grid_Container
|
3 |
+
{
|
4 |
+
public function __construct()
|
5 |
+
{
|
6 |
+
$this->_controller = 'adminhtml_exporter';
|
7 |
+
$this->_blockGroup = 'exporter';
|
8 |
+
$this->_headerText = Mage::helper('exporter')->__('Order Export');
|
9 |
+
$this->_addButtonLabel = Mage::helper('exporter')->__('Export All Orders');
|
10 |
+
parent::__construct();
|
11 |
+
}
|
12 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit.php
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
|
4 |
+
{
|
5 |
+
public function __construct()
|
6 |
+
{
|
7 |
+
parent::__construct();
|
8 |
+
|
9 |
+
$this->_objectId = 'id';
|
10 |
+
$this->_blockGroup = 'exporter';
|
11 |
+
$this->_controller = 'adminhtml_exporter';
|
12 |
+
|
13 |
+
$this->_updateButton('save', 'label', Mage::helper('exporter')->__('Save Item'));
|
14 |
+
$this->_updateButton('delete', 'label', Mage::helper('exporter')->__('Delete Item'));
|
15 |
+
|
16 |
+
$this->_addButton('saveandcontinue', array(
|
17 |
+
'label' => Mage::helper('adminhtml')->__('Save And Continue Edit'),
|
18 |
+
'onclick' => 'saveAndContinueEdit()',
|
19 |
+
'class' => 'save',
|
20 |
+
), -100);
|
21 |
+
|
22 |
+
$this->_formScripts[] = "
|
23 |
+
function toggleEditor() {
|
24 |
+
if (tinyMCE.getInstanceById('exporter_content') == null) {
|
25 |
+
tinyMCE.execCommand('mceAddControl', false, 'exporter_content');
|
26 |
+
} else {
|
27 |
+
tinyMCE.execCommand('mceRemoveControl', false, 'exporter_content');
|
28 |
+
}
|
29 |
+
}
|
30 |
+
|
31 |
+
function saveAndContinueEdit(){
|
32 |
+
editForm.submit($('edit_form').action+'back/edit/');
|
33 |
+
}
|
34 |
+
";
|
35 |
+
}
|
36 |
+
|
37 |
+
public function getHeaderText()
|
38 |
+
{
|
39 |
+
if( Mage::registry('exporter_data') && Mage::registry('exporter_data')->getId() ) {
|
40 |
+
return Mage::helper('exporter')->__("Edit Item '%s'", $this->htmlEscape(Mage::registry('exporter_data')->getTitle()));
|
41 |
+
} else {
|
42 |
+
return Mage::helper('exporter')->__('Add Item');
|
43 |
+
}
|
44 |
+
}
|
45 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Form.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
|
4 |
+
{
|
5 |
+
protected function _prepareForm()
|
6 |
+
{
|
7 |
+
$form = new Varien_Data_Form(array(
|
8 |
+
'id' => 'edit_form',
|
9 |
+
'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))),
|
10 |
+
'method' => 'post',
|
11 |
+
'enctype' => 'multipart/form-data'
|
12 |
+
)
|
13 |
+
);
|
14 |
+
|
15 |
+
$form->setUseContainer(true);
|
16 |
+
$this->setForm($form);
|
17 |
+
return parent::_prepareForm();
|
18 |
+
}
|
19 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Tab/Form.php
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter_Edit_Tab_Form extends Mage_Adminhtml_Block_Widget_Form
|
4 |
+
{
|
5 |
+
protected function _prepareForm()
|
6 |
+
{
|
7 |
+
$form = new Varien_Data_Form(array(
|
8 |
+
'id' => 'config_form',
|
9 |
+
'action' => $this->getUrl('*/*/importOrders'),
|
10 |
+
'method' => 'post',
|
11 |
+
'enctype' => 'multipart/form-data'
|
12 |
+
));
|
13 |
+
$form->setUseContainer(true);
|
14 |
+
$this->setForm($form);
|
15 |
+
$fieldset = $form->addFieldset('exporter_form', array('legend'=>Mage::helper('exporter')->__('Import Orders')));
|
16 |
+
|
17 |
+
$fieldset->addField('store_id', 'select', array(
|
18 |
+
'name' => 'store_id',
|
19 |
+
'label' => Mage::helper('exporter')->__('Store View'),
|
20 |
+
'title' => Mage::helper('exporter')->__('Store View'),
|
21 |
+
'required' => true,
|
22 |
+
'values' => Mage::getModel('exporter/exporter')->getStoreIds(),
|
23 |
+
));
|
24 |
+
|
25 |
+
|
26 |
+
$fieldset->addField('import_limit', 'select', array(
|
27 |
+
'label' => Mage::helper('exporter')->__('Order Import Limit'),
|
28 |
+
'name' => 'import_limit',
|
29 |
+
'required' => true,
|
30 |
+
'values' => array(
|
31 |
+
array(
|
32 |
+
'value' => '50',
|
33 |
+
'label' => Mage::helper('exporter')->__('50'),
|
34 |
+
),
|
35 |
+
|
36 |
+
array(
|
37 |
+
'value' => '100',
|
38 |
+
'label' => Mage::helper('exporter')->__('100'),
|
39 |
+
),
|
40 |
+
|
41 |
+
array(
|
42 |
+
'value' => '150',
|
43 |
+
'label' => Mage::helper('exporter')->__('150'),
|
44 |
+
),
|
45 |
+
|
46 |
+
array(
|
47 |
+
'value' => '200',
|
48 |
+
'label' => Mage::helper('exporter')->__('200'),
|
49 |
+
),
|
50 |
+
),
|
51 |
+
));
|
52 |
+
|
53 |
+
$fieldset->addField('order_csv', 'file', array(
|
54 |
+
'label' => Mage::helper('exporter')->__('Orders CSV File : '),
|
55 |
+
'required' => true,
|
56 |
+
'name' => 'order_csv',
|
57 |
+
'after_element_html' => '</br>Note : <small>Strictly recommend to use the csv file which has been generated by the same module.</small>',
|
58 |
+
));
|
59 |
+
|
60 |
+
$fieldset->addField('submit', 'submit', array(
|
61 |
+
'value' => 'Import',
|
62 |
+
'after_element_html' => '<small></small>',
|
63 |
+
'class' => 'form-button',
|
64 |
+
'tabindex' => 1
|
65 |
+
));
|
66 |
+
|
67 |
+
if ( Mage::getSingleton('adminhtml/session')->getExporterData() )
|
68 |
+
{
|
69 |
+
$form->setValues(Mage::getSingleton('adminhtml/session')->getExporterData());
|
70 |
+
Mage::getSingleton('adminhtml/session')->setExporterData(null);
|
71 |
+
} elseif ( Mage::registry('exporter_data') ) {
|
72 |
+
$form->setValues(Mage::registry('exporter_data')->getData());
|
73 |
+
}
|
74 |
+
return parent::_prepareForm();
|
75 |
+
}
|
76 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Edit/Tabs.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter_Edit_Tabs extends Mage_Adminhtml_Block_Widget_Tabs
|
4 |
+
{
|
5 |
+
|
6 |
+
public function __construct()
|
7 |
+
{
|
8 |
+
parent::__construct();
|
9 |
+
$this->setId('exporter_tabs');
|
10 |
+
$this->setDestElementId('edit_form');
|
11 |
+
$this->setTitle(Mage::helper('exporter')->__('Import Orders'));
|
12 |
+
}
|
13 |
+
|
14 |
+
protected function _beforeToHtml()
|
15 |
+
{
|
16 |
+
$this->addTab('form_section', array(
|
17 |
+
'label' => Mage::helper('exporter')->__('Import Orders'),
|
18 |
+
'title' => Mage::helper('exporter')->__('Import Orders'),
|
19 |
+
'content' => $this->getLayout()->createBlock('exporter/adminhtml_exporter_edit_tab_form')->toHtml(),
|
20 |
+
));
|
21 |
+
|
22 |
+
return parent::_beforeToHtml();
|
23 |
+
}
|
24 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Adminhtml/Exporter/Grid.php
ADDED
@@ -0,0 +1,143 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Block_Adminhtml_Exporter_Grid extends Mage_Adminhtml_Block_Widget_Grid
|
4 |
+
{
|
5 |
+
public function __construct()
|
6 |
+
{
|
7 |
+
parent::__construct();
|
8 |
+
$this->setId('sales_order_export_grid');
|
9 |
+
$this->setUseAjax(true);
|
10 |
+
$this->setDefaultSort('created_at');
|
11 |
+
$this->setDefaultDir('DESC');
|
12 |
+
$this->setSaveParametersInSession(true);
|
13 |
+
}
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Retrieve collection class
|
17 |
+
*
|
18 |
+
* @return string
|
19 |
+
*/
|
20 |
+
protected function _getCollectionClass()
|
21 |
+
{
|
22 |
+
return 'sales/order_grid_collection';
|
23 |
+
}
|
24 |
+
|
25 |
+
protected function _prepareCollection()
|
26 |
+
{
|
27 |
+
$collection = Mage::getResourceModel($this->_getCollectionClass());
|
28 |
+
$this->setCollection($collection);
|
29 |
+
return parent::_prepareCollection();
|
30 |
+
}
|
31 |
+
|
32 |
+
protected function _prepareColumns()
|
33 |
+
{
|
34 |
+
|
35 |
+
$this->addColumn('real_order_id', array(
|
36 |
+
'header'=> Mage::helper('sales')->__('Order #'),
|
37 |
+
'width' => '80px',
|
38 |
+
'type' => 'text',
|
39 |
+
'index' => 'increment_id',
|
40 |
+
));
|
41 |
+
|
42 |
+
if (!Mage::app()->isSingleStoreMode()) {
|
43 |
+
$this->addColumn('store_id', array(
|
44 |
+
'header' => Mage::helper('sales')->__('Purchased From (Store)'),
|
45 |
+
'index' => 'store_id',
|
46 |
+
'type' => 'store',
|
47 |
+
'store_view'=> true,
|
48 |
+
'display_deleted' => true,
|
49 |
+
));
|
50 |
+
}
|
51 |
+
|
52 |
+
$this->addColumn('created_at', array(
|
53 |
+
'header' => Mage::helper('sales')->__('Purchased On'),
|
54 |
+
'index' => 'created_at',
|
55 |
+
'type' => 'datetime',
|
56 |
+
'width' => '100px',
|
57 |
+
));
|
58 |
+
|
59 |
+
$this->addColumn('billing_name', array(
|
60 |
+
'header' => Mage::helper('sales')->__('Bill to Name'),
|
61 |
+
'index' => 'billing_name',
|
62 |
+
));
|
63 |
+
|
64 |
+
$this->addColumn('shipping_name', array(
|
65 |
+
'header' => Mage::helper('sales')->__('Ship to Name'),
|
66 |
+
'index' => 'shipping_name',
|
67 |
+
));
|
68 |
+
|
69 |
+
$this->addColumn('base_grand_total', array(
|
70 |
+
'header' => Mage::helper('sales')->__('G.T. (Base)'),
|
71 |
+
'index' => 'base_grand_total',
|
72 |
+
'type' => 'currency',
|
73 |
+
'currency' => 'base_currency_code',
|
74 |
+
));
|
75 |
+
|
76 |
+
$this->addColumn('grand_total', array(
|
77 |
+
'header' => Mage::helper('sales')->__('G.T. (Purchased)'),
|
78 |
+
'index' => 'grand_total',
|
79 |
+
'type' => 'currency',
|
80 |
+
'currency' => 'order_currency_code',
|
81 |
+
));
|
82 |
+
|
83 |
+
$this->addColumn('status', array(
|
84 |
+
'header' => Mage::helper('sales')->__('Status'),
|
85 |
+
'index' => 'status',
|
86 |
+
'type' => 'options',
|
87 |
+
'width' => '70px',
|
88 |
+
'options' => Mage::getSingleton('sales/order_config')->getStatuses(),
|
89 |
+
));
|
90 |
+
|
91 |
+
if (Mage::getSingleton('admin/session')->isAllowed('sales/order/actions/view')) {
|
92 |
+
$this->addColumn('action',
|
93 |
+
array(
|
94 |
+
'header' => Mage::helper('sales')->__('Action'),
|
95 |
+
'width' => '50px',
|
96 |
+
'type' => 'action',
|
97 |
+
'getter' => 'getId',
|
98 |
+
'actions' => array(
|
99 |
+
array(
|
100 |
+
'caption' => Mage::helper('sales')->__('View'),
|
101 |
+
'url' => array('base'=>'adminhtml/sales_order/view'),
|
102 |
+
'field' => 'order_id'
|
103 |
+
)
|
104 |
+
),
|
105 |
+
'filter' => false,
|
106 |
+
'sortable' => false,
|
107 |
+
'index' => 'stores',
|
108 |
+
'is_system' => true,
|
109 |
+
));
|
110 |
+
}
|
111 |
+
|
112 |
+
|
113 |
+
return parent::_prepareColumns();
|
114 |
+
}
|
115 |
+
|
116 |
+
protected function _prepareMassaction()
|
117 |
+
{
|
118 |
+
$this->setMassactionIdField('entity_id');
|
119 |
+
$this->getMassactionBlock()->setFormFieldName('order_ids');
|
120 |
+
$this->getMassactionBlock()->setUseSelectAll(false);
|
121 |
+
|
122 |
+
$this->getMassactionBlock()->addItem('export_order', array(
|
123 |
+
'label'=> Mage::helper('sales')->__('Export Orders'),
|
124 |
+
'url' => $this->getUrl('*/*/exportCsv'),
|
125 |
+
));
|
126 |
+
|
127 |
+
|
128 |
+
return $this;
|
129 |
+
}
|
130 |
+
|
131 |
+
public function getGridUrl()
|
132 |
+
{
|
133 |
+
return $this->getUrl('*/*/grid', array('_current'=>true));
|
134 |
+
}
|
135 |
+
|
136 |
+
public function getRowUrl($row)
|
137 |
+
{
|
138 |
+
return false;
|
139 |
+
}
|
140 |
+
|
141 |
+
|
142 |
+
|
143 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Exporter.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Raveinfosys_Exporter_Block_Exporter extends Mage_Core_Block_Template
|
3 |
+
{
|
4 |
+
public function _prepareLayout()
|
5 |
+
{
|
6 |
+
return parent::_prepareLayout();
|
7 |
+
}
|
8 |
+
|
9 |
+
public function getExporter()
|
10 |
+
{
|
11 |
+
if (!$this->hasData('exporter')) {
|
12 |
+
$this->setData('exporter', Mage::registry('exporter'));
|
13 |
+
}
|
14 |
+
return $this->getData('exporter');
|
15 |
+
|
16 |
+
}
|
17 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Sales/Order/Form/Form.php
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Raveinfosys_Exporter_Block_Sales_Order_Form_Form extends Mage_Adminhtml_Block_Sales_Order_Shipment_View_Form
|
3 |
+
{
|
4 |
+
public function canCreateShippingLabel()
|
5 |
+
{
|
6 |
+
$shippingCarrier = $this->getOrder()->getShippingCarrier();
|
7 |
+
if($shippingCarrier)
|
8 |
+
return $shippingCarrier && $shippingCarrier->isShippingLabelsAvailable();
|
9 |
+
else
|
10 |
+
return $shippingCarrier;
|
11 |
+
}
|
12 |
+
}
|
app/code/community/Raveinfosys/Exporter/Block/Sales/Order/Items.php
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Raveinfosys_Exporter_Block_Sales_Order_Items extends Mage_Adminhtml_Block_Sales_Order_Shipment_Create_Items
|
3 |
+
{
|
4 |
+
public function canCreateShippingLabel()
|
5 |
+
{
|
6 |
+
$shippingCarrier = $this->getOrder()->getShippingCarrier();
|
7 |
+
if($shippingCarrier)
|
8 |
+
return $shippingCarrier && $shippingCarrier->isShippingLabelsAvailable();
|
9 |
+
else
|
10 |
+
return $shippingCarrier;
|
11 |
+
}
|
12 |
+
}
|
app/code/community/Raveinfosys/Exporter/Helper/Data.php
ADDED
@@ -0,0 +1,98 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Helper_Data extends Mage_Core_Helper_Abstract
|
4 |
+
{
|
5 |
+
public $error_file = '';
|
6 |
+
|
7 |
+
public function __construct()
|
8 |
+
{
|
9 |
+
$this->error_file = Mage::getBaseDir('var') .'/raveinfosys/exporter/order_exception_log.htm';
|
10 |
+
$handle = fopen($this->error_file, "a+");
|
11 |
+
chmod($this->error_file, 0777);
|
12 |
+
}
|
13 |
+
|
14 |
+
public function logException(Exception $exception,$order_id,$type,$line_nuber = '')
|
15 |
+
{
|
16 |
+
$message = $exception->getMessage();
|
17 |
+
$code = $exception->getCode();
|
18 |
+
$file = $exception->getFile();
|
19 |
+
$line = $exception->getLine();
|
20 |
+
$trace = $exception->getTraceAsString();
|
21 |
+
$date = date('M d, Y h:iA');
|
22 |
+
|
23 |
+
if($type=='order'){
|
24 |
+
$log_message = "<p><strong>Order Id:</strong> {$order_id}
|
25 |
+
<p><strong>Error Message:</strong> {$message}</p>
|
26 |
+
<p><strong>Line Number:</strong> {$line_nuber}</p>";
|
27 |
+
}
|
28 |
+
else if($type=='invoice'){
|
29 |
+
$log_message = "<p><strong>Invoice Error : </strong></p>
|
30 |
+
<p><strong>Order Id:</strong> {$order_id}</p>
|
31 |
+
<p><strong>Error Message:</strong> {$message}</p>";
|
32 |
+
}
|
33 |
+
else if($type=='shipment'){
|
34 |
+
$log_message = "<p><strong>Shipment Error : </strong></p>
|
35 |
+
<p><strong>Order Id:</strong> {$order_id}</p>
|
36 |
+
<p><strong>Error Message:</strong> {$message}</p>";
|
37 |
+
}
|
38 |
+
else if($type=='creditmemo'){
|
39 |
+
$log_message = "<p><strong>Creditmemo Error : </strong></p>
|
40 |
+
<p><strong>Order Id:</strong> {$order_id}</p>
|
41 |
+
<p><strong>Error Message:</strong> {$message}</p>";
|
42 |
+
}
|
43 |
+
|
44 |
+
if( is_file($this->error_file) === false ) {
|
45 |
+
file_put_contents($this->error_file, '');
|
46 |
+
}
|
47 |
+
|
48 |
+
$content = file_get_contents($this->error_file);
|
49 |
+
file_put_contents($this->error_file, $content.$log_message);
|
50 |
+
}
|
51 |
+
|
52 |
+
public function logAvailable($order_id,$type,$line_nuber)
|
53 |
+
{
|
54 |
+
$message = "Order id already exist";
|
55 |
+
$log_message = "<p><strong>Order Id:</strong> {$order_id}</p>
|
56 |
+
<p><strong>Error Message:</strong> {$message}</p>
|
57 |
+
<p><strong>Line Number:</strong> {$line_nuber}</p>";
|
58 |
+
|
59 |
+
if( is_file($this->error_file) === false ) {
|
60 |
+
file_put_contents($this->error_file, '');
|
61 |
+
}
|
62 |
+
$content = file_get_contents($this->error_file);
|
63 |
+
file_put_contents($this->error_file, $content.$log_message);
|
64 |
+
}
|
65 |
+
|
66 |
+
public function header()
|
67 |
+
{
|
68 |
+
file_put_contents($this->error_file, '<h3 style="text-align:center;">Error information:</h3><hr /><br />');
|
69 |
+
}
|
70 |
+
|
71 |
+
public function isPrintable()
|
72 |
+
{
|
73 |
+
if(filesize($this->error_file)>67)
|
74 |
+
return true;
|
75 |
+
}
|
76 |
+
|
77 |
+
public function footer()
|
78 |
+
{
|
79 |
+
$content = file_get_contents($this->error_file);
|
80 |
+
file_put_contents($this->error_file, $content.'<br /><hr /><br /><br />');
|
81 |
+
}
|
82 |
+
|
83 |
+
public function unlinkFile()
|
84 |
+
{
|
85 |
+
unlink($this->error_file);
|
86 |
+
}
|
87 |
+
|
88 |
+
public function getVersion()
|
89 |
+
{
|
90 |
+
$m= new Mage;
|
91 |
+
$version=$m->getVersion();
|
92 |
+
if(in_array($version,array('1.5.0.0','1.5.0.1','1.5.1.0','1.6.0.0','1.9.1.1','1.10.0.2','1.10.1.1','1.11.0.0')))
|
93 |
+
return true;
|
94 |
+
else
|
95 |
+
return false;
|
96 |
+
}
|
97 |
+
|
98 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Createorder.php
ADDED
@@ -0,0 +1,444 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Createorder extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
public $last_order_increment_id = null ;
|
6 |
+
public $order_items = array() ;
|
7 |
+
public $shipped_item = array() ;
|
8 |
+
public $invoiced_item = array() ;
|
9 |
+
public $credit_item = array() ;
|
10 |
+
public $canceled_item = array() ;
|
11 |
+
public $partial_shipped = false;
|
12 |
+
public $partial_credited = false;
|
13 |
+
public $partial_invoiced = false;
|
14 |
+
public $order_status = null;
|
15 |
+
public $order_detai_arr = null;
|
16 |
+
public $parent_id_flag = 0;
|
17 |
+
public $parent_id = 0;
|
18 |
+
public $store_id = 0;
|
19 |
+
public $invoice_created_at = '';
|
20 |
+
public $shipment_created_at = '';
|
21 |
+
|
22 |
+
public function _construct()
|
23 |
+
{
|
24 |
+
$this->setLastOrderItemId();
|
25 |
+
}
|
26 |
+
|
27 |
+
public function setItemData()
|
28 |
+
{
|
29 |
+
$order = $this->getOrderModel($this->last_order_increment_id);
|
30 |
+
$shipped_item = array();
|
31 |
+
$invoiced_item = array();
|
32 |
+
$credit_item = array();
|
33 |
+
$canceled_item = array();
|
34 |
+
$itemCount = 0;
|
35 |
+
$orderItems = $this->order_items;
|
36 |
+
foreach($order->getAllItems() as $item)
|
37 |
+
{
|
38 |
+
$shipped_item[$item->getItemId()] = $orderItems[$itemCount]['qty_shipped'];
|
39 |
+
$invoiced_item[$item->getItemId()] = $orderItems[$itemCount]['qty_invoiced'];
|
40 |
+
$credit_item[$item->getItemId()] = $orderItems[$itemCount]['qty_refunded'];
|
41 |
+
$canceled_item[$item->getItemId()] = $orderItems[$itemCount]['qty_canceled'];
|
42 |
+
|
43 |
+
if($orderItems[$itemCount]['qty_shipped']>0)
|
44 |
+
$this->partial_shipped = true;
|
45 |
+
|
46 |
+
if($orderItems[$itemCount]['qty_invoiced']>0)
|
47 |
+
$this->partial_invoiced = true;
|
48 |
+
|
49 |
+
if($orderItems[$itemCount]['qty_refunded']>0)
|
50 |
+
$this->partial_credited = true;
|
51 |
+
|
52 |
+
$itemCount++;
|
53 |
+
}
|
54 |
+
|
55 |
+
$this->invoiced_item = $invoiced_item;
|
56 |
+
$this->shipped_item = $shipped_item;
|
57 |
+
$this->credit_item = $credit_item;
|
58 |
+
$this->canceled_item = $canceled_item;
|
59 |
+
}
|
60 |
+
|
61 |
+
public function setGlobalData($last_order_increment_id,$order_items,$sales_order_arr)
|
62 |
+
{
|
63 |
+
$this->last_order_increment_id = $last_order_increment_id;
|
64 |
+
$this->order_items = $order_items;
|
65 |
+
$this->order_detai_arr = $sales_order_arr;
|
66 |
+
$this->order_status = $sales_order_arr['order_state'];
|
67 |
+
$this->invoice_created_at = $sales_order_arr['invoice_created_at'];
|
68 |
+
$this->shipment_created_at = $sales_order_arr['shipment_created_at'];
|
69 |
+
$this->setTime($last_order_increment_id,$sales_order_arr);
|
70 |
+
$this->setItemData();
|
71 |
+
}
|
72 |
+
|
73 |
+
public function setTime($last_order_increment_id,$sales_order_arr)
|
74 |
+
{
|
75 |
+
Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id)
|
76 |
+
->setCreatedAt($sales_order_arr['created_at'])
|
77 |
+
->setUpdatedAt($sales_order_arr['updated_at'])
|
78 |
+
->save()
|
79 |
+
->unsetData();
|
80 |
+
}
|
81 |
+
|
82 |
+
public function setLastOrderItemId()
|
83 |
+
{
|
84 |
+
$resource = Mage::getSingleton('core/resource');
|
85 |
+
$conn = $resource->getConnection('core_read');
|
86 |
+
$results = $conn->query("SHOW TABLE STATUS LIKE '".$resource->getTableName('sales/order_item')."'")->fetchAll();
|
87 |
+
foreach($results as $data)
|
88 |
+
$this->parent_id_flag = $data['Auto_increment']-1;
|
89 |
+
}
|
90 |
+
|
91 |
+
|
92 |
+
//To create order
|
93 |
+
public function createOrder($sales_order_arr,$sales_order_item_arr,$store_id)
|
94 |
+
{
|
95 |
+
$this->store_id = $store_id;
|
96 |
+
if(!$this->orderIdStatus($sales_order_arr['increment_id']))
|
97 |
+
return 2;
|
98 |
+
|
99 |
+
$transaction = Mage::getSingleton('core/resource_transaction');
|
100 |
+
$order = Mage::getModel('sales/order')
|
101 |
+
->setIncrementId($sales_order_arr['increment_id'])
|
102 |
+
->setStoreId($this->store_id)
|
103 |
+
->setStatus($sales_order_arr['order_status'])
|
104 |
+
->setHoldBeforeState($sales_order_arr['hold_before_state'])
|
105 |
+
->setHoldBeforeStatus($sales_order_arr['hold_before_status'])
|
106 |
+
->setIsVirtual($sales_order_arr['is_virtual'])
|
107 |
+
->setBaseCurrencyCode($sales_order_arr['base_currency_code'])
|
108 |
+
->setStoreCurrencyCode($sales_order_arr['store_currency_code'])
|
109 |
+
->setGlobalCurrencyCode($sales_order_arr['store_currency_code'])
|
110 |
+
->setOrderCurrencyCode($sales_order_arr['order_currency_code']);
|
111 |
+
|
112 |
+
// Set Customer data
|
113 |
+
|
114 |
+
$custm_detail = $this->getCustomerInfo($sales_order_arr['customer_email']);
|
115 |
+
|
116 |
+
if($custm_detail)
|
117 |
+
{
|
118 |
+
$order->setCustomerEmail($custm_detail['email'])
|
119 |
+
->setCustomerFirstname($custm_detail['firstname'])
|
120 |
+
->setCustomerLastname($custm_detail['lastname'])
|
121 |
+
->setCustomerId($custm_detail['entity_id'])
|
122 |
+
->setCustomerGroupId($custm_detail['group_id']);
|
123 |
+
}
|
124 |
+
else
|
125 |
+
{
|
126 |
+
$order->setCustomerEmail($sales_order_arr['customer_email'])
|
127 |
+
->setCustomerFirstname($sales_order_arr['customer_firstname'])
|
128 |
+
->setCustomerLastname($sales_order_arr['customer_lasttname'])
|
129 |
+
->setCustomerIsGuest(1)
|
130 |
+
->setCustomerGroupId(0);
|
131 |
+
}
|
132 |
+
|
133 |
+
|
134 |
+
// Set Billing Address
|
135 |
+
$billingAddress = Mage::getModel('sales/order_address')
|
136 |
+
->setStoreId($this->store_id)
|
137 |
+
->setAddressType(Mage_Sales_Model_Quote_Address::TYPE_BILLING)
|
138 |
+
->setCustomerAddressId($sales_order_arr['billing_address']['customer_address_id'])
|
139 |
+
->setPrefix($sales_order_arr['billing_address']['prefix'])
|
140 |
+
->setFirstname($sales_order_arr['billing_address']['firstname'])
|
141 |
+
->setMiddlename($sales_order_arr['billing_address']['middlename'])
|
142 |
+
->setLastname($sales_order_arr['billing_address']['lastname'])
|
143 |
+
->setSuffix($sales_order_arr['billing_address']['suffix'])
|
144 |
+
->setCompany($sales_order_arr['billing_address']['company'])
|
145 |
+
->setStreet($sales_order_arr['billing_address']['street'])
|
146 |
+
->setCity($sales_order_arr['billing_address']['city'])
|
147 |
+
->setCountryId($sales_order_arr['billing_address']['country_id'])
|
148 |
+
->setRegion($sales_order_arr['billing_address']['region'])
|
149 |
+
->setPostcode($sales_order_arr['billing_address']['postcode'])
|
150 |
+
->setTelephone($sales_order_arr['billing_address']['telephone'])
|
151 |
+
->setFax($sales_order_arr['billing_address']['fax']);
|
152 |
+
$order->setBillingAddress($billingAddress);
|
153 |
+
|
154 |
+
// Set Shipping Address
|
155 |
+
$shippingAddress = Mage::getModel('sales/order_address')
|
156 |
+
->setStoreId($this->store_id)
|
157 |
+
->setAddressType(Mage_Sales_Model_Quote_Address::TYPE_SHIPPING)
|
158 |
+
->setCustomerAddressId($sales_order_arr['shipping_address']['customer_address_id'])
|
159 |
+
->setPrefix($sales_order_arr['shipping_address']['prefix'])
|
160 |
+
->setFirstname($sales_order_arr['shipping_address']['firstname'])
|
161 |
+
->setMiddlename($sales_order_arr['shipping_address']['middlename'])
|
162 |
+
->setLastname($sales_order_arr['shipping_address']['lastname'])
|
163 |
+
->setSuffix($sales_order_arr['shipping_address']['suffix'])
|
164 |
+
->setCompany($sales_order_arr['shipping_address']['company'])
|
165 |
+
->setStreet($sales_order_arr['shipping_address']['street'])
|
166 |
+
->setCity($sales_order_arr['shipping_address']['city'])
|
167 |
+
->setCountry_id($sales_order_arr['shipping_address']['country_id'])
|
168 |
+
->setRegion($sales_order_arr['shipping_address']['region'])
|
169 |
+
->setPostcode($sales_order_arr['shipping_address']['postcode'])
|
170 |
+
->setTelephone($sales_order_arr['shipping_address']['telephone'])
|
171 |
+
->setFax($sales_order_arr['shipping_address']['fax']) ;
|
172 |
+
|
173 |
+
if(!$sales_order_arr['is_virtual']){
|
174 |
+
$order->setShippingAddress($shippingAddress)
|
175 |
+
->setShippingMethod($sales_order_arr['shipping_method'])
|
176 |
+
->setShippingDescription($sales_order_arr['shipping_method']);
|
177 |
+
}
|
178 |
+
|
179 |
+
$orderPayment = Mage::getModel('sales/order_payment')
|
180 |
+
->setStoreId($this->store_id)
|
181 |
+
->setCustomerPaymentId(0)
|
182 |
+
->setMethod('checkmo')
|
183 |
+
->setPoNumber(' - ');
|
184 |
+
$order->setPayment($orderPayment);
|
185 |
+
|
186 |
+
$flag = 1;
|
187 |
+
foreach($sales_order_item_arr as $product)
|
188 |
+
{
|
189 |
+
$orderItem = Mage::getModel('sales/order_item')
|
190 |
+
->setStoreId($this->store_id)
|
191 |
+
->setQuoteItemId(0)
|
192 |
+
->setQuoteParentItemId(NULL)
|
193 |
+
->setSku($product['product_sku'])
|
194 |
+
->setProductType($product['product_type'])
|
195 |
+
->setProductOptions(unserialize($product['product_option']))
|
196 |
+
->setQtyBackordered(NULL)
|
197 |
+
->setTotalQtyOrdered($product['qty_ordered'])
|
198 |
+
->setQtyOrdered($product['qty_ordered'])
|
199 |
+
->setName($product['product_name'])
|
200 |
+
->setPrice($product['original_price'])
|
201 |
+
->setBasePrice($product['base_original_price'])
|
202 |
+
->setOriginalPrice($product['original_price'])
|
203 |
+
->setBaseOriginalPrice($product['base_original_price'])
|
204 |
+
->setRowWeight($product['row_weight'])
|
205 |
+
->setPriceInclTax($product['price_incl_tax'])
|
206 |
+
->setBasePriceInclTax($product['base_price_incl_tax'])
|
207 |
+
->setTaxAmount($product['product_tax_amount'])
|
208 |
+
->setBaseTaxAmount($product['product_base_tax_amount'])
|
209 |
+
->setTaxPercent($product['product_tax_percent'])
|
210 |
+
->setDiscountAmount($product['product_discount'])
|
211 |
+
->setBaseDiscountAmount($product['product_base_discount'])
|
212 |
+
->setDiscountPercent($product['product_discount_percent'])
|
213 |
+
->setRowTotal($product['row_total'])
|
214 |
+
->setBaseRowTotal($product['base_row_total']);
|
215 |
+
|
216 |
+
if($product['is_child']=='yes')
|
217 |
+
$orderItem->setParentItemId($this->parent_id);
|
218 |
+
|
219 |
+
else if($product['is_child']=='no')
|
220 |
+
$this->parent_id = $this->parent_id_flag+$flag;
|
221 |
+
|
222 |
+
$order->addItem($orderItem);
|
223 |
+
|
224 |
+
$flag++;
|
225 |
+
}
|
226 |
+
|
227 |
+
|
228 |
+
$order->setShippingAmount($sales_order_arr['shipping_amount']);
|
229 |
+
$order->setBaseShippingAmount($sales_order_arr['base_shipping_amount']);
|
230 |
+
|
231 |
+
//Apply Discount
|
232 |
+
$order->setBaseDiscountAmount($sales_order_arr['base_discount_amount']);
|
233 |
+
$order->setDiscountAmount($sales_order_arr['discount_amount']);
|
234 |
+
|
235 |
+
//Apply Tax
|
236 |
+
$order->setBaseTaxAmount($sales_order_arr['base_tax_amount']);
|
237 |
+
$order->setTaxAmount($sales_order_arr['tax_amount']);
|
238 |
+
|
239 |
+
$order->setSubtotal($sales_order_arr['subtotal'])
|
240 |
+
->setBaseSubtotal($sales_order_arr['base_subtotal'])
|
241 |
+
->setGrandTotal($sales_order_arr['grand_total'])
|
242 |
+
->setBaseGrandTotal($sales_order_arr['base_grand_total'])
|
243 |
+
->setShippingTaxAmount($sales_order_arr['shipping_tax_amount'])
|
244 |
+
->setBaseShippingTaxAmount($sales_order_arr['base_shipping_tax_amount'])
|
245 |
+
->setBaseToGlobalRate($sales_order_arr['base_to_global_rate'])
|
246 |
+
->setBaseToOrderRate($sales_order_arr['base_to_order_rate'])
|
247 |
+
->setStoreToBaseRate($sales_order_arr['store_to_base_rate'])
|
248 |
+
->setStoreToOrderRate($sales_order_arr['store_to_order_rate'])
|
249 |
+
->setSubtotalInclTax($sales_order_arr['subtotal_incl_tax'])
|
250 |
+
->setBaseSubtotalInclTax($sales_order_arr['base_subtotal_incl_tax'])
|
251 |
+
->setCouponCode($sales_order_arr['coupon_code'])
|
252 |
+
->setDiscountDescription($sales_order_arr['coupon_code'])
|
253 |
+
->setShippingInclTax($sales_order_arr['shipping_incl_tax'])
|
254 |
+
->setBaseShippingInclTax($sales_order_arr['base_shipping_incl_tax'])
|
255 |
+
->setTotalQtyOrdered($sales_order_arr['total_qty_ordered'])
|
256 |
+
->setRemoteIp($sales_order_arr['remote_ip']);
|
257 |
+
|
258 |
+
$transaction->addObject($order);
|
259 |
+
$transaction->addCommitCallback(array($order, 'place'));
|
260 |
+
$transaction->addCommitCallback(array($order, 'save'));
|
261 |
+
|
262 |
+
if($transaction->save())
|
263 |
+
{
|
264 |
+
$this->setLastOrderItemId();
|
265 |
+
$last_order_increment_id = Mage::getSingleton("sales/order")->getCollection()->getLastItem()->getIncrementId();
|
266 |
+
|
267 |
+
$this->setGlobalData($last_order_increment_id,$sales_order_item_arr,$sales_order_arr);
|
268 |
+
|
269 |
+
if($sales_order_arr['order_state']=='processing' || $sales_order_arr['order_state']=='complete')
|
270 |
+
return $this->setProcessing();
|
271 |
+
|
272 |
+
if($sales_order_arr['order_state']=='canceled')
|
273 |
+
return $this->setCanceled();
|
274 |
+
|
275 |
+
if($sales_order_arr['order_state']=='closed')
|
276 |
+
return $this->setClosed();
|
277 |
+
|
278 |
+
if($sales_order_arr['order_state']=='holded')
|
279 |
+
return $this->setHolded();
|
280 |
+
|
281 |
+
if($sales_order_arr['order_state']=='payment_review')
|
282 |
+
return $this->setPaymentReview();
|
283 |
+
|
284 |
+
return 1;
|
285 |
+
}
|
286 |
+
else
|
287 |
+
return 3;
|
288 |
+
|
289 |
+
}
|
290 |
+
|
291 |
+
|
292 |
+
public function setProcessing()
|
293 |
+
{
|
294 |
+
if($this->partial_invoiced)
|
295 |
+
$resp = $this->getInvoiceObj()->createInvoice($this->last_order_increment_id,$this->invoiced_item,$this->invoice_created_at);
|
296 |
+
|
297 |
+
if($this->partial_shipped)
|
298 |
+
$resp = $this->getShipmentObj()->createShipment($this->last_order_increment_id,$this->shipped_item,$this->shipment_created_at);
|
299 |
+
|
300 |
+
if($this->partial_credited)
|
301 |
+
$resp = $this->getCreditmemoObj()->createCreditMemo($this->last_order_increment_id,$this->credit_item,$this->order_detai_arr);
|
302 |
+
|
303 |
+
$this->unsetAllData();
|
304 |
+
return 1;
|
305 |
+
}
|
306 |
+
|
307 |
+
public function setHolded()
|
308 |
+
{
|
309 |
+
try
|
310 |
+
{
|
311 |
+
if($this->setProcessing()== 1)
|
312 |
+
{
|
313 |
+
$order = $this->getOrderModel($this->last_order_increment_id);
|
314 |
+
$order->setState(Mage_Sales_Model_Order::STATE_HOLDED, true)->save();
|
315 |
+
$order->unsetData();
|
316 |
+
return 1;
|
317 |
+
}
|
318 |
+
} catch (Exception $e) {
|
319 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'order');
|
320 |
+
Mage::helper('exporter')->footer();return 1;}
|
321 |
+
}
|
322 |
+
|
323 |
+
public function setPaymentReview()
|
324 |
+
{
|
325 |
+
try
|
326 |
+
{
|
327 |
+
if($this->setProcessing()== 1)
|
328 |
+
{
|
329 |
+
$order = $this->getOrderModel($this->last_order_increment_id);
|
330 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW, true)->save();
|
331 |
+
$order->unsetData();
|
332 |
+
return 1;
|
333 |
+
}
|
334 |
+
} catch (Exception $e) {
|
335 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'order');
|
336 |
+
Mage::helper('exporter')->footer();return 1;}
|
337 |
+
}
|
338 |
+
|
339 |
+
|
340 |
+
public function setCanceled()
|
341 |
+
{
|
342 |
+
try
|
343 |
+
{
|
344 |
+
if($this->setProcessing()== 1)
|
345 |
+
{
|
346 |
+
$this->updateCanceledQTY();
|
347 |
+
$order = $this->getOrderModel($this->last_order_increment_id);
|
348 |
+
$order->setState(Mage_Sales_Model_Order::STATE_CANCELED, true)->save();
|
349 |
+
$order->unsetData();
|
350 |
+
return 1;
|
351 |
+
}
|
352 |
+
} catch (Exception $e) {
|
353 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'order');
|
354 |
+
Mage::helper('exporter')->footer();return 1;}
|
355 |
+
}
|
356 |
+
|
357 |
+
public function setClosed()
|
358 |
+
{
|
359 |
+
try
|
360 |
+
{
|
361 |
+
if($this->setProcessing()== 1)
|
362 |
+
{
|
363 |
+
$order = $this->getOrderModel($this->last_order_increment_id);
|
364 |
+
$order->setStatus(Mage_Sales_Model_Order::STATE_CLOSED, true)->save();
|
365 |
+
$order->unsetData();
|
366 |
+
return 1;
|
367 |
+
}
|
368 |
+
} catch (Exception $e) {
|
369 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'order');
|
370 |
+
Mage::helper('exporter')->footer();return 1;}
|
371 |
+
}
|
372 |
+
|
373 |
+
|
374 |
+
public function updateCanceledQTY()
|
375 |
+
{
|
376 |
+
$items = $this->canceled_item;
|
377 |
+
foreach($items as $itemid => $itemqty)
|
378 |
+
{
|
379 |
+
$orderItem = Mage::getModel('sales/order_item')->load($itemid);
|
380 |
+
$orderItem->setQtyCanceled($itemqty)->save();
|
381 |
+
$orderItem->unsetData();
|
382 |
+
}
|
383 |
+
}
|
384 |
+
|
385 |
+
public function getOrderModel($last_order_increment_id)
|
386 |
+
{
|
387 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id);
|
388 |
+
return $order;
|
389 |
+
}
|
390 |
+
|
391 |
+
public function orderIdStatus($last_order_increment_id)
|
392 |
+
{
|
393 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id);
|
394 |
+
|
395 |
+
if($order->getId())
|
396 |
+
return false;
|
397 |
+
else
|
398 |
+
return true;
|
399 |
+
}
|
400 |
+
|
401 |
+
public function unsetAllData()
|
402 |
+
{
|
403 |
+
$this->shipped_item = array() ;
|
404 |
+
$this->invoiced_item = array() ;
|
405 |
+
$this->credit_item = array() ;
|
406 |
+
$this->canceled_item = array() ;
|
407 |
+
$this->partial_shipped = false;
|
408 |
+
$this->partial_credited = false;
|
409 |
+
$this->partial_invoiced = false;
|
410 |
+
$this->order_detai_arr = false;
|
411 |
+
}
|
412 |
+
|
413 |
+
public function getInvoiceObj()
|
414 |
+
{
|
415 |
+
return Mage::getModel('exporter/operations_invoice');
|
416 |
+
}
|
417 |
+
|
418 |
+
public function getShipmentObj()
|
419 |
+
{
|
420 |
+
return Mage::getModel('exporter/operations_shipment');
|
421 |
+
}
|
422 |
+
|
423 |
+
public function getCreditmemoObj()
|
424 |
+
{
|
425 |
+
return Mage::getModel('exporter/operations_creditmemo');
|
426 |
+
}
|
427 |
+
|
428 |
+
public function getCustomerInfo($email)
|
429 |
+
{
|
430 |
+
$customer = Mage::getModel("customer/customer");
|
431 |
+
$customer->setWebsiteId(Mage::getModel('core/store')->load($this->store_id)->getWebsiteId());
|
432 |
+
if($customer->loadByEmail($email))
|
433 |
+
return $customer->getData();
|
434 |
+
else
|
435 |
+
return false;
|
436 |
+
}
|
437 |
+
|
438 |
+
public function removeOrderStatusHistory()
|
439 |
+
{
|
440 |
+
$coll = Mage::getModel('sales/order_status_history')->getCollection()->addFieldToFilter('parent_id',Mage::getSingleton("sales/order")->getCollection()->getLastItem()->getId());
|
441 |
+
foreach($coll as $history)
|
442 |
+
Mage::getModel('sales/order_status_history')->load($history->getId())->delete()->save()->unsetData();
|
443 |
+
}
|
444 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Exporter.php
ADDED
@@ -0,0 +1,136 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Exporter extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
public function getPaymentMethod($order)
|
6 |
+
{
|
7 |
+
return $order->getPayment()->getMethod();
|
8 |
+
}
|
9 |
+
|
10 |
+
public function getChildInfo($item)
|
11 |
+
{
|
12 |
+
|
13 |
+
if($item->getParentItemId())
|
14 |
+
return 'yes';
|
15 |
+
else
|
16 |
+
return 'no';
|
17 |
+
|
18 |
+
}
|
19 |
+
|
20 |
+
public function getShippingMethod($order)
|
21 |
+
{
|
22 |
+
if (!$order->getIsVirtual() && $order->getShippingDescription()) {
|
23 |
+
return $order->getShippingDescription();
|
24 |
+
}
|
25 |
+
else if (!$order->getIsVirtual() && $order->getShippingMethod()) {
|
26 |
+
return $order->getShippingMethod();
|
27 |
+
}
|
28 |
+
return '';
|
29 |
+
}
|
30 |
+
|
31 |
+
public function getItemSku($item)
|
32 |
+
{
|
33 |
+
if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
|
34 |
+
return $item->getProductOptionByCode('simple_sku');
|
35 |
+
}
|
36 |
+
return $item->getSku();
|
37 |
+
}
|
38 |
+
|
39 |
+
public function formatText($string)
|
40 |
+
{
|
41 |
+
$string = str_replace(',', ' ', $string);
|
42 |
+
return $string;
|
43 |
+
}
|
44 |
+
|
45 |
+
public function getStoreIds()
|
46 |
+
{
|
47 |
+
$collection = Mage::getModel('core/store')->getCollection();
|
48 |
+
$store_ids = array();
|
49 |
+
$i = 0;
|
50 |
+
foreach($collection as $data)
|
51 |
+
{
|
52 |
+
$store_ids[$i]['label'] = $data['name'];
|
53 |
+
$store_ids[$i]['value'] = $data['store_id'];
|
54 |
+
$i++;
|
55 |
+
}
|
56 |
+
return $store_ids;
|
57 |
+
}
|
58 |
+
|
59 |
+
public function getCreditMemoDetail($order)
|
60 |
+
{
|
61 |
+
$credit_detail['adjustment_positive'] = 0;
|
62 |
+
$credit_detail['adjustment_negative'] = 0;
|
63 |
+
$credit_detail['shipping_amount'] = 0;
|
64 |
+
$credit_detail['base_shipping_amount'] = 0;
|
65 |
+
$credit_detail['subtotal'] = 0;
|
66 |
+
$credit_detail['base_subtotal'] = 0;
|
67 |
+
$credit_detail['tax_amount'] = 0;
|
68 |
+
$credit_detail['base_tax_amount'] = 0;
|
69 |
+
$credit_detail['discount_amount'] = 0;
|
70 |
+
$credit_detail['base_discount_amount'] = 0;
|
71 |
+
$collection = $order->getCreditmemosCollection();
|
72 |
+
if(count($collection))
|
73 |
+
{
|
74 |
+
foreach($collection as $data)
|
75 |
+
{
|
76 |
+
$credit_detail['adjustment_positive'] += $data->getData('adjustment_positive');
|
77 |
+
$credit_detail['adjustment_negative'] += $data->getData('adjustment_negative');
|
78 |
+
$credit_detail['shipping_amount'] += $data->getData('shipping_amount');
|
79 |
+
$credit_detail['base_shipping_amount'] += $data->getData('base_shipping_amount');
|
80 |
+
$credit_detail['subtotal'] += $data->getData('subtotal');
|
81 |
+
$credit_detail['base_subtotal'] += $data->getData('base_subtotal');
|
82 |
+
$credit_detail['tax_amount'] += $data->getData('tax_amount');
|
83 |
+
$credit_detail['base_tax_amount'] += $data->getData('base_tax_amount');
|
84 |
+
$credit_detail['discount_amount'] += $data->getData('discount_amount');
|
85 |
+
$credit_detail['base_discount_amount'] += $data->getData('base_discount_amount');
|
86 |
+
}
|
87 |
+
}
|
88 |
+
|
89 |
+
return $credit_detail;
|
90 |
+
|
91 |
+
}
|
92 |
+
|
93 |
+
public function getInvoiceDate($order)
|
94 |
+
{
|
95 |
+
$date = '';
|
96 |
+
$collection = $order->getInvoiceCollection();
|
97 |
+
if(count($collection))
|
98 |
+
{
|
99 |
+
foreach($collection as $data)
|
100 |
+
$date = $data->getData('created_at');
|
101 |
+
}
|
102 |
+
|
103 |
+
return $date;
|
104 |
+
|
105 |
+
}
|
106 |
+
|
107 |
+
public function getShipmentDate($order)
|
108 |
+
{
|
109 |
+
$date = '';
|
110 |
+
$collection = $order->getShipmentsCollection();
|
111 |
+
if(count($collection))
|
112 |
+
{
|
113 |
+
foreach($collection as $data)
|
114 |
+
$date = $data->getData('created_at');
|
115 |
+
}
|
116 |
+
|
117 |
+
return $date;
|
118 |
+
|
119 |
+
}
|
120 |
+
|
121 |
+
public function getCreditmemoDate($order)
|
122 |
+
{
|
123 |
+
$date = '';
|
124 |
+
$collection = $order->getCreditmemosCollection();
|
125 |
+
if(count($collection))
|
126 |
+
{
|
127 |
+
foreach($collection as $data)
|
128 |
+
$date = $data->getData('created_at');
|
129 |
+
}
|
130 |
+
|
131 |
+
return $date;
|
132 |
+
|
133 |
+
}
|
134 |
+
|
135 |
+
|
136 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Exportorders.php
ADDED
@@ -0,0 +1,321 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Exportorders extends Raveinfosys_Exporter_Model_Exporter
|
4 |
+
{
|
5 |
+
const ENCLOSURE = '"';
|
6 |
+
const DELIMITER = ',';
|
7 |
+
|
8 |
+
|
9 |
+
public function exportOrders($orders)
|
10 |
+
{
|
11 |
+
$fileName = 'order_export_'.date("Ymd_His").'.csv';
|
12 |
+
$fp = fopen(Mage::getBaseDir('export').'/'.$fileName, 'w');
|
13 |
+
|
14 |
+
$this->writeHeadRow($fp);
|
15 |
+
foreach ($orders as $order) {
|
16 |
+
$order = Mage::getModel('sales/order')->load($order);
|
17 |
+
$this->writeOrder($order, $fp);
|
18 |
+
}
|
19 |
+
|
20 |
+
fclose($fp);
|
21 |
+
|
22 |
+
return $fileName;
|
23 |
+
}
|
24 |
+
|
25 |
+
|
26 |
+
protected function writeHeadRow($fp)
|
27 |
+
{
|
28 |
+
fputcsv($fp, $this->getHeadRowValues(), self::DELIMITER, self::ENCLOSURE);
|
29 |
+
}
|
30 |
+
|
31 |
+
|
32 |
+
protected function writeOrder($order, $fp)
|
33 |
+
{
|
34 |
+
$common = $this->getCommonOrderValues($order);
|
35 |
+
$blank = $this->getBlankOrderValues($order);
|
36 |
+
$orderItems = $order->getItemsCollection();
|
37 |
+
$itemInc = 0;
|
38 |
+
$data = array();
|
39 |
+
$count = 0;
|
40 |
+
foreach ($orderItems as $item)
|
41 |
+
{
|
42 |
+
if($count==0)
|
43 |
+
{
|
44 |
+
$record = array_merge($common, $this->getOrderItemValues($item, $order, ++$itemInc));
|
45 |
+
fputcsv($fp, $record, self::DELIMITER, self::ENCLOSURE);
|
46 |
+
}
|
47 |
+
else
|
48 |
+
{
|
49 |
+
$record = array_merge($blank, $this->getOrderItemValues($item, $order, ++$itemInc));
|
50 |
+
fputcsv($fp, $record, self::DELIMITER, self::ENCLOSURE);
|
51 |
+
}
|
52 |
+
$count++;
|
53 |
+
}
|
54 |
+
|
55 |
+
}
|
56 |
+
|
57 |
+
protected function getHeadRowValues()
|
58 |
+
{
|
59 |
+
return array(
|
60 |
+
"order_id",
|
61 |
+
"email",
|
62 |
+
"firstname",
|
63 |
+
"lastname",
|
64 |
+
"prefix",
|
65 |
+
"middlename",
|
66 |
+
"suffix",
|
67 |
+
"taxvat",
|
68 |
+
"created_at",
|
69 |
+
"updated_at",
|
70 |
+
"invoice_created_at",
|
71 |
+
"shipment_created_at",
|
72 |
+
"creditmemo_created_at",
|
73 |
+
"tax_amount",
|
74 |
+
"base_tax_amount",
|
75 |
+
"discount_amount",
|
76 |
+
"base_discount_amount",
|
77 |
+
"shipping_tax_amount",
|
78 |
+
"base_shipping_tax_amount",
|
79 |
+
"base_to_global_rate",
|
80 |
+
"base_to_order_rate",
|
81 |
+
"store_to_base_rate",
|
82 |
+
"store_to_order_rate",
|
83 |
+
"subtotal_incl_tax",
|
84 |
+
"base_subtotal_incl_tax",
|
85 |
+
"coupon_code",
|
86 |
+
"shipping_incl_tax",
|
87 |
+
"base_shipping_incl_tax",
|
88 |
+
"shipping_method",
|
89 |
+
"shipping_amount",
|
90 |
+
"subtotal",
|
91 |
+
"base_subtotal",
|
92 |
+
"grand_total",
|
93 |
+
"base_grand_total",
|
94 |
+
"base_shipping_amount",
|
95 |
+
"adjustment_positive",
|
96 |
+
"adjustment_negative",
|
97 |
+
"refunded_shipping_amount",
|
98 |
+
"base_refunded_shipping_amount",
|
99 |
+
"refunded_subtotal",
|
100 |
+
"base_refunded_subtotal",
|
101 |
+
"refunded_tax_amount",
|
102 |
+
"base_refunded_tax_amount",
|
103 |
+
"refunded_discount_amount",
|
104 |
+
"base_refunded_discount_amount",
|
105 |
+
"store_id",
|
106 |
+
"order_status",
|
107 |
+
"order_state",
|
108 |
+
"hold_before_state",
|
109 |
+
"hold_before_status",
|
110 |
+
"store_currency_code",
|
111 |
+
"base_currency_code",
|
112 |
+
"order_currency_code",
|
113 |
+
"total_paid",
|
114 |
+
"base_total_paid",
|
115 |
+
"is_virtual",
|
116 |
+
"total_qty_ordered",
|
117 |
+
"remote_ip",
|
118 |
+
"total_refunded",
|
119 |
+
"base_total_refunded",
|
120 |
+
"total_canceled",
|
121 |
+
"total_invoiced",
|
122 |
+
"customer_id",
|
123 |
+
"billing_prefix",
|
124 |
+
"billing_firstname",
|
125 |
+
"billing_middlename",
|
126 |
+
"billing_lastname",
|
127 |
+
"billing_suffix",
|
128 |
+
"billing_street_full",
|
129 |
+
"billing_city",
|
130 |
+
"billing_region",
|
131 |
+
"billing_country",
|
132 |
+
"billing_postcode",
|
133 |
+
"billing_telephone",
|
134 |
+
"billing_company",
|
135 |
+
"billing_fax",
|
136 |
+
"customer_id",
|
137 |
+
"shipping_prefix",
|
138 |
+
"shipping_firstname",
|
139 |
+
"shipping_middlename",
|
140 |
+
"shipping_lastname",
|
141 |
+
"shipping_suffix",
|
142 |
+
"shipping_street_full",
|
143 |
+
"shipping_city",
|
144 |
+
"shipping_region",
|
145 |
+
"shipping_country",
|
146 |
+
"shipping_postcode",
|
147 |
+
"shipping_telephone",
|
148 |
+
"shipping_company",
|
149 |
+
"shipping_fax",
|
150 |
+
"payment_method",
|
151 |
+
"product_sku",
|
152 |
+
"product_name",
|
153 |
+
"qty_ordered",
|
154 |
+
"qty_invoiced",
|
155 |
+
"qty_shipped",
|
156 |
+
"qty_refunded",
|
157 |
+
"qty_canceled",
|
158 |
+
"product_type",
|
159 |
+
"original_price",
|
160 |
+
"base_original_price",
|
161 |
+
"row_total",
|
162 |
+
"base_row_total",
|
163 |
+
"row_weight",
|
164 |
+
"price_incl_tax",
|
165 |
+
"base_price_incl_tax",
|
166 |
+
"product_tax_amount",
|
167 |
+
"product_base_tax_amount",
|
168 |
+
"product_tax_percent",
|
169 |
+
"product_discount",
|
170 |
+
"product_base_discount",
|
171 |
+
"product_discount_percent",
|
172 |
+
"is_child",
|
173 |
+
"product_option"
|
174 |
+
|
175 |
+
);
|
176 |
+
}
|
177 |
+
|
178 |
+
//Common orders value
|
179 |
+
|
180 |
+
protected function getCommonOrderValues($order)
|
181 |
+
{
|
182 |
+
$shippingAddress = !$order->getIsVirtual() ? $order->getShippingAddress() : null;
|
183 |
+
$billingAddress = $order->getBillingAddress();
|
184 |
+
if(!$shippingAddress)
|
185 |
+
$shippingAddress = $billingAddress;
|
186 |
+
|
187 |
+
$credit_detail = $this->getCreditMemoDetail($order);
|
188 |
+
return array(
|
189 |
+
$order->getIncrementId(),
|
190 |
+
$order->getData('customer_email'),
|
191 |
+
$this->formatText($order->getData('customer_firstname')),
|
192 |
+
$this->formatText($order->getData('customer_lastname')),
|
193 |
+
$this->formatText($order->getData('customer_prefix')),
|
194 |
+
$this->formatText($order->getData('customer_middlename')),
|
195 |
+
$this->formatText($order->getData('customer_suffix')),
|
196 |
+
$order->getData('customer_taxvat'),
|
197 |
+
$order->getData('created_at'),
|
198 |
+
$order->getData('updated_at'),
|
199 |
+
$this->getInvoiceDate($order),
|
200 |
+
$this->getShipmentDate($order),
|
201 |
+
$this->getCreditmemoDate($order),
|
202 |
+
$order->getData('tax_amount'),
|
203 |
+
$order->getData('base_tax_amount'),
|
204 |
+
$order->getData('discount_amount'),
|
205 |
+
$order->getData('base_discount_amount'),
|
206 |
+
$order->getData('shipping_tax_amount'),
|
207 |
+
$order->getData('base_shipping_tax_amount'),
|
208 |
+
$order->getData('base_to_global_rate'),
|
209 |
+
$order->getData('base_to_order_rate'),
|
210 |
+
$order->getData('store_to_base_rate'),
|
211 |
+
$order->getData('store_to_order_rate'),
|
212 |
+
$order->getData('subtotal_incl_tax'),
|
213 |
+
$order->getData('base_subtotal_incl_tax'),
|
214 |
+
$order->getData('coupon_code'),
|
215 |
+
$order->getData('shipping_incl_tax'),
|
216 |
+
$order->getData('base_shipping_incl_tax'),
|
217 |
+
$this->getShippingMethod($order),
|
218 |
+
$order->getData('shipping_amount'),
|
219 |
+
$order->getData('subtotal'),
|
220 |
+
$order->getData('base_subtotal'),
|
221 |
+
$order->getData('grand_total'),
|
222 |
+
$order->getData('base_grand_total'),
|
223 |
+
$order->getData('base_shipping_amount'),
|
224 |
+
$credit_detail['adjustment_positive'],
|
225 |
+
$credit_detail['adjustment_negative'],
|
226 |
+
$credit_detail['shipping_amount'],
|
227 |
+
$credit_detail['base_shipping_amount'],
|
228 |
+
$credit_detail['subtotal'],
|
229 |
+
$credit_detail['base_subtotal'],
|
230 |
+
$credit_detail['tax_amount'],
|
231 |
+
$credit_detail['base_tax_amount'],
|
232 |
+
$credit_detail['discount_amount'],
|
233 |
+
$credit_detail['base_discount_amount'],
|
234 |
+
$order->getData('store_id'),
|
235 |
+
$order->getStatus(),
|
236 |
+
$order->getState(),
|
237 |
+
$order->getHoldBeforeState(),
|
238 |
+
$order->getHoldBeforeStatus(),
|
239 |
+
$order->getData('store_currency_code'),
|
240 |
+
$order->getData('base_currency_code'),
|
241 |
+
$order->getData('order_currency_code'),
|
242 |
+
$order->getData('total_paid'),
|
243 |
+
$order->getData('base_total_paid'),
|
244 |
+
$order->getData('is_virtual'),
|
245 |
+
$order->getData('total_qty_ordered'),
|
246 |
+
$order->getData('remote_ip'),
|
247 |
+
$order->getData('total_refunded'),
|
248 |
+
$order->getData('base_total_refunded'),
|
249 |
+
$order->getData('total_canceled'),
|
250 |
+
$order->getData('total_invoiced'),
|
251 |
+
$order->getData('customer_id'),
|
252 |
+
$this->formatText($order->getBillingAddress()->getData('prefix')),
|
253 |
+
$this->formatText($order->getBillingAddress()->getData('firstname')),
|
254 |
+
$this->formatText($order->getBillingAddress()->getData('middlename')),
|
255 |
+
$this->formatText($order->getBillingAddress()->getData('lastname')),
|
256 |
+
$this->formatText($order->getBillingAddress()->getData('suffix')),
|
257 |
+
$this->formatText($order->getBillingAddress()->getData('street')),
|
258 |
+
$this->formatText($order->getBillingAddress()->getData('city')),
|
259 |
+
$this->formatText($order->getBillingAddress()->getData('region')),
|
260 |
+
$this->formatText($order->getBillingAddress()->getData('country_id')),
|
261 |
+
$order->getBillingAddress()->getData('postcode'),
|
262 |
+
$order->getBillingAddress()->getData('telephone'),
|
263 |
+
$this->formatText($order->getBillingAddress()->getData('company')),
|
264 |
+
$order->getBillingAddress()->getData('fax'),
|
265 |
+
$order->getData('customer_id'),
|
266 |
+
$shippingAddress->getData('prefix'),
|
267 |
+
$this->formatText($shippingAddress->getData('firstname')),
|
268 |
+
$this->formatText($shippingAddress->getData('middlename')),
|
269 |
+
$this->formatText($shippingAddress->getData('lastname')),
|
270 |
+
$this->formatText($shippingAddress->getData('suffix')),
|
271 |
+
$this->formatText($shippingAddress->getData('street')),
|
272 |
+
$this->formatText($shippingAddress->getData('city')),
|
273 |
+
$this->formatText($shippingAddress->getData('region')),
|
274 |
+
$shippingAddress->getData('country_id'),
|
275 |
+
$shippingAddress->getData('postcode'),
|
276 |
+
$shippingAddress->getData('telephone'),
|
277 |
+
$this->formatText($shippingAddress->getData('company')),
|
278 |
+
$shippingAddress->getData('fax'),
|
279 |
+
$this->getPaymentMethod($order)
|
280 |
+
);
|
281 |
+
}
|
282 |
+
|
283 |
+
protected function getBlankOrderValues($order)
|
284 |
+
{
|
285 |
+
return array(
|
286 |
+
'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',
|
287 |
+
'','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',
|
288 |
+
'','','','','','','','','','','','','','','','','','','','','','','','','');
|
289 |
+
}
|
290 |
+
|
291 |
+
//To return the array of ordered items
|
292 |
+
protected function getOrderItemValues($item, $order, $itemInc=1)
|
293 |
+
{
|
294 |
+
return array(
|
295 |
+
$this->getItemSku($item),
|
296 |
+
$this->formatText($item->getName()),
|
297 |
+
(int)$item->getQtyOrdered(),
|
298 |
+
(int)$item->getQtyInvoiced(),
|
299 |
+
(int)$item->getQtyShipped(),
|
300 |
+
(int)$item->getQtyRefunded(),
|
301 |
+
(int)$item->getQtyCanceled(),
|
302 |
+
$item->getProductType(),
|
303 |
+
$item->getOriginalPrice(),
|
304 |
+
$item->getBaseOriginalPrice(),
|
305 |
+
$item->getRowTotal(),
|
306 |
+
$item->getBaseRowTotal(),
|
307 |
+
$item->getRowWeight(),
|
308 |
+
$item->getPriceInclTax(),
|
309 |
+
$item->getBasePriceInclTax(),
|
310 |
+
$item->getTaxAmount(),
|
311 |
+
$item->getBaseTaxAmount(),
|
312 |
+
$item->getTaxPercent(),
|
313 |
+
$item->getDiscountAmount(),
|
314 |
+
$item->getBaseDiscountAmount(),
|
315 |
+
$item->getDiscountPercent(),
|
316 |
+
$this->getChildInfo($item),
|
317 |
+
$item->getdata('product_options')
|
318 |
+
);
|
319 |
+
}
|
320 |
+
|
321 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Importorders.php
ADDED
@@ -0,0 +1,280 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Importorders extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
public $order_info = array();
|
6 |
+
public $order_item_info = array();
|
7 |
+
public $order_item_flag = 0;
|
8 |
+
public $store_id = 0;
|
9 |
+
public $import_limit = 0;
|
10 |
+
|
11 |
+
|
12 |
+
public function readCSV($csvFile,$data)
|
13 |
+
{
|
14 |
+
$this->import_limit = $data['import_limit'];
|
15 |
+
$this->store_id = $data['store_id'];
|
16 |
+
$file_handle = fopen($csvFile, 'r');
|
17 |
+
$i=0;
|
18 |
+
$decline = array();
|
19 |
+
$available = array();
|
20 |
+
$success = 0;
|
21 |
+
$parent_flag = 0;
|
22 |
+
$invalid = 0;
|
23 |
+
$line_number = 2;
|
24 |
+
$total_order = 0;
|
25 |
+
Mage::helper('exporter')->unlinkFile();
|
26 |
+
Mage::helper('exporter')->header();
|
27 |
+
while (!feof($file_handle) )
|
28 |
+
{
|
29 |
+
$line_of_text[] = fgetcsv($file_handle);
|
30 |
+
|
31 |
+
if($i!=0)
|
32 |
+
{
|
33 |
+
if($line_of_text[$i][0]!='' && $parent_flag==0)
|
34 |
+
{
|
35 |
+
$this->insertOrderData($line_of_text[$i]);
|
36 |
+
$parent_flag = 1;
|
37 |
+
$total_order++;
|
38 |
+
}
|
39 |
+
else if($line_of_text[$i][91]!='' && $parent_flag == 1 && $line_of_text[$i][0]=='')
|
40 |
+
{
|
41 |
+
$this->insertOrderItem($line_of_text[$i]);
|
42 |
+
}
|
43 |
+
else if($parent_flag==1)
|
44 |
+
{
|
45 |
+
try
|
46 |
+
{
|
47 |
+
$message = Mage::getModel('exporter/createorder')->createOrder($this->order_info,$this->order_item_info,$this->store_id);
|
48 |
+
Mage::getModel('exporter/createorder')->removeOrderStatusHistory();
|
49 |
+
} catch (Exception $e) {
|
50 |
+
Mage::helper('exporter')->logException($e,$this->order_info['increment_id'],'order',$line_number);
|
51 |
+
Mage::helper('exporter')->footer();
|
52 |
+
$decline[] = $this->order_info['increment_id'];
|
53 |
+
$message = 0;
|
54 |
+
}
|
55 |
+
|
56 |
+
if($message== 1)
|
57 |
+
$success++;
|
58 |
+
|
59 |
+
if($message== 2){
|
60 |
+
Mage::helper('exporter')->logAvailable($this->order_info['increment_id'],'order',$line_number);
|
61 |
+
Mage::helper('exporter')->footer();
|
62 |
+
$decline[] = $this->order_info['increment_id'];
|
63 |
+
}
|
64 |
+
|
65 |
+
$this->order_info = array();
|
66 |
+
$this->order_item_info = array();
|
67 |
+
$this->order_item_flag = 0;
|
68 |
+
|
69 |
+
$this->insertOrderData($line_of_text[$i]);
|
70 |
+
$parent_flag = 1;
|
71 |
+
$line_number = $i+1;
|
72 |
+
$total_order++;
|
73 |
+
}
|
74 |
+
|
75 |
+
}
|
76 |
+
|
77 |
+
$i++;
|
78 |
+
|
79 |
+
if($this->import_limit < $total_order)
|
80 |
+
break;
|
81 |
+
}
|
82 |
+
$isPrintable = Mage::helper('exporter')->isPrintable();
|
83 |
+
if($success)
|
84 |
+
Mage::getModel('core/session')->addSuccess(Mage::helper('exporter')->__('Total '.$success.' order(s) imported successfully!'));
|
85 |
+
|
86 |
+
if($decline || $isPrintable)
|
87 |
+
Mage::getModel('core/session')->addError(Mage::helper('exporter')->__('Click <a href="'.Mage::helper("adminhtml")->getUrl("exporter/adminhtml_exporter/exportLog").'">here</a> to view the error log'));
|
88 |
+
|
89 |
+
fclose($file_handle);
|
90 |
+
|
91 |
+
return array($success,$decline);
|
92 |
+
}
|
93 |
+
|
94 |
+
public function insertOrderData($orders_data)
|
95 |
+
{
|
96 |
+
$sales_order_arr = array();
|
97 |
+
$sales_order_item_arr = array();
|
98 |
+
$sales_order = $this->getSalesTable();
|
99 |
+
$sales_payment = $this->getSalesPayment();
|
100 |
+
$sales_shipping = $this->getSalesBilling();
|
101 |
+
$sales_billing = $this->getSalesBilling();
|
102 |
+
$sales_order_item = $this->getSalesItem();
|
103 |
+
$model = Mage::getModel('sales/order');
|
104 |
+
$i = 0;
|
105 |
+
$j = 0;
|
106 |
+
$k = 0;
|
107 |
+
$l = 0;
|
108 |
+
$m = 0;
|
109 |
+
foreach($orders_data as $order)
|
110 |
+
{
|
111 |
+
if(count($sales_order)>$i)
|
112 |
+
$sales_order_arr[$sales_order[$i]]= $order;
|
113 |
+
|
114 |
+
else if(count($sales_billing)>$j)
|
115 |
+
{
|
116 |
+
$sales_billing[$j].$sales_order_arr['billing_address'][$sales_billing[$j]]= $order;
|
117 |
+
$j++;
|
118 |
+
}
|
119 |
+
else if(count($sales_shipping)>$k)
|
120 |
+
{
|
121 |
+
$sales_order_arr['shipping_address'][$sales_shipping[$k]]= $order;
|
122 |
+
$k++;
|
123 |
+
}
|
124 |
+
else if(count($sales_payment)>$l)
|
125 |
+
{
|
126 |
+
$sales_order_arr['payment'][$sales_payment[$l]]= $order;
|
127 |
+
$l++;
|
128 |
+
}
|
129 |
+
else if(count($sales_order_item)>$m)
|
130 |
+
{
|
131 |
+
$sales_order_item_arr[$sales_order_item[$m]]= $order;
|
132 |
+
$m++;
|
133 |
+
}
|
134 |
+
$i++;
|
135 |
+
}
|
136 |
+
|
137 |
+
$this->order_info = $sales_order_arr;
|
138 |
+
$this->order_item_info[$this->order_item_flag] = $sales_order_item_arr;
|
139 |
+
$this->order_item_flag++;
|
140 |
+
}
|
141 |
+
|
142 |
+
public function insertOrderItem($orders_data)
|
143 |
+
{
|
144 |
+
$sales_order_item_arr = array();
|
145 |
+
$sales_order_item = $this->getSalesItem();
|
146 |
+
$i=0;
|
147 |
+
for($j=91;$j<count($orders_data); $j++)
|
148 |
+
{
|
149 |
+
if(count($sales_order_item)>$i)
|
150 |
+
$sales_order_item_arr[$sales_order_item[$i]]= $orders_data[$j];
|
151 |
+
$i++;
|
152 |
+
}
|
153 |
+
$this->order_item_info[$this->order_item_flag] = $sales_order_item_arr;
|
154 |
+
$this->order_item_flag++;
|
155 |
+
}
|
156 |
+
|
157 |
+
|
158 |
+
public function getSalesTable()
|
159 |
+
{
|
160 |
+
return array(
|
161 |
+
'increment_id',
|
162 |
+
'customer_email',
|
163 |
+
'customer_firstname',
|
164 |
+
'customer_lasttname',
|
165 |
+
'customer_prefix',
|
166 |
+
'customer_middlename',
|
167 |
+
'customer_suffix',
|
168 |
+
'taxvat',
|
169 |
+
'created_at',
|
170 |
+
'updated_at',
|
171 |
+
'invoice_created_at',
|
172 |
+
'shipment_created_at',
|
173 |
+
'creditmemo_created_at',
|
174 |
+
'tax_amount',
|
175 |
+
'base_tax_amount',
|
176 |
+
'discount_amount',
|
177 |
+
'base_discount_amount',
|
178 |
+
'shipping_tax_amount',
|
179 |
+
'base_shipping_tax_amount',
|
180 |
+
'base_to_global_rate',
|
181 |
+
'base_to_order_rate',
|
182 |
+
'store_to_base_rate',
|
183 |
+
'store_to_order_rate',
|
184 |
+
'subtotal_incl_tax',
|
185 |
+
'base_subtotal_incl_tax',
|
186 |
+
'coupon_code',
|
187 |
+
'shipping_incl_tax',
|
188 |
+
'base_shipping_incl_tax',
|
189 |
+
'shipping_method',
|
190 |
+
'shipping_amount',
|
191 |
+
'subtotal',
|
192 |
+
'base_subtotal',
|
193 |
+
'grand_total',
|
194 |
+
'base_grand_total',
|
195 |
+
'base_shipping_amount',
|
196 |
+
'adjustment_positive',
|
197 |
+
'adjustment_negative',
|
198 |
+
'refunded_shipping_amount',
|
199 |
+
'base_refunded_shipping_amount',
|
200 |
+
'refunded_subtotal',
|
201 |
+
'base_refunded_subtotal',
|
202 |
+
'refunded_tax_amount',
|
203 |
+
'base_refunded_tax_amount',
|
204 |
+
'refunded_discount_amount',
|
205 |
+
'base_refunded_discount_amount',
|
206 |
+
'store_id',
|
207 |
+
'order_status',
|
208 |
+
'order_state',
|
209 |
+
'hold_before_state',
|
210 |
+
'hold_before_status',
|
211 |
+
'store_currency_code',
|
212 |
+
'base_currency_code',
|
213 |
+
'order_currency_code',
|
214 |
+
'total_paid',
|
215 |
+
'base_total_paid',
|
216 |
+
'is_virtual',
|
217 |
+
'total_qty_ordered',
|
218 |
+
'remote_ip',
|
219 |
+
'total_refunded',
|
220 |
+
'base_total_refunded',
|
221 |
+
'total_canceled',
|
222 |
+
'total_invoiced');
|
223 |
+
}
|
224 |
+
|
225 |
+
public function getSalesBilling()
|
226 |
+
{
|
227 |
+
return array(
|
228 |
+
'customer_address_id',
|
229 |
+
'prefix',
|
230 |
+
'firstname',
|
231 |
+
'middlename',
|
232 |
+
'lastname' ,
|
233 |
+
'suffix',
|
234 |
+
'street',
|
235 |
+
'city',
|
236 |
+
'region',
|
237 |
+
'country_id',
|
238 |
+
'postcode',
|
239 |
+
'telephone' ,
|
240 |
+
'company',
|
241 |
+
'fax');
|
242 |
+
}
|
243 |
+
|
244 |
+
|
245 |
+
public function getSalesPayment()
|
246 |
+
{
|
247 |
+
return array('method');
|
248 |
+
}
|
249 |
+
|
250 |
+
|
251 |
+
public function getSalesItem()
|
252 |
+
{
|
253 |
+
return array(
|
254 |
+
'product_sku',
|
255 |
+
'product_name',
|
256 |
+
'qty_ordered',
|
257 |
+
'qty_invoiced',
|
258 |
+
'qty_shipped',
|
259 |
+
'qty_refunded',
|
260 |
+
'qty_canceled',
|
261 |
+
'product_type',
|
262 |
+
'original_price',
|
263 |
+
'base_original_price',
|
264 |
+
'row_total',
|
265 |
+
'base_row_total',
|
266 |
+
'row_weight',
|
267 |
+
'price_incl_tax',
|
268 |
+
'base_price_incl_tax',
|
269 |
+
'product_tax_amount',
|
270 |
+
'product_base_tax_amount',
|
271 |
+
'product_tax_percent',
|
272 |
+
'product_discount',
|
273 |
+
'product_base_discount',
|
274 |
+
'product_discount_percent',
|
275 |
+
'is_child',
|
276 |
+
'product_option' );
|
277 |
+
}
|
278 |
+
|
279 |
+
|
280 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Operations/Creditmemo.php
ADDED
@@ -0,0 +1,86 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Operations_Creditmemo extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
public function createCreditMemo($order_id,$credit_item,$creditDetail)
|
6 |
+
{
|
7 |
+
$order = $this->getOrderModel($order_id);
|
8 |
+
try{
|
9 |
+
$data = array('qtys' => $credit_item ,'shipping_amount'=>$creditDetail['refunded_shipping_amount'],
|
10 |
+
'adjustment_positive'=>$creditDetail['adjustment_positive'],'adjustment_negative'=>$creditDetail['adjustment_negative']);
|
11 |
+
if(Mage::helper('exporter')->getVersion())
|
12 |
+
{
|
13 |
+
$service = Mage::getModel('sales/service_order', $order);
|
14 |
+
$creditMemo = $service->prepareCreditmemo($data);
|
15 |
+
$creditMemo = $creditMemo->setState(2)->save();
|
16 |
+
$this->updateStatus($order_id,$creditDetail);
|
17 |
+
}
|
18 |
+
else
|
19 |
+
{
|
20 |
+
$creditMemo = Mage::getModel('sales/order_creditmemo_api')
|
21 |
+
->create($order_id, $data ,null ,0,0);
|
22 |
+
}
|
23 |
+
|
24 |
+
$model = Mage::getSingleton("sales/order_creditmemo");
|
25 |
+
$credit_id = $model->getCollection()->getLastItem()->getId();
|
26 |
+
$model->load($credit_id)
|
27 |
+
->setCreatedAt($creditDetail['creditmemo_created_at'])
|
28 |
+
->setUpdatedAt($creditDetail['creditmemo_created_at'])
|
29 |
+
->save()
|
30 |
+
->unsetData();
|
31 |
+
|
32 |
+
$this->updateCreditQTY($credit_item);
|
33 |
+
|
34 |
+
}catch (Exception $e) {
|
35 |
+
|
36 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'creditmemo');
|
37 |
+
Mage::helper('exporter')->footer();
|
38 |
+
return true;
|
39 |
+
}
|
40 |
+
$order->unsetData();
|
41 |
+
return true;
|
42 |
+
}
|
43 |
+
|
44 |
+
|
45 |
+
|
46 |
+
public function updateCreditQTY($credit_item)
|
47 |
+
{
|
48 |
+
foreach($credit_item as $itemid => $itemqty)
|
49 |
+
{
|
50 |
+
$orderItem = Mage::getModel('sales/order_item')->load($itemid);
|
51 |
+
$orderItem->setQtyRefunded($itemqty)->save();
|
52 |
+
$orderItem->unsetData();
|
53 |
+
}
|
54 |
+
}
|
55 |
+
|
56 |
+
public function updateStatus($order_id,$refunded)
|
57 |
+
{
|
58 |
+
$order = $this->getOrderModel($order_id);
|
59 |
+
|
60 |
+
//set creditmemo data
|
61 |
+
$order->setSubtotalRefunded($refunded['refunded_subtotal'])
|
62 |
+
->setBaseSubtotalRefunded($refunded['refunded_subtotal'])
|
63 |
+
->setTaxRefunded($refunded['refunded_tax_amount'])
|
64 |
+
->setBaseTaxRefunded($refunded['base_refunded_tax_amount'])
|
65 |
+
->setDiscountRefunded($refunded['refunded_discount_amount'])
|
66 |
+
->setBaseDiscountRefunded($refunded['base_refunded_discount_amount'])
|
67 |
+
->setShippingRefunded($refunded['refunded_shipping_amount'])
|
68 |
+
->setBaseShippingRefunded($refunded['base_refunded_shipping_amount'])
|
69 |
+
->setTotalRefunded($refunded['total_refunded'])
|
70 |
+
->setBaseTotalRefunded($refunded['base_total_refunded'])
|
71 |
+
->setTotalOfflineRefunded($refunded['total_refunded'])
|
72 |
+
->setBaseTotalOfflineRefunded($refunded['base_total_refunded'])
|
73 |
+
->setAdjustmentNegative($refunded['adjustment_positive'])
|
74 |
+
->setBaseAdjustmentNegative($refunded['adjustment_positive'])
|
75 |
+
->setAdjustmentPositive($refunded['adjustment_negative'])
|
76 |
+
->setBaseAdjustmentPositive($refunded['adjustment_negative'])
|
77 |
+
->save();
|
78 |
+
$order->unsetData();
|
79 |
+
}
|
80 |
+
|
81 |
+
public function getOrderModel($last_order_increment_id)
|
82 |
+
{
|
83 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id);
|
84 |
+
return $order;
|
85 |
+
}
|
86 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Operations/Invoice.php
ADDED
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Operations_Invoice extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
public function createInvoice($order_id,$invoice_item,$date)
|
6 |
+
{
|
7 |
+
$order = $this->getOrderModel($order_id);
|
8 |
+
try{
|
9 |
+
if($order->canInvoice())
|
10 |
+
{
|
11 |
+
$invoiceId = Mage::getModel('sales/order_invoice_api')
|
12 |
+
->create($order->getIncrementId(), $invoice_item ,null ,0,0);
|
13 |
+
|
14 |
+
if($invoiceId)
|
15 |
+
{
|
16 |
+
Mage::getSingleton("sales/order_invoice")->loadByIncrementId($invoiceId)
|
17 |
+
->setCreatedAt($date)
|
18 |
+
->setUpdatedAt($date)
|
19 |
+
->save()
|
20 |
+
->unsetData();
|
21 |
+
$this->updateInvoiceQTY($invoice_item);
|
22 |
+
}
|
23 |
+
}
|
24 |
+
} catch (Exception $e) {
|
25 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'invoice');
|
26 |
+
Mage::helper('exporter')->footer();
|
27 |
+
return true;
|
28 |
+
}
|
29 |
+
$order->unsetData();
|
30 |
+
return $invoiceId;
|
31 |
+
}
|
32 |
+
|
33 |
+
public function updateInvoiceQTY($invoice_item)
|
34 |
+
{
|
35 |
+
foreach($invoice_item as $itemid => $itemqty)
|
36 |
+
{
|
37 |
+
$orderItem = Mage::getModel('sales/order_item')->load($itemid);
|
38 |
+
$orderItem->setQtyInvoiced($itemqty)->save();
|
39 |
+
$orderItem->unsetData();
|
40 |
+
}
|
41 |
+
}
|
42 |
+
|
43 |
+
public function getOrderModel($last_order_increment_id)
|
44 |
+
{
|
45 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id);
|
46 |
+
return $order;
|
47 |
+
}
|
48 |
+
}
|
app/code/community/Raveinfosys/Exporter/Model/Operations/Shipment.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Model_Operations_Shipment extends Mage_Core_Model_Abstract
|
4 |
+
{
|
5 |
+
|
6 |
+
public function createShipment($order_id,$shipped_item,$date)
|
7 |
+
{
|
8 |
+
$order = $this->getOrderModel($order_id);
|
9 |
+
try
|
10 |
+
{
|
11 |
+
if($order->canShip())
|
12 |
+
{
|
13 |
+
$shipId = Mage::getModel('sales/order_shipment_api')
|
14 |
+
->create($order_id, $shipped_item ,null ,0,0);
|
15 |
+
|
16 |
+
if($shipId)
|
17 |
+
{
|
18 |
+
Mage::getSingleton("sales/order_shipment")->loadByIncrementId($shipId)
|
19 |
+
->setCreatedAt($date)
|
20 |
+
->setUpdatedAt($date)
|
21 |
+
->save()
|
22 |
+
->unsetData();
|
23 |
+
$this->updateShipmentQTY($shipped_item);
|
24 |
+
}
|
25 |
+
}
|
26 |
+
} catch (Exception $e) {
|
27 |
+
Mage::helper('exporter')->logException($e,$order->getIncrementId(),'shipment');
|
28 |
+
Mage::helper('exporter')->footer();
|
29 |
+
return true;
|
30 |
+
}
|
31 |
+
$order->unsetData();
|
32 |
+
return $shipment;
|
33 |
+
}
|
34 |
+
|
35 |
+
public function updateShipmentQTY($shipped_item)
|
36 |
+
{
|
37 |
+
foreach($shipped_item as $itemid => $itemqty)
|
38 |
+
{
|
39 |
+
$orderItem = Mage::getModel('sales/order_item')->load($itemid);
|
40 |
+
$orderItem->setQtyShipped($itemqty)->save();
|
41 |
+
$orderItem->unsetData();
|
42 |
+
}
|
43 |
+
}
|
44 |
+
|
45 |
+
public function getOrderModel($last_order_increment_id)
|
46 |
+
{
|
47 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($last_order_increment_id);
|
48 |
+
return $order;
|
49 |
+
}
|
50 |
+
}
|
app/code/community/Raveinfosys/Exporter/controllers/Adminhtml/ExporterController.php
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Adminhtml_ExporterController extends Mage_Adminhtml_Controller_Action
|
4 |
+
{
|
5 |
+
protected function _initAction()
|
6 |
+
{
|
7 |
+
$this->loadLayout()
|
8 |
+
->_setActiveMenu('exporter/items')
|
9 |
+
->_addBreadcrumb(Mage::helper('adminhtml')->__('Items Manager'), Mage::helper('adminhtml')->__('Item Manager'));
|
10 |
+
|
11 |
+
return $this;
|
12 |
+
}
|
13 |
+
|
14 |
+
public function indexAction()
|
15 |
+
{
|
16 |
+
$this->_initAction()
|
17 |
+
->renderLayout();
|
18 |
+
}
|
19 |
+
|
20 |
+
public function gridAction()
|
21 |
+
{
|
22 |
+
$this->_initAction()
|
23 |
+
->renderLayout();
|
24 |
+
}
|
25 |
+
|
26 |
+
|
27 |
+
public function newAction()
|
28 |
+
{
|
29 |
+
$this->_forward('exportall');
|
30 |
+
|
31 |
+
}
|
32 |
+
|
33 |
+
public function exportallAction()
|
34 |
+
{
|
35 |
+
$orders = Mage::getModel('sales/order')->getCollection()
|
36 |
+
->addAttributeToSelect('entity_id');
|
37 |
+
$order_arr = array();
|
38 |
+
foreach ($orders as $order) {
|
39 |
+
$order_arr[] = $order->getId();
|
40 |
+
}
|
41 |
+
$file = Mage::getModel('exporter/exportorders')->exportOrders($order_arr);
|
42 |
+
$this->_prepareDownloadResponse($file, file_get_contents(Mage::getBaseDir('export').'/'.$file));
|
43 |
+
}
|
44 |
+
|
45 |
+
public function exportCsvAction()
|
46 |
+
{
|
47 |
+
$orders = $this->getRequest()->getPost('order_ids', array());
|
48 |
+
$file = Mage::getModel('exporter/exportorders')->exportOrders($orders);
|
49 |
+
$this->_prepareDownloadResponse($file, file_get_contents(Mage::getBaseDir('export').'/'.$file));
|
50 |
+
}
|
51 |
+
|
52 |
+
public function exportLogAction()
|
53 |
+
{
|
54 |
+
$file = 'order_exception_log.htm';
|
55 |
+
$this->_prepareDownloadResponse($file, file_get_contents(Mage::getBaseDir('var') .'/raveinfosys/exporter/'.$file));
|
56 |
+
}
|
57 |
+
}
|
app/code/community/Raveinfosys/Exporter/controllers/Adminhtml/ImporterController.php
ADDED
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Raveinfosys_Exporter_Adminhtml_ImporterController extends Mage_Adminhtml_Controller_Action
|
4 |
+
{
|
5 |
+
protected function _initAction()
|
6 |
+
{
|
7 |
+
$this->loadLayout()
|
8 |
+
->_setActiveMenu('exporter/items')
|
9 |
+
->_addBreadcrumb(Mage::helper('adminhtml')->__('Orders Import'), Mage::helper('adminhtml')->__('Orders Import'));
|
10 |
+
|
11 |
+
return $this;
|
12 |
+
}
|
13 |
+
|
14 |
+
public function indexAction()
|
15 |
+
{
|
16 |
+
$this->_initAction()
|
17 |
+
->renderLayout();
|
18 |
+
}
|
19 |
+
|
20 |
+
public function importOrdersAction()
|
21 |
+
{
|
22 |
+
if($_FILES['order_csv']['name'] != '') {
|
23 |
+
$data = $this->getRequest()->getPost();
|
24 |
+
try {
|
25 |
+
$uploader = new Varien_File_Uploader('order_csv');
|
26 |
+
$uploader->setAllowedExtensions(array('csv'));
|
27 |
+
$uploader->setAllowRenameFiles(false);
|
28 |
+
$uploader->setFilesDispersion(false);
|
29 |
+
$path = Mage::getBaseDir('media') . DS.'raveinfosys/exporter/import/';
|
30 |
+
$uploader->save($path, $_FILES['order_csv']['name'] );
|
31 |
+
$csv = Mage::getModel('exporter/importorders')->readCSV($path.$_FILES['order_csv']['name'],$data);
|
32 |
+
|
33 |
+
} catch (Exception $e) {
|
34 |
+
Mage::getModel('core/session')->addError(Mage::helper('exporter')->__('Invalid file type!!'));
|
35 |
+
|
36 |
+
}
|
37 |
+
|
38 |
+
$this->_redirect('*/*/');
|
39 |
+
}
|
40 |
+
else {
|
41 |
+
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('exporter')->__('Unable to find the import file'));
|
42 |
+
$this->_redirect('*/*/');
|
43 |
+
}
|
44 |
+
|
45 |
+
}
|
46 |
+
}
|
app/code/community/Raveinfosys/Exporter/etc/config.xml
ADDED
@@ -0,0 +1,138 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<Raveinfosys_Exporter>
|
5 |
+
<version>0.1.0</version>
|
6 |
+
</Raveinfosys_Exporter>
|
7 |
+
</modules>
|
8 |
+
<frontend>
|
9 |
+
<routers>
|
10 |
+
<exporter>
|
11 |
+
<use>standard</use>
|
12 |
+
<args>
|
13 |
+
<module>Raveinfosys_Exporter</module>
|
14 |
+
<frontName>exporter</frontName>
|
15 |
+
</args>
|
16 |
+
</exporter>
|
17 |
+
</routers>
|
18 |
+
<layout>
|
19 |
+
<updates>
|
20 |
+
<exporter>
|
21 |
+
<file>exporter.xml</file>
|
22 |
+
</exporter>
|
23 |
+
</updates>
|
24 |
+
</layout>
|
25 |
+
</frontend>
|
26 |
+
<admin>
|
27 |
+
<routers>
|
28 |
+
<exporter>
|
29 |
+
<use>admin</use>
|
30 |
+
<args>
|
31 |
+
<module>Raveinfosys_Exporter</module>
|
32 |
+
<frontName>exporter</frontName>
|
33 |
+
</args>
|
34 |
+
</exporter>
|
35 |
+
</routers>
|
36 |
+
</admin>
|
37 |
+
<adminhtml>
|
38 |
+
<menu>
|
39 |
+
<exporter module="exporter">
|
40 |
+
<title>Exporter</title>
|
41 |
+
<sort_order>71</sort_order>
|
42 |
+
<children>
|
43 |
+
<export module="exporter">
|
44 |
+
<title>Export Orders</title>
|
45 |
+
<sort_order>1</sort_order>
|
46 |
+
<action>exporter/adminhtml_exporter</action>
|
47 |
+
</export>
|
48 |
+
<import module="exporter">
|
49 |
+
<title>Import Orders</title>
|
50 |
+
<sort_order>2</sort_order>
|
51 |
+
<action>exporter/adminhtml_importer</action>
|
52 |
+
</import>
|
53 |
+
</children>
|
54 |
+
</exporter>
|
55 |
+
</menu>
|
56 |
+
<acl>
|
57 |
+
<resources>
|
58 |
+
<all>
|
59 |
+
<title>Allow Everything</title>
|
60 |
+
</all>
|
61 |
+
<admin>
|
62 |
+
<children>
|
63 |
+
<Raveinfosys_Exporter>
|
64 |
+
<title>Exporter Module</title>
|
65 |
+
<sort_order>10</sort_order>
|
66 |
+
</Raveinfosys_Exporter>
|
67 |
+
</children>
|
68 |
+
</admin>
|
69 |
+
</resources>
|
70 |
+
</acl>
|
71 |
+
<layout>
|
72 |
+
<updates>
|
73 |
+
<exporter>
|
74 |
+
<file>exporter.xml</file>
|
75 |
+
</exporter>
|
76 |
+
</updates>
|
77 |
+
</layout>
|
78 |
+
</adminhtml>
|
79 |
+
<global>
|
80 |
+
<models>
|
81 |
+
<exporter>
|
82 |
+
<class>Raveinfosys_Exporter_Model</class>
|
83 |
+
<resourceModel>exporter_mysql4</resourceModel>
|
84 |
+
</exporter>
|
85 |
+
<exporter_mysql4>
|
86 |
+
<class>Raveinfosys_Exporter_Model_Mysql4</class>
|
87 |
+
<entities>
|
88 |
+
<exporter>
|
89 |
+
<table>exporter</table>
|
90 |
+
</exporter>
|
91 |
+
</entities>
|
92 |
+
</exporter_mysql4>
|
93 |
+
</models>
|
94 |
+
<resources>
|
95 |
+
<exporter_setup>
|
96 |
+
<setup>
|
97 |
+
<module>Raveinfosys_Exporter</module>
|
98 |
+
</setup>
|
99 |
+
<connection>
|
100 |
+
<use>core_setup</use>
|
101 |
+
</connection>
|
102 |
+
</exporter_setup>
|
103 |
+
<exporter_write>
|
104 |
+
<connection>
|
105 |
+
<use>core_write</use>
|
106 |
+
</connection>
|
107 |
+
</exporter_write>
|
108 |
+
<exporter_read>
|
109 |
+
<connection>
|
110 |
+
<use>core_read</use>
|
111 |
+
</connection>
|
112 |
+
</exporter_read>
|
113 |
+
</resources>
|
114 |
+
<blocks>
|
115 |
+
<exporter>
|
116 |
+
<class>Raveinfosys_Exporter_Block</class>
|
117 |
+
</exporter>
|
118 |
+
|
119 |
+
<adminhtml>
|
120 |
+
<rewrite>
|
121 |
+
<sales_order_shipment_view_form>Raveinfosys_Exporter_Block_Sales_Order_Form_Form</sales_order_shipment_view_form>
|
122 |
+
</rewrite>
|
123 |
+
</adminhtml>
|
124 |
+
|
125 |
+
<adminhtml>
|
126 |
+
<rewrite>
|
127 |
+
<sales_order_shipment_create_items>Raveinfosys_Exporter_Block_Sales_Order_Items</sales_order_shipment_create_items>
|
128 |
+
</rewrite>
|
129 |
+
</adminhtml>
|
130 |
+
|
131 |
+
</blocks>
|
132 |
+
<helpers>
|
133 |
+
<exporter>
|
134 |
+
<class>Raveinfosys_Exporter_Helper</class>
|
135 |
+
</exporter>
|
136 |
+
</helpers>
|
137 |
+
</global>
|
138 |
+
</config>
|
app/design/adminhtml/default/default/layout/exporter.xml
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<layout version="0.1.0">
|
3 |
+
<exporter_adminhtml_exporter_index>
|
4 |
+
<reference name="content">
|
5 |
+
<block type="exporter/adminhtml_exporter" name="exporter" />
|
6 |
+
</reference>
|
7 |
+
</exporter_adminhtml_exporter_index>
|
8 |
+
|
9 |
+
<exporter_adminhtml_exporter_grid>
|
10 |
+
<reference name="root">
|
11 |
+
<block type="exporter/adminhtml_exporter_grid" name="root" output="toHtml"/>
|
12 |
+
</reference>
|
13 |
+
</exporter_adminhtml_exporter_grid>
|
14 |
+
|
15 |
+
<exporter_adminhtml_importer_index>
|
16 |
+
<reference name="content">
|
17 |
+
<block type="exporter/adminhtml_exporter_edit_tab_form" name="importer" />
|
18 |
+
</reference>
|
19 |
+
</exporter_adminhtml_importer_index>
|
20 |
+
</layout>
|
app/etc/modules/Raveinfosys_Exporter.xml
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<Raveinfosys_Exporter>
|
5 |
+
<active>true</active>
|
6 |
+
<codePool>community</codePool>
|
7 |
+
</Raveinfosys_Exporter>
|
8 |
+
</modules>
|
9 |
+
</config>
|
package.xml
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package>
|
3 |
+
<name>Raveinfosys_OrderExporter</name>
|
4 |
+
<version>1.0.0</version>
|
5 |
+
<stability>stable</stability>
|
6 |
+
<license>OSL v3.0</license>
|
7 |
+
<channel>community</channel>
|
8 |
+
<extends/>
|
9 |
+
<summary>Magento sales order import and export.</summary>
|
10 |
+
<description>Magento sales order import and export.</description>
|
11 |
+
<notes>This is stable version of this extension and has been tested on various version of community editions. &#xD;
|
12 |
+
In this particular version we are supporting it to run on PHP V 5.4.X</notes>
|
13 |
+
<authors><author><name>Rave Infosys</name><user>raveinfo</user><email>magento@raveinfosys.com</email></author></authors>
|
14 |
+
<date>2014-06-04</date>
|
15 |
+
<time>13:38:54</time>
|
16 |
+
<contents><target name="magecommunity"><dir name="Raveinfosys"><dir name="Exporter"><dir name="Block"><dir name="Adminhtml"><dir name="Exporter"><dir name="Edit"><file name="Form.php" hash="400092e0356c9ec79632ea296a9e72cc"/><dir name="Tab"><file name="Form.php" hash="ae63a5095a4f929555fa6038cce9c18d"/></dir><file name="Tabs.php" hash="0babeb85a2db29aa4b6854c8baec177b"/></dir><file name="Edit.php" hash="79a1d66ea5482a539dfb2a0174b469a6"/><file name="Grid.php" hash="0286e705b323fa71460bf5ed1f29a0bf"/></dir><file name="Exporter.php" hash="0c077445a7bb4f33bf383e34f0fa1260"/></dir><file name="Exporter.php" hash="7bf9256c575b080fad7c4c3cab5017e8"/><dir name="Sales"><dir name="Order"><dir name="Form"><file name="Form.php" hash="54bb9eb64d173ad92229c229c2bc9366"/></dir><file name="Items.php" hash="e87d8e6a38786fe390e7030764458d9e"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="836d093b921ddced4eaedc9ea206f55b"/></dir><dir name="Model"><file name="Createorder.php" hash="a24ebe9696ff7a7cf8bfb157f9b8fefa"/><file name="Exporter.php" hash="5de2fd59c4f5a4fa7e2d32a5503fbdae"/><file name="Exportorders.php" hash="aa636bdcd02880f49e11d44cabd24ead"/><file name="Importorders.php" hash="526c16a774f1c7fd830c06514571d927"/><dir name="Operations"><file name="Creditmemo.php" hash="ad12cb5cbceebf9ab9fb41e42f940557"/><file name="Invoice.php" hash="17225a359399ff1dbe2c1dc3ea2b0137"/><file name="Shipment.php" hash="d83ed179805c3c0b71a29bd48c117edd"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ExporterController.php" hash="fcac4d1fb1ab1488f7b9d7ed980f2775"/><file name="ImporterController.php" hash="53228d4d1204d104cf9563e1fd8e3caf"/></dir></dir><dir name="etc"><file name="config.xml" hash="ab20453fa38d51966ea69b7a1e296960"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Raveinfosys_Exporter.xml" hash="af376451e72fdac6ac3d8999d2d78c6c"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="exporter.xml" hash="4a85ad0274334473e6cfd620df3e819f"/></dir></dir></dir></dir></target><target name="mage"><dir name="var"><dir name="raveinfosys"><dir name="exporter"><file name="order_exception_log.htm" hash="aa58e7a9f46530c3b77fca324a6598cc"/></dir></dir></dir></target></contents>
|
17 |
+
<compatible/>
|
18 |
+
<dependencies><required><php><min>5.2.0</min><max>5.4.27</max></php></required></dependencies>
|
19 |
+
</package>
|
var/raveinfosys/exporter/order_exception_log.htm
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<h3 style="text-align:center;">Error information:</h3><hr /><br />
|