/** * * Retourne une collection brute de saisies contenant les absences à prendre en compte dans les decomptes de demi-journées * entre deux dates * * @param DateTime $date_debut * @param DateTime $date_fin * * @return PropelCollection AbsenceEleveSaisie[] */ public function getAbsenceEleveSaisiesParDate($date_debut= null, $date_fin= null) { $request_query_hash = 'query_AbsenceEleveSaisieQuery_filterByEleve_'.$this->getId().'_filterByPlageTemps_deb_'; if ($date_debut != null) { $request_query_hash .= $date_debut->format('U');} else {$request_query_hash .= 'null';} $request_query_hash .= '_fin_'; if ($date_fin != null) {$request_query_hash .= $date_fin->format('U');} else {$request_query_hash .= 'null';} if (isset($_REQUEST[$request_query_hash]) && $_REQUEST[$request_query_hash] != null) { $abs_saisie_col = $_REQUEST[$request_query_hash]; } else { if ($date_debut== null && $date_fin== null) { $abs_saisie_col = parent::getAbsenceEleveSaisies(); } else { $abs_saisie_col = AbsenceEleveSaisieQuery::create() ->filterByEleve($this) ->filterByPlageTemps($date_debut, $date_fin) ->orderByDebutAbs(Criteria::ASC) ->leftJoinWith('AbsenceEleveSaisie.JTraitementSaisieEleve') ->leftJoinWith('JTraitementSaisieEleve.AbsenceEleveTraitement') ->leftJoinWith('AbsenceEleveTraitement.AbsenceEleveType') ->distinct() ->find(); } $_REQUEST[$request_query_hash] = $abs_saisie_col; } return $abs_saisie_col; }