Ejemplo n.º 1
0
 /**
  * 
  */
 public function printAction()
 {
     $this->_helper->layout()->setLayout('print');
     $id = $this->_getParam('id');
     $vacancy = $this->_mapperVacancy->detailVacancy($id);
     $this->view->vacancy = $vacancy;
     $this->view->shortlist = $this->_mapper->listShortlist($id);
 }
Ejemplo n.º 2
0
 /**
  * 
  */
 public function closeAction()
 {
     // Form Close
     $formClose = $this->_initForm('close');
     $this->view->title()->setSubTitle('Taka Vaga Emprego');
     $id = $this->_getParam('id');
     $vacancy = $this->_mapper->detailVacancy($id);
     $data = array();
     $data['fk_id_jobvacancy'] = $id;
     $data['num_position'] = $vacancy->num_position;
     $formClose->populate($data);
     $this->view->vacancy = $vacancy;
     $this->view->form = $formClose;
     $this->view->id = $id;
     $mapperJobMatch = new Job_Model_Mapper_JobMatch();
     $this->view->rows = $mapperJobMatch->listShortlist($id);
 }
Ejemplo n.º 3
0
 /**
  *
  * @param array $data
  * @return string
  */
 public function geJobShortlist($data)
 {
     $mapperJobVacancy = new Job_Model_Mapper_JobVacancy();
     $mapperClient = new Client_Model_Mapper_Client();
     $mapperCase = new Client_Model_Mapper_Case();
     $vacancy = $mapperJobVacancy->detailVacancy($data['vacancy']);
     $client = $mapperClient->detailClient($data['client']);
     $case = $mapperCase->detailCase($data['case']);
     $view = Zend_Layout::getMvcInstance()->getView();
     $link = '<a href="%s" target="_blank">%s</a>';
     $vacancyName = str_pad($vacancy->id_jobvacancy, 5, '0', STR_PAD_LEFT) . ' - ' . $vacancy->vacancy_titule;
     $clientName = Client_Model_Mapper_Client::buildNumRow($client) . ' - ' . Client_Model_Mapper_Client::buildName($client);
     $aVacancy = sprintf($link, $view->baseUrl('/job/vacancy/view/id/' . $vacancy->id_jobvacancy), $vacancy->name_dec . ' - ' . $vacancyName);
     $aClient = sprintf($link, $view->baseUrl('/client/client/print/id/' . $client->id_perdata), $clientName);
     $idCase = str_pad($case->id_action_plan, 5, '0', STR_PAD_LEFT);
     return sprintf(self::JOB_SHORTLIST, $aClient, $idCase, $case->name_dec, $case->name, $aVacancy, $vacancy->name_dec);
 }
Ejemplo n.º 4
0
 /**
  * 
  */
 public function jobClientAction()
 {
     $this->_helper->layout()->disableLayout();
     $mapperVacancy = new Job_Model_Mapper_JobVacancy();
     $vacancy = $mapperVacancy->detailVacancy($this->_getParam('vacancy'));
     $this->view->vacancy = $vacancy;
 }
