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
|
|
|
}
|
|
|
|
}
|