Files
portal-api/app/Repositories/Api/BaseApiRepository.php
T
2026-09-28 08:26:29 +07:00

62 lines
1.1 KiB
PHP

<?php
namespace App\Repositories\Api;
use App\Repositories\BaseRepositoryInterface;
abstract class BaseApiRepository implements BaseRepositoryInterface
{
protected $model;
public function __construct()
{
$this->setModel();
}
abstract public function getModel();
protected function setModel()
{
$this->model = app()->make($this->getModel());
return $this;
}
public function create(array $data = [])
{
return $this->model->create($data);
}
public function find($id)
{
return $this->model->find($id);
}
public function insert(array $data = [])
{
return $this->model->insert($data);
}
public function update(int $id = 0, array $data = [])
{
$result = $this->find($id);
if ($result) {
$result->update($data);
return $result;
}
return false;
}
public function delete($id)
{
$result = $this->find($id);
if ($result) {
$result->delete();
return true;
}
return false;
}
}