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!"); } }
/** * 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(); } }
/** * 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; } }
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(); }