UserTrait.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: wangzhiqiang
  5. * Date: 2019/5/5
  6. * Time: 17:11
  7. */
  8. namespace App\Traits;
  9. use Illuminate\Support\Facades\Log;
  10. use Illuminate\Support\Facades\Redis;
  11. use Tymon\JWTAuth\Facades\JWTAuth;
  12. trait UserTrait
  13. {
  14. //获取用户
  15. public function getUserInfo() {
  16. try {
  17. $sign = generateSign([], config('customer.app_secret'));
  18. $url = config("customer.app_service_url").'/user/userInfo';
  19. $array = [
  20. 'json' => ['sign' => $sign], 'query' => [], 'http_errors' => false,'headers'=>['Authorization'=>"Bearer ".JWTAuth::getToken()]
  21. ];
  22. return http($url,$array);
  23. } catch (\Exception $e) {
  24. return [];
  25. }
  26. }
  27. //获取用户信息
  28. public function userInfo($uid) {
  29. $user = Redis::HGETALL('userInfo:' . $uid);
  30. if(!$user){
  31. try {
  32. $sign = generateSign(['uid' => $uid], config('customer.app_secret'));
  33. $url = config("customer.app_service_url").'/user/getUserInfo';
  34. $array = [
  35. 'json' => ['sign' => $sign,'uid' => $uid], 'query' => [], 'http_errors' => false,'headers'=>['Authorization'=>"Bearer ".JWTAuth::getToken()]
  36. ];
  37. $user = http($url,$array,'get');
  38. } catch (\Exception $e) {
  39. $user = [];
  40. }
  41. }
  42. if(!$user){
  43. $user = [
  44. 'uid' => $uid,
  45. 'username' => '老板',
  46. 'avatar' => 'http://oss.caihongxingqiu.net/201907/1564471458_5d3ff0a231721.png?280_280',
  47. 'gender' => 2,
  48. 'invite_code' => ''
  49. ];
  50. }
  51. return $user;
  52. }
  53. //获取关注状态
  54. public function getFollowStatus($uid, $followUid)
  55. {
  56. $status = 0;
  57. if(Redis::ZSCORE('follow:'.$uid, $followUid)){
  58. $status = 1;
  59. if(Redis::ZSCORE('follow:'.$followUid, $uid)){
  60. $status = 2;
  61. }
  62. }
  63. return $status;
  64. }
  65. //检查关注状态 多个uid
  66. public function getFollowMembersStatus($uids) {
  67. try {
  68. $sign = generateSign(['uids' => $uids], config('customer.app_secret'));
  69. $url = config("customer.app_service_url").'/user/v2/member/getMemberIds';
  70. $array = [
  71. 'json' => ['sign' => $sign, 'uids' => $uids], 'query' => [], 'http_errors' => false,'headers'=>['Authorization'=>"Bearer ".JWTAuth::getToken()]
  72. ];
  73. return http($url,$array,'get');
  74. } catch (\Exception $e) {
  75. Log::debug($e->getMessage());
  76. return [];
  77. }
  78. }
  79. //检查关注状态 多个uid
  80. public function getFollowMemberFans($follow_id) {
  81. try {
  82. $sign = generateSign(['follow_id' => $follow_id], config('customer.app_secret'));
  83. $url = config("customer.app_service_url").'/user/v2/member/getFollowMemberFans';
  84. //$url = 'http://localhost:8080/v2/member/getFollowMemberFans';
  85. $array = [
  86. 'json' => ['sign' => $sign, 'follow_id' => $follow_id], 'query' => [], 'http_errors' => false,'headers'=>['Authorization'=>"Bearer ".JWTAuth::getToken()]
  87. ];
  88. return http($url,$array,'get');
  89. } catch (\Exception $e) {
  90. Log::debug($e->getMessage());
  91. return [];
  92. }
  93. }
  94. }