Adjust find method

This commit is contained in:
Dennis Eichhorn 2017-04-14 21:04:17 +02:00
parent 3d77fd8e35
commit 8c53047ee4
2 changed files with 13 additions and 11 deletions

View File

@ -74,14 +74,14 @@ interface DataMapperInterface
/**
* Find data.
*
* @param array $columns Columns
* @param string $search Search
*
* @return Builder
* @return array
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public static function find(...$columns) : Builder;
public static function find(string $search) : array;
/**
* List data.

View File

@ -296,25 +296,27 @@ class DataMapperAbstract implements DataMapperInterface
/**
* Find data.
*
* @param array $columns Columns
* @param string $search Search for
*
* @return Builder
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public static function find(...$columns) : Builder
public static function find(string $search) : array
{
self::extend(__CLASS__);
if (count($columns) === 0) {
$columns = [static::$table . '.*'];
$query = static::getQuery();
foreach(static::$columns as $col) {
if(isset($col['autocomplete']) && $col['autocomplete']) {
$query->where($col['name'], 'LIKE', $search, 'OR');
}
}
$query = new Builder(self::$db);
$query->prefix(self::$db->getPrefix());
return $query->select(...$columns)->from(static::$table);
return static::getAllByQuery($query);
}
/**