/** ** get individual **/ public function getselectedappraisaldataAction() { try { $appId = $this->_request->getParam('appId'); $empId = $this->_request->getParam('empId'); $empAppraisalData = ""; $questionsData = ""; $categoriesData = ""; $empData = ""; $ratingsData = ""; if ($appId && $empId) { $empAppraisalModel = new Default_Model_Appraisalemployeeratings(); $empAppraisals = $empAppraisalModel->getSelectedAppraisalData($appId, $empId); $configId = isset($empAppraisals[0]['pa_configured_id']) ? $empAppraisals[0]['pa_configured_id'] : 0; // get rating details using configuration id $appEmpRatingsModel = new Default_Model_Appraisalemployeeratings(); $ratingsData = $appEmpRatingsModel->getAppRatingsDataByConfgId($configId, $appId); $ratingType = ""; if (!empty($ratingsData)) { $ratingType = $ratingsData[0]['rating_type']; } $ratingText = array(); $ratingTextDisplay = array(); $ratingValues = array(); foreach ($ratingsData as $rd) { $ratingText[] = $rd['rating_text']; $ratingTextDisplay[$rd['id']] = $rd['rating_text']; $ratingValues[$rd['id']] = $rd['rating_value']; } //$empAppraisalData = $empAppraisalModel->getEmpQuestionsData($appId,$empId); if (!empty($empAppraisals)) { if (!empty($empAppraisals[0]['employee_response'])) { $empResponse = json_decode($empAppraisals[0]['employee_response']); $empResponseArray = get_object_vars($empResponse); $strQuestionIds = implode(",", array_keys($empResponseArray)); $questionsData = $empAppraisalModel->getQuestionsData($strQuestionIds); $tmpRatingIdsObject = array_values($empResponseArray); $tmpRatingIdsArr = array(); foreach ($tmpRatingIdsObject as $ratingArr) { $tmpRatings = get_object_vars($ratingArr); $tmpRatingIdsArr[] = $tmpRatings['rating_id']; } if (!empty($empAppraisals[0]['manager_response'])) { $managerResponse = json_decode($empAppraisals[0]['manager_response']); $managerResponseArray = get_object_vars($managerResponse); $managerRatingIdsObject = array_values($managerResponseArray); foreach ($managerRatingIdsObject as $ratingArr) { $tmpRatings = get_object_vars($ratingArr); $tmpRatingIdsArr[] = $tmpRatings['rating']; } } $tmpRatingIdsStr = !empty($tmpRatingIdsArr) ? implode(",", $tmpRatingIdsArr) : ""; if (!empty($tmpRatingIdsStr)) { $ratingsData = $empAppraisalModel->getRatingsData($tmpRatingIdsStr); } if (!empty($ratingsData)) { $r = 0; foreach ($ratingsData as $rdata) { $ratingsData[$rdata['id']] = $rdata; unset($ratingsData[$r]); $r++; } } } $strCategories = $empAppraisals[0]['category_id']; $categoriesData = $empAppraisalModel->getCategories($strCategories); /** for getting line managers name, business unit, department details ** $strEmpId = $empId.','; if(!empty($empAppraisals[0]['line_manager_1'])) { $strEmpId .= $empAppraisals[0]['line_manager_1']; $strEmpId .= ','; } if(!empty($empAppraisals[0]['line_manager_2'])) { $strEmpId .= $empAppraisals[0]['line_manager_2']; $strEmpId .= ','; } if(!empty($empAppraisals[0]['line_manager_3'])) { $strEmpId .= $empAppraisals[0]['line_manager_3']; $strEmpId .= ','; } if(!empty($empAppraisals[0]['line_manager_4'])) { $strEmpId .= $empAppraisals[0]['line_manager_4']; $strEmpId .= ','; } if(!empty($empAppraisals[0]['line_manager_5'])) { $strEmpId .= $empAppraisals[0]['line_manager_5']; $strEmpId .= ','; } $strEmpId = trim($strEmpId,","); $empData = $empAppraisalModel->getEmployeeData($strEmpId); **/ } } $this->view->selectedAppraisals = $empAppraisals; $this->view->categoriesData = $categoriesData; $this->view->empData = $empData; $this->view->questionsData = $questionsData; $this->view->ratingsData = $ratingsData; $this->view->ratingType = $ratingType; $this->view->ratingTextDisplay = $ratingTextDisplay; $this->view->ratingText = json_encode($ratingText); $this->view->ratingValues = $ratingValues; } catch (Exception $e) { print_r($e); } }
public function saveAction() { $auth = Zend_Auth::getInstance(); $loginuserFullName = ''; if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginuserGroup = $auth->getStorage()->read()->group_id; $loginuserProfileImg = $auth->getStorage()->read()->profileimg; $loginuserEmail = $auth->getStorage()->read()->emailaddress; $loginuserFullName = $auth->getStorage()->read()->userfullname; $loginUserEmpId = $auth->getStorage()->read()->employeeId; } try { $appEmpRatingsModel = new Default_Model_Appraisalemployeeratings(); $app_init_model = new Default_Model_Appraisalinit(); $id = $this->_request->getParam('id'); $employee_id = $this->_request->getParam('employee_id'); $initialization_id = $this->_request->getParam('initialization_id'); $config_id = $this->_request->getParam('config_id'); $flag = $this->_request->getParam('flag'); $app_status = $this->_request->getParam('app_status'); $mgr_levels = $this->_request->getParam('mgr_levels'); $ratingsData = $appEmpRatingsModel->getAppRatingsDataByConfgId($config_id, $initialization_id); $ratingValues = array(); foreach ($ratingsData as $rd) { $ratingValues[$rd['id']] = $rd['rating_value']; } $appData = array('modifiedby' => $loginUserId, 'modifiedby_role' => $loginuserRole, 'modifiedby_group' => $loginuserGroup, 'modifieddate' => gmdate("Y-m-d H:i:s")); $emp_rating_arr = $this->_request->getParam('emp_rating'); $emp_comment_arr = $this->_request->getParam('emp_comment'); $emp_response = array(); if (sizeof($emp_rating_arr) > 0 || sizeof($emp_comment_arr) > 0) { foreach ($emp_rating_arr as $qid => $val) { if (isset($emp_rating_arr[$qid])) { $rating_id = array_search($emp_rating_arr[$qid], $ratingValues); } else { $rating_id = ''; } $emp_response[$qid] = array('comment' => $emp_comment_arr[$qid], 'rating_id' => $rating_id); } } $appData['employee_response'] = json_encode($emp_response, true); $curent_level = array_search($app_status, $this->app_status_array); if ($flag == 'submit') { $appData['appraisal_status'] = $curent_level + 1; $history_desc = $this->app_history_disc_array[$curent_level]; $appHistoryData = array('employee_id' => $employee_id, 'pa_initialization_id' => $initialization_id, 'description' => $history_desc, 'desc_emp_id' => $loginUserId, 'desc_emp_name' => $loginuserFullName, 'desc_emp_profileimg' => $loginuserProfileImg, 'createdby' => $loginUserId, 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); $appHistoryModel = new Default_Model_Appraisalhistory(); $result2 = $appHistoryModel->SaveorUpdateAppraisalHistoryData($appHistoryData); /* Update employee response column */ $appraisaldata = $app_init_model->getConfigData($initialization_id); if ($appraisaldata[0]['employee_response'] == 1) { $initdata = array('employee_response' => 2, 'modifiedby' => $loginUserId, 'modifiedby_role' => $loginuserRole, 'modifiedby_group' => $loginuserGroup, 'modifieddate' => gmdate("Y-m-d H:i:s")); $initwhere = array('id=?' => $initialization_id); $app_init_model->SaveorUpdateAppraisalInitData($initdata, $initwhere); } /* * Logs Storing */ $menumodel = new Default_Model_Menu(); $actionflag = ''; $tableid = ''; $actionflag = 1; $menuidArr = $menumodel->getMenuObjID('/appraisalself'); $menuID = $menuidArr[0]['id']; sapp_Global::logManager($menuID, $actionflag, $loginUserId, $tableid); /* * Logs storing ends */ /** Start * Sending Mails to employees */ //to get initialization details using appraisal Id for Business Unit,Department,To Year $appraisalratingsmodel = new Default_Model_Appraisalratings(); $appraisal_details = $appraisalratingsmodel->getappdata($initialization_id); if (!empty($appraisal_details)) { $bunit = $appraisal_details['unitname']; $dept = $appraisal_details['deptname']; $to_year = $appraisal_details['to_year']; } $dept_str = $dept == '' ? " " : "and <b>{$dept}</b> department"; $emp_id_str = $loginuserRole == SUPERADMINROLE ? " " : "({$loginUserEmpId})"; $app_manager_model = new Default_Model_Appraisalmanager(); $getLineManager = $app_manager_model->getLineMgr($initialization_id, $loginUserId); if (!empty($getLineManager)) { $line_mgr = $getLineManager['line_manager_1']; $employeeDetailsArr = $app_manager_model->getUserDetailsByEmpID($line_mgr); $employeeDetailsArr = $employeeDetailsArr[0]; // Sending mail to Manager if (!empty($employeeDetailsArr)) { $options['subject'] = APPLICATION_NAME . ': Self Appraisal Submitted'; $options['header'] = "Performance Appraisal : {$to_year}"; $options['toEmail'] = $employeeDetailsArr['emailaddress']; $options['toName'] = $employeeDetailsArr['userfullname']; $options['message'] = "<div style='padding: 0; text-align: left; font-size:14px; font-family:Arial, Helvetica, sans-serif;'>\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span style='color:#3b3b3b;'>Dear " . $employeeDetailsArr['userfullname'] . ",</span><br />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 0 0;color:#3b3b3b;'> " . $loginuserFullName . $emp_id_str . " has submitted appraisal form.</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 10px 0;'>Please <a href=" . BASE_URL . " target='_blank' style='color:#b3512f;'>click here</a> to login to <b>" . APPLICATION_NAME . "</b> and check the appraisal ratings and comments.</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div> "; $mail_id = sapp_Global::_sendEmail($options); } } //Sending mail to Employee $options['subject'] = APPLICATION_NAME . ': Performance Appraisal Submitted to Line1 manager'; $options['header'] = "Performance Appraisal : {$to_year}"; $options['toEmail'] = $loginuserEmail; $options['toName'] = $loginuserFullName; $options['message'] = "<div style='padding: 0; text-align: left; font-size:14px; font-family:Arial, Helvetica, sans-serif;'>\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span style='color:#3b3b3b;'>Dear {$loginuserFullName},</span><br />\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 0 0;color:#3b3b3b;'>Your appraisal form is submitted successfully to your Line1 Manager," . $employeeDetailsArr['userfullname'] . "(" . $employeeDetailsArr['employeeId'] . ") </div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 10px 0;'>Please <a href=" . BASE_URL . " target='_blank' style='color:#b3512f;'>click here</a> to login to your <b>" . APPLICATION_NAME . "</b> account.</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div> "; $mail_id = sapp_Global::_sendEmail($options); } /** * End */ $appWhere = array('id=?' => $id); $result1 = $appEmpRatingsModel->SaveorUpdateAppraisalSkillsData($appData, $appWhere); if ($result1) { $msg = 'saved'; } else { $msg = 'err'; } } catch (Exception $e) { //echo $e->getMessage(); //echo $e->getTrace(); //echo $e->getTraceAsString(); $msg = "Something went wrong, please try again."; } $this->_helper->json(array('msg' => $msg)); }
public function saveAction() { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginuserGroup = $auth->getStorage()->read()->group_id; $loginuserFullName = $auth->getStorage()->read()->userfullname; $loginuserProfileImg = $auth->getStorage()->read()->profileimg; } try { $appEmpRatingsModel = new Default_Model_Appraisalemployeeratings(); $app_init_model = new Default_Model_Appraisalinit(); $menumodel = new Default_Model_Menu(); $actionflag = ''; $tableid = ''; $id = $this->_request->getParam('id'); $employee_id = $this->_request->getParam('employee_id'); $initialization_id = $this->_request->getParam('initialization_id'); $config_id = $this->_request->getParam('config_id'); $flag = $this->_request->getParam('flag'); $app_status = $this->_request->getParam('app_status'); $mgr_levels = $this->_request->getParam('mgr_levels'); $ratingsData = $appEmpRatingsModel->getAppRatingsDataByConfgId($config_id, $initialization_id); $ratingValues = array(); foreach ($ratingsData as $rd) { $ratingValues[$rd['id']] = $rd['rating_value']; } $appData = array('modifiedby' => $loginUserId, 'modifiedby_role' => $loginuserRole, 'modifiedby_group' => $loginuserGroup, 'modifieddate' => gmdate("Y-m-d H:i:s")); $emp_rating_arr = $this->_request->getParam('emp_rating'); $emp_comment_arr = $this->_request->getParam('emp_comment'); $emp_response = array(); if (sizeof($emp_rating_arr) > 0 || sizeof($emp_comment_arr) > 0) { foreach ($emp_rating_arr as $qid => $val) { if (isset($emp_rating_arr[$qid])) { $rating_id = array_search($emp_rating_arr[$qid], $ratingValues); } else { $rating_id = ''; } $emp_response[$qid] = array('comment' => $emp_comment_arr[$qid], 'rating_id' => $rating_id); } } $appData['employee_response'] = json_encode($emp_response, true); $curent_level = array_search($app_status, $this->app_status_array); if ($flag == 'submit') { $appData['appraisal_status'] = $curent_level + 1; $history_desc = $this->app_history_disc_array[$curent_level]; $appHistoryData = array('employee_id' => $employee_id, 'pa_initialization_id' => $initialization_id, 'description' => $history_desc, 'desc_emp_id' => $loginUserId, 'desc_emp_name' => $loginuserFullName, 'desc_emp_profileimg' => $loginuserProfileImg, 'createdby' => $loginUserId, 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s")); $appHistoryModel = new Default_Model_Appraisalhistory(); $result2 = $appHistoryModel->SaveorUpdateAppraisalHistoryData($appHistoryData); /* Update employee response column */ $appraisaldata = $app_init_model->getConfigData($initialization_id); if ($appraisaldata[0]['employee_response'] == 1) { $initdata = array('employee_response' => 2, 'modifiedby' => $loginUserId, 'modifiedby_role' => $loginuserRole, 'modifiedby_group' => $loginuserGroup, 'modifieddate' => gmdate("Y-m-d H:i:s")); $initwhere = array('id=?' => $initialization_id); $app_init_model->SaveorUpdateAppraisalInitData($initdata, $initwhere); } } $menuidArr = $menumodel->getMenuObjID('/appraisalconfig'); $menuID = $menuidArr[0]['id']; //$result = sapp_Global::logManager($menuID,$actionflag,$loginUserId,$tableid); $appWhere = array('id=?' => $id); $result1 = $appEmpRatingsModel->SaveorUpdateAppraisalSkillsData($appData, $appWhere); if ($result1) { $msg = 'saved'; } else { $msg = 'err'; } } catch (Exception $e) { // echo $e->getMessage(); //echo $e->getTrace(); //echo $e->getTraceAsString(); $msg = "Something went wrong, please try again."; } $this->_helper->json(array('msg' => $msg)); }
/** ** get individual **/ public function getselectedappraisaldataAction() { try { $appId = $this->_request->getParam('appId'); $empId = $this->_request->getParam('empId'); $period = $this->_request->getParam('period'); $empAppraisalData = ""; $questionsData = ""; $categoriesData = ""; $empData = ""; $ratingsData = ""; $empAppraisals = array(); $ratingType = ""; $ratingText = array(); $ratingTextDisplay = array(); $ratingValues = array(); if ($appId && $empId && $period) { $empAppraisalModel = new Default_Model_Appraisalemployeeratings(); $empAppraisals = $empAppraisalModel->getSelectedAppraisalData($appId, $empId, $period); $configId = isset($empAppraisals[0]['pa_configured_id']) ? $empAppraisals[0]['pa_configured_id'] : 0; // get rating details using configuration id $appEmpRatingsModel = new Default_Model_Appraisalemployeeratings(); $ratingsData = $appEmpRatingsModel->getAppRatingsDataByConfgId($configId, $appId); if (!empty($ratingsData)) { $ratingType = $ratingsData[0]['rating_type']; } foreach ($ratingsData as $rd) { $ratingText[] = $rd['rating_text']; $ratingTextDisplay[$rd['id']] = $rd['rating_text']; $ratingValues[$rd['id']] = $rd['rating_value']; } if (!empty($empAppraisals)) { if (!empty($empAppraisals[0]['employee_response'])) { $empResponse = json_decode($empAppraisals[0]['employee_response']); $empResponseArray = get_object_vars($empResponse); $strQuestionIds = implode(",", array_keys($empResponseArray)); $questionsData = $empAppraisalModel->getQuestionsData($strQuestionIds); $tmpRatingIdsObject = array_values($empResponseArray); $tmpRatingIdsArr = array(); foreach ($tmpRatingIdsObject as $ratingArr) { $tmpRatings = get_object_vars($ratingArr); $tmpRatingIdsArr[] = $tmpRatings['rating_id']; } if (!empty($empAppraisals[0]['manager_response'])) { $managerResponse = json_decode($empAppraisals[0]['manager_response']); $managerResponseArray = get_object_vars($managerResponse); $managerRatingIdsObject = array_values($managerResponseArray); foreach ($managerRatingIdsObject as $ratingArr) { $tmpRatings = get_object_vars($ratingArr); $tmpRatingIdsArr[] = $tmpRatings['rating']; } } $tmpRatingIdsStr = !empty($tmpRatingIdsArr) ? implode(",", $tmpRatingIdsArr) : ""; if (!empty($tmpRatingIdsStr)) { $ratingsData = $empAppraisalModel->getRatingsData($tmpRatingIdsStr); } if (!empty($ratingsData)) { $r = 0; foreach ($ratingsData as $rdata) { $ratingsData[$rdata['id']] = $rdata; unset($ratingsData[$r]); $r++; } } } $strCategories = $empAppraisals[0]['category_id']; $categoriesData = $empAppraisalModel->getCategories($strCategories); } } $appSkillsModel = new Default_Model_Appraisalskills(); $skills = array(); $skills = $appSkillsModel->getAppraisalSkillsData(); $skills_arr = array(); foreach ($skills as $skill) { $skills_arr[$skill['id']] = $skill; } $this->view->skills_arr = $skills_arr; $this->view->selectedAppraisals = $empAppraisals; $this->view->categoriesData = $categoriesData; $this->view->empData = $empData; $this->view->questionsData = $questionsData; $this->view->ratingsData = $ratingsData; $this->view->ratingType = $ratingType; $this->view->ratingTextDisplay = $ratingTextDisplay; $this->view->ratingText = json_encode($ratingText); $this->view->ratingValues = $ratingValues; $this->view->appraisalId = $appId; } catch (Exception $e) { print_r($e); } }