Ejemplo n.º 1
0
 /**
  * 
  */
 public function notifyJobVacancyExpired()
 {
     $dbAdapter = Zend_Db_Table_Abstract::getDefaultAdapter();
     $dbAdapter->beginTransaction();
     try {
         // Search all the expired job vacancy
         $jobVacancyMapper = new Job_Model_Mapper_JobVacancy();
         $selectJob = $jobVacancyMapper->getSelectVacancy();
         $selectJob->where('jv.active = ?', 1)->where('jv.close_date < ?', Zend_Date::now()->toString('yyyy-MM-dd'));
         $dbJobVacancy = App_Model_DbTable_Factory::get('JOBVacancy');
         $rows = $dbJobVacancy->fetchAll($selectJob);
         // Search the user who must receive notes when job vacancy are expired
         $noteTypeMapper = new Admin_Model_Mapper_NoteType();
         $users = $noteTypeMapper->getUsersByNoteType(Admin_Model_Mapper_NoteType::JOB_EXPIRED);
         $noteModelMapper = new Default_Model_Mapper_NoteModel();
         $noteMapper = new Default_Model_Mapper_Note();
         $userMapper = new Admin_Model_Mapper_SysUser();
         $ceopsUser = array();
         foreach ($rows as $row) {
             $usersWarning = $users;
             if (empty($ceopsUser[$row->fk_id_dec])) {
                 // Search all the users from the same CEOP
                 $usersCeop = $userMapper->listAll($row->fk_id_dec);
                 foreach ($usersCeop as $userCeop) {
                     $ceopsUser[$row->fk_id_dec][] = $userCeop->id_sysuser;
                 }
                 $usersWarning += $ceopsUser[$row->fk_id_dec];
             } else {
                 $usersWarning += $ceopsUser[$row->fk_id_dec];
             }
             $dataNote = array('title' => 'VAGA EMPREGU LORON TAKA LIU TIHA ONA', 'level' => 0, 'message' => $noteModelMapper->getJobExpired($row->id_jobvacancy), 'users' => $usersWarning);
             $noteMapper->setData($dataNote)->saveNote();
         }
         $dbAdapter->commit();
         return true;
     } catch (Exception $e) {
         $dbAdapter->rollBack();
         echo "Error sending job vacancy expired notifications: " . $e->getMessage() . "\n";
         return false;
     }
 }
Ejemplo n.º 2
0
 /**
  *
  * @return array
  */
 public function registerReport()
 {
     $mapperVacancy = new Job_Model_Mapper_JobVacancy();
     $select = $mapperVacancy->getSelectVacancy();
     $dbVacancy = App_Model_DbTable_Factory::get('JOBVacancy');
     $date = new Zend_Date();
     $filters = $this->_data;
     $select->where('jv.active = ?', (int) $filters['active']);
     if (!empty($filters['fk_id_profocupation'])) {
         $select->where('jv.fk_id_profocupation = ?', $filters['fk_id_profocupation']);
     }
     if (!empty($filters['fk_id_fefpenterprise'])) {
         $select->where('jv.fk_id_fefpenterprise = ?', $filters['fk_id_fefpenterprise']);
     }
     if (!empty($filters['date_start'])) {
         $select->where('jv.open_date >= ?', $date->set($filters['date_start'])->toString('yyyy-MM-dd'));
     }
     if (!empty($filters['date_finish'])) {
         $select->where('jv.close_date <= ?', $date->set($filters['date_finish'])->toString('yyyy-MM-dd'));
     }
     if (!empty($filters['fk_id_dec'])) {
         $select->where('jv.fk_id_dec = ?', $filters['fk_id_dec']);
     }
     $rows = $dbVacancy->fetchAll($select);
     return array('rows' => $rows);
 }
Ejemplo n.º 3
0
 /**
  *
  * @param int $barrier
  * @return Zend_Db_Table_Rowset
  */
 public function listJobIntervention($intervention, $case)
 {
     $mapperVacancy = new Job_Model_Mapper_JobVacancy();
     $selectVacancy = $mapperVacancy->getSelectVacancy();
     $dbActionPlanBarrier = App_Model_DbTable_Factory::get('Action_Plan_Barrier');
     $dbActionPlanReferences = App_Model_DbTable_Factory::get('Action_Plan_References');
     $dbActionpPlanHasGroup = App_Model_DbTable_Factory::get('Action_Plan_has_Group');
     $selectVacancy->join(array('apr' => $dbActionPlanReferences), 'apr.fk_id_jobvacancy = jv.id_jobvacancy', array())->join(array('apb' => $dbActionPlanBarrier), 'apb.id_action_barrier = apr.fk_id_action_barrier', array())->join(array('apg' => $dbActionpPlanHasGroup), 'apg.fk_id_action_plan = apb.fk_id_action_plan', array())->where('apg.fk_id_action_plan_group = ?', $case)->where('apb.fk_id_barrier_intervention = ?', $intervention)->group(array('id_jobvacancy'));
     return $dbActionPlanReferences->fetchAll($selectVacancy);
 }
Ejemplo n.º 4
0
    /**
     *
     * @param int $id
     * @return Zend_Db_Table_Rowset
     */
    public function listJobBarriers($id)
    {
        $mapperVacancy = new Job_Model_Mapper_JobVacancy();
        $selectVacancy = $mapperVacancy->getSelectVacancy();
        $dbActionPlanReferences = App_Model_DbTable_Factory::get('Action_Plan_References');
        $dbHired = App_Model_DbTable_Factory::get('Hired');
        $selectVacancy->join(array('apr' => $dbActionPlanReferences), 'apr.fk_id_jobvacancy = jv.id_jobvacancy', array())->joinLeft(array('h' => $dbHired), 'h.fk_id_jobvacancy = jv.id_jobvacancy
			    AND h.fk_id_perdata = apr.fk_id_perdata', array('hired' => 'id_relationship'))->where('apr.fk_id_action_barrier = ?', $id);
        return $dbActionPlanReferences->fetchAll($selectVacancy);
    }