123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- <?php
- /**
- * Created by PhpStorm.
- * User: wangzhiqiang
- * Date: 2019/5/5
- * Time: 17:11
- */
- namespace App\Traits;
- use Illuminate\Support\Facades\Log;
- use Illuminate\Support\Facades\Redis;
- use Tymon\JWTAuth\Facades\JWTAuth;
- trait UserTrait
- {
- //获取用户
- public function getUserInfo()
- {
- try {
- $sign = generateSign([], config('customer.app_secret'));
- $url = config("customer.app_service_url") . '/user/userInfo';
- $array = [
- 'json' => ['sign' => $sign], 'query' => [], 'http_errors' => false, 'headers' => ['Authorization' => "Bearer " . JWTAuth::getToken()]
- ];
- return http($url, $array);
- } catch (\Exception $e) {
- return [];
- }
- }
- //获取用户信息
- public function userInfo($uid)
- {
- $user = Redis::HGETALL('userInfo:' . $uid);
- if (!$user) {
- try {
- $sign = generateSign(['uid' => $uid], config('customer.app_secret'));
- $url = config("customer.app_service_url") . '/user/getUserInfo';
- $array = [
- 'json' => ['sign' => $sign, 'uid' => $uid], 'query' => [], 'http_errors' => false, 'headers' => ['Authorization' => "Bearer " . JWTAuth::getToken()]
- ];
- $user = http($url, $array, 'get');
- } catch (\Exception $e) {
- $user = [];
- }
- }
- if (!$user) {
- $user = [
- 'uid' => $uid,
- 'username' => '老板',
- 'avatar' => 'http://oss.caihongxingqiu.net/201907/1564471458_5d3ff0a231721.png?280_280',
- 'gender' => 2,
- 'invite_code' => ''
- ];
- }
- return $user;
- }
- /**
- * 格式化user的字段类型
- * @param $user
- * @return array
- */
- public function formatUser($user)
- {
- $u = [
- 'uid' => intval($user['uid']),
- 'username' => $user['username'],
- 'avatar' => $user['avatar'],
- 'gender' => intval($user['gender']),
- 'invite_code' => $user['invite_code']
- ];
- return $u;
- }
- //获取关注状态
- public function getFollowStatus($uid, $followUid)
- {
- $status = 0;
- if (Redis::ZSCORE('follow:' . $uid, $followUid)) {
- $status = 1;
- if (Redis::ZSCORE('follow:' . $followUid, $uid)) {
- $status = 2;
- }
- }
- return $status;
- }
- //检查关注状态 多个uid
- public function getFollowMembersStatus($uids)
- {
- try {
- $sign = generateSign(['uids' => $uids], config('customer.app_secret'));
- $url = config("customer.app_service_url") . '/user/v2/member/getMemberIds';
- $array = [
- 'json' => ['sign' => $sign, 'uids' => $uids], 'query' => [], 'http_errors' => false, 'headers' => ['Authorization' => "Bearer " . JWTAuth::getToken()]
- ];
- return http($url, $array, 'get');
- } catch (\Exception $e) {
- Log::debug($e->getMessage());
- return [];
- }
- }
- //检查关注状态 多个uid
- public function getFollowMemberFans($follow_id)
- {
- try {
- $sign = generateSign(['follow_id' => $follow_id], config('customer.app_secret'));
- $url = config("customer.app_service_url") . '/user/v2/member/getFollowMemberFans';
- //$url = 'http://localhost:8080/v2/member/getFollowMemberFans';
- $array = [
- 'json' => ['sign' => $sign, 'follow_id' => $follow_id], 'query' => [], 'http_errors' => false, 'headers' => ['Authorization' => "Bearer " . JWTAuth::getToken()]
- ];
- return http($url, $array, 'get');
- } catch (\Exception $e) {
- Log::debug($e->getMessage());
- return [];
- }
- }
- }
|