MemberLevel.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | Niucloud-admin 企业快速开发的saas管理平台
  4. // +----------------------------------------------------------------------
  5. // | 官方网址:https://www.niucloud.com
  6. // +----------------------------------------------------------------------
  7. // | niucloud团队 版权所有 开源版本可自由商用
  8. // +----------------------------------------------------------------------
  9. // | Author: Niucloud Team
  10. // +----------------------------------------------------------------------
  11. namespace app\model\member;
  12. use core\base\BaseModel;
  13. /**
  14. * 会员等级模型
  15. * Class MemberLevel
  16. * @package app\model\member
  17. */
  18. class MemberLevel extends BaseModel
  19. {
  20. /**
  21. * 数据表主键
  22. * @var string
  23. */
  24. protected $pk = 'level_id';
  25. /**
  26. * 模型名称
  27. * @var string
  28. */
  29. protected $name = 'member_level';
  30. protected $type = [
  31. 'level_benefits' => 'json',
  32. 'level_gifts' => 'json',
  33. 'style' => 'json'
  34. ];
  35. /**
  36. * 获取对应等级的会员数量
  37. * @param $value
  38. * @param $data
  39. * @return int
  40. * @throws DbException
  41. */
  42. public function getMemberNumAttr($value, $data)
  43. {
  44. if (isset($data[ 'level_id' ])) {
  45. return ( new Member() )->where([ [ 'member_level', "=", $data[ 'level_id' ] ] ])->count();
  46. } else
  47. return 0;
  48. }
  49. /**
  50. * 会员等级名称
  51. * @param $query
  52. * @param $value
  53. * @param $data
  54. */
  55. public function searchLevelNameAttr($query, $value, $data)
  56. {
  57. if ($value != '') {
  58. $query->where('level_name', 'like', '%'.$value.'%');
  59. }
  60. }
  61. }