WIN-2308041133\Administrator преди 1 месец
родител
ревизия
c308d001da
променени са 1 файла, в които са добавени 24 реда и са изтрити 1 реда
  1. 24 1
      app/api/controller/user/UserController.php

+ 24 - 1
app/api/controller/user/UserController.php

@@ -4,6 +4,8 @@ namespace app\api\controller\user;
 
 use app\http\validates\user\AddressValidate;
 use app\models\system\SystemCity;
+use app\models\system\SystemGroupLevel;
+use app\models\user\UserGroupLevel;
 use app\models\user\UserVisit;
 use think\db\exception\DataNotFoundException;
 use think\db\exception\DbException;
@@ -84,7 +86,28 @@ class UserController
                 ->sum('achievement');
         }
         $info['team_achievement'] = $team_achievement > 0 ? $team_achievement : 0;
-
+        $minGrade = SystemGroupLevel::where('grade', '>', $info['group_level'])
+            ->min('grade');
+        if ($minGrade === null){
+            $quota = SystemGroupLevel::where('grade', $minGrade)->value('quota');
+            if ($quota <= $info['team_achievement']){
+                User::where('uid', $info['uid'])->update(['group_level' => $minGrade]);
+                $level_id = SystemGroupLevel::where('grade', $minGrade)->value('id');
+                $name = SystemGroupLevel::where('grade', $minGrade)->value('name');
+                UserGroupLevel::create([
+                    'is_forever' =>1,
+                    'status' => 1,
+                    'is_del' => 0,
+                    'grade' => $minGrade,
+                    'uid' =>  $info['uid'],
+                    'add_time' => time(),
+                    'level_id' => $level_id,
+                    'discount' => 100,
+                    'valid_time' => 0,
+                    'mark' => '尊敬的用户【' . $info['nickname'] . '】在' . date('Y-m-d H:i:s', time()) . '成为' . $name . '会员',
+                ]);
+            }
+        }
 
         return app('json')->success($info);
     }