Пример #1
0
 /**
  * @param Customer $entity
  */
 protected function setDefaultGroup(Customer $entity)
 {
     if (!$entity->getGroup() && $entity->getWebsite()->getDefaultGroupId()) {
         $em = $this->strategyHelper->getEntityManager('OroCRMMagentoBundle:CustomerGroup');
         $group = $em->getRepository('OroCRMMagentoBundle:CustomerGroup')->findOneBy(['originId' => $entity->getWebsite()->getDefaultGroupId(), 'channel' => $entity->getChannel()]);
         $entity->setGroup($group);
     }
 }
Пример #2
0
 /**
  * @param $firstName
  * @param $lastname
  */
 protected function createCustomer($firstName, $lastname)
 {
     $customer = new Customer();
     $customer->setChannel($this->getReference('integration'));
     $customer->setDataChannel($this->getReference('default_channel'));
     $customer->setFirstName($firstName);
     $customer->setLastName($lastname);
     $customer->setEmail(strtolower($firstName . '_' . $lastname . '@example.com'));
     $customer->setIsActive(true);
     $customer->setWebsite($this->getReference('website'));
     $customer->setStore($this->getReference('store'));
     $customer->setAccount($this->getReference('account'));
     $customer->setGender(Gender::MALE);
     $customer->setGroup($this->getReference('customer_group'));
     $customer->setCreatedAt(new \DateTime('now'));
     $customer->setUpdatedAt(new \DateTime('now'));
     $customer->setOwner($this->user);
     $customer->setOrganization($this->organization);
     $this->em->persist($customer);
 }
Пример #3
0
 /**
  * @param                $oid
  * @param Account        $account
  * @param MagentoAddress $address
  *
  * @return Customer
  */
 protected function createCustomer($oid, Account $account, MagentoAddress $address)
 {
     $customer = new Customer();
     $customer->setChannel($this->integration);
     $customer->setDataChannel($this->channel);
     $customer->setFirstName('John');
     $customer->setLastName('Doe');
     $customer->setEmail('*****@*****.**');
     $customer->setOriginId($oid);
     $customer->setIsActive(true);
     $customer->setWebsite($this->website);
     $customer->setStore($this->store);
     $customer->setAccount($account);
     $customer->setGender(Gender::MALE);
     $customer->setGroup($this->customerGroup);
     $customer->setCreatedAt(new \DateTime('now'));
     $customer->setUpdatedAt(new \DateTime('now'));
     $customer->addAddress($address);
     $customer->setOwner($this->getUser());
     $customer->setOrganization($this->organization);
     $this->em->persist($customer);
     return $customer;
 }
Пример #4
0
 /**
  * @param                $oid
  * @param Account        $account
  * @param MagentoAddress $address
  *
  * @return Customer
  */
 protected function createCustomer($oid, Account $account, MagentoAddress $address)
 {
     $customer = new Customer();
     $customer->setChannel($this->integration);
     $customer->setDataChannel($this->channel);
     $customer->setFirstName('John');
     $customer->setLastName('Doe');
     $customer->setEmail('*****@*****.**');
     $customer->setOriginId($oid);
     $customer->setIsActive(true);
     $customer->setWebsite($this->website);
     $customer->setStore($this->store);
     $customer->setAccount($account);
     $customer->setGender(Gender::MALE);
     $customer->setGroup($this->customerGroup);
     // TODO: DateTimeZones should be removed in BAP-8710. Tests should be passed for:
     //  - OroCRM\Bundle\MagentoBundle\Tests\Functional\Controller\Api\Rest\CustomerControllerTest
     //  - OroCRM\Bundle\MagentoBundle\Tests\Functional\Controller\Api\Rest\MagentoCustomerControllerTest
     $customer->setCreatedAt(new \DateTime('now', new \DateTimezone('UTC')));
     $customer->setUpdatedAt(new \DateTime('now', new \DateTimezone('UTC')));
     $customer->addAddress($address);
     $customer->setOwner($this->getUser());
     $customer->setOrganization($this->organization);
     $this->em->persist($customer);
     return $customer;
 }
Пример #5
0
 protected function setGroup(Customer $object, array $data, $format = null, array $context = array())
 {
     /** @var CustomerGroup $group */
     $group = $this->denormalizeObject($data, 'group', MagentoConnectorInterface::CUSTOMER_GROUPS_TYPE, $format, $context);
     if ($group) {
         $group->setChannel($object->getChannel());
         $object->setGroup($group);
     }
 }