Esempio n. 1
0
 /**
  * @param \Generated\Shared\Transfer\AddressTransfer $addressTransfer
  * @param \Generated\Shared\Transfer\CustomerTransfer $customerTransfer
  *
  * @return void
  */
 protected function processCustomerAddress(AddressTransfer $addressTransfer, CustomerTransfer $customerTransfer)
 {
     $addressTransfer->setFkCustomer($customerTransfer->getIdCustomer());
     if ($addressTransfer->getIdCustomerAddress() === null) {
         $this->address->createAddressAndUpdateCustomerDefaultAddresses($addressTransfer);
     } else {
         $this->address->updateAddressAndCustomerDefaultAddresses($addressTransfer);
     }
 }
Esempio n. 2
0
 /**
  * @param \Symfony\Component\HttpFoundation\Request $request
  *
  * @return \Symfony\Component\HttpFoundation\JsonResponse
  */
 public function addressAction(Request $request)
 {
     $form = $this->getFactory()->createAddressForm($request);
     if ($form->isValid() === true) {
         $addressTransfer = new AddressTransfer();
         $addressTransfer->fromArray($form->getRequestData());
         if ($addressTransfer->getIdCustomerAddress()) {
             $this->getFacade()->updateAddress($addressTransfer);
             return $this->jsonResponse($form->renderData());
         }
         $this->getFacade()->createAddress($addressTransfer);
     }
     return $this->jsonResponse($form->renderData());
 }
Esempio n. 3
0
 /**
  * @param \Generated\Shared\Transfer\AddressTransfer $addressTransfer
  *
  * @return bool
  */
 protected function isValidAddressTransfer(AddressTransfer $addressTransfer)
 {
     return empty($addressTransfer->getIdCustomerAddress()) === false && $addressTransfer->getFkCustomer() !== null;
 }
Esempio n. 4
0
 /**
  * @param \Generated\Shared\Transfer\AddressTransfer $addressTransfer
  * @param \Orm\Zed\Customer\Persistence\SpyCustomer $customerEntity
  *
  * @return void
  */
 protected function updateCustomerDefaultAddresses(AddressTransfer $addressTransfer, SpyCustomer $customerEntity)
 {
     if ($customerEntity->getDefaultBillingAddress() === null || $addressTransfer->getIsDefaultBilling()) {
         $customerEntity->setDefaultBillingAddress($addressTransfer->getIdCustomerAddress());
     }
     if ($customerEntity->getDefaultShippingAddress() === null || $addressTransfer->getIsDefaultShipping()) {
         $customerEntity->setDefaultShippingAddress($addressTransfer->getIdCustomerAddress());
     }
     $customerEntity->save();
 }