UserBuddy.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace app\user\model;
  3. use think\Model;
  4. class UserBuddy extends Model {
  5. const Friend = 1;
  6. const Apply = 0;
  7. /**
  8. * 查找好友列表
  9. * @param int $user
  10. * @return array|\think\db\false|PDOStatement|string|\think\Model
  11. */
  12. public function findUserBuddy($user){
  13. return $this->db()->alias("b")
  14. ->field("u.id i, u.nickname n, u.praise p, u.robot r")
  15. ->join("gd_user u", "u.id = b.user_id", "LEFT")
  16. ->where(['b.user_id'=>$user, 'b.status'=>Friend])
  17. ->select();
  18. }
  19. /**
  20. * 找到好友
  21. * @param int $user
  22. * @param int $buddy
  23. * @return array|\think\db\false|PDOStatement|string|\think\Model
  24. */
  25. public function getBuddy($user, $buddy){
  26. return $this->db()->where(['user_id'=>$user, 'buddy_id'=>$buddy])->find();
  27. // return $this->db()->alias("b")
  28. // ->field("u.id, u.nickname, u.praise, u.robot")
  29. // ->join("gd_user u", "u.id = b.user_id", "LEFT")
  30. // ->where(['user_id'=>$user, 'buddy_id'=>$buddy])
  31. // ->find();
  32. }
  33. /**
  34. * 好友列表数量
  35. * @param int $user
  36. * @return number|string
  37. */
  38. public function getBuddyCount($user){
  39. return $this->db()->where(['user_id'=>$user, 'status'=>UserBuddy::Friend])->count();
  40. }
  41. public function remove($data){
  42. return $this->db()->delete($data);
  43. }
  44. public function addAndSave($data){
  45. return $this->allowField(true)->isUpdate((isset($data['id']) && $data['id'])?true:false)->save($data);
  46. }
  47. public function saveAllInfo($data){
  48. return $this->saveAll($data);
  49. }
  50. }