public function termDocumentValueObject(TermDocument $termDocument) { $returnVal = array(); switch ($termDocument->getType()) { case TermDocument::TYPE_SPECIALIZATION: $documentObj = $this->treatmentBundleService->getSpecialization($termDocument->getDocumentId()); $returnVal = array('name' => $documentObj->getName(), 'url' => $this->router->generate('admin_specialization_edit', array('id' => $documentObj->getId()))); break; case TermDocument::TYPE_SUBSPECIALIZATION: $documentObj = $this->treatmentBundleService->getSubSpecialization($termDocument->getDocumentId()); $returnVal = array('name' => $documentObj->getName(), 'url' => $this->router->generate('admin_subSpecialization_edit', array('id' => $documentObj->getId()))); break; case TermDocument::TYPE_TREATMENT: $documentObj = $this->treatmentBundleService->getTreatment($termDocument->getDocumentId()); $returnVal = array('name' => $documentObj->getName(), 'url' => $this->router->generate('admin_treatment_edit', array('id' => $documentObj->getId()))); break; } return $returnVal; }
/** * * @param Treatment $treatment * @return \HealthCareAbroad\TermBundle\Entity\Term */ private function createTermFromTreatment(Treatment $treatment) { // check first if this term already exists $term = $this->termRepository->findOneByName($treatment->getName()); if (!$term) { // term does not exist $term = new Term(); $term->setName($treatment->getName()); } // create new term document $termDocument = new TermDocument(); $termDocument->setDocumentId($treatment->getId()); $termDocument->setTerm($term); $termDocument->setType(TermDocument::TYPE_TREATMENT); $term->setInternal(true); $term->addTermDocument($termDocument); return $term; }
/** * Helper function to create document object * NB: maybe this does not fit here... * * @param int $documentId * @param int $type */ public function createDocumentObject(TermDocument $termDocument) { return $this->createDocumentObjectFromDocumentIdAndType($termDocument->getDocumentId(), $termDocument->getType()); }