public function updateAction()
 {
     // Connect to Riot Api and get champion data
     $key = '';
     $api = new Api($key);
     $champions = $api->staticData()->getChampions();
     // Create transaction
     $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
     $transaction = $manager->get();
     // Insert champion id and champion name into MySQL
     foreach ($champions as $champion) {
         // Remove spaces, periods, and apostrophes from names to better correspond with img names
         $to_remove = array("'", ".", " ");
         $to_replace = array("", "", "");
         $champion_name = $champion->name;
         $champion_name = str_replace($to_remove, $to_replace, $champion_name);
         // Insert champion id and name
         $new_champion = new Champion();
         $new_champion->setTransaction($transaction);
         $new_champion->save(array("champion_id" => $champion->id, "champion_name" => $champion_name));
         print "Inserted: " . $champion->id . " " . $champion_name . "<br>";
     }
     $transaction->commit();
 }
 public function saveAction()
 {
     $this->view->title = "Збереження студента";
     $errors = array();
     !file_exists($this->logFileName) ? $attr = array('mode' => 'w') : ($attr = array());
     $logger = new FileAdapter($this->logFileName, $attr);
     $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
     $transaction = $manager->get();
     $indCode = $this->request->get("ind_code");
     if ($indCode != NULL) {
         $logger->log("indCode not NULL");
         if ($this->request->isPost()) {
             $logger->log("POST request finded");
             //debug($this->request->get());
             if ($this->request->get("uid") == NULL) {
                 $user = new \Users();
                 $logger->log("new User created");
             } else {
                 $user = \Users::findFirst($this->request->get("uid"));
                 if (!$user) {
                     $logger->warning("this User is not finded!");
                     $user = new \Users();
                     $logger->log("new User created");
                 } else {
                     $logger->log("User id is " . $user->id);
                 }
             }
             $user->setTransaction($transaction);
             $logger->log("Transaction started");
             $user->name = $this->request->get("name");
             $user->last_name = $this->request->get("last_name");
             $user->second_name = $this->request->get("second_name");
             $user->login = $this->request->get("login");
             $user->password = MD5($this->request->get("password"));
             $user->is_male = $this->request->get("is_male");
             $user->is_active = 1;
             $user->email = $this->request->get("email");
             $user->date_registration = date('Y-m-d H:i:s');
             $user->birthday = $this->request->get("birthday");
             $user->address_home = $this->request->get("address_home");
             $user->phome = $this->request->get("phome");
             $user->pmobile = $this->request->get("pmobile");
             if ($this->request->get("id") == NULL) {
                 $student = new \Students();
                 $logger->log("new Student created");
             } else {
                 $student = \Students::findFirst($this->request->get("id"));
                 if (!$student) {
                     $logger->warning("this Student is not finded!");
                     $student = new \Students();
                     $logger->log("new Student created");
                 } else {
                     $logger->log("Student id is " . $user->id);
                 }
             }
             //добавление студента
             $student->ind_code = $indCode;
             if (count($this->request->get("student_education")) > 0) {
                 $logger->log("student educations from request count>0, so start to add its");
                 $studentEducations = array();
                 //добавление образований
                 $c = 0;
                 foreach ($this->request->get("student_education") as $educ) {
                     $logger->log("Educ cycle #" . $c++);
                     $educJSON = json_decode($educ, true);
                     $se = new \StudentsEducation();
                     if (!array_key_exists("education_child_id", $educJSON)) {
                         $se->education_id = $educJSON["education_id"];
                     } else {
                         $se->education_id = $educJSON["education_child_id"];
                     }
                     $se->institution = $educJSON["institution"];
                     $se->speciality = $educJSON["speciality"];
                     $se->qualify = $educJSON["qualify"];
                     $se->diploma_number = $educJSON["diploma_number"];
                     $se->diploma_date = $educJSON["diploma_date"];
                     $logger->log("Educ id = " . $educJSON["education_id"]);
                     $studentEducations[] = $se;
                 }
             } else {
                 $logger->warning("No educations in request!");
                 $studentEducations = NULL;
             }
             if ($student->StudentsEducation->count() > 0) {
                 $logger->warning("Finded old education(s) (" . $student->StudentsEducation->count() . ") in this Student. Trying to delete all its");
                 $c = 0;
                 foreach ($student->StudentsEducation as $se) {
                     $logger->log("Educ delation cycle #" . $c++);
                     $se->delete();
                 }
             } else {
                 $logger->warning("no old educations finded!");
             }
             $student->StudentsEducation = $studentEducations;
             //debug($student->StudentsEducation);
             if (count($this->request->get("student_post")) > 0) {
                 $logger->log("There is Posts in request");
                 $studentPosts = array();
                 //добавление должностей
                 $logger->log("new Posts addition");
                 $c = 0;
                 foreach ($this->request->get("student_post") as $spost) {
                     $logger->log("Posts cycle #" . $c++);
                     $spostJSON = json_decode($spost, true);
                     if (!array_key_exists("brands", $spostJSON)) {
                         $spostJSON = array_values($spostJSON)[0];
                     }
                     $sp = new \StudentsPosts();
                     if (array_key_exists("dealer", $spostJSON)) {
                         $sp->dealer = $spostJSON["dealer"];
                     }
                     if (array_key_exists("post", $spostJSON)) {
                         $sp->post = $spostJSON["post"];
                     }
                     if (array_key_exists("rate", $spostJSON)) {
                         $sp->rate = $spostJSON["rate"];
                     }
                     if (array_key_exists("appoint_date", $spostJSON)) {
                         $sp->appoint_date = strtotime($spostJSON["appoint_date"]);
                     }
                     if (array_key_exists("brands", $spostJSON) && count($spostJSON["brands"]) > 0) {
                         // Добавление брендов
                         $logger->log("Brands finded. Triying to add all of " . count($spostJSON["brands"]) . " brands");
                         $studentsPostsBrands = array();
                         foreach ($spostJSON["brands"] as $brand) {
                             $spb = new \StudentsPostsBrands();
                             $spb->brand_id = $brand;
                             $studentsPostsBrands[] = $spb;
                         }
                         $sp->StudentsPostsBrands = $studentsPostsBrands;
                     } else {
                         $logger->warning("no Brands in this Post finded!");
                     }
                     if (array_key_exists("activities", $spostJSON) && count($spostJSON["activities"]) > 0) {
                         // Добавление напр. деятельности
                         $logger->log("Activities finded. Triying to add all of " . count($spostJSON["activities"]) . " activities");
                         $studentPostsActivities = array();
                         foreach ($spostJSON["activities"] as $activity) {
                             $spa = new \StudentsPostsActivities();
                             $spa->activity_id = $activity;
                             $studentPostsActivities[] = $spa;
                         }
                         $sp->StudentsPostsActivities = $studentPostsActivities;
                     } else {
                         $logger->warning("no Activities in this Post finded!");
                     }
                     $studentPosts[] = $sp;
                 }
             } else {
                 $logger->warning("no Posts finded in request!");
                 $studentPosts = NULL;
             }
             if ($student->StudentsPosts->count() > 0) {
                 $logger->log("There is old Posts");
                 $c = 0;
                 foreach ($student->StudentsPosts as $sp) {
                     $logger->log("old Posts deletion cycle #" . $c++);
                     if ($sp->StudentsPostsActivities->count() > 0) {
                         $logger->log("there is some (" . $sp->StudentsPostsActivities->count() . ") Activities in old Post. Deletion all of it.");
                         foreach ($sp->StudentsPostsActivities as $spa) {
                             if ($spa->delete()) {
                                 $logger->log("StudentsPostsActivities id = " . $spa->activity_id . " deleted");
                             } else {
                                 $logger->warning("StudentsPostsActivities id = " . $spa->activity_id . " deletion error!");
                             }
                         }
                     } else {
                         $logger->warning("No one Activities in old Posts");
                     }
                     if ($sp->StudentsPostsBrands->count() > 0) {
                         $logger->log("there is some (" . $sp->StudentsPostsBrands->count() . ") Brands in old Post. Deletion all of it.");
                         foreach ($sp->StudentsPostsBrands as $spb) {
                             if ($spb->delete()) {
                                 $logger->log("StudentsPostsBrand id = " . $spb->brand_id . " deleted");
                             } else {
                                 $logger->warning("StudentsPostsBrand id = " . $spb->brand_id . " deletion error!");
                             }
                         }
                     } else {
                         $logger->warning("No one Brands in old Posts");
                     }
                     $logger->log("Posts id " . $sp->id . " deletion");
                     if ($sp->delete()) {
                         $logger->log("StudentsPosts id = " . $sp->id . " deleted");
                     } else {
                         $logger->warning("StudentsPosts id = " . $sp->id . " deletion error!");
                     }
                 }
             } else {
                 $logger->warning("no old Posts finded!");
             }
             $logger->log("Add all new Posts to Student");
             $student->StudentsPosts = $studentPosts;
             $logger->log("Add all new Students to User");
             $user->Students = array($student);
             if ($user->save() === false) {
                 $logger->log("User not saved!");
                 echo '<div class="alert alert-warning" role="alert">Під час збереження студента виникли наступні помилки: <br><ul>';
                 foreach ($user->getMessages() as $msg) {
                     echo "<li>" . $msg . "</li>";
                 }
                 echo "</ul></div>";
                 $transaction->rollback("Під час збереження студента виникли помилки");
             } else {
                 if ($transaction->commit()) {
                     if ($this->request->get("id") == NULL) {
                         echo '<div class="alert alert-success" role="alert">Студент доданий успішно!</div>';
                     } else {
                         echo '<div class="alert alert-success" role="alert">Студент збережений успішно!</div>';
                     }
                     $logger->log("User saved!");
                 } else {
                     echo '<div class="alert alert-warning" role="alert">Під час збереження студента виникла помилка транзакції <br><ul>';
                     $logger->warning("Transaction save errors:");
                     foreach ($transaction->getMessages() as $msg) {
                         $logger->warning("--- " . $msg);
                     }
                 }
             }
             //$user->Students = array();
         }
     } else {
         echo '<div class="alert alert-warning" role="alert">Під час збереження студента виникла помилка. Вiдсутній ІНН!</div>';
         $transaction->rollback("Вiдсутній ІНН!");
         $logger->error("No INN!");
     }
 }
