private function _getLeaveTypeObjectWithValues() { $leaveType = new LeaveType(); $leaveType->setLeaveTypeName('Special'); $leaveType->setAvailableFlag(1); return $leaveType; }
public function getLeavesForMeAndSubordinates($req) { $map = json_decode('{"employee":["Employee","id","first_name+last_name"],"leave_type":["LeaveType","id","name"]}'); $employee = $this->baseService->getElement('Employee', $this->getCurrentProfileId(), null, true); $employeeLeave = new EmployeeLeave(); $startDate = date("Y-m-d H:i:s", $req->start); $endDate = date("Y-m-d H:i:s", $req->end); $list = $employeeLeave->Find("status in ('Approved','Pending') and ((date_start >= ? and date_start <= ? ) or (date_end >= ? and date_end <= ?))", array($startDate, $endDate, $startDate, $endDate)); if (!$list) { LogManager::getInstance()->info($employeeLeave->ErrorMsg()); } if (!empty($map)) { $list = $this->baseService->populateMapping($list, $map); } $data = array(); $leaveType = new LeaveType(); $leaveTypesTemp = $leaveType->Find("1=1"); $leaveTypes = array(); foreach ($leaveTypesTemp as $leaveType) { $leaveTypes[$leaveType->name] = $leaveType; } foreach ($list as $leave) { $data[] = $this->leaveToEvent($leave, $leaveTypes); } $holiday = new HoliDay(); $holidays = $holiday->Find("1=1", array()); foreach ($holidays as $holiday) { $data[] = $this->holidayToEvent($holiday); } echo json_encode($data); exit; }
private function _getLeaveTypeObjectWithValues() { $leaveType = new LeaveType(); $leaveType->setName('Special'); $leaveType->setDeleted(0); return $leaveType; }
protected function setUp() { TestDataService::truncateSpecificTables(array('Employee', 'Leave', 'LeaveRequest', 'LeaveType', 'EmployeeLeaveEntitlement', 'LeavePeriod')); // Save leave type $leaveTypeData = sfYaml::load(sfConfig::get('sf_plugins_dir') . '/orangehrmCoreLeavePlugin/test/fixtures/leaveType.yml'); $leaveTypeDao = new LeaveTypeDao(); $leaveType = new LeaveType(); $leaveType->setLeaveTypeName($leaveTypeData['leaveType']['LT_001']['name']); // $leaveType->setLeaveRules($leaveTypeData['leaveType']['LT_001']['rule']); $leaveTypeDao->saveLeaveType($leaveType); $this->leaveType = $leaveType; $this->leaveTypeId = $leaveType->getLeaveTypeId(); // Save leave Period $leavePeriodData = sfYaml::load(sfConfig::get('sf_plugins_dir') . '/orangehrmCoreLeavePlugin/test/fixtures/leavePeriod.yml'); $leavePeriodService = new LeavePeriodService(); $leavePeriodService->setLeavePeriodDao(new LeavePeriodDao()); $leavePeriod = new LeavePeriod(); $leavePeriod->setStartDate($leavePeriodData['leavePeriod']['1']['startDate']); $leavePeriod->setEndDate($leavePeriodData['leavePeriod']['1']['endDate']); $leavePeriodService->saveLeavePeriod($leavePeriod); $this->leavePeriod = $leavePeriod; $this->leavePeriodId = $leavePeriod->getLeavePeriodId(); // Save Employee $employeeservice = new EmployeeService(); $this->employee = new Employee(); $employeeservice->saveEmployee($this->employee); $this->empNumber = $this->employee->getEmpNumber(); // save leave quota $this->leaveEntitlement = sfYaml::load(sfConfig::get('sf_plugins_dir') . '/orangehrmCoreLeavePlugin/test/fixtures/leaveEntitlement.yml'); $this->leaveEntitlementDao = new LeaveEntitlementDao(); }
public function parseDeleteData($postArr) { $objLeave = null; for ($i = 0; $i < count($postArr['chkLeaveTypeID']); $i++) { $tmpObj = new LeaveType(); $tmpObj->setLeaveTypeId($postArr['chkLeaveTypeID'][$i]); $objLeave[] = $tmpObj; } return $objLeave; }
/** * * @param LeaveType $leaveType * @return boolean */ public function saveLeaveType(LeaveType $leaveType) { try { $leaveType->save(); return true; } catch (Exception $e) { $this->getLogger()->error("Exception in saveLeaveType:" . $e); throw new DaoException($e->getMessage()); } }
public function getLeaveTypeObject() { $leaveTypeId = $this->getValue('hdnLeaveTypeId'); if (!empty($leaveTypeId)) { $leaveType = $this->getLeaveTypeService()->readLeaveType($leaveTypeId); } else { $leaveType = new LeaveType(); $leaveType->setAvailableFlag(LeaveType::AVAILABLE); } $leaveType->setLeaveTypeName($this->getValue('txtLeaveTypeName')); return $leaveType; }
public function getLeaveTypeObject() { $leaveTypeId = $this->getValue('hdnLeaveTypeId'); if (!empty($leaveTypeId)) { $leaveType = $this->getLeaveTypeService()->readLeaveType($leaveTypeId); } else { $leaveType = new LeaveType(); $leaveType->setDeleted(0); } $leaveType->setName($this->getValue('txtLeaveTypeName')); $leaveType->setExcludeInReportsIfNoEntitlement($this->getValue('excludeIfNoEntitlement')); return $leaveType; }
/** * * @param LeaveType $leaveType * @return boolean */ public function saveLeaveType(LeaveType $leaveType) { try { if ($leaveType->getLeaveTypeId() == '') { $idGenService = new IDGeneratorService(); $idGenService->setEntity($leaveType); $leaveType->setLeaveTypeId($idGenService->getNextID()); } $leaveType->save(); return true; } catch (Exception $e) { $this->getLogger()->error("Exception in saveLeaveType:" . $e); throw new DaoException($e->getMessage()); } }
public function getUserLeaveTypes() { $ele = new LeaveType(); $empLeaveGroupId = NULL; $employeeId = BaseService::getInstance()->getCurrentProfileId(); $empLeaveGroup = new LeaveGroupEmployee(); $empLeaveGroup->Load("employee = ?", array($employeeId)); if ($empLeaveGroup->employee == $employeeId && !empty($empLeaveGroup->id)) { $empLeaveGroupId = $empLeaveGroup->leave_group; } if (empty($empLeaveGroupId)) { $list = $ele->Find('leave_group IS NULL', array()); } else { $list = $ele->Find('leave_group IS NULL or leave_group = ?', array($empLeaveGroupId)); } return $list; }
/** * Overrides _buildObjArr of LeaveQuota * Builds the Leave Summary from the resource * * @param resource $result * @return Array[][] LeaveSummary * @access protected * @author S.H.Mohanjith * */ protected function _buildObjArr($result) { $leaveObj = new Leave(); $leaveObj->setEmployeeId($this->getEmployeeId()); $objArr = null; $leveTypeObj = new LeaveType(); $leaveTypes = $leveTypeObj->fetchLeaveTypes(true); $objLeaveType = new LeaveType(); if (is_array($leaveTypes)) { foreach ($leaveTypes as $leaveType) { $tmpLeaveSummary = new LeaveSummary(); $tmpLeaveSummary->setLeaveTypeId($leaveType->getLeaveTypeId()); $tmpLeaveSummary->setLeaveTypeName($leaveType->getLeaveTypeName()); $tmpLeaveSummary->setNoOfDaysAllotted(0); $taken = $leaveObj->countLeave($tmpLeaveSummary->getLeaveTypeId(), $this->getYear()); $tmpLeaveSummary->setLeaveTaken($taken); $tmpLeaveSummary->setLeaveAvailable(0); $tmpLeaveSummary->setYear($this->getYear()); $tmpLeaveSummary->setLeaveTypeAvailable($leaveType->getLeaveTypeAvailable()); if ($tmpLeaveSummary->getLeaveTypeAvailable() == $objLeaveType->availableStatusFlag || $tmpLeaveSummary->getLeaveTaken() > 0) { $leaveTypeList[$leaveType->getLeaveTypeId()] = $tmpLeaveSummary; } } $objLeaveType = new LeaveType(); while ($row = mysql_fetch_row($result)) { if (isset($leaveTypeList[$row[1]])) { $tmpLeaveSummary = $leaveTypeList[$row[1]]; $leaveTypeAvailable = $tmpLeaveSummary->getLeaveTypeAvailable(); $tmpLeaveSummary->setNoOfDaysAllotted($row[3]); $taken = $tmpLeaveSummary->getLeaveTaken(); $alloted = $tmpLeaveSummary->getNoOfDaysAllotted(); $tmpLeaveSummary->setLeaveAvailable($alloted - $taken); $leaveTypeList[$row[1]] = $tmpLeaveSummary; } } if (isset($leaveTypeList)) { $objArr = $leaveTypeList; sort($objArr); } } return $objArr; }
public function getLeavesForMeAndSubordinates($req) { $req->start = gmdate("Y-m-d", $req->start); $req->end = gmdate("Y-m-d", $req->end); $shareCalendar = $this->baseService->settingsManager->getSetting("Leave: Share Calendar to Whole Company"); $map = json_decode('{"employee":["Employee","id","first_name+last_name"],"leave_type":["LeaveType","id","name"]}'); $employee = $this->baseService->getElement('Employee', $this->getCurrentProfileId(), null, true); if ($shareCalendar != "1") { $subordinate = new Employee(); $subordinates = $subordinate->Find("supervisor = ?", array($employee->id)); $subordinatesIds = $employee->id; foreach ($subordinates as $sub) { if ($subordinatesIds != "") { $subordinatesIds .= ","; } $subordinatesIds .= $sub->id; } $employeeLeave = new EmployeeLeave(); $startDate = date("Y-m-d H:i:s", $req->start); $endDate = date("Y-m-d H:i:s", $req->end); $list = $employeeLeave->Find("employee in (" . $subordinatesIds . ") and status in ('Approved','Pending') and ((date_start >= ? and date_start <= ? ) or (date_end >= ? and date_end <= ?))", array($startDate, $endDate, $startDate, $endDate)); } else { $employeeLeave = new EmployeeLeave(); $startDate = $req->start; $endDate = $req->end; $list = $employeeLeave->Find("status in ('Approved','Pending') and ((date_start >= ? and date_start <= ? ) or (date_end >= ? and date_end <= ?))", array($startDate, $endDate, $startDate, $endDate)); } if (!$list) { LogManager::getInstance()->info($employeeLeave->ErrorMsg()); } if (!empty($map)) { $list = $this->baseService->populateMapping($list, $map); } $leaveType = new LeaveType(); $leaveTypesTemp = $leaveType->Find("1=1"); $leaveTypes = array(); foreach ($leaveTypesTemp as $leaveType) { $leaveTypes[$leaveType->name] = $leaveType; } $data = array(); $mode = CalendarTools::getCalendarMode($req->start, $req->end); foreach ($list as $leave) { $tmpEvents = $this->leaveToEvents($leave, $leaveTypes); foreach ($tmpEvents as $event) { $data[] = $event; } } /* if($mode == CalendarTools::MODE_MONTH){ foreach($list as $leave){ $data[] = $this->leaveToEvent($leave, $leaveTypes); } }else{ foreach($list as $leave){ $tmpEvents = $this->leaveToEvents($leave, $leaveTypes); foreach($tmpEvents as $event){ $data[] = $event; } } } */ $holiday = new HoliDay(); $holidays = $holiday->Find("1=1", array()); foreach ($holidays as $holiday) { $data[] = $this->holidayToEvent($holiday); } echo json_encode($data); exit; }
private function getLeaveRuleOnly($employee, $leaveType) { $rule = null; $leaveRule = new LeaveRule(); $leaveTypeObj = new LeaveType(); $rules = $leaveRule->Find("employee = ? and leave_type = ?", array($employee->id, $leaveType)); if (count($rules) > 0) { return $rules[0]; } //Check whether this employee has a leave group $leaveGroupId = $this->getEmployeeLeaveGroup($employee->id); if (!empty($leaveGroupId)) { $rules = $leaveRule->Find("leave_group = ? and leave_type = ?", array($leaveGroupId, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveRule->Find("leave_group = ? and job_title = ? and employment_status = ? and leave_type = ? and employee is null", array($leaveGroupId, $employee->job_title, $employee->employment_status, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveRule->Find("leave_group = ? and job_title = ? and employment_status is null and leave_type = ? and employee is null", array($leaveGroupId, $employee->job_title, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveRule->Find("leave_group = ? and job_title is null and employment_status = ? and leave_type = ? and employee is null", array($leaveGroupId, $employee->employment_status, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveTypeObj->Find("leave_group = ? and id = ?", array($leaveGroupId, $leaveType)); if (count($rules) > 0) { return $rules[0]; } } $rules = $leaveRule->Find("job_title = ? and employment_status = ? and leave_type = ? and employee is null", array($employee->job_title, $employee->employment_status, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveRule->Find("job_title = ? and employment_status is null and leave_type = ? and employee is null", array($employee->job_title, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveRule->Find("job_title is null and employment_status = ? and leave_type = ? and employee is null", array($employee->employment_status, $leaveType)); if (count($rules) > 0) { return $rules[0]; } $rules = $leaveTypeObj->Find("id = ?", array($leaveType)); if (count($rules) > 0) { return $rules[0]; } }
private function getLeaveRule($employee,$leaveType){ $rule = null; $leaveRule = new LeaveRule(); $leaveTypeObj = new LeaveType(); $rules = $leaveRule->Find("employee = ? and leave_type = ?",array($employee->id,$leaveType)); if(count($rules)>0){ return $rules[0]; } $rules = $leaveRule->Find("job_title = ? and employment_status = ? and leave_type = ? and employee is null",array($employee->job_title,$employee->employment_status,$leaveType)); if(count($rules)>0){ return $rules[0]; } $rules = $leaveRule->Find("job_title = ? and employment_status is null and leave_type = ? and employee is null",array($employee->job_title,$leaveType)); if(count($rules)>0){ return $rules[0]; } $rules = $leaveRule->Find("job_title is null and employment_status = ? and leave_type = ? and employee is null",array($employee->employment_status,$leaveType)); if(count($rules)>0){ return $rules[0]; } $rules = $leaveTypeObj->Find("id = ?",array($leaveType)); if(count($rules)>0){ return $rules[0]; } }
protected function _buildObjArr($result) { $objArr = null; while ($row = mysql_fetch_row($result)) { $tmpLeaveArr = new LeaveType(); $tmpLeaveArr->setLeaveTypeId($row[0]); $tmpLeaveArr->setLeaveTypeName($row[1]); if (isset($row[2])) { $tmpLeaveArr->setLeaveTypeAvailable($row[2]); } $objArr[] = $tmpLeaveArr; } return $objArr; }
/** * Display select employee * * @param String $action */ public function viewSelectEmployee($action) { $tmpObj = new Leave(); $this->setObjLeave($tmpObj); $tmpOb[0] = $tmpObj->getLeaveYears(); $authorizeObj = $this->authorize; if ($this->getAuthorize()->isAdmin()) { $empObj = new EmpInfo(); $tmpOb[1] = array(true); $leaveTypeObj = new LeaveType(); $tmpOb[2] = $leaveTypeObj->fetchLeaveTypes(); } else { $repObj = new EmpRepTo(); $tmpOb[1] = $repObj->getEmpSubDetails($_SESSION['empID']); } $roles = array(authorize::AUTHORIZE_ROLE_ADMIN, authorize::AUTHORIZE_ROLE_SUPERVISOR); $role = $authorizeObj->firstRole($roles); $tmpOb[3] = $role; $path = "/templates/leave/leaveSelectEmployeeAndYear.php"; $template = new TemplateMerger($tmpOb, $path); $template->display($action); }
Skill::SetDatabaseAdapter($dbLocal); Education::SetDatabaseAdapter($dbLocal); Certification::SetDatabaseAdapter($dbLocal); Language::SetDatabaseAdapter($dbLocal); Nationality::SetDatabaseAdapter($dbLocal); Employee::SetDatabaseAdapter($dbLocal); User::SetDatabaseAdapter($dbLocal); EmployeeSkill::SetDatabaseAdapter($dbLocal); EmployeeEducation::SetDatabaseAdapter($dbLocal); EmployeeCertification::SetDatabaseAdapter($dbLocal); EmployeeLanguage::SetDatabaseAdapter($dbLocal); EmergencyContact::SetDatabaseAdapter($dbLocal); EmployeeDependent::SetDatabaseAdapter($dbLocal); EmployeeImmigration::SetDatabaseAdapter($dbLocal); EmployeeSalary::SetDatabaseAdapter($dbLocal); LeaveType::SetDatabaseAdapter($dbLocal); LeavePeriod::SetDatabaseAdapter($dbLocal); WorkDay::SetDatabaseAdapter($dbLocal); HoliDay::SetDatabaseAdapter($dbLocal); LeaveRule::SetDatabaseAdapter($dbLocal); EmployeeLeave::SetDatabaseAdapter($dbLocal); EmployeeLeaveDay::SetDatabaseAdapter($dbLocal); File::SetDatabaseAdapter($dbLocal); Client::SetDatabaseAdapter($dbLocal); Project::SetDatabaseAdapter($dbLocal); EmployeeTimeSheet::SetDatabaseAdapter($dbLocal); EmployeeTimeEntry::SetDatabaseAdapter($dbLocal); EmployeeProject::SetDatabaseAdapter($dbLocal); Document::SetDatabaseAdapter($dbLocal); EmployeeDocument::SetDatabaseAdapter($dbLocal); CompanyLoan::SetDatabaseAdapter($dbLocal);
public function isLeaveQuotaDeleted() { $leaveTypeObj = new LeaveType(); $leaveType = $leaveTypeObj->retriveLeaveType($this->leaveTypeId); return $leaveType[0]->getLeaveTypeAvailable() == $leaveType[0]->availableStatusFlag ? false : true; }
function leavecreateAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); // parent::createAction(); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); exit(); $formvalues['id'] = $id = decode($formvalues['id']); $leave = new LeaveType(); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $leave->populate($id); $formvalues['lastupdatedby'] = $session->getVar('userid'); } else { $formvalues['createdby'] = $session->getVar('userid'); } $leave->processPost($formvalues); if ($leave->hasError()) { /* debugMessage($leave->toArray()); debugMessage('errors are '.$leave->getErrorStackAsString()); exit(); */ $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_FAILURE))); } try { $leave->save(); //debugMessage($leave->toArray()); $session->setVar(SUCCESS_MESSAGE, $this->_getParam('successmessage')); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_SUCCESS))); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage()); //debugMessage('save error '.$e->getMessage()); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_FAILURE))); } }