private function verificar_insert_data($tree) { $tree = new TreeSc(); $tree->getPeriodoId(); //cada 15 dias $criterio = new Criteria(); $criterio->add(IndicatorsScPeer::FLAG, '%habilitado%', Criteria::LIKE); $criterio->add(IndicatorsScPeer::TREE_ID, $tree->getId()); $indicador = IndicatorsScPeer::doSelectOne($criterio); $criterio->clear(); $criterio->add(DataIndicadoresPeer::INDICADOR_ID, $indicador->getId()); $criterio->addDescendingOrderByColumn(DataIndicadoresPeer::CREATE_AT); $data = DataIndicadoresPeer::doSelectOne($criterio); $criterio = new Criteria(); $criterio->add(DataIndicadoresPeer::INDICADOR_ID, 24); $criterio->addDescendingOrderByColumn(DataIndicadoresPeer::CREATE_AT); $data = DataIndicadoresPeer::doSelectOne($criterio); $ultima_de_fecha_registro = new DateTime($data->getCreateAt()); $ultima_de_fecha_registro = $ultima_de_fecha_registro->format('Y-m-d'); $array = explode('-', $ultima_de_fecha_registro); $fecha_actual = mktime(0, 0, 0, date('m'), date("d"), date('Y')); $fecha_actual = date('Y-m-d', $fecha_actual); /* if($fecha_proyectada<=$fecha_actual){}*/ //semanal if ($tree->getPeriodoId() == 1) { $fecha_proyectada = mktime(0, 0, 0, $array[1], $array[2] + 7, $array[0]); $fecha_proyectada = date('Y-m-d', $fecha_proyectada); //cada quincena } elseif ($tree->getPeriodoId() == 2) { //si el dia de ultimo registro en menos a quince //busco el 15 de ese mes if ($array[2] < 15) { //la fecha programada es: $fecha_proyectada = $this->obtener_fecha_por_dia(15); } else { $fecha_proyectada = $this->obtener_fecha_por_dia(1); } //cada bimestre } elseif ($tree->getPeriodoId() == 3) { $fecha_proyectada = mktime(0, 0, 0, $array[1], $array[2] + 0, $array[0]); $fecha_proyectada = date('Y-m-d', $fecha_proyectada); //cada trimestre } else { $fecha_proyectada = mktime(0, 0, 0, $array[1], $array[2] + 0, $array[0]); $fecha_proyectada = date('Y-m-d', $fecha_proyectada); } }