/** * Floating PMs will not be released if there're workorders that's not closed. * Otherwise, use last close date to count next release date. */ public function handleFloatingByTime($pmRow, $pmAssetRow, $endDate, $bypassStandingPm = false) { $dueDates = array(); if ($this->hasStandingPm($pmAssetRow, $bypassStandingPm)) { return $dueDates; } $lastCloseDate = $this->getLastCloseDate($pmAssetRow); $dueDate = $lastCloseDate ? $this->pmScheduleBo->getNextDueDate($lastCloseDate) : $this->pmScheduleBo->adjustReleaseDate(CalemText::getServerDateInt()); $dueDates = $this->collectDueDates($dueDate, $dueDates, $endDate, true); return $dueDates; }