User.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. namespace app\admin\model;
  3. use think\Model;
  4. class User extends Model
  5. {
  6. protected $pk = 'user_id';
  7. public $page_info;
  8. public function uorder()
  9. {
  10. return $this->hasMany('Order', 'user_id', 'user_id');
  11. }
  12. //模糊查询时使用,返回地用户的ID数组
  13. public function getIdsByEmailLike($email)
  14. {
  15. $return = [] ;
  16. $ret = $this->field('user_id')->where(['user_email'=>['like', "%$email%"]])->select();
  17. if ($ret){
  18. foreach ($ret as $val){
  19. $return[] = $val->user_id;
  20. }
  21. }
  22. return $return ;
  23. }
  24. /**
  25. * 用户列表
  26. * @access public
  27. * @author csdeshang
  28. * @param array $condition 条件
  29. * @param string $field 字段
  30. * @param number $page 分页
  31. * @param string $order 排序
  32. * @return array
  33. */
  34. public function getUserList($condition = array(), $field = '*', $page = 0, $order = 'user_addTime desc')
  35. {
  36. if ($page) {
  37. $user_list = db('user')
  38. ->alias('a')
  39. ->join('userinfo b','b.user_id = a.user_id')
  40. ->where($condition)
  41. ->order($order)
  42. ->paginate($page, false, ['query' => request()->param()]);
  43. $this->page_info = $user_list;
  44. return $user_list->items();
  45. } else {
  46. return db('user')->where($condition)->order($order)->select();
  47. }
  48. }
  49. /**
  50. * 取单个用户
  51. */
  52. public function getUserInfo($user_id)
  53. {
  54. $userinfo = db('user')
  55. ->alias('a')
  56. ->join('userinfo b','b.user_id = a.user_id')
  57. ->where('b.user_id',$user_id)
  58. ->find();
  59. return $userinfo;
  60. }
  61. }