本文整理汇总了PHP中EmployeeService类的典型用法代码示例。如果您正苦于以下问题:PHP EmployeeService类的具体用法?PHP EmployeeService怎么用?PHP EmployeeService使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了EmployeeService类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testCallGetCorporateDirectoryEmployeeDetailsMethod
public function testCallGetCorporateDirectoryEmployeeDetailsMethod()
{
TestDataService::populate($this->fixture);
$employeeService = new EmployeeService();
$empPicture = $employeeService->getEmployeePicture(2);
$base64TestStringForEmp1 = 'R0lGODlhCgAKALMAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwICAgP8AAAD/AP//AAAA//8A/wD//////ywAAAAACgAKAAAEClDJSau9OOvNe44AOw==';
$decodedBase64String = base64_decode($base64TestStringForEmp1);
$empPicture->setPicture($decodedBase64String);
$empPicture->save();
$empPicture = $employeeService->getEmployeePicture(3);
$base64TestStringForEmp2 = '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';
$decodedBase64String = base64_decode($base64TestStringForEmp2);
$empPicture->setPicture($decodedBase64String);
$empPicture->save();
$paramObj = new WSRequestParameters();
$paramObj->setAppId(1);
$paramObj->setAppToken('1234567890');
$paramObj->setMethod('getCorporateDirectoryEmployeeDetails');
$paramObj->setSessionToken(uniqid('ohrm_ws_session_'));
$paramObj->setParameters(array('includeTerminate' => 0));
$paramObj->setRequestMethod('GET');
$result = $this->manager->callMethod($paramObj);
$this->assertNotNull($result);
$this->assertEquals(6, count($result));
$expectedEmployeeList = $this->getExpectedEmployeeList($base64TestStringForEmp1, $base64TestStringForEmp2);
foreach ($expectedEmployeeList as $key => $testCase) {
$this->assertEquals($result[$key], $expectedEmployeeList[$key]);
}
}
示例2: setUp
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();
}
示例3: execute
/**
* Delete employee memberships
*
* @param int $empNumber Employee number
*
* @return boolean true if successfully deleted, false otherwise
*/
public function execute($request)
{
$empNumber = $request->getParameter('empNumber', false);
$this->form = new EmployeeMembershipsDeleteForm(array(), array('empNumber' => $empNumber), true);
$this->form->bind($request->getParameter($this->form->getName()));
$membershipPermissions = $this->getDataGroupPermissions('membership', $empNumber);
if ($membershipPermissions->canDelete()) {
if ($this->form->isValid()) {
if (!$empNumber) {
throw new PIMServiceException("No Employee ID given");
}
$selectedRecordIds = $request->getParameter('chkmemdel', array());
if (count($selectedRecordIds) > 0) {
$membershipDetails = $this->_getSelectedMembershipDetails($request->getParameter('chkmemdel', array()));
$empNumber = $membershipDetails[0];
$membershipIds = $membershipDetails[1];
if (!empty($empNumber) && !empty($membershipIds)) {
$service = new EmployeeService();
$service->deleteEmployeeMemberships($empNumber, $membershipIds);
$this->getUser()->setFlash('memberships.success', __(TopLevelMessages::DELETE_SUCCESS));
}
}
}
}
$this->redirect('pim/viewMemberships?empNumber=' . $empNumber);
}
示例4: testBulkAssignLeaveEntitlements
public function testBulkAssignLeaveEntitlements()
{
$this->fixture = sfConfig::get('sf_plugins_dir') . '/orangehrmLeavePlugin/test/fixtures/LeaveEntitlement.yml';
TestDataService::populate($this->fixture);
$dao = new LeaveEntitlementDao();
$limit = 5000;
$empList = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
for ($i = 0; $i < $limit; $i++) {
$employee = new Employee();
$employee->setFirstName($i);
$employee = $employeeService->saveEmployee($employee);
array_push($empList, $employee->getEmpNumber());
}
$start_time = microtime(true);
$leaveEntitlement = new LeaveEntitlement();
$leaveEntitlement->setLeaveTypeId(1);
$leaveEntitlement->setCreditedDate(date('Y-m-d'));
$leaveEntitlement->setEntitlementType(LeaveEntitlement::ENTITLEMENT_TYPE_ADD);
$leaveEntitlement->setDeleted(0);
$leaveEntitlement->setNoOfDays(2);
$leaveEntitlement->setFromDate('2012-01-01');
$leaveEntitlement->setToDate('2012-08-01');
$result = $dao->bulkAssignLeaveEntitlements($empList, $leaveEntitlement);
$deference = microtime(true) - $start_time;
$this->assertEquals(count($empList), $result, "Time Deference - " . $deference);
echo "Add Entitlement 5000 Time " . $deference;
}
示例5: setReportCriteriaInfoInRequest
public function setReportCriteriaInfoInRequest($formValues)
{
$employeeService = new EmployeeService();
$jobService = new JobService();
$empStatusService = new EmploymentStatusService();
$companyStructureService = new CompanyStructureService();
if (isset($formValues["employee"])) {
$empNumber = $formValues["employee"];
$employee = $employeeService->getEmployee($empNumber);
$empName = $employee->getFirstAndLastNames();
$this->getRequest()->setParameter('empName', $empName);
}
if (isset($formValues["employment_status"]) && $formValues["employment_status"] != 0) {
$estatCode = $formValues["employment_status"];
$estat = $empStatusService->getEmploymentStatusById($estatCode);
$estatName = $estat->getName();
$this->getRequest()->setParameter("empStatusName", $estatName);
}
if (isset($formValues["job_title"]) && $formValues["job_title"] != 0) {
$jobTitCode = $formValues["job_title"];
$jobTitle = $jobService->readJobTitle($jobTitCode);
$jobTitName = $jobTitle->getJobTitName();
$this->getRequest()->setParameter("jobTitName", $jobTitName);
}
if (isset($formValues["sub_unit"]) && $formValues["job_title"] != 0) {
$value = $formValues["sub_unit"];
$id = $value;
$subunit = $companyStructureService->getSubunitById($id);
$subUnitName = $subunit->getName();
$this->getRequest()->setParameter("subUnit", $subUnitName);
}
$this->getRequest()->setParameter('attendanceDateRangeFrom', $formValues["attendance_date_range"]["from"]);
$this->getRequest()->setParameter('attendanceDateRangeTo', $formValues["attendance_date_range"]["to"]);
}
开发者ID:THM068,项目名称:orangehrm,代码行数:34,代码来源:displayAttendanceTotalSummaryReportCriteriaAction.class.php
示例6: execute
public function execute($request)
{
$loggedInEmpNum = $this->getUser()->getEmployeeNumber();
$loggedInUserName = $_SESSION['fname'];
$job = $request->getParameter('job');
$empNumber = isset($job['emp_number']) ? $job['emp_number'] : $request->getParameter('empNumber');
/*
* TODO: $empNumber gets empty when uploaded file size exceeds PHP max upload size.
* Check for a better solution.
*/
if (empty($empNumber)) {
$this->getUser()->setFlash('templateMessage', array('warning', __(TopLevelMessages::FILE_SIZE_SAVE_FAILURE)));
$this->redirect($request->getReferer());
}
$this->empNumber = $empNumber;
$this->jobInformationPermission = $this->getDataGroupPermissions('job_details', $empNumber);
$this->ownRecords = $loggedInEmpNum == $empNumber ? true : false;
if (!$this->IsActionAccessible($empNumber)) {
$this->forward(sfConfig::get('sf_secure_module'), sfConfig::get('sf_secure_action'));
}
if ($this->getUser()->hasFlash('templateMessage')) {
list($this->messageType, $this->message) = $this->getUser()->getFlash('templateMessage');
}
$employee = $this->getEmployeeService()->getEmployee($empNumber);
$param = array('empNumber' => $empNumber, 'ESS' => $this->essMode, 'employee' => $employee, 'loggedInUser' => $loggedInEmpNum, 'loggedInUserName' => $loggedInUserName);
$this->form = new EmployeeJobDetailsForm(array(), $param, true);
$this->employeeState = $employee->getState();
if ($loggedInEmpNum == $empNumber) {
$this->allowActivate = FALSE;
$this->allowTerminate = FALSE;
} else {
$allowedActions = $this->getContext()->getUserRoleManager()->getAllowedActions(WorkflowStateMachine::FLOW_EMPLOYEE, $this->employeeState);
$this->allowActivate = in_array(WorkflowStateMachine::EMPLOYEE_ACTION_REACTIVE, $allowedActions);
$this->allowTerminate = in_array(WorkflowStateMachine::EMPLOYEE_ACTION_TERMINATE, $allowedActions);
}
$paramForTerminationForm = array('empNumber' => $empNumber, 'employee' => $employee, 'allowTerminate' => $this->allowTerminate, 'allowActivate' => $this->allowActivate);
$this->employeeTerminateForm = new EmployeeTerminateForm(array(), $paramForTerminationForm, true);
if ($this->getRequest()->isMethod('post')) {
// Handle the form submission
$this->form->bind($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName()));
if ($this->form->isValid()) {
// save data
if ($this->jobInformationPermission->canUpdate()) {
$service = new EmployeeService();
$service->saveEmployee($this->form->getEmployee(), false);
}
$this->form->updateAttachment();
$this->getUser()->setFlash('templateMessage', array('success', __(TopLevelMessages::UPDATE_SUCCESS)));
} else {
$validationMsg = '';
foreach ($this->form->getWidgetSchema()->getPositions() as $widgetName) {
if ($this->form[$widgetName]->hasError()) {
$validationMsg .= $this->form[$widgetName]->getError()->getMessageFormat();
}
}
$this->getUser()->setFlash('templateMessage', array('warning', $validationMsg));
}
$this->redirect('pim/viewJobDetails?empNumber=' . $empNumber);
}
}
示例7: configure
public function configure()
{
// Note: Widget names were kept from old non-symfony version
$this->setWidgets(array('txtEmployeeId' => new sfWidgetFormInputText(), 'txtEmpFirstName' => new sfWidgetFormInputText(), 'txtEmpMiddleName' => new sfWidgetFormInputText(), 'txtEmpLastName' => new sfWidgetFormInputText(), 'txtEmpNickName' => new sfWidgetFormInputText(), 'MAX_FILE_SIZE' => new sfWidgetFormInputHidden(), 'photofile' => new sfWidgetFormInputFile()));
$employeeService = new EmployeeService();
$this->setDefault('txtEmployeeId', $employeeService->getDefaultEmployeeId());
$this->setValidators(array('txtEmployeeId' => new sfValidatorString(array('required' => false)), 'txtEmpFirstName' => new sfValidatorString(array('required' => true), array('required' => 'First Name Empty!')), 'txtEmpMiddleName' => new sfValidatorString(array('required' => false)), 'txtEmpLastName' => new sfValidatorString(array('required' => true), array('required' => 'Last Name Empty!')), 'txtEmpNickName' => new sfValidatorString(array('required' => false)), 'MAX_FILE_SIZE' => new sfValidatorString(array('required' => true)), 'photofile' => new sfValidatorFile(array('required' => false))));
}
示例8: getEmployeeListAsJson
/**
* Get Employee List As Json
* This function should be available in EmployeeService, not here
* Due to backward compatibility temporarily its made available. referencing places need to be pointed to employee service
* and this should be removed
*/
public function getEmployeeListAsJson()
{
try {
$employeeService = new EmployeeService();
return $employeeService->getEmployeeListAsJson();
} catch (Exception $e) {
throw new AdminServiceException($e->getMessage());
}
}
示例9: getEmployeeName
public function getEmployeeName($employeeId)
{
$employeeService = new EmployeeService();
$employee = $employeeService->getEmployee($employeeId);
if ($employee->getMiddleName() != null) {
return $employee->getFirstName() . " " . $employee->getMiddleName() . " " . $employee->getLastName();
} else {
return $employee->getFirstName() . " " . $employee->getLastName();
}
}
示例10: getProjectAdminListAsJson
public function getProjectAdminListAsJson()
{
$jsonArray = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
$employeeList = $employeeService->getEmployeeList();
foreach ($employeeList as $employee) {
$jsonArray[] = array('name' => $employee->getFullName(), 'id' => $employee->getEmpNumber());
}
$jsonString = json_encode($jsonArray);
return $jsonString;
}
示例11: getSupervisorListAsJson
public function getSupervisorListAsJson()
{
$jsonArray = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
$employeeList = $employeeService->getSupervisorList();
foreach ($employeeList as $employee) {
$name = $employee->getFirstName() . " " . $employee->getMiddleName();
$name = trim(trim($name) . " " . $employee->getLastName());
$jsonArray[] = array('name' => $name, 'id' => $employee->getEmpNumber());
}
$jsonString = json_encode($jsonArray);
return $jsonString;
}
示例12: getEmployeeListAsJson
public function getEmployeeListAsJson()
{
$jsonArray = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
$employeeUnique = array();
foreach ($this->employeeList as $employee) {
if (!isset($employeeUnique[$employee->getEmpNumber()])) {
$name = $employee->getFullName();
$employeeUnique[$employee->getEmpNumber()] = $name;
$jsonArray[] = array('name' => $name, 'id' => $employee->getEmpNumber());
}
}
$jsonString = json_encode($jsonArray);
return $jsonString;
}
示例13: execute
public function execute($request)
{
$jsonArray = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
$employeeList = $employeeService->getSubordinateListForEmployee($request->getGetParameter('id'));
foreach ($employeeList as $subordinate) {
$employee = $subordinate->getSubordinate();
$name = $employee->getFirstName() . " " . $employee->getMiddleName();
$name = trim(trim($name) . " " . $employee->getLastName());
$jsonArray[] = array('name' => $name, 'id' => $employee->getEmpNumber());
}
$jsonString = json_encode($jsonArray);
echo $jsonString;
exit;
}
示例14: execute
public function execute($request)
{
$loggedInEmpNum = $this->getUser()->getEmployeeNumber();
$loggedInUserName = $_SESSION['fname'];
$job = $request->getParameter('job');
$empNumber = isset($job['emp_number']) ? $job['emp_number'] : $request->getParameter('empNumber');
$this->empNumber = $empNumber;
$this->ownRecords = $loggedInEmpNum == $empNumber ? true : false;
$this->allowEdit = $this->isAllowedAdminOnlyActions($loggedInEmpNum, $empNumber);
$adminMode = $this->getUser()->hasCredential(Auth::ADMIN_ROLE);
if (!$this->IsActionAccessible($empNumber)) {
$this->forward(sfConfig::get('sf_secure_module'), sfConfig::get('sf_secure_action'));
}
$this->essMode = !$adminMode && !empty($loggedInEmpNum) && $empNumber == $loggedInEmpNum;
if ($this->getUser()->hasFlash('templateMessage')) {
list($this->messageType, $this->message) = $this->getUser()->getFlash('templateMessage');
}
$employee = $this->getEmployeeService()->getEmployee($empNumber);
$param = array('empNumber' => $empNumber, 'ESS' => $this->essMode, 'employee' => $employee, 'loggedInUser' => $loggedInEmpNum, 'loggedInUserName' => $loggedInUserName);
$paramForTerminationForm = array('empNumber' => $empNumber, 'employee' => $employee);
$this->form = new EmployeeJobDetailsForm(array(), $param, true);
$this->employeeTerminateForm = new EmployeeTerminateForm(array(), $paramForTerminationForm, true);
if ($this->getRequest()->isMethod('post')) {
if (!$this->allowEdit) {
$this->forward(sfConfig::get('sf_secure_module'), sfConfig::get('sf_secure_action'));
}
// Handle the form submission
$this->form->bind($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName()));
if ($this->form->isValid()) {
// save data
$service = new EmployeeService();
$service->saveJobDetails($this->form->getEmployee(), false);
$this->form->updateAttachment();
$this->getUser()->setFlash('templateMessage', array('success', __(TopLevelMessages::UPDATE_SUCCESS)));
} else {
$validationMsg = '';
foreach ($this->form->getWidgetSchema()->getPositions() as $widgetName) {
if ($this->form[$widgetName]->hasError()) {
$validationMsg .= $this->form[$widgetName]->getError()->getMessageFormat();
}
}
$this->getUser()->setFlash('templateMessage', array('warning', $validationMsg));
}
$this->redirect('pim/viewJobDetails?empNumber=' . $empNumber);
}
}
示例15: getProjectAdminListAsJson
public function getProjectAdminListAsJson()
{
$jsonArray = array();
$employeeService = new EmployeeService();
$employeeService->setEmployeeDao(new EmployeeDao());
$properties = array("empNumber", "firstName", "middleName", "lastName", 'termination_id');
$employeeList = $employeeService->getEmployeePropertyList($properties, 'empNumber', 'ASC');
foreach ($employeeList as $employee) {
$name = trim(trim($employee['firstName'] . ' ' . $employee['middleName'], ' ') . ' ' . $employee['lastName']);
if ($employee['termination_id']) {
$name = $name . ' (' . __('Past Employee') . ')';
}
$jsonArray[] = array('name' => $name, 'id' => $employee['empNumber']);
}
$jsonString = json_encode($jsonArray);
return $jsonString;
}