UserGroupDao.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2024 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\common\dao\user;
  12. use app\common\dao\BaseDao;
  13. use app\common\model\BaseModel;
  14. use app\common\model\user\UserGroup;
  15. use think\db\BaseQuery;
  16. /**
  17. * Class UserGroupDao
  18. * @package app\common\dao\user
  19. * @author xaboy
  20. * @day 2020-05-07
  21. */
  22. class UserGroupDao extends BaseDao
  23. {
  24. /**
  25. * @return BaseModel
  26. * @author xaboy
  27. * @day 2020-03-30
  28. */
  29. protected function getModel(): string
  30. {
  31. return UserGroup::class;
  32. }
  33. /**
  34. * 根据条件搜索用户组信息
  35. *
  36. * 本函数旨在通过提供的条件数组来搜索用户组数据。它不直接返回搜索结果,而是返回用于数据库操作的对象。
  37. * 这允许进一步的数据库操作,如筛选、排序或分页,以灵活地获取所需数据。
  38. *
  39. * @param array $where 搜索条件数组。默认为空数组,表示不适用任何条件。
  40. * 条件数组的键值对形式为字段名 => 值,用于构建SQL查询的WHERE子句。
  41. * @return UserGroup 返回UserGroup类的数据库操作对象,通过该对象可以执行进一步的数据库操作。
  42. */
  43. public function search(array $where = [])
  44. {
  45. return UserGroup::getDB();
  46. }
  47. /**
  48. * 获取所有用户组的名称
  49. *
  50. * 本函数旨在从用户组数据表中提取所有用户组的名称,以数组形式返回。
  51. * 这对于需要列出所有用户组名称的场景非常有用,比如在用户管理界面中显示用户组选项。
  52. *
  53. * @return array 返回一个包含所有用户组名称的数组
  54. */
  55. public function allOptions()
  56. {
  57. // 通过UserGroup类的静态方法getDB获取数据库连接对象,然后使用column方法提取'group_name'列的值
  58. return UserGroup::getDB()->column('group_name', 'group_id');
  59. }
  60. }