Example #1
0
 /**
  * method to execute the process process
  * it's called automatically by the cli main controller
  */
 public function execute()
 {
     $possibleOptions = array('type' => false, 'parser' => false, 'path' => true, 'backup' => true);
     if (($options = $this->getController()->getInstanceOptions($possibleOptions)) === FALSE) {
         return;
     }
     $this->_controller->addOutput("Parser selected: " . $options['parser']);
     //$options['parser'] = Billrun_Parser::getInstance(array('type' => $options['parser']));
     $this->_controller->addOutput("Loading processor");
     $processor = Billrun_Processor::getInstance($options);
     $this->_controller->addOutput("Processor loaded");
     if ($processor) {
         $this->_controller->addOutput("Starting to process. This action can take a while...");
         // buffer all action output
         ob_start();
         if (isset($options['path']) && $options['path']) {
             $linesProcessedCount = $processor->process();
         } else {
             $linesProcessedCount = $processor->process_files();
         }
         // write the buffer into log and output
         $this->_controller->addOutput("processed " . $linesProcessedCount . " lines");
         $this->_controller->addOutput(ob_get_contents());
         ob_end_clean();
     } else {
         $this->_controller->addOutput("Processor cannot be loaded");
     }
 }
Example #2
0
 public function indexAction()
 {
     die;
     // don't enter this by mistake
     $parser = Billrun_Parser::getInstance(array('type' => 'separator', 'separator' => ","));
     $parser->setSeparator(",");
     $import = Billrun_Processor::getInstance(array('type' => 'importzones', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/zone.csv'));
     if ($import === FALSE) {
         exit('cannot load import processor');
     }
     $import->setBackupPath(array());
     // no backup
     $importData = $import->process();
     $merge = Billrun_Processor::getInstance(array('type' => 'mergerates', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/tariff_v2_filtered.csv'));
     if ($merge === FALSE) {
         exit('cannot load merge processor');
     }
     $merge->setBackupPath(array());
     // no backup
     $mergeData = $merge->process();
     $mergePackage = Billrun_Processor::getInstance(array('type' => 'mergezonepackage', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/zone_group_element.csv'));
     if ($mergePackage === FALSE) {
         exit('cannot load merge processor');
     }
     $mergePackage->setBackupPath(array());
     // no backup
     $mergePackageData = $mergePackage->process();
     $merge_intl_networks = Billrun_Processor::getInstance(array('type' => 'mergeintlnetworks', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/mobile_network.csv'));
     if ($merge_intl_networks === FALSE) {
         exit('cannot load import processor');
     }
     $merge_intl_networks->setBackupPath(array());
     // no backup
     $importMapData = $merge_intl_networks->process();
     $wholesale = Billrun_Processor::getInstance(array('type' => 'wholesaleoutrates', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/wholesale/wsalein_tariff_out_v2.csv'));
     if ($wholesale === FALSE) {
         exit('cannot load import processor' . PHP_EOL);
     }
     $wholesale->setBackupPath(array());
     // no backup
     $importWholesaleZones = $wholesale->process();
     $wholesalein = Billrun_Processor::getInstance(array('type' => 'wholesaleinrates', 'parser' => $parser, 'path' => '/home/shani/Documents/S.D.O.C/BillRun/backups/wholesale/wsalein_tariff_in_v2.csv'));
     if ($wholesalein === FALSE) {
         exit('cannot load import processor' . PHP_EOL);
     }
     $wholesalein->setBackupPath(array());
     // no backup
     $importWholesaleIn = $wholesalein->process();
     $this->getView()->title = "BillRun | The best open source billing system";
     $this->getView()->content = "Data import count: " . count($importWholesaleZones) . "<br />" . PHP_EOL . "Data merge count: " . count($mergeData) . "<br />" . "Data merge package count: " . count($mergePackageData) . "<br />" . "Data merge package count: " . count($mergePackageData) . "<br />" . "Merge intl. networks count: " . $importMapData . "<br />" . PHP_EOL;
 }
Example #3
0
 /**
  * Process an ILD file
  * @param $filePath  Path to the filethat needs processing.
  * @param $type  the type of the ILD.
  */
 private function processType($type)
 {
     $options = array('type' => $type, 'parser' => 'fixed');
     $processor = Billrun_Processor::getInstance($options);
     if ($processor) {
         $processor->process_files();
     } else {
         Billrun_Factory::log()->log("error with loading processor", Zend_log::ERR);
         return false;
     }
     $data = $processor->getData();
     Billrun_Factory::log()->log("Process type: " . $type, Zend_log::INFO);
     //	Billrun_Factory::log()->log("file path: " . $filePath, Zend_log::INFO);
     Billrun_Factory::log()->log(isset($data['data']) ? "import lines: " . count($data['data']) : "no data received", Zend_log::INFO);
 }