Ejemplo n.º 1
1
 /**
  * Update or Create an entity in repository
  *
  * @throws ValidatorException
  *
  * @param array $attributes
  * @param array $values
  *
  * @return mixed
  */
 public function updateOrCreate(array $attributes, array $values = [])
 {
     $this->applyScope();
     if (!is_null($this->validator)) {
         $this->validator->with($attributes)->passesOrFail(ValidatorInterface::RULE_UPDATE);
     }
     $temporarySkipPresenter = $this->skipPresenter;
     $this->skipPresenter(true);
     $model = $this->model->updateOrCreate($attributes, $values);
     $this->skipPresenter($temporarySkipPresenter);
     $this->resetModel();
     event(new RepositoryEntityUpdated($this, $model));
     return $this->parserResult($model);
 }
Ejemplo n.º 2
0
 /**
  * @param Request $request
  * @return mixed
  */
 public function update(ApiRequest $request)
 {
     if ($this->validator->with(array_merge($request->input(), ['uid' => $request->pool]))->fails(ValidatorInterface::RULE_UPDATE)) {
         throw new \Dingo\Api\Exception\StoreResourceFailedException('Could not create new pool.', $this->validator->errors());
     }
     $pool_id = $this->repository->findByUid($request->pool)->id;
     $item = $this->repository->update(['title' => $request->title, 'description' => $request->description, 'quota' => $request->quota], $pool_id);
     $this->syncPoolPermissins($request, $item);
     return $this->response->item($item, new PoolTransformer());
 }
Ejemplo n.º 3
0
 /**
  * @param Request $request
  * @return mixed
  */
 public function restore(ApiRequest $request)
 {
     if ($this->validator->with(array_merge($request->input(), ['uid' => $request->uid]))->fails(ValidatorInterface::RULE_UPDATE)) {
         throw new \Dingo\Api\Exception\UpdateResourceFailedException('Could not restore file.', $this->validator->errors());
     }
     $this->repository->restore($request->uid);
     return $this->successRestored();
 }
Ejemplo n.º 4
0
 /**
  * Update a entity in repository by id.
  *
  * @param array $attributes
  * @param $id
  *
  * @return mixed
  */
 public function update(array $attributes, $id)
 {
     if ($this->validator !== null) {
         $this->validator->with($attributes)->setId($id)->passOrFail(ValidatorInterface::RULE_UPDATE);
     }
     $_skipPresenter = $this->skipPresenter;
     $this->skipPresenter(true);
     $model = $this->find($id);
     $model->fill($attributes);
     $model->save();
     $this->skipPresenter($_skipPresenter);
     $this->makeModel();
     return $this->parseResult($model);
 }
Ejemplo n.º 5
0
 /**
  * Update a entity in repository by id
  *
  * @throws ValidatorException
  * @param array $attributes
  * @param $id
  * @return mixed
  */
 public function update(array $attributes, $id)
 {
     if (!is_null($this->validator)) {
         $this->validator->with($attributes)->setId($id)->passesOrFail(ValidatorInterface::RULE_UPDATE);
     }
     $_skipPresenter = $this->skipPresenter;
     $this->skipPresenter(true);
     $model = $this->model->findOrFail($id);
     $model->fill($attributes);
     $model->save();
     $this->skipPresenter($_skipPresenter);
     $this->resetModel();
     event(new RepositoryEntityUpdated($this, $model));
     return $this->parserResult($model);
 }