Ejemplo n.º 5
0
 /**
  *
  * @param int $id
  * @return Zend_Db_Table_Rowset
  */
 public function listAutomatic($id)
 {
     $select = $this->_selectMatchClient($id);
     $mapperVacancy = new Job_Model_Mapper_JobVacancy();
     $dbPerExperience = App_Model_DbTable_Factory::get('PerExperience');
     $dbJobVacancy = App_Model_DbTable_Factory::get('JOBVacancy');
     $dbJobLocation = App_Model_DbTable_Factory::get('JOBVacancy_has_Location');
     $dbJobScholarity = App_Model_DbTable_Factory::get('JOBVacancy_has_PerScholarity');
     $dbJobTraining = App_Model_DbTable_Factory::get('JOBVacancy_has_Training');
     $dbJobLanguage = App_Model_DbTable_Factory::get('JOBVacancy_has_PerLanguage');
     $dbAddress = App_Model_DbTable_Factory::get('AddAddress');
     $dbPerScholarity = App_Model_DbTable_Factory::get('PerScholarity_has_PerTypeScholarity');
     $dbPerLanguage = App_Model_DbTable_Factory::get('PerLanguage_has_PerLevelKnowledge');
     $dbProfOcupation = App_Model_DbTable_Factory::get('PROFOcupationTimor');
     $dbHandicapped = App_Model_DbTable_Factory::get('handicapped');
     $vacancy = $mapperVacancy->detailVacancy($id);
     // Minimum Age
     if (!empty($vacancy->minimum_age)) {
         $select->having('age >= ?', $vacancy->minimum_age);
     }
     // Maximum Age
     if (!empty($vacancy->maximum_age)) {
         $select->having('age <= ?', $vacancy->maximum_age);
     }
     // Gender
     if (!empty($vacancy->gender)) {
         $select->where('LEFT(c.gender, 1) = ?', $vacancy->gender);
     }
     $selectOcupation = $dbProfOcupation->select()->setIntegrityCheck(false)->from(array('pot1' => $dbProfOcupation))->where('pot1.fk_id_profocupation = pot.fk_id_profocupation')->where('pot1.id_profocupationtimor = ?', $vacancy->fk_id_profocupation);
     // Minimal Experience and the Profesional Occupation
     $select->join(array('xp' => $dbPerExperience), 'xp.fk_id_perdata = c.id_perdata', array())->join(array('pot' => $dbProfOcupation), 'pot.id_profocupationtimor = xp.fk_id_profocupation', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectOcupation . ')'));
     // Minimal Experience
     if (!empty($vacancy->minimum_experience)) {
         $select->where('xp.experience_year >= ?', $vacancy->minimum_experience);
     }
     // Search by SubDistrict
     $subDistricts = $mapperVacancy->listAddress($id);
     if ($subDistricts->count() > 0) {
         $selectAddress = $dbJobLocation->select()->from(array('jl' => $dbJobLocation), array(new Zend_Db_Expr('NULL')))->setIntegrityCheck(false)->where('jl.fk_id_jobvacancy = ?', $id)->where('( jl.fk_id_addcountry = ad.fk_id_addcountry')->orWhere('jl.fk_id_adddistrict = ad.fk_id_adddistrict )');
         $select->join(array('ad' => $dbAddress), 'ad.fk_id_perdata = c.id_perdata', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectAddress . ')'));
     }
     // Search By Scholarity
     $scholarities = $mapperVacancy->listScholarity($id);
     if ($scholarities->count() > 0) {
         $selectScholarity = $dbJobScholarity->select()->from(array('js' => $dbJobScholarity), array(new Zend_Db_Expr('NULL')))->setIntegrityCheck(false)->where('js.fk_id_perscholarity = ps.fk_id_perscholarity')->where('js.fk_id_jobvacancy = ?', $id);
         $select->join(array('ps' => $dbPerScholarity), 'ps.fk_id_perdata = c.id_perdata', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectScholarity . ')'));
     }
     // Search By Training
     $trainings = $mapperVacancy->listTraining($id);
     if ($trainings->count() > 0) {
         $selectTraining = $dbJobTraining->select()->from(array('jt' => $dbJobTraining), array(new Zend_Db_Expr('NULL')))->where('jt.fk_id_perscholarity = pt.fk_id_perscholarity')->where('jt.fk_id_jobvacancy = ?', $id);
         $select->join(array('pt' => $dbPerScholarity), 'pt.fk_id_perdata = c.id_perdata', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectTraining . ')'));
     }
     // Search By Language
     $languages = $mapperVacancy->listLanguage($id);
     if ($languages->count() > 0) {
         $selectLanguage = $dbJobLanguage->select()->from(array('jl' => $dbJobLanguage), array(new Zend_Db_Expr('NULL')))->where('jl.fk_id_perlanguage = pl.fk_id_perlanguage')->where('jl.fk_id_jobvacancy = ?', $id);
         $select->join(array('pl' => $dbPerLanguage), 'pl.fk_id_perdata = c.id_perdata', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectLanguage . ')'));
     }
     // Search by handicapped
     $handicapped = $mapperVacancy->listHandicapped($id);
     if ($handicapped->count() > 0) {
         $selectHandicapped = $dbHandicapped->select()->from(array('hd' => $dbHandicapped), array(new Zend_Db_Expr('NULL')))->where('hd.fk_id_typehandicapped = ph.fk_id_typehandicapped')->where('hd.fk_id_jobvacancy = ?', $id);
         $select->join(array('ph' => $dbHandicapped), 'ph.fk_id_perdata = c.id_perdata', array())->where('EXISTS (?)', new Zend_Db_Expr('(' . $selectHandicapped . ')'));
     }
     $select->where('c.active = ?', 1)->where('c.hired = ?', 0)->group('id_perdata')->order(array('date_registration'));
     return $dbJobVacancy->fetchAll($select);
 }