diff --git a/src/Contracts/RepositoryInterface.php b/src/Contracts/RepositoryInterface.php index 74a3652..05735a0 100644 --- a/src/Contracts/RepositoryInterface.php +++ b/src/Contracts/RepositoryInterface.php @@ -38,6 +38,13 @@ public function saveModel(array $data); */ public function update(array $data, $id); + /** + * @param array $searchData + * @param array $saveData + * @return mixed + */ + public function updateOrCreate(array $searchData, array $saveData = []); + /** * @param $id * @return mixed diff --git a/src/Eloquent/Repository.php b/src/Eloquent/Repository.php index c92ada1..9661bb9 100644 --- a/src/Eloquent/Repository.php +++ b/src/Eloquent/Repository.php @@ -119,6 +119,15 @@ public function update(array $data, $id, $attribute="id") { return $this->model->where($attribute, '=', $id)->update($data); } + /** + * @param array $searchData + * @param array $saveData + * @return mixed + */ + public function updateOrCreate(array $searchData, array $saveData = []) { + return $this->model->updateOrCreate($searchData, $saveData); + } + /** * @param array $data * @param $id