/** * 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 las columnas extras a una planilla determinada */ public function guardarExtraAction() { if ($this->request->isPost()) { if ($this->request->getPost('cabecera_id', 'int') == null || $this->request->getPost('columna') == null) { $this->flash->error("Por favor verifique que la planilla y las columnas no esten vacías."); return $this->redireccionar('columna/agregarExtra'); } $max = count(Columna::find(array('columna_cabeceraId=:cabeceraId: AND columna_habilitado=1', 'bind' => array('cabeceraId' => $this->request->getPost('cabecera_id', 'int'))))); $arregloColumnas = $this->request->getPost('columna'); foreach ($arregloColumnas as $columna) { if (!empty($columna)) { $max = $max + 1; $nuevaColumna = new Columna(); $nuevaColumna->setColumnaNombre(strtoupper($columna)); $cadenaLimpia = $this->limpiarCadena(strtoupper($columna)); $nuevaColumna->setColumnaClave(strtoupper(trim($cadenaLimpia))); $nuevaColumna->setColumnaExtra(1); $nuevaColumna->setColumnaPosicion($max); $nuevaColumna->setColumnaCabeceraId($this->request->getPost('cabecera_id', 'int')); $nuevaColumna->setColumnaHabilitado(1); if (!$nuevaColumna->save()) { foreach ($nuevaColumna->getMessages() as $message) { $error[] = $message . " <br>"; } } } } $this->flash->success("Operación Exitosa: Las columnas extras se agregaron correctamente."); } return $this->redireccionar('columna/agregarExtra'); }
/** * Guarda todas las columnas extras que se agregaron en la interfaz. * Si la cabecera ya existe, agrega mas columnas extras. * Si la cabecera no existe, la crea y agrega sus columnas */ public function agregarExtraAction() { $this->view->disable(); $error = array(); // array to hold validation errors $data = array(); $data['success'] = false; $data['mensaje'] = "Ups, ha ocurrido un problema."; if ($this->request->isPost()) { $this->db->begin(); //si existe el token del formulario y es correcto(evita csrf) //if ($this->security->checkToken('token',$this->request->getPost('token'))) { if (!$this->request->hasPost('columna')) { $error[] = "No puede guardar columnas vacias."; } else { //$cabeceraId = Cabecera::guardar($this->request->getPost('planilla_nombreCliente')); $cabecera_id = $this->request->getPost('cabecera_id', 'int'); $cabecera = Cabecera::findFirstByCabecera_id($cabecera_id); if (!$cabecera) { $error[] = "Hubo un problema, no se encontro la cabecera."; } else { $arregloColumnas = $this->request->getPost('columna'); $posicion = 26; foreach ($arregloColumnas as $columna) { if (!empty($columna)) { $nuevaColumna = new Columna(); $nuevaColumna->setColumnaNombre(strtoupper($columna)); $nuevaColumna->setColumnaClave('CLAVE_' . strtoupper($columna)); $nuevaColumna->setColumnaExtra(1); $nuevaColumna->setColumnaPosicion($posicion++); $nuevaColumna->setColumnaCabeceraId($cabecera->getCabeceraId()); $nuevaColumna->setColumnaHabilitado(1); if (!$nuevaColumna->save()) { foreach ($nuevaColumna->getMessages() as $message) { $error[] = $message . " <br>"; } } } else { $error[] = "Debe ingresar el nombre de la columna"; } } } } if (empty($error)) { $this->db->commit(); $todasLasColumnas = $this->modelsManager->createBuilder()->columns('columna_id, columna_nombre')->from('Columna')->where('columna_cabeceraId = :cabecera_id:', array('cabecera_id' => $cabecera->getCabeceraId()))->orderBy('columna_posicion ASC')->getQuery()->execute()->toArray(); $data['columnas'] = $todasLasColumnas; $data['success'] = true; $data['mensaje'] = "Operacion Exitosa, las columnas han sido guardadas correctamente"; } else { $this->db->rollback(); $data['success'] = false; $data['mensaje'] = $error; } } echo json_encode($data); }