Kirin 3 years ago
parent
commit
7d069a3143
2 changed files with 10 additions and 0 deletions
  1. 1 0
      app/http/middleware/AuthTokenMiddleware.php
  2. 9 0
      app/models/user/Achievement.php

+ 1 - 0
app/http/middleware/AuthTokenMiddleware.php

@@ -30,6 +30,7 @@ class AuthTokenMiddleware implements MiddlewareInterface
         try {
             $authInfo = UserRepository::parseToken($token);
             $authInfo['user']['achievement'] = Achievement::achievement($authInfo['user']['uid']);
+            $authInfo['user']['recommend_achievement'] = Achievement::recommendeAchievement($authInfo['user']['uid']);
         } catch (AuthException $e) {
             if ($force)
                 return app('json')->make($e->getCode(), $e->getMessage());

+ 9 - 0
app/models/user/Achievement.php

@@ -50,6 +50,15 @@ class Achievement extends BaseModel
         return $achievement;
     }
 
+    public static function recommendeAchievement($uid)
+    {
+        $uids = User::where('spread_uid', $uid)->column('uid');
+        $achievement = self::where('uid', 'in', $uids)
+            ->where('from_uid', '<>', $uid)
+            ->sum('achievement');
+        return $achievement;
+    }
+
 
     public static function setLastMonthAchievementUse()
     {