Admin.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. /**
  3. * @package merchant
  4. *
  5. * @author xaboy
  6. * @day 2020-03-24
  7. *
  8. *
  9. */
  10. namespace app\common\model\system\admin;
  11. use app\common\model\BaseModel;
  12. use app\common\model\system\auth\Role;
  13. class Admin extends BaseModel
  14. {
  15. /**
  16. * @return string
  17. * @author xaboy
  18. * @day 2020-03-30
  19. */
  20. public static function tablePk(): string
  21. {
  22. return 'admin_id';
  23. }
  24. /**
  25. * @return string
  26. * @author xaboy
  27. * @day 2020-03-30
  28. */
  29. public static function tableName(): string
  30. {
  31. return 'system_admin';
  32. }
  33. /**
  34. * @param $value
  35. * @return array
  36. * @author xaboy
  37. * @day 2020-03-30
  38. */
  39. public function getRolesAttr($value)
  40. {
  41. return array_map('intval', explode(',', $value));
  42. }
  43. /**
  44. * @param $value
  45. * @return string
  46. * @author xaboy
  47. * @day 2020-03-30
  48. */
  49. public function setRolesAttr($value)
  50. {
  51. return implode(',', $value);
  52. }
  53. /**
  54. * @param bool $isArray
  55. * @return array|string
  56. * @author xaboy
  57. * @day 2020-04-09
  58. */
  59. public function roleNames($isArray = false)
  60. {
  61. $roleNames = Role::getDB()->whereIn('role_id', $this->roles)->column('role_name');
  62. return $isArray ? $roleNames : implode(',', $roleNames);
  63. }
  64. }