/** * Encargado de recuperar los datos por post para generar un arreglo que pueda ser usado por Criteria. * @param $datos * @return array */ private function generarCriterioBusqueda($datos) { $buscarOrden = array(); $buscarOrden['orden_planillaId'] = $this->request->get('orden_planillaId'); $buscarOrden['orden_fecha'] = $this->request->get('orden_fecha'); $buscarOrden['orden_remito'] = $this->request->get('orden_remito'); $buscarOrden['orden_transporteId'] = $this->request->get('orden_transporteId'); $buscarOrden['orden_tipoEquipoId'] = $this->request->get('orden_tipoEquipoId'); $buscarOrden['orden_tipoCargaId'] = $this->request->get('orden_tipoCargaId'); $buscarOrden['orden_choferId'] = $this->request->get('orden_choferId'); $buscarOrden['orden_clienteId'] = $this->request->get('cliente_id'); $buscarOrden['orden_frsId'] = $this->request->get('frs_id'); $buscarOrden['orden_equipoPozoId'] = $this->request->get('equipoPozo_id'); $buscarOrden['orden_centroCostoId'] = $this->request->get('centroCosto_id'); $buscarOrden['orden_viajeId'] = $this->request->get('orden_viajeId'); $buscarOrden['orden_concatenadoId'] = $this->request->get('orden_concatenadoId'); //Recupero la operadora_id y busco al cliente, y con el cliente puedo buscar las ordenes if ($this->request->has('operadora_id') && $this->request->getPost("operadora_id") != '') { $operadora = Operadora::findFirst(array("operadora_habilitado=1 AND operadora_id = :operadora_id:", 'bind' => array('operadora_id' => $this->request->getPost("operadora_id")))); $buscarOrden['orden_clienteId'] = $operadora->getOperadoraClienteId(); } if ($this->request->has('linea_id') && $this->request->getPost("linea_id") != '') { $linea = Linea::findFirst(array("linea_habilitado=1 AND linea_id = :linea_id:", 'bind' => array('linea_id' => $this->request->getPost("linea_id")))); $buscarOrden['orden_clienteId'] = $linea->getLineaClienteid(); } if ($this->request->has('yacimiento_id') && $this->request->getPost("yacimiento_id") != '') { $yacimiento = Yacimiento::findFirst(array("yacimiento_habilitado=1 AND yacimiento_id = :yacimiento_id:", 'bind' => array('yacimiento_id' => $this->request->getPost("yacimiento_id")))); $operadora = Operadora::findFirst(array("operadora_habilitado=1 AND operadora_id = :operadora_id:", 'bind' => array('operadora_id' => $yacimiento->getYacimientoOperadoraId()))); if ($operadora) { $buscarOrden['orden_clienteId'] = $operadora->getOperadoraClienteId(); } } return $buscarOrden; }
public function cargarDependientesAction() { $this->view->disable(); $retorno = array(); $retorno['success'] = false; $retorno['mensaje'][] = '-'; if (!$this->request->isPost()) { $retorno['mensaje'] = "LOS DATOS NO FUERON ENVIADO POR POST"; echo json_encode($retorno); return; } $linea_id = $this->request->getPost('linea_id', 'int'); $linea = Linea::findFirst(array('linea_id=:linea_id:', 'bind' => array('linea_id' => $linea_id))); if (!$linea) { $retorno['mensaje'] = "NO SE ENCONTRÓ NINGUNA LINEA CARGADA EN LA BASE DE DATOS"; echo json_encode($retorno); return; } $centros = Centrocosto::find(array('centroCosto_habilitado=1 AND centroCosto_lineaId=:centroCosto_lineaId:', 'bind' => array('centroCosto_lineaId' => $linea_id))); if (!$centros) { $retorno['mensaje'] = "LA LINEA SELECCIONADA NO TIENE CENTROS DE COSTOS CARGADOS."; } else { $c = array(); foreach ($centros as $centro) { $item = array(); $item['valor'] = $centro->getCentroCostoId(); $item['nombre'] = $centro->getCentroCostoCodigo(); $c[] = $item; } $retorno['centros'] = $c; $retorno['success'] = true; } echo json_encode($retorno); return; }