本文整理汇总了PHP中Employee::Load方法的典型用法代码示例。如果您正苦于以下问题:PHP Employee::Load方法的具体用法?PHP Employee::Load怎么用?PHP Employee::Load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Employee
的用法示例。
在下文中一共展示了Employee::Load方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getEmployeeById
private function getEmployeeById($id)
{
$sup = new Employee();
$sup->Load("id = ?", array($id));
if ($sup->id != $id) {
LogManager::getInstance()->info("Employee not found");
return null;
}
return $sup;
}
示例2: getEmployeeById
private function getEmployeeById($id)
{
$sup = new Employee();
$sup->Load("id = ?", array($id));
if ($sup->id != $id) {
error_log("Employee not found");
return null;
}
return $sup;
}
示例3: getRecentAttendanceEntries
public function getRecentAttendanceEntries($limit)
{
$shift = intval(SettingsManager::getInstance()->getSetting("Attendance: Shift (Minutes)"));
$attendance = new Attendance();
$attendanceToday = $attendance->Find("1 = 1 order by in_time desc limit " . $limit, array());
$attendanceData = array();
$employees = array();
foreach ($attendanceToday as $atEntry) {
$entry = new stdClass();
$entry->id = $atEntry->employee;
$dayArr = explode(" ", $atEntry->in_time);
$day = $dayArr[0];
if ($atEntry->out_time == "0000-00-00 00:00:00" || empty($atEntry->out_time)) {
if (strtotime($atEntry->in_time) < time() + $shift * 60 && $day == date("Y-m-d")) {
$entry->status = "Clocked In";
$entry->statusId = 0;
$entry->color = 'green';
$employee = new Employee();
$employee->Load("id = ?", array($entry->id));
$entry->employee = $employee->first_name . " " . $employee->last_name;
$employees[$entry->id] = $entry;
}
}
if (!isset($employees[$entry->id])) {
$employee = new Employee();
$employee->Load("id = ?", array($entry->id));
if ($day == date("Y-m-d")) {
$entry->status = "Clocked Out";
$entry->statusId = 1;
$entry->color = 'yellow';
} else {
$entry->status = "Not Clocked In";
$entry->statusId = 2;
$entry->color = 'gray';
}
$entry->employee = $employee->first_name . " " . $employee->last_name;
$employees[$entry->id] = $entry;
}
}
return array_values($employees);
}
示例4: getData
public function getData($report, $request)
{
$employeeCache = array();
$employeeList = array();
if (!empty($request['employee'])) {
$employeeList = json_decode($request['employee'], true);
}
if (in_array("NULL", $employeeList)) {
$employeeList = array();
}
$employee_query = "";
if (!empty($employeeList)) {
$employee_query = "employee in (" . implode(",", $employeeList) . ") and ";
}
$timeSheet = new EmployeeTimeSheet();
if ($request['status'] != "NULL") {
$timeSheets = $timeSheet->Find($employee_query . "status = ? and date_start >= ? and date_end <= ?", array($request['status'], $request['date_start'], $request['date_end']));
} else {
$timeSheets = $timeSheet->Find($employee_query . "date_start >= ? and date_end <= ?", array($request['date_start'], $request['date_end']));
}
if (!$timeSheets) {
LogManager::getInstance()->info($timeSheet->ErrorMsg());
}
$reportData = array();
$reportData[] = array("Employee ID", "Employee", "Name", "Start", "End", "Total Time", "Status");
foreach ($timeSheets as $ts) {
$employee = $employeeCache[$ts->employee];
if (empty($employee)) {
$employee = new Employee();
$employee->Load("id = ?", array($ts->employee));
if (empty($employee->id)) {
continue;
}
$employeeCache[$employee->id] = $employee;
}
$reportData[] = array($employee->employee_id, $employee->first_name . " " . $employee->last_name, date("F j, Y", strtotime($ts->date_start)) . " - " . date("F j, Y", strtotime($ts->date_end)), $ts->date_start, $ts->date_end, $ts->getTotalTime(), $ts->status);
}
return $reportData;
}
示例5: sendEmailFromNotification
public function sendEmailFromNotification($notification)
{
$toEmail = null;
$user = new User();
$user->Load("id = ?", array($notification->toUser));
if (!empty($user->email)) {
$name = "User";
$employee = new Employee();
$employee->Load("id = ?", array($user->employee));
if ($employee->id == $user->employee && !empty($employee->id)) {
$name = $employee->first_name;
}
$action = json_decode($notification->action);
$emailBody = file_get_contents(APP_BASE_PATH . '/templates/email/notificationEmail.html');
$emailBody = str_replace("#_user_#", $name, $emailBody);
$emailBody = str_replace("#_message_#", $notification->message, $emailBody);
if ($action->type == "url") {
$emailBody = str_replace("#_url_#", CLIENT_BASE_URL . "?" . $action->url, $emailBody);
}
$this->sendEmail('IceHrm Notification from ' . $notification->type, $user->email, $emailBody, array(), array(), array());
}
}
示例6: getCurrentEmployeeTimeZone
public function getCurrentEmployeeTimeZone()
{
$cemp = $this->getCurrentProfileId();
if (empty($cemp)) {
return NULL;
}
$emp = new Employee();
$emp->Load("id = ?", array($cemp));
if (empty($emp->id) || empty($emp->department)) {
return NULL;
}
$dept = new CompanyStructure();
$dept->Load("id = ?", array($emp->department));
return $dept->timezone;
}
示例7: getLeaveDaysReadonly
public function getLeaveDaysReadonly($req)
{
$leaveId = $req->leave_id;
$leaveLogs = array();
$employeeLeave = new EmployeeLeave();
$employeeLeave->Load("id = ?", array($leaveId));
$currentLeavePeriodResp = $this->getCurrentLeavePeriod($employeeLeave->date_start, $employeeLeave->date_end);
if ($currentLeavePeriodResp->getStatus() != IceResponse::SUCCESS) {
return new IceResponse(IceResponse::ERROR, $currentLeavePeriodResp->getData());
} else {
$currentLeavePeriod = $currentLeavePeriodResp->getData();
}
$employee = $this->baseService->getElement('Employee', $employeeLeave->employee, null, true);
$rule = $this->getLeaveRule($employee, $employeeLeave->leave_type, $currentLeavePeriod);
$currentLeavePeriodResp = $this->getCurrentLeavePeriod($employeeLeave->date_start, $employeeLeave->date_end);
if ($currentLeavePeriodResp->getStatus() != IceResponse::SUCCESS) {
return new IceResponse(IceResponse::ERROR, $currentLeavePeriodResp->getData());
} else {
$currentLeavePeriod = $currentLeavePeriodResp->getData();
}
$leaveMatrix = $this->getAvailableLeaveMatrixForEmployeeLeaveType($employee, $currentLeavePeriod, $employeeLeave->leave_type);
$leaves = array();
$leaves['totalLeaves'] = floatval($leaveMatrix[0]);
$leaves['pendingLeaves'] = floatval($leaveMatrix[1]);
$leaves['approvedLeaves'] = floatval($leaveMatrix[2]);
$leaves['rejectedLeaves'] = floatval($leaveMatrix[3]);
$leaves['cancelRequestedLeaves'] = floatval($leaveMatrix[5]);
$leaves['availableLeaves'] = $leaves['totalLeaves'] - $leaves['pendingLeaves'] - $leaves['approvedLeaves'] - $leaves['cancelRequestedLeaves'];
$leaves['attachment'] = $employeeLeave->attachment;
$employeeLeaveDay = new EmployeeLeaveDay();
$days = $employeeLeaveDay->Find("employee_leave = ?", array($leaveId));
$employeeLeaveLog = new EmployeeLeaveLog();
$logsTemp = $employeeLeaveLog->Find("employee_leave = ? order by created", array($leaveId));
foreach ($logsTemp as $empLeaveLog) {
$t = array();
$t['time'] = $empLeaveLog->created;
$t['status_from'] = $empLeaveLog->status_from;
$t['status_to'] = $empLeaveLog->status_to;
$t['time'] = $empLeaveLog->created;
$userName = null;
if (!empty($empLeaveLog->user_id)) {
$lgUser = new User();
$lgUser->Load("id = ?", array($empLeaveLog->user_id));
if ($lgUser->id == $empLeaveLog->user_id) {
if (!empty($lgUser->employee)) {
$lgEmployee = new Employee();
$lgEmployee->Load("id = ?", array($lgUser->employee));
$userName = $lgEmployee->first_name . " " . $lgEmployee->last_name;
} else {
$userName = $lgUser->userName;
}
}
}
if (!empty($userName)) {
$t['note'] = $empLeaveLog->data . " (by: " . $userName . ")";
} else {
$t['note'] = $empLeaveLog->data;
}
$leaveLogs[] = $t;
}
return new IceResponse(IceResponse::SUCCESS, array($days, $leaves, $leaveId, $employeeLeave, $leaveLogs));
}
示例8: getData
public function getData($report, $req)
{
error_log(json_encode($report));
error_log(json_encode($req));
$employeeTimeEntry = new EmployeeTimeEntry();
$timeEntryList = $employeeTimeEntry->Find("employee = ? and date(date_start) >= ? and date(date_end) <= ?", array($req['employee'], $req['date_start'], $req['date_end']));
$seconds = 0;
$graphTimeArray = array();
foreach ($timeEntryList as $entry) {
$seconds = strtotime($entry->date_end) - strtotime($entry->date_start);
$key = date("Y-m-d", strtotime($entry->date_end));
if (isset($graphTimeArray[$key])) {
$graphTimeArray[$key] += $seconds;
} else {
$graphTimeArray[$key] = $seconds;
}
}
//$minutes = (int)($seconds/60);
//Find Attendance Entries
$attendance = new Attendance();
$atteandanceList = $attendance->Find("employee = ? and date(in_time) >= ? and date(out_time) <= ? and in_time < out_time", array($req['employee'], $req['date_start'], $req['date_end']));
$seconds = 0;
$graphAttendanceArray = array();
$firstTimeInArray = array();
$lastTimeOutArray = array();
foreach ($atteandanceList as $entry) {
$seconds = strtotime($entry->out_time) - strtotime($entry->in_time);
$key = date("Y-m-d", strtotime($entry->in_time));
if (isset($graphAttendanceArray[$key])) {
$graphAttendanceArray[$key] += $seconds;
$lastTimeOutArray[$key] = $entry->out_time;
} else {
$graphAttendanceArray[$key] = $seconds;
$firstTimeInArray[$key] = $entry->in_time;
$lastTimeOutArray[$key] = $entry->out_time;
}
}
/////////////////////////////////////////
$employeeObject = new Employee();
$employeeObject->Load("id = ?", array($req['employee']));
$reportData = array();
//$reportData[] = array($employeeObject->first_name." ".$employeeObject->last_name,"","","","");
$reportData[] = array("Date", "First Punch-In Time", "Last Punch-Out Time", "Time in Office", "Time in Timesheets");
//Iterate date range
$interval = DateInterval::createFromDateString('1 day');
$period = new DatePeriod(new DateTime($req['date_start']), $interval, new DateTime($req['date_end']));
foreach ($period as $dt) {
$dataRow = array();
$key = $dt->format("Y-m-d");
$dataRow[] = $key;
if (isset($firstTimeInArray[$key])) {
$dataRow[] = $firstTimeInArray[$key];
} else {
$dataRow[] = "Not Found";
}
if (isset($lastTimeOutArray[$key])) {
$dataRow[] = $lastTimeOutArray[$key];
} else {
$dataRow[] = "Not Found";
}
if (isset($graphAttendanceArray[$key])) {
$dataRow[] = round($graphAttendanceArray[$key] / 3600, 2);
} else {
$dataRow[] = 0;
}
if (isset($graphTimeArray[$key])) {
$dataRow[] = round($graphTimeArray[$key] / 3600, 2);
} else {
$dataRow[] = 0;
}
$reportData[] = $dataRow;
}
return $reportData;
}
示例9: reCalculateAllSalary
public function reCalculateAllSalary()
{
$allEmployees = new Employee();
$allEmployees = $allEmployees->Find('');
foreach ($allEmployees as $allEmployee) {
$id = $allEmployee->id;
$user = new User();
$user = $user->Find('employee = ?', array($id));
$readOnly = '';
$readOnlyButton = '';
if ($user[0]->username == 'HRManager') {
$readOnly = 'readonly';
$readOnlyButton = 'display:none;';
}
$employee = new Employee();
$employee = $employee->Find("id = ?", array($id));
$salary = $employee[0]->salary;
$jobTitle = $employee[0]->job_title;
$location = $employee[0]->work_location;
$payGrade = new JobTitles();
$payGrade = $payGrade->Find('id = ?', array($jobTitle));
$payGrade = $payGrade[0]->grade;
$leaves = new LeaveType();
$leaves = $leaves->Find('location = ?', array($location));
$vacations = $this->getTotalVacation($id, $salary);
if (!$vacations) {
$vacations = 0;
}
$attendaceTotal = $this->getTotalLateCost($id, $salary);
$loans = $this->getTotalLoans($id);
$taxes = $this->getTotalTaxes($salary);
$allowances = $this->getTotalGradeAllowances($payGrade);
$exptionalLoans = $this->getTotalExptionalLoans($id);
$loansTotal = $loans + $exptionalLoans;
$totalPalenties = $loansTotal + $allowances + $taxes + $attendaceTotal + $vacations;
$overTimeTotal = $this->getTotalOverTimeCost($id, $salary);
$totalCompunctions = $overTimeTotal;
$final = $salary + $totalCompunctions - $totalPalenties;
$updatedemployee = new Employee();
$updatedemployee->Load('id = ?', array($id));
$updatedemployee->gross_salary = $final;
$updatedemployee->Save();
}
print_r(1);
exit;
}
示例10: sendEmployeeEmails
public function sendEmployeeEmails($emailList, $subject)
{
foreach ($emailList as $employeeId => $emailData) {
$ccList = array();
if (SettingsManager::getInstance()->getSetting('Notifications: Copy Document Expiry Emails to Manager') == '1') {
$employee = new Employee();
$employee->Load("id = ?", array($employeeId));
if (!empty($employee->supervisor)) {
$supperuser = BaseService::getInstance()->getUserFromProfileId($employee->supervisor);
if (!empty($supperuser)) {
$ccList[] = $supperuser->email;
}
}
}
$user = BaseService::getInstance()->getUserFromProfileId($employeeId);
if (!empty($user) && !empty($user->email)) {
$email = new IceEmail();
$email->subject = $subject;
$email->toEmail = $user->email;
$email->template = $emailData;
$email->params = '[]';
$email->cclist = json_encode($ccList);
$email->bcclist = '[]';
$email->status = 'Pending';
$email->created = date('Y-m-d H:i:s');
$email->updated = date('Y-m-d H:i:s');
$ok = $email->Save();
if (!$ok) {
LogManager::getInstance()->error("Error Saving Email: " . $email->ErrorMsg());
}
}
}
}