30 lines
789 B
PHP
Raw Normal View History

2020-04-29 17:37:45 +08:00
<?php
namespace catchAdmin\permissions\model\search;
2020-09-08 14:36:32 +08:00
use catchAdmin\permissions\model\Department;
2020-04-29 17:37:45 +08:00
trait UserSearch
{
public function searchUsernameAttr($query, $value, $data)
{
return $query->whereLike('username', $value);
}
public function searchEmailAttr($query, $value, $data)
{
return $query->whereLike('email', $value);
}
public function searchStatusAttr($query, $value, $data)
{
return $query->where($this->aliasField('status'), $value);
}
public function searchDepartmentIdAttr($query, $value, $data)
{
2020-09-08 14:36:32 +08:00
$departmentIds = Department::where('parent_id', $value)->column('id');
$departmentIds[] = $value;
return $query->whereIn($this->aliasField('department_id'), $departmentIds);
2020-04-29 17:37:45 +08:00
}
}