コード例 #1
0
ファイル: ListController.php プロジェクト: larryu/magento-b2b
 public function genReport($sender, $param)
 {
     $results = $errors = array();
     try {
         Dao::beginTransaction();
         if (isset($param->CallbackParameter->type) && ($type = trim($param->CallbackParameter->type)) === '') {
             throw new Exception('SYSTEM ERROR: invalid type passed in.');
         }
         $asset = null;
         switch (strtolower($type)) {
             case 'sales_daily':
                 SalesExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = SalesExport_Xero::run(false, false);
                 break;
             case 'creditnotes_daily':
                 CreditNoteExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = CreditNoteExport_Xero::run(false, false);
                 break;
             case 'supplier_bill_daily':
                 BillExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = BillExport_Xero::run(false, false);
                 break;
             case 'manual_journal':
                 ManualJournalExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = ManualJournalExport_Xero::run(false, false);
                 break;
             case 'payments_daily':
                 PaymentExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = PaymentExport_Xero::run(false, false);
                 break;
             case 'inventory_list':
                 ItemExport_Xero::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = ItemExport_Xero::run(false, true);
                 break;
             case 'magento_price':
                 ItemExport_Magento::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = ItemExport_Magento::run(false, false);
                 break;
             case 'accounting_code':
                 AccoutingCodeExport::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = AccoutingCodeExport::run(false, false);
                 break;
             case 'open_inv':
                 OpenInvoiceExport::setStartNEndDate(new UDate(trim($param->CallbackParameter->date_from)), new UDate(trim($param->CallbackParameter->date_to)));
                 $asset = OpenInvoiceExport::run(false, false);
                 break;
             default:
                 throw new Exception('SYSTEM ERROR: invalid type passed in: ' . $type);
         }
         if ($asset instanceof Asset) {
             $results['item'] = $asset->getJson();
         }
         Dao::commitTransaction();
     } catch (Exception $ex) {
         Dao::rollbackTransaction();
         $error[] = $ex->getMessage();
     }
     $param->ResponseData = StringUtilsAbstract::getJson($results, $errors);
 }