浏览代码

[WIP] increment

Hiekki 3 年之前
父节点
当前提交
696ce64df3
共有 2 个文件被更改,包括 15 次插入9 次删除
  1. 14 8
      app/Http/Controllers/Api/UserController.php
  2. 1 1
      routes/api.php

+ 14 - 8
app/Http/Controllers/Api/UserController.php

@@ -64,26 +64,32 @@ class UserController extends Controller
     }
 
     /**
-     * Give credits to a user.
+     * 
      *
      * @param Request $request
      * @param int $id
      * @return User
      */
-    public function addCredits(Request $request, int $id)
+    public function increment(Request $request, int $id)
     {
         $discordUser = DiscordUser::find($id);
         $user = $discordUser ? $discordUser->user : User::findOrFail($id);
 
         $request->validate([
-            "credits"      => "required|numeric|min:0|max:1000000",
-        ]);
-
-        if ($user->credits + $request->credits >= 99999999) throw ValidationException::withMessages([
-            'credits' => "You can't add this amount of credits because you would exceed the credit limit"
+            "credits"      => "sometimes|numeric|min:0|max:1000000",
+            "server_limit" => "sometimes|numeric|min:0|max:1000000",
         ]);
         
-        $user->increment('credits', $request->credits);
+        if($request->credits){
+             if ($user->credits + $request->credits >= 99999999) throw ValidationException::withMessages([
+                'credits' => "You can't add this amount of credits because you would exceed the credit limit"
+            ]);
+            $user->increment('credits', $request->credits);
+         }
+
+        if($request->server_limit){
+           $user->increment('server_limit', $request->server_limit);
+        }
 
         return $user;
     }

+ 1 - 1
routes/api.php

@@ -17,7 +17,7 @@ use Illuminate\Support\Facades\Route;
 */
 
 Route::middleware('api.token')->group(function () {
-    Route::patch('/users/{user}/addcredits', [UserController::class, 'addCredits']);
+    Route::patch('/users/{user}/increment', [UserController::class, 'increment']);
     Route::resource('users', UserController::class)->except(['store', 'create']);
 
     Route::patch('/servers/{server}/suspend', [ServerController::class, 'suspend']);