Files
exchange-2.0/app/Classes/General/Eloquent/AbstractFetchRecord.php
T
2022-02-06 12:29:37 +08:00

38 lines
810 B
PHP

<?php
namespace App\Classes\General\Eloquent;
use App\Classes\Exceptions\ResourceNotFoundException;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Psy\Exception\ErrorException;
abstract class AbstractFetchRecord extends AbstractGetRecord
{
/**
* @param array|null $filters
* @return mixed
*/
public function execute(array $filters = []){
return $this->handler($filters);
}
/**
* @param Builder $query
* @return Model
* @throws ResourceNotFoundException
*/
public function getResults(Builder $query): Model {
if(!$query->exists()){
throw new ResourceNotFoundException('Unable to find any record based on the criteria provided');
}
return $query->first();
}
}