From d018f207f32b07c6efc05bda062ad412aab50b26 Mon Sep 17 00:00:00 2001 From: Pig Fang Date: Thu, 11 Jun 2020 15:34:18 +0800 Subject: [PATCH] remove unnecessary SQL queries --- app/Http/Controllers/UserController.php | 3 ++- .../ResetInvalidTextureForPlayer.php | 19 --------------- app/Providers/EventServiceProvider.php | 3 --- resources/misc/changelogs/en/5.0.0.md | 1 + resources/misc/changelogs/zh_CN/5.0.0.md | 1 + .../ResetInvalidTextureForPlayerTest.php | 23 ------------------- 6 files changed, 4 insertions(+), 46 deletions(-) delete mode 100644 app/Listeners/ResetInvalidTextureForPlayer.php delete mode 100644 tests/ListenersTest/ResetInvalidTextureForPlayerTest.php diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 794f20a6..97d8ea27 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -75,6 +75,7 @@ class UserController extends Controller public function scoreInfo() { + /** @var User */ $user = Auth::user(); return response()->json([ @@ -87,7 +88,7 @@ class UserController extends Controller 'players' => (int) option('score_per_player'), ], 'usage' => [ - 'players' => $user->players->count(), + 'players' => $user->players()->count(), 'storage' => (int) Texture::where('uploader', $user->uid)->sum('size'), ], 'signAfterZero' => (bool) option('sign_after_zero'), diff --git a/app/Listeners/ResetInvalidTextureForPlayer.php b/app/Listeners/ResetInvalidTextureForPlayer.php deleted file mode 100644 index 238f305d..00000000 --- a/app/Listeners/ResetInvalidTextureForPlayer.php +++ /dev/null @@ -1,19 +0,0 @@ -player; - - foreach (['skin', 'cape'] as $type) { - $field = "tid_$type"; - if (!\App\Models\Texture::find($player->$field)) { - $player->$field = 0; - } - } - $player->save(); - } -} diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index 90b42f4f..ce3136db 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -9,9 +9,6 @@ class EventServiceProvider extends ServiceProvider { // The event listener mappings for the application. protected $listen = [ - 'App\Events\PlayerRetrieved' => [ - Listeners\ResetInvalidTextureForPlayer::class, - ], 'App\Events\PluginWasEnabled' => [ Listeners\CopyPluginAssets::class, Listeners\GeneratePluginTranslations::class, diff --git a/resources/misc/changelogs/en/5.0.0.md b/resources/misc/changelogs/en/5.0.0.md index e2f190d1..ff8d9c4f 100644 --- a/resources/misc/changelogs/en/5.0.0.md +++ b/resources/misc/changelogs/en/5.0.0.md @@ -51,6 +51,7 @@ - Changed icon of "Walking/Running" button of skin viewer. - Changed API of retrieving all players. - Changed format of avatar and 2D preview to WebP. +- Reduced some unnecessary SQL queries. ## Fixed diff --git a/resources/misc/changelogs/zh_CN/5.0.0.md b/resources/misc/changelogs/zh_CN/5.0.0.md index 80b659a0..8d4d2d98 100644 --- a/resources/misc/changelogs/zh_CN/5.0.0.md +++ b/resources/misc/changelogs/zh_CN/5.0.0.md @@ -51,6 +51,7 @@ - 更换皮肤预览器的「行走/奔跑」按钮图标 - 更改获取角色的 API - 头像和预览图的格式改为 WebP +- 减少不必要的 SQL 查询语句 ## 修复 diff --git a/tests/ListenersTest/ResetInvalidTextureForPlayerTest.php b/tests/ListenersTest/ResetInvalidTextureForPlayerTest.php deleted file mode 100644 index 1d996575..00000000 --- a/tests/ListenersTest/ResetInvalidTextureForPlayerTest.php +++ /dev/null @@ -1,23 +0,0 @@ -create([ - 'tid_skin' => 1, - 'tid_cape' => 2, - ])->pid; - - $player = Player::find($pid); - $this->assertEquals(0, $player->tid_skin); - $this->assertEquals(0, $player->tid_cape); - } -}