/** * Saving Job Category * @param JobCategory $jobCategory * @returns boolean * @throws DaoException, DataDuplicationException */ public function saveJobCategory(JobCategory $jobCategory) { try { $q = Doctrine_Query::create()->from('JobCategory j')->where('j.eec_desc = ?', $jobCategory->getEecDesc()); if (!empty($jobCategory->eec_code)) { $q->andWhere('j.eec_code <> ?', $jobCategory->eec_code); } if ($q->count() > 0) { throw new DataDuplicationException(); } if ($jobCategory->getEecCode() == '') { $idGenService = new IDGeneratorService(); $idGenService->setEntity($jobCategory); $jobCategory->setEecCode($idGenService->getNextID()); } $jobCategory->save(); return true; } catch (Doctrine_Exception $e) { throw new DaoException($e->getMessage()); } }