Example #1
0
 public function addMultiple(OrdersCollection $ordersCollection)
 {
     $payload = $ordersCollection->toPost();
     $response = $this->connection->post('/Orders/Import', $payload);
     $body = $response->getBody();
     $ordersResponse = null;
     if (!empty($body['ErrorCode'])) {
         $ordersResponse = new ErrorResponse();
         $ordersResponse->setErrorCode($body['ErrorCode'])->setMessage($body['Message'])->setIsError(true);
     } else {
         $ordersResponse = new OrdersResponse();
         if (!empty($body['Failures'])) {
             foreach ($body['Failures'] as $failure) {
                 $orderError = new OrderError();
                 $orderError->setEmailAddress($failure['EmailAddress'])->setOrderNumber($failure['OrderNumber'])->setErrorCode($failure['ErrorCode'])->setMessage($failure['Message']);
                 $ordersResponse->addError($orderError);
             }
         }
         $ordersResponse->setOrdersSubmitted($body['OrdersSubmitted'])->setSuccesses($body['Successes']);
     }
     return $ordersResponse;
 }