public function generateDataIndicadorOnline($treeId, $indicadorParametro) { $criteria = new Criteria(); $criteria->add(IndicatorsScPeer::TREE_ID, $treeId); $criteria->add(IndicatorsScPeer::FLAG, '%habilitado%', Criteria::LIKE); /*obtengo el cualquier nodo habilitado de la estrategia * para obtener la cantidad de proyecciones que tenia y asi asignarles la * misma cantidad de proyecciones para el nuevo indicador. */ $indicador = IndicatorsScPeer::doSelectOne($criteria); if (is_object($indicador)) { $criteria->clear(); $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicador->getId()); $countProjection = ProjectionsIndicatorsCsPeer::doCount($criteria); $listProjection = ProjectionsIndicatorsCsPeer::doSelect($criteria); if ($countProjection > 0) { /*Asigno la misma cantidad de proyecciones al nuevo indicador*/ foreach ($listProjection as $row) { $proyection = new ProjectionsIndicatorsCs(); $proyection->setIndicadorId($indicadorParametro->getId()); $proyection->setFecha($row->getFecha()); $proyection->setValorMinimo($indicadorParametro->getValorMinimo()); $proyection->setValorDeseado($indicadorParametro->getValorDeseado()); $proyection->setValorOptimo($indicadorParametro->getValorOptimo()); $proyection->setFlag('{}'); $proyection->save(); } return array("success" => true, "message" => "exito"); } else { return array("success" => false, "message" => "count 0 list"); } } else { return array("success" => false, "message" => "not object found"); } }
private function sqlSelectList($indicatorBean) { $criteria = new Criteria(); $criteria->add(ProjectionsIndicatorsCsPeer::INDICADOR_ID, $indicatorBean->getId()); $criteria->addAscendingOrderByColumn(ProjectionsIndicatorsCsPeer::FECHA); $cantidad = ProjectionsIndicatorsCsPeer::doCount($criteria); $criteria->setOffset($cantidad - 12); $criteria->setLimit(12); $listaProyecciones = ProjectionsIndicatorsCsPeer::doSelect($criteria); return $listaProyecciones; }