/** * @param Partner $partner * @return bool */ protected function isAccountHasPartner(Partner $partner) { $queryBuilder = $this->entityManager->getRepository('OroCRMPartnerBundle:Partner')->createQueryBuilder('partner')->select('COUNT(partner)')->where('partner.account = :account')->setParameter('account', $partner->getAccount())->setMaxResults(1); if ($partner->getId()) { $queryBuilder->andWhere('partner != :partner')->setParameter('partner', $partner); } return (bool) $queryBuilder->getQuery()->getSingleScalarResult(); }
/** * @param Partner $partner */ public function soapInit($partner) { $this->id = $partner->getId(); $this->startDate = $partner->getStartDate(); $this->partnerCondition = $partner->getPartnerCondition(); $this->status = $partner->getStatus() ? $partner->getStatus()->getName() : null; $this->owner = $partner->getOwner() ? $partner->getOwner()->getId() : null; $this->account = $partner->getAccount() ? $partner->getAccount()->getId() : null; }
public function testRemoveGitHubAccount() { $account = $this->getMock('OroCRM\\Bundle\\PartnerBundle\\Entity\\GitHubAccount'); $account->expects($this->once())->method('setPartner')->with($this->partner); $this->partner->addGitHubAccount($account); $this->partner->removeGitHubAccount(null); $actual = $this->partner->getGitHubAccounts(); $this->assertCount(1, $actual); $this->partner->removeGitHubAccount($account); $this->assertCount(0, $actual); }
/** * @param string $key * @param Partner $entity */ public function fillEntityData($key, $entity) { $userRepo = $this->templateManager->getEntityRepository('Oro\\Bundle\\UserBundle\\Entity\\User'); $accountRepo = $this->templateManager->getEntityRepository('OroCRM\\Bundle\\AccountBundle\\Entity\\Account'); $organizationRepo = $this->templateManager->getEntityRepository('Oro\\Bundle\\OrganizationBundle\\Entity\\Organization'); switch ($key) { case 'Smith': $entity->setId(1)->setPartnerCondition('Aenean commodo ligula eget dolor')->setStartDate(new \DateTime())->setStatus(new PartnerStatus('active'))->setAccount($accountRepo->getEntity($key))->setOwner($userRepo->getEntity('John Doo'))->setOrganization($organizationRepo->getEntity('default')); return; } parent::fillEntityData($key, $entity); }
public function load(ObjectManager $manager) { $adminUser = $manager->getRepository('OroUserBundle:User')->findOneByUsername('admin'); $partner = new Partner(); $partner->setAccount($this->getReference('orocrm_partner:test_account_2')); $partner->setOwner($adminUser); $manager->persist($partner); $manager->flush(); $this->addReference('orocrm_partner:test_partner_1', $partner); $partner = new Partner(); $partner->setAccount($this->getReference('orocrm_partner:test_account_3')); $partner->setOwner($adminUser); $manager->persist($partner); $manager->flush(); $this->addReference('orocrm_partner:test_partner_2', $partner); }
/** * {@inheritDoc} */ public function load(ObjectManager $objectManager) { $accounts = $this->getAccountsWithoutPartners($objectManager, count(self::$fixtureConditions)); if (!$accounts) { return; } $users = $objectManager->getRepository('OroUserBundle:User')->findAll(); $statuses = $objectManager->getRepository('OroCRMPartnerBundle:PartnerStatus')->findAll(); $usersCount = count($users); $statusesCount = count($statuses); $organization = $this->getReference('default_organization'); foreach ($accounts as $index => $account) { $partner = new Partner(); $partner->setAccount($account); $partner->setOwner($users[rand(0, $usersCount - 1)]); $partner->setStatus($statuses[rand(0, $statusesCount - 1)]); $partner->setPartnerCondition(self::$fixtureConditions[$index]); $partner->setOrganization($organization); $objectManager->persist($partner); } $objectManager->flush(); }
/** * @Route("/widget/partner-github-accounts/{id}", * name="orocrm_partner_github_accounts_widget", * requirements={"id"="\d+"} * ) * @AclAncestor("orocrm_partner_view") * @Template("OroCRMPartnerBundle:GitHubAccount:gitHubAccounts.html.twig") */ public function partnerGitHubAccountsAction(Partner $partner) { return array('gitHubAccounts' => $partner->getGitHubAccounts()); }