public function hasMuniSubstitution(CeModel $parentModel, Subclass $subclass, User $user)
 {
     $qb = $this->createQueryBuilder("s");
     /*if($user->hasRole('ROLE_RIA') || $user->hasRole('ROLE_SUPER_ADMIN')){
           $qb->where("s.ria_user_id IS NULL");
       }else{
           $qb->where("s.ria_user_id = :ria_user_id")->setParameter("ria_user_id", $user->getId());
       }*/
     $qb->andWhere("s.model_id = :model_id")->andWhere("s.subclass_id = :subclass_id")->andWhere("s.muni_substitution = 1")->setParameter("model_id", $parentModel->getId())->setParameter("subclass_id", $subclass->getId())->setMaxResults(1);
     return $qb->getQuery()->getOneOrNullResult();
 }
Example #2
0
 public function load(ObjectManager $manager)
 {
     foreach ($this->subclasses as $index => $item) {
         $assetClass = $this->getReference('asset-class-' . $item['asset_class_index']);
         $accountType = $this->getReference('subclass-account-type-' . $item['account_type_index']);
         $subclass = new Subclass();
         $subclass->setName($item['name']);
         $subclass->setExpectedPerformance($item['expected_performance']);
         $subclass->setAssetClass($assetClass);
         $subclass->setAccountType($accountType);
         $manager->persist($subclass);
         $this->addReference('subclass-' . ($index + 1), $subclass);
     }
     $manager->flush();
 }
Example #3
0
 private function createCategories(User $riaUser)
 {
     $categories = array();
     foreach ($this->categories as $category) {
         $asset = new AssetClass();
         $asset->setName($category['name']);
         $asset->setType($category['type']);
         foreach ($category['subclasses'] as $item) {
             $subclass = new Subclass();
             $subclass->setOwner($riaUser);
             $subclass->setAssetClass($asset);
             $subclass->setName($item['name']);
             $subclass->setExpectedPerformance($item['expected_performance']);
             $subclass->setAccountType($this->getReference('subclass-account-type-' . $item['account_type_index']));
             $subclass->setPriority($item['priority']);
             $subclass->setToleranceBand($item['tolerance_band']);
             $asset->addSubclasse($subclass);
         }
         $categories[] = $asset;
     }
     return $categories;
 }
Example #4
0
 /**
  * Save Client Subclasses
  * This method is needed for save a snapshot of RIA subclasses.
  *
  * @param User $client
  * @param User $ria
  * @throws EntityNotFoundException
  */
 public function saveClientSubclasses(User $client, User $ria)
 {
     $em = $this->getEntityManager();
     $selectedModel = $ria->getRiaCompanyInformation()->getPortfolioModel();
     //$riaSubClasses = $this->findDefaultsByModelId($selectedModel);
     $riaSubClasses = $this->findRiaSubclasses($ria->getId());
     if (!$riaSubClasses) {
         $riaSubClasses = $this->findDefaultsByModelId($selectedModel);
     }
     // When subclasses for RIA are defined in system ?
     if (!$riaSubClasses) {
         throw new EntityNotFoundException("Ria doesn't have subclasses, logic error please check!");
     }
     foreach ($riaSubClasses as $riaSubClass) {
         $clientSubClass = new Subclass();
         $clientSubClass->setAssetClass($riaSubClass->getAssetClass());
         $clientSubClass->setAccountType($riaSubClass->getAccountType());
         $clientSubClass->setOwner($client);
         $clientSubClass->setSource($riaSubClass);
         $clientSubClass->setName($riaSubClass->getName());
         $clientSubClass->setExpectedPerformance($riaSubClass->getExpectedPerformance());
         /** @var Subclass $riaSubClass */
         foreach ($riaSubClass->getSecurityAssignments() as $securityAssignment) {
             $newSecurityAssignment = new SecurityAssignment();
             $newSecurityAssignment->setIsPreferred($securityAssignment->getIsPreferred());
             $newSecurityAssignment->setModel($clientSubClass->getAssetClass()->getModel());
             $newSecurityAssignment->setMuniSubstitution($securityAssignment->getMuniSubstitution());
             //$newSecurityAssignment->setRia($ria); Deprecated
             $newSecurityAssignment->setSecurity($securityAssignment->getSecurity());
             $newSecurityAssignment->setSecurityTransaction($securityAssignment->getSecurityTransaction());
             $newSecurityAssignment->setSubclass($clientSubClass);
             $em->persist($newSecurityAssignment);
         }
         $em->persist($clientSubClass);
     }
     $em->flush();
 }