/** * resolves identification * * @param \Abobereich\ApiClient\Models\Model|Account $model * @param array $data * * @return array|bool */ protected function resolveIdentification(Model $model, array $data) { if (!empty($model->getId())) { $data['account_id'] = $model->getId(); return $data; } if (!empty($model->getExternalIdentifier())) { $data['account_identifier'] = $model->getExternalIdentifier(); return $data; } return false; }
/** * resolves identification * * @param \Abobereich\ApiClient\Models\Model|Subscription $model * @param array $data * * @return array|bool */ protected function resolveIdentification(Model $model, array $data) { if (!empty($model->getId())) { $data['subscription_id'] = $model->getId(); return $data; } if (!empty($model->getExternalIdentifier())) { $data['subscription_identifier'] = $model->getExternalIdentifier(); return $data; } if (!empty($model->getSubscriptionNumber())) { $data['subscription_number'] = $model->getSubscriptionNumber(); return $data; } return false; }
/** * creates a model via api * * @param string $uri * @param \Abobereich\ApiClient\Models\Model|array $model * @param string $indexOfResponse * * @return Account|null */ protected function post($uri, $model, $indexOfResponse = 'data') { /** * reset id, created_at and updated_at to null, because a new model does not have any valid values there */ if ($model instanceof Model) { $model->setId(null); } $response = $this->postRequest($uri, $model); $result = $this->toArray($response); if (null !== $result && array_key_exists($indexOfResponse, $result)) { return $this->transformer()->transform($result[$indexOfResponse]); } return null; }