Index.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\controller\Api;
  4. use think\Db;
  5. use think\Cache;
  6. /**
  7. * 首页接口
  8. */
  9. class Index extends Api
  10. {
  11. protected $noNeedLogin = ['index'];
  12. protected $noNeedRight = ['*'];
  13. public function index(){
  14. echo 'apisuccess';
  15. exit;
  16. }
  17. //精选
  18. public function jingxuan(){
  19. $keyworld = input('keyworld','');
  20. $where = [
  21. 'user.id' => ['neq',$this->auth->id],
  22. 'user.status' => 1,
  23. 'user.gender' => ['neq',$this->auth->gender],
  24. ];
  25. if(!empty($keyworld)){
  26. $where['user.username|nickname'] = ['LILE','%'.$keyworld.'%'];
  27. }
  28. //排除黑名单的
  29. $where_black = [];
  30. $black_ids = Db::name('user_black')->where(['uid'=>$this->auth->id])->column('black_uid');
  31. if(!empty($black_ids)){
  32. $where_black['user.id'] = ['NOTIN',$black_ids];
  33. }
  34. $field = [
  35. 'user.id',
  36. 'user.username',
  37. 'user.nickname',
  38. 'user.avatar',
  39. 'user.idcard_status',
  40. 'user.real_status',
  41. 'user.photo_images',
  42. 'user.gender',
  43. 'user.birthday',
  44. 'user.is_active',
  45. 'wallet.vip_endtime',
  46. 'active.requesttime',
  47. ];
  48. $list = Db::name('user')->alias('user')->field($field)
  49. ->join('user_wallet wallet','user.id = wallet.user_id','LEFT')
  50. ->join('user_active active' ,'user.id = active.user_id','LEFT')
  51. ->where($where)
  52. ->where($where_black)
  53. ->order('user.is_active desc,user.id desc')
  54. ->autopage()
  55. ->select();
  56. $list = list_domain_image($list,['avatar','photo_images']);
  57. foreach($list as $key => &$val){
  58. $val['age'] = birthtime_to_age($val['birthday']);
  59. $val['is_vip'] = $val['vip_endtime'] > time() ? 1 : 0;
  60. $val['active_info'] = $this->user_activeinfo($val['id'],$val['requesttime']);
  61. }
  62. $this->success(1,$list);
  63. }
  64. //新人
  65. public function xinren(){
  66. $keyworld = input('keyworld','');
  67. $where = [
  68. 'user.id' => ['neq',$this->auth->id],
  69. 'user.status' => 1,
  70. 'user.gender' => ['neq',$this->auth->gender],
  71. ];
  72. if(!empty($keyworld)){
  73. $where['user.username|nickname'] = ['LILE','%'.$keyworld.'%'];
  74. }
  75. //排除黑名单的
  76. $where_black = [];
  77. $black_ids = Db::name('user_black')->where(['uid'=>$this->auth->id])->column('black_uid');
  78. if(!empty($black_ids)){
  79. $where_black['user.id'] = ['NOTIN',$black_ids];
  80. }
  81. $field = [
  82. 'user.id',
  83. 'user.username',
  84. 'user.nickname',
  85. 'user.avatar',
  86. 'user.idcard_status',
  87. 'user.real_status',
  88. 'user.photo_images',
  89. 'user.gender',
  90. 'user.birthday',
  91. 'user.is_active',
  92. 'wallet.vip_endtime',
  93. 'active.requesttime',
  94. ];
  95. $list = Db::name('user')->alias('user')->field($field)
  96. ->join('user_wallet wallet','user.id = wallet.user_id','LEFT')
  97. ->join('user_active active' ,'user.id = active.user_id','LEFT')
  98. ->where($where)
  99. ->where($where_black)
  100. ->order('user.is_active desc,user.id desc')
  101. ->autopage()
  102. ->select();
  103. $list = list_domain_image($list,['avatar','photo_images']);
  104. foreach($list as $key => &$val){
  105. $val['age'] = birthtime_to_age($val['birthday']);
  106. $val['is_vip'] = $val['vip_endtime'] > time() ? 1 : 0;
  107. $val['active_info'] = $this->user_activeinfo($val['id'],$val['requesttime']);
  108. }
  109. $this->success(1,$list);
  110. }
  111. }