Example #1
0
 /**
  * View timesheets in bulk
  *
  * Introduced for printing timesheets.
  * $fileterValues can optionally contain the following. Order is important.
  *	1. Employee Id
  * 	2. Division Id
  *	3. Supervisor Id
  *	4. Employment Status
  *
  * From and To date should be set as the timeobj
  *
  * @param String[] filterValues Filter timesheets with the values
  */
 public function viewTimesheelBulk($filterValues, $page = 1)
 {
     $path = "/templates/time/printTimesheetPage.php";
     $employeeObj = new EmpInfo();
     $timesheetObj = $this->getObjTime();
     $employeeIds = $employeeObj->getEmployeeIdsFilterMultiParams($filterValues);
     $timsheetIds = $this->_getTimesheetIds($employeeIds, $timesheetObj);
     $timesheets = $timesheetObj->fetchTimesheetsByTimesheetIdBulk($page, $timsheetIds);
     $dataArr = null;
     $timesheetSubmissionPeriodObj = new TimesheetSubmissionPeriod();
     for ($i = 0; $i < count($timesheets); $i++) {
         list($dataArr[0][$i]['durationArr'], $dataArr[0][$i]['dailySum'], $dataArr[0][$i]['activitySum'], $dataArr[0][$i]['totalTime']) = $this->_generateTimesheet($timesheets[$i]);
         $employees = $employeeObj->filterEmpMain($timesheets[$i]->getEmployeeId());
         $dataArr[0][$i]['employee'] = $employees[0];
         $dataArr[0][$i]['timesheet'] = $timesheets[$i];
         $timesheetSubmissionPeriodObj->setTimesheetPeriodId($timesheets[$i]->getTimesheetPeriodId());
         $timesheetSubmissionPeriod = $timesheetSubmissionPeriodObj->fetchTimesheetSubmissionPeriods();
         $dataArr[0][$i]['timesheetSubmissionPeriod'] = $timesheetSubmissionPeriod[0];
     }
     $dataArr[1] = $page;
     $dataArr[2] = $timesheetObj->getStartDate();
     $dataArr[3] = $timesheetObj->getEndDate();
     $template = new TemplateMerger($dataArr, $path, "stubHeader.php", "stubFooter.php");
     $template->display();
 }