UserSearch.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace catchAdmin\permissions\model\search;
  3. use catchAdmin\permissions\model\Department;
  4. trait UserSearch
  5. {
  6. public function searchUsernameAttr($query, $value, $data)
  7. {
  8. return $query->whereLike('username', $value);
  9. }
  10. public function searchEmailAttr($query, $value, $data)
  11. {
  12. return $query->whereLike('email', $value);
  13. }
  14. public function searchStatusAttr($query, $value, $data)
  15. {
  16. return $query->where($this->aliasField('status'), $value);
  17. }
  18. /**
  19. * 查询部门下的用户
  20. *
  21. * @time 2020年11月04日
  22. * @param $query
  23. * @param $value
  24. * @param $data
  25. * @throws \think\db\exception\DataNotFoundException
  26. * @throws \think\db\exception\DbException
  27. * @throws \think\db\exception\ModelNotFoundException
  28. * @return mixed
  29. */
  30. public function searchDepartmentIdAttr($query, $value, $data)
  31. {
  32. return $query->whereIn($this->aliasField('department_id'), Department::getChildrenDepartmentIds($value));
  33. }
  34. }