Beispiel #3
0
 /**
  * Configuration application default DI
  *
  * @return FactoryDefault| CLI
  */
 public function getDI()
 {
     if ($this->di) {
         return $this->di;
     }
     if ($this->appMode == 'cli') {
         $di = new FactoryDefault\CLI();
     } else {
         $di = new FactoryDefault();
     }
     //PHP5.3 not support $this in closure
     $self = $this;
     /**********************************
      * DI initialize for MVC core
      ***********************************/
     //$di->set('application', $this);
     //call loadmodules will overwrite this
     $di->set('moduleManager', function () use($di) {
         $moduleManager = new ModuleManager();
         $moduleManager->setEventsManager($di->getEventsManager());
         return $moduleManager;
     }, true);
     //System global events manager
     $di->set('eventsManager', function () use($di) {
         $eventsManager = new EventsManager();
         $eventsManager->enablePriorities(true);
         // dispatch caching event handler
         $eventsManager->attach("dispatch", new DispatchInterceptor(), -1);
         $eventsManager->enablePriorities(true);
         return $eventsManager;
     }, true);
     $di->set('config', function () use($self) {
         return $self->diConfig();
     }, true);
     $di->set('router', function () use($self) {
         return $self->diRouter();
     }, true);
     $di->set('dispatcher', function () use($di) {
         $dispatcher = new Dispatcher();
         $dispatcher->setEventsManager($di->getEventsManager());
         return $dispatcher;
     }, true);
     $di->set('modelsMetadata', function () use($self) {
         return $self->diModelsMetadata();
     }, true);
     $di->set('modelsManager', function () use($di) {
         $config = $di->getConfig();
         ModelManager::setDefaultPrefix($config->dbAdapter->prefix);
         //for solving db master/slave under static find method
         $modelsManager = new ModelManager();
         return $modelsManager;
     });
     $di->set('view', function () use($di) {
         $view = new View();
         $view->setViewsDir(__DIR__ . '/views/');
         $view->setEventsManager($di->getEventsManager());
         return $view;
     });
     $di->set('session', function () use($self) {
         return $self->diSession();
     });
     $di->set('tokenStorage', function () use($self) {
         return $self->diTokenStorage();
     }, true);
     /**********************************
      * DI initialize for database
      ***********************************/
     $di->set('dbMaster', function () use($self) {
         return $self->diDbMaster();
     }, true);
     $di->set('dbSlave', function () use($self) {
         return $self->diDbSlave();
     }, true);
     $di->set('transactions', function () use($di) {
         $transactions = new \Phalcon\Mvc\Model\Transaction\Manager();
         $transactions->setDbService('dbMaster');
         return $transactions;
     }, true);
     /**********************************
      * DI initialize for cache
      ***********************************/
     $di->set('globalCache', function () use($self) {
         return $self->diGlobalCache();
     }, true);
     $di->set('viewCache', function () use($self) {
         return $self->diViewCache();
     }, true);
     $di->set('modelsCache', function () use($self) {
         return $self->diModelsCache();
     }, true);
     $di->set('apiCache', function () use($self) {
         return $self->diApiCache();
     }, true);
     $di->set('fastCache', function () use($self) {
         return $self->diFastCache();
     }, true);
     /**********************************
      * DI initialize for queue
      ***********************************/
     $di->set('queue', function () use($di) {
         $config = $di->getConfig();
         $client = new \GearmanClient();
         $client->setTimeout(1000);
         foreach ($config->queue->servers as $key => $server) {
             $client->addServer($server->host, $server->port);
         }
         return $client;
     }, true);
     $di->set('worker', function () use($di) {
         $config = $di->getConfig();
         $worker = new \GearmanWorker();
         foreach ($config->queue->servers as $key => $server) {
             $worker->addServer($server->host, $server->port);
         }
         return $worker;
     }, true);
     /**********************************
      * DI initialize for email
      ***********************************/
     $di->set('mailer', function () use($self) {
         return $self->diMailer();
     }, true);
     $di->set('mailMessage', 'Eva\\EvaEngine\\MailMessage');
     $di->set('smsSender', function () use($self) {
         return $self->diSmsSender();
     }, true);
     /**********************************
      * DI initialize for helpers
      ***********************************/
     $di->set('url', function () use($di) {
         $config = $di->getConfig();
         $url = new UrlResolver();
         $url->setVersionFile($config->staticBaseUriVersionFile);
         $url->setBaseUri($config->baseUri);
         $url->setStaticBaseUri($config->staticBaseUri);
         return $url;
     }, true);
     $di->set('escaper', 'Phalcon\\Escaper');
     $di->set('tag', function () use($di, $self) {
         Tag::setDi($di);
         $self->registerViewHelpers();
         return new Tag();
     });
     $di->set('flash', 'Phalcon\\Flash\\Session');
     $di->set('placeholder', 'Eva\\EvaEngine\\View\\Helper\\Placeholder');
     $di->set('cookies', function () {
         $cookies = new \Phalcon\Http\Response\Cookies();
         $cookies->useEncryption(false);
         return $cookies;
     });
     $di->set('translate', function () use($self) {
         return $self->diTranslate();
     });
     $di->set('fileSystem', function () use($self) {
         return $self->diFileSystem();
     });
     $di->set('logException', function () use($di) {
         $config = $di->getConfig();
         return new FileLogger($config->logger->path . 'error.log');
     });
     if ($this->appMode == 'cli') {
         $this->cliDI($di);
     }
     IoC::setDI($di);
     return $this->di = $di;
 }
Beispiel #4
0
 /**
  * Guarda las columnas basicas de una planilla.
  * Esta operación se utiliza cuando se genera una cabeceraBasica
  * FIXME: Muy vinculado al codigo, si cambian los nombres de los atributos en la bd, tengo que cambiar aca.
  */
 public static function guardarColumnasBasica($cabecera_id)
 {
     try {
         $data['success'] = true;
         $data['mensaje'] = "Operación Exitosa";
         $retorno = array();
         $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
         $transaction = $manager->get();
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(1);
         $columna->setColumnaNombre('ORDEN');
         $columna->setColumnaClave('Remito.remito_nroOrden');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(2);
         $columna->setColumnaNombre('REMITO');
         $columna->setColumnaClave('Remito.remito_nro');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(3);
         $columna->setColumnaNombre('PATENTE');
         $columna->setColumnaClave('Transporte.transporte_dominio');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(4);
         $columna->setColumnaNombre('N° INTERNO');
         $columna->setColumnaClave('Transporte.transporte_nroInterno');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(5);
         $columna->setColumnaNombre('TIPO EQUIPO');
         $columna->setColumnaClave('Tipoequipo.tipoEquipo_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(6);
         $columna->setColumnaNombre('TIPO CARGA');
         $columna->setColumnaClave('Tipocarga.tipoCarga_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(7);
         $columna->setColumnaNombre('DNI');
         $columna->setColumnaClave('Chofer.chofer_dni');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(8);
         $columna->setColumnaNombre('CHOFER');
         $columna->setColumnaClave('Chofer.chofer_nombreCompleto');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(9);
         $columna->setColumnaNombre('FECHA');
         $columna->setColumnaClave('DATE_FORMAT(Remito.remito_fecha, \'%d/%m/%Y\')');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(10);
         $columna->setColumnaNombre('CLIENTE');
         $columna->setColumnaClave('Cliente.cliente_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(11);
         $columna->setColumnaNombre('ORIGEN');
         $columna->setColumnaClave('Viaje.viaje_origen');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(12);
         $columna->setColumnaNombre('DESTINO');
         $columna->setColumnaClave('Yacimiento.yacimiento_destino');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(13);
         $columna->setColumnaNombre('EQUIPO/POZO');
         $columna->setColumnaClave('Equipopozo.equipoPozo_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(14);
         $columna->setColumnaNombre('CONCATENADO');
         $columna->setColumnaClave('Concatenado.concatenado_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(15);
         $columna->setColumnaNombre('OPERADORA');
         $columna->setColumnaClave('Operadora.operadora_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(16);
         $columna->setColumnaNombre('LINEA-PSL');
         $columna->setColumnaClave('Linea.linea_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(17);
         $columna->setColumnaNombre('CENTRO COSTO');
         $columna->setColumnaClave('Centrocosto.centroCosto_codigo');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(18);
         $columna->setColumnaNombre('OBSERVACIONES');
         $columna->setColumnaClave('Remito.remito_observacion');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(19);
         $columna->setColumnaNombre('KM');
         $columna->setColumnaClave('Tarifa.tarifa_km');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(20);
         $columna->setColumnaNombre('HS HIDRO');
         $columna->setColumnaClave('tarifa_hsHidro');
         //Ahora esta unificado con las hsMalacate FIXME
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(20);
         $columna->setColumnaNombre('HS MALACATE');
         $columna->setColumnaClave('Tarifa.tarifa_hsMalacate');
         //Ahora esta unificado con las hsMalacate FIXME
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(21);
         $columna->setColumnaNombre('HS DE ESPERA');
         $columna->setColumnaClave('Tarifa.tarifa_hsStand');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(22);
         $columna->setColumnaNombre('HS TOTAL SERVICIO');
         $columna->setColumnaClave('Tarifa.tarifa_hsServicio');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(23);
         $columna->setColumnaNombre('CONFORMIDAD RE');
         $columna->setColumnaClave('Remito.remito_conformidad');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(24);
         $columna->setColumnaNombre('MOT NO CONFORM RE');
         $columna->setColumnaClave('Remito.remito_noConformidad');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(25);
         $columna->setColumnaNombre('PDF');
         $columna->setColumnaClave('Remito.remito_pdf');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(26);
         $columna->setColumnaNombre('ADMIN');
         $columna->setColumnaClave('Administrar');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(26);
         $columna->setColumnaNombre('ES FLETERO');
         $columna->setColumnaClave('Chofer.chofer_esFletero');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $transaction->commit();
         $data['columnas'] = $retorno;
         return $data;
     } catch (Phalcon\Mvc\Model\Transaction\Failed $e) {
         echo 'FALLO, motivo: ', $e->getMessage();
     }
 }
Beispiel #5
0
 /**
  * Guarda una cabecera con las columnas basicas de una planilla.
  * Esta operación se utiliza cuando se guarda una planilla nueva.
  * @return boolean
  */
 public static function guardarCabeceraBasica($nombrePlanilla)
 {
     try {
         $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
         $transaction = $manager->get();
         $cabecera = new Cabecera();
         $cabecera->setTransaction($transaction);
         $cabecera->setCabeceraNombre($nombrePlanilla);
         $cabecera->setCabeceraHabilitado(1);
         $cabecera->setCabeceraFecha(date('Y-m-d'));
         if (!$cabecera->save()) {
             $transaction->rollback("Ocurrió un problema al guardar la cabecera [Cabecera.php ln 200]");
             return false;
         }
         Columna::guardarColumnasBasica($cabecera->getCabeceraId());
         $transaction->commit();
         return true;
     } catch (Phalcon\Mvc\Model\Transaction\Failed $e) {
         echo 'FALLO, motivo: ', $e->getMessage();
         return false;
     }
 }
Beispiel #6
0
 /**
  * Set Dependency Injector with configuration variables
  *
  *
  * @param string $file full path to configuration file
  * @throws \Exception
  */
 public function setConfig($file)
 {
     //        static $config;
     $di = new \Phalcon\DI\FactoryDefault\CLI();
     $di->set('config', new \Phalcon\Config(require $file));
     $config = $di->get('config');
     $adapter = '\\Phalcon\\Db\\Adapter\\Pdo\\' . ucfirst($config->dbMaster->adapter);
     /** @var Pdo $connMaster */
     $connMaster = new $adapter(["host" => $config->dbMaster->host, "port" => $config->dbMaster->port, "username" => $config->dbMaster->username, "password" => $config->dbMaster->password, "dbname" => $config->dbMaster->dbname, "prefix" => $config->dbMaster->prefix, 'options' => [\PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES '" . $config->dbMaster->charset . "'", \PDO::ATTR_CASE => \PDO::CASE_LOWER, \PDO::ATTR_PERSISTENT => true]]);
     $di->set('dbMaster', $connMaster);
     $caches['cache'] = $config->cache->toArray();
     if (!empty($config->cacheSlave)) {
         foreach ($config->cacheSlave as $cache) {
             $caches['cacheSlave'][] = $cache->toArray();
         }
     }
     $adapter = ucfirst($config->cache->adapter);
     if ($adapter == "Redis") {
         $cacheAdapter = '\\Engine\\' . $adapter;
     } else {
         $cacheAdapter = '\\Phalcon\\Cache\\Backend\\' . $adapter;
     }
     $frontEndOptions = ['lifetime' => $config->cache->lifetime];
     $cacheDataAdapter = new $cacheAdapter($frontEndOptions, $caches);
     $di->set('cacheData', $cacheDataAdapter, true);
     $di->setShared('transactions', function () {
         $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
         return $manager->setDbService("dbMaster");
     });
     $this->setDI($di);
 }
 public function createAction($r_controller = null, $r_action = null, $r_id = null)
 {
     if (!$this->request->isPost()) {
         return $this->dispatcher->forward(array("controller" => $this->ctlName, "action" => "index"));
     }
     $this->tag->setDefault('vue-avancee', $this->request->getPost('vue-avancee'));
     try {
         $msg_succes = array();
         $manager = new Phalcon\Mvc\Model\Transaction\Manager();
         $transaction = $manager->get();
         $igo_geometrie = new IgoGeometrie();
         $igo_geometrie->setTransaction($transaction);
         $this->assigneFromPost($igo_geometrie);
         if (!$igo_geometrie->save()) {
             $transaction->rollback(implode('<br> ', $igo_geometrie->getMessages()));
         }
         $msg_succes[] = "Géométrie " . $igo_geometrie->id . " créée avec succès";
         //TODO le code qui suit devrait être dans le model. Il faudra l'ajuster quand on saura quoi faire avec l'Inclusion des attributs
         $igo_connexion = IgoConnexion::findFirstById(intval($this->request->getPost("connexion_id")));
         if ($igo_connexion) {
             $msg_succes[] = "Connexion " . $igo_connexion->id . " réutilisée";
         } else {
             //Ajouter la connexion qu'on va utiliser
             $igo_connexion = new IgoConnexion();
             $igo_connexion->setTransaction($transaction);
             $this->assigneFromPost($igo_connexion);
             $connexion_type_id = intval($this->request->getPost("connexion_type_id"));
             if ($connexion_type_id) {
                 $connexion_type = IgoConnexionType::findFirstById($connexion_type_id);
                 $igo_connexion->connexion_type_id = $connexion_type->id;
                 $igo_connexion->nom = $connexion_type->nom;
                 //TODO à synchroniser avec la rétro
             }
             if (!$igo_connexion->save()) {
                 $transaction->rollback(implode('<br> ', $igo_connexion->getMessages()));
             }
             $msg_succes[] = "Connexion " . $igo_connexion->id . " créée avec succès";
         }
         $igo_couche = new IgoCouche();
         $igo_couche->setTransaction($transaction);
         $this->assigneFromPost($igo_couche);
         $igo_couche->geometrie_id = $igo_geometrie->id;
         if (!$igo_couche->save()) {
             $transaction->rollback(implode('<br> ', $igo_couche->getMessages()));
         }
         $msg_succes[] = "Couche " . $igo_couche->id . " créée avec succès";
         $igo_classe = new IgoClasse();
         $igo_classe->setTransaction($transaction);
         $this->assigneFromPost($igo_classe);
         if ($igo_classe->mf_class_def) {
             $igo_classe->couche_id = $igo_couche->id;
             if (!$igo_classe->save()) {
                 $transaction->rollback(implode('<br> ', $igo_classe->getMessages()));
             }
             $msg_succes[] = "Classe " . $igo_classe->id . " créée avec succès";
         }
         $transaction->commit();
         foreach ($msg_succes as $msg) {
             $this->flash->success($msg);
         }
         return;
     } catch (\Exception $e) {
         $this->flash->error($e->getMessage());
         return $this->dispatcher->forward(array("controller" => "gestion_couche", "action" => "traiteMapfile"));
     }
 }
<?php

try {
    $manager = new Phalcon\Mvc\Model\Transaction\Manager();
    $transaction = $manager->get();
    $robot = new Robots();
    $robot->setTransaction($transaction);
    $robot->name = 'WALL·E';
    $robot->created_at = date('Y-m-d');
    if ($robot->save() == false) {
        $transaction->rollback("Can't save robot");
    }
    $robotPart = new RobotParts();
    $robotPart->setTransaction($transaction);
    $robotPart->type = 'head';
    if ($robotPart->save() == false) {
        $transaction->rollback("Can't save robot part");
    }
    $transaction->commit();
} catch (Phalcon\Mvc\Model\Transaction\Failed $e) {
    echo 'Failed, reason: ', $e->getMessage();
}