public function createLeaveHistoryReportFinalArray($dataArray, $columnArray) { $empleavetypesArray = array(); $usersArray = array(); $repmanagerArray = array(); $departmentArray = array(); $reportsModel = new Default_Model_Reports(); $departmentsmodel = new Default_Model_Departments(); if (!empty($dataArray)) { foreach ($dataArray as $key => $curr) { if (isset($curr['leavetypeid'])) { if (!in_array($curr['leavetypeid'], $empleavetypesArray)) { array_push($empleavetypesArray, $curr['leavetypeid']); } } if (isset($curr['user_id'])) { if (!in_array($curr['user_id'], $usersArray)) { array_push($usersArray, $curr['user_id']); } } if (isset($curr['rep_mang_id'])) { if (!in_array($curr['rep_mang_id'], $repmanagerArray)) { array_push($repmanagerArray, $curr['rep_mang_id']); } } if (isset($curr['departmentid'])) { if (!in_array($curr['departmentid'], $departmentArray)) { array_push($departmentArray, $curr['departmentid']); } } } } if (!empty($empleavetypesArray)) { $empleavetypesArray = $reportsModel->getEmpLeaveNamesByIds($empleavetypesArray); } if (!empty($usersArray)) { $userNameArray = $reportsModel->getUserNamesByIds($usersArray); } if (!empty($repmanagerArray)) { $repManagerNameArray = $reportsModel->getRepManagerNamesByIds($repmanagerArray); } if (!empty($departmentArray)) { $departmentnamesArr = $departmentsmodel->getDepartmentNameFromDeptString($departmentArray); } $finalArray = array(); if (!empty($dataArray)) { foreach ($dataArray as $key => $curr) { if (array_search('employeename', $columnArray) !== false) { $finalArray[$key]['employeename'] = isset($userNameArray[$curr['user_id']]) ? $userNameArray[$curr['user_id']] : ''; } if (array_search("reportingmanagername", $columnArray) !== false) { $finalArray[$key]['reportingmanagername'] = isset($repManagerNameArray[$curr['rep_mang_id']]) ? $repManagerNameArray[$curr['rep_mang_id']] : ''; } if (array_search("leavetype", $columnArray) !== false) { $finalArray[$key]['leavetype'] = isset($empleavetypesArray[$curr['leavetypeid']]) ? $empleavetypesArray[$curr['leavetypeid']] : ''; } if (array_search("deptname", $columnArray) !== false) { $finalArray[$key]['deptname'] = isset($departmentnamesArr[$curr['departmentid']]) ? $departmentnamesArr[$curr['departmentid']] : ''; } if (array_search("leaveday", $columnArray) !== false) { $finalArray[$key]['leaveday'] = $curr['leaveday']; } if (array_search("leavestatus", $columnArray) !== false) { $finalArray[$key]['leavestatus'] = $curr['leavestatus']; } if (array_search("from_date", $columnArray) !== false) { $finalArray[$key]['from_date'] = $curr['from_date']; } if (array_search("to_date", $columnArray) !== false) { $finalArray[$key]['to_date'] = $curr['to_date']; } if (array_search("reason", $columnArray) !== false) { $finalArray[$key]['reason'] = $curr['reason']; } if (array_search("appliedleavescount", $columnArray) !== false) { $finalArray[$key]['appliedleavescount'] = $curr['appliedleavescount']; } if (array_search("applieddate", $columnArray) !== false) { $finalArray[$key]['applieddate'] = $curr['applieddate']; } } } return $finalArray; }