浏览代码

refactor: call model using non static function

M1Screw 1 年之前
父节点
当前提交
b11ee753ea
共有 65 个文件被更改,包括 256 次插入257 次删除
  1. 1 1
      .github/workflows/lint.yml
  2. 1 1
      README.md
  3. 1 0
      phpinsights.php
  4. 1 1
      src/Command/Cron.php
  5. 3 3
      src/Command/Tool.php
  6. 5 5
      src/Controllers/Admin/AnnController.php
  7. 6 6
      src/Controllers/Admin/CouponController.php
  8. 2 2
      src/Controllers/Admin/DetectBanController.php
  9. 2 2
      src/Controllers/Admin/DetectLogController.php
  10. 2 2
      src/Controllers/Admin/DetectRuleController.php
  11. 4 4
      src/Controllers/Admin/DocsController.php
  12. 2 2
      src/Controllers/Admin/GiftCardController.php
  13. 5 5
      src/Controllers/Admin/InviteController.php
  14. 5 5
      src/Controllers/Admin/InvoiceController.php
  15. 2 2
      src/Controllers/Admin/LoginLogController.php
  16. 1 1
      src/Controllers/Admin/MoneyLogController.php
  17. 6 6
      src/Controllers/Admin/NodeController.php
  18. 2 2
      src/Controllers/Admin/OnlineLogController.php
  19. 7 7
      src/Controllers/Admin/OrderController.php
  20. 1 1
      src/Controllers/Admin/PaylistController.php
  21. 5 5
      src/Controllers/Admin/ProductController.php
  22. 2 2
      src/Controllers/Admin/Setting/BillingController.php
  23. 2 2
      src/Controllers/Admin/SubLogController.php
  24. 8 8
      src/Controllers/Admin/TicketController.php
  25. 2 2
      src/Controllers/Admin/TrafficLogController.php
  26. 6 6
      src/Controllers/Admin/UserController.php
  27. 6 6
      src/Controllers/AuthController.php
  28. 3 3
      src/Controllers/OAuthController.php
  29. 2 2
      src/Controllers/PasswordController.php
  30. 2 2
      src/Controllers/SubController.php
  31. 3 3
      src/Controllers/User/CouponController.php
  32. 1 1
      src/Controllers/User/DetectLogController.php
  33. 1 1
      src/Controllers/User/DetectRuleController.php
  34. 2 2
      src/Controllers/User/DocsController.php
  35. 1 1
      src/Controllers/User/InfoController.php
  36. 4 4
      src/Controllers/User/InvoiceController.php
  37. 2 2
      src/Controllers/User/MoneyController.php
  38. 9 9
      src/Controllers/User/OrderController.php
  39. 3 3
      src/Controllers/User/ProductController.php
  40. 1 1
      src/Controllers/User/SubLogController.php
  41. 3 3
      src/Controllers/User/TicketController.php
  42. 8 8
      src/Controllers/UserController.php
  43. 1 1
      src/Controllers/WebAPI/NodeController.php
  44. 5 5
      src/Controllers/WebAPI/UserController.php
  45. 1 1
      src/Middleware/NodeToken.php
  46. 4 4
      src/Models/Config.php
  47. 1 1
      src/Models/DetectBanLog.php
  48. 3 3
      src/Models/DetectLog.php
  49. 1 1
      src/Models/InviteCode.php
  50. 1 1
      src/Models/Link.php
  51. 3 3
      src/Models/LoginIp.php
  52. 2 2
      src/Models/OnlineLog.php
  53. 8 8
      src/Models/Payback.php
  54. 2 2
      src/Models/SubscribeLog.php
  55. 11 11
      src/Models/User.php
  56. 25 24
      src/Services/Analytics.php
  57. 3 3
      src/Services/Auth/Cookie.php
  58. 7 7
      src/Services/Bot/Telegram/Callback.php
  59. 1 1
      src/Services/Bot/Telegram/Commands/MyCommand.php
  60. 1 1
      src/Services/Bot/Telegram/Message.php
  61. 27 27
      src/Services/Cron.php
  62. 6 6
      src/Services/Detect.php
  63. 5 5
      src/Services/Gateway/Base.php
  64. 1 4
      src/Services/Notification.php
  65. 2 2
      src/Utils/Tools.php

+ 1 - 1
.github/workflows/lint.yml

@@ -29,7 +29,7 @@ jobs:
           fetch-depth: 0
           fetch-depth: 0
       - uses: shivammathur/setup-php@v2
       - uses: shivammathur/setup-php@v2
         with:
         with:
-          php-version: 8.2
+          php-version: 8.3
       - run: |
       - run: |
           composer install --no-interaction --no-progress --no-suggest
           composer install --no-interaction --no-progress --no-suggest
           php vendor/bin/phpinsights analyse --no-interaction --format=github-action \
           php vendor/bin/phpinsights analyse --no-interaction --format=github-action \

+ 1 - 1
README.md

@@ -19,7 +19,7 @@
 [![Telegram 通知频道](https://img.shields.io/badge/Telegram-通知频道-blue?style=flat-square)](https://t.me/sspanel_uim)
 [![Telegram 通知频道](https://img.shields.io/badge/Telegram-通知频道-blue?style=flat-square)](https://t.me/sspanel_uim)
 [![Telegram 开发频道](https://img.shields.io/badge/Telegram-开发频道-blue?style=flat-square)](https://t.me/sspanel_uim_dev)
 [![Telegram 开发频道](https://img.shields.io/badge/Telegram-开发频道-blue?style=flat-square)](https://t.me/sspanel_uim_dev)
 [![Discord](https://img.shields.io/discord/1049692075085549600?color=5865F2&label=Discord&style=flat-square)](https://discord.gg/A7uFKCvf8V)
 [![Discord](https://img.shields.io/discord/1049692075085549600?color=5865F2&label=Discord&style=flat-square)](https://discord.gg/A7uFKCvf8V)
-[![Dev Blog](https://img.shields.io/badge/Blog-Dev-blue?style=flat-square)](https://blog.sspanel.org)
+[![Dev Blog](https://img.shields.io/badge/Dev-Blog-blue?style=flat-square)](https://blog.sspanel.org)
 
 
 ## 简介
 ## 简介
 
 

+ 1 - 0
phpinsights.php

@@ -12,6 +12,7 @@ return [
         NunoMaduro\PhpInsights\Domain\Insights\ForbiddenGlobals::class,
         NunoMaduro\PhpInsights\Domain\Insights\ForbiddenGlobals::class,
         PHP_CodeSniffer\Standards\Generic\Sniffs\Commenting\TodoSniff::class,
         PHP_CodeSniffer\Standards\Generic\Sniffs\Commenting\TodoSniff::class,
         PHP_CodeSniffer\Standards\Generic\Sniffs\Files\LineLengthSniff::class,
         PHP_CodeSniffer\Standards\Generic\Sniffs\Files\LineLengthSniff::class,
+        PHP_CodeSniffer\Standards\PEAR\Sniffs\WhiteSpace\ObjectOperatorIndentSniff::class,
         PHP_CodeSniffer\Standards\Squiz\Sniffs\PHP\GlobalKeywordSniff::class,
         PHP_CodeSniffer\Standards\Squiz\Sniffs\PHP\GlobalKeywordSniff::class,
         PhpCsFixer\Fixer\Import\OrderedImportsFixer::class,
         PhpCsFixer\Fixer\Import\OrderedImportsFixer::class,
         SlevomatCodingStandard\Sniffs\Commenting\InlineDocCommentDeclarationSniff::class,
         SlevomatCodingStandard\Sniffs\Commenting\InlineDocCommentDeclarationSniff::class,

+ 1 - 1
src/Command/Cron.php

@@ -78,7 +78,7 @@ EOL;
                 $jobs->sendTelegramDailyJob();
                 $jobs->sendTelegramDailyJob();
             }
             }
 
 
-            Config::where('item', 'last_daily_job_time')->update([
+            (new Config())->where('item', 'last_daily_job_time')->update([
                 'value' => mktime(
                 'value' => mktime(
                     Config::obtain('daily_job_hour'),
                     Config::obtain('daily_job_hour'),
                     Config::obtain('daily_job_minute'),
                     Config::obtain('daily_job_minute'),

+ 3 - 3
src/Command/Tool.php

@@ -126,7 +126,7 @@ EOL;
         foreach ($settings as $item) {
         foreach ($settings as $item) {
             $config[] = $item['item'];
             $config[] = $item['item'];
             $item_name = $item['item'];
             $item_name = $item['item'];
-            $query = Config::where('item', $item['item'])->first();
+            $query = (new Config())->where('item', $item['item'])->first();
 
 
             if ($query === null) {
             if ($query === null) {
                 $new_item = new Config();
                 $new_item = new Config();
@@ -193,7 +193,7 @@ EOL;
     public function resetPort(): void
     public function resetPort(): void
     {
     {
         fwrite(STDOUT, '请输入用户id: ');
         fwrite(STDOUT, '请输入用户id: ');
-        $user = ModelsUser::find(trim(fgets(STDIN)));
+        $user = (new ModelsUser())->find(trim(fgets(STDIN)));
 
 
         if ($user !== null) {
         if ($user !== null) {
             $user->port = Tools::getSsPort();
             $user->port = Tools::getSsPort();
@@ -228,7 +228,7 @@ EOL;
     public function resetTraffic(): void
     public function resetTraffic(): void
     {
     {
         try {
         try {
-            ModelsUser::where('is_banned', 0)->update([
+            (new ModelsUser())->where('is_banned', 0)->update([
                 'd' => 0,
                 'd' => 0,
                 'u' => 0,
                 'u' => 0,
                 'transfer_today' => 0,
                 'transfer_today' => 0,

+ 5 - 5
src/Controllers/Admin/AnnController.php

@@ -103,7 +103,7 @@ final class AnnController extends BaseController
         }
         }
 
 
         if ($email_notify) {
         if ($email_notify) {
-            $users = User::where('class', '>=', $email_notify_class)
+            $users = (new User())->where('class', '>=', $email_notify_class)
                 ->get();
                 ->get();
 
 
             foreach ($users as $user) {
             foreach ($users as $user) {
@@ -143,7 +143,7 @@ final class AnnController extends BaseController
      */
      */
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $ann = Ann::find($args['id']);
+        $ann = (new Ann())->find($args['id']);
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
                 ->assign('ann', $ann)
                 ->assign('ann', $ann)
@@ -156,7 +156,7 @@ final class AnnController extends BaseController
      */
      */
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $ann = Ann::find($args['id']);
+        $ann = (new Ann())->find($args['id']);
         $ann->content = (string) $request->getParam('content');
         $ann->content = (string) $request->getParam('content');
         $ann->date = Tools::toDateTime(time());
         $ann->date = Tools::toDateTime(time());
 
 
@@ -189,7 +189,7 @@ final class AnnController extends BaseController
      */
      */
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $ann = Ann::find($args['id']);
+        $ann = (new Ann())->find($args['id']);
         if (! $ann->delete()) {
         if (! $ann->delete()) {
             return $response->withJson([
             return $response->withJson([
                 'ret' => 0,
                 'ret' => 0,
@@ -207,7 +207,7 @@ final class AnnController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $anns = Ann::orderBy('id')->get();
+        $anns = (new Ann())->orderBy('id')->get();
 
 
         foreach ($anns as $ann) {
         foreach ($anns as $ann) {
             $ann->op = '<button type="button" class="btn btn-red" id="delete-announcement-' . $ann->id . '" 
             $ann->op = '<button type="button" class="btn btn-red" id="delete-announcement-' . $ann->id . '" 

+ 6 - 6
src/Controllers/Admin/CouponController.php

@@ -140,7 +140,7 @@ final class CouponController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        if ($generate_method === 'char' && UserCoupon::where('code', $code)->count() !== 0) {
+        if ($generate_method === 'char' && (new UserCoupon())->where('code', $code)->count() !== 0) {
             return $response->withJson([
             return $response->withJson([
                 'ret' => 0,
                 'ret' => 0,
                 'msg' => '优惠码已存在',
                 'msg' => '优惠码已存在',
@@ -150,7 +150,7 @@ final class CouponController extends BaseController
         if ($generate_method === 'char_random') {
         if ($generate_method === 'char_random') {
             $code .= Tools::genRandomChar();
             $code .= Tools::genRandomChar();
 
 
-            if (UserCoupon::where('code', $code)->count() !== 0) {
+            if ((new UserCoupon())->where('code', $code)->count() !== 0) {
                 return $response->withJson([
                 return $response->withJson([
                     'ret' => 0,
                     'ret' => 0,
                     'msg' => '出现了一些问题,请稍后重试',
                     'msg' => '出现了一些问题,请稍后重试',
@@ -161,7 +161,7 @@ final class CouponController extends BaseController
         if ($generate_method === 'random') {
         if ($generate_method === 'random') {
             $code = Tools::genRandomChar();
             $code = Tools::genRandomChar();
 
 
-            if (UserCoupon::where('code', $code)->count() !== 0) {
+            if ((new UserCoupon())->where('code', $code)->count() !== 0) {
                 return $response->withJson([
                 return $response->withJson([
                     'ret' => 0,
                     'ret' => 0,
                     'msg' => '出现了一些问题,请稍后重试',
                     'msg' => '出现了一些问题,请稍后重试',
@@ -205,7 +205,7 @@ final class CouponController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $coupon_id = $args['id'];
         $coupon_id = $args['id'];
-        UserCoupon::find($coupon_id)->delete();
+        (new UserCoupon())->find($coupon_id)->delete();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -216,7 +216,7 @@ final class CouponController extends BaseController
     public function disable(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function disable(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $coupon_id = $args['id'];
         $coupon_id = $args['id'];
-        $coupon = UserCoupon::find($coupon_id)->first();
+        $coupon = (new UserCoupon())->find($coupon_id)->first();
         $limit = json_decode($coupon->limit);
         $limit = json_decode($coupon->limit);
         $limit->disabled = 1;
         $limit->disabled = 1;
         $coupon->limit = json_encode($limit);
         $coupon->limit = json_encode($limit);
@@ -233,7 +233,7 @@ final class CouponController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $coupons = UserCoupon::orderBy('id', 'desc')->get();
+        $coupons = (new UserCoupon())->orderBy('id', 'desc')->get();
 
 
         foreach ($coupons as $coupon) {
         foreach ($coupons as $coupon) {
             $content = json_decode($coupon->content);
             $content = json_decode($coupon->content);

+ 2 - 2
src/Controllers/Admin/DetectBanController.php

@@ -47,8 +47,8 @@ final class DetectBanController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $bans = DetectBanLog::orderBy('id', 'desc')->paginate($length, '*', '', $page);
-        $total = DetectBanLog::count();
+        $bans = (new DetectBanLog())->orderBy('id', 'desc')->paginate($length, '*', '', $page);
+        $total = (new DetectBanLog())->count();
 
 
         foreach ($bans as $ban) {
         foreach ($bans as $ban) {
             $ban->user_name = $ban->userName();
             $ban->user_name = $ban->userName();

+ 2 - 2
src/Controllers/Admin/DetectLogController.php

@@ -49,8 +49,8 @@ final class DetectLogController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $logs = DetectLog::orderBy('id', 'desc')->paginate($length, '*', '', $page);
-        $total = DetectLog::count();
+        $logs = (new DetectLog())->orderBy('id', 'desc')->paginate($length, '*', '', $page);
+        $total = (new DetectLog())->count();
 
 
         foreach ($logs as $log) {
         foreach ($logs as $log) {
             $log->user_name = $log->userName();
             $log->user_name = $log->userName();

+ 2 - 2
src/Controllers/Admin/DetectRuleController.php

@@ -96,7 +96,7 @@ final class DetectRuleController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $rule = DetectRule::find($id);
+        $rule = (new DetectRule())->find($id);
         if (! $rule->delete()) {
         if (! $rule->delete()) {
             return $response->withJson([
             return $response->withJson([
                 'ret' => 0,
                 'ret' => 0,
@@ -111,7 +111,7 @@ final class DetectRuleController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $rules = DetectRule::orderBy('id', 'desc')->get();
+        $rules = (new DetectRule())->orderBy('id', 'desc')->get();
 
 
         foreach ($rules as $rule) {
         foreach ($rules as $rule) {
             $rule->op = '<button type="button" class="btn btn-red" id="delete-rule-' . $rule->id .
             $rule->op = '<button type="button" class="btn btn-red" id="delete-rule-' . $rule->id .

+ 4 - 4
src/Controllers/Admin/DocsController.php

@@ -110,7 +110,7 @@ final class DocsController extends BaseController
      */
      */
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $doc = Docs::find($args['id']);
+        $doc = (new Docs())->find($args['id']);
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
@@ -130,7 +130,7 @@ final class DocsController extends BaseController
      */
      */
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $doc = Docs::find($args['id']);
+        $doc = (new Docs())->find($args['id']);
         $doc->title = $request->getParam('title');
         $doc->title = $request->getParam('title');
         $doc->content = $request->getParam('content');
         $doc->content = $request->getParam('content');
         $doc->date = Tools::toDateTime(time());
         $doc->date = Tools::toDateTime(time());
@@ -153,7 +153,7 @@ final class DocsController extends BaseController
      */
      */
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $doc = Docs::find($args['id']);
+        $doc = (new Docs())->find($args['id']);
 
 
         if (! $doc->delete()) {
         if (! $doc->delete()) {
             return $response->withJson([
             return $response->withJson([
@@ -173,7 +173,7 @@ final class DocsController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $docs = Docs::orderBy('id')->get();
+        $docs = (new Docs())->orderBy('id')->get();
 
 
         foreach ($docs as $doc) {
         foreach ($docs as $doc) {
             $doc->op = '<button type="button" class="btn btn-red" id="delete-doc-' . $doc->id . '" 
             $doc->op = '<button type="button" class="btn btn-red" id="delete-doc-' . $doc->id . '" 

+ 2 - 2
src/Controllers/Admin/GiftCardController.php

@@ -118,7 +118,7 @@ final class GiftCardController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $card_id = $args['id'];
         $card_id = $args['id'];
-        GiftCard::find($card_id)->delete();
+        (new GiftCard())->find($card_id)->delete();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -128,7 +128,7 @@ final class GiftCardController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $giftcards = GiftCard::orderBy('id', 'desc')->get();
+        $giftcards = (new GiftCard())->orderBy('id', 'desc')->get();
 
 
         foreach ($giftcards as $giftcard) {
         foreach ($giftcards as $giftcard) {
             $giftcard->op = '<button type="button" class="btn btn-red" id="delete-gift-card-' . $giftcard->id . '" 
             $giftcard->op = '<button type="button" class="btn btn-red" id="delete-gift-card-' . $giftcard->id . '" 

+ 5 - 5
src/Controllers/Admin/InviteController.php

@@ -87,9 +87,9 @@ final class InviteController extends BaseController
         }
         }
 
 
         if (str_contains($userid, '@')) {
         if (str_contains($userid, '@')) {
-            $user = User::where('email', '=', $userid)->first();
+            $user = (new User())->where('email', '=', $userid)->first();
         } else {
         } else {
-            $user = User::find((int) $userid);
+            $user = (new User())->find((int) $userid);
         }
         }
 
 
         if ($user === null) {
         if ($user === null) {
@@ -123,9 +123,9 @@ final class InviteController extends BaseController
         }
         }
 
 
         if (str_contains($request->getParam('userid'), '@')) {
         if (str_contains($request->getParam('userid'), '@')) {
-            $user = User::where('email', '=', $request->getParam('userid'))->first();
+            $user = (new User())->where('email', '=', $request->getParam('userid'))->first();
         } else {
         } else {
-            $user = User::find((int) $request->getParam('userid'));
+            $user = (new User())->find((int) $request->getParam('userid'));
         }
         }
 
 
         if ($user === null) {
         if ($user === null) {
@@ -148,7 +148,7 @@ final class InviteController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $paybacks = Payback::orderBy('id', 'desc')->get();
+        $paybacks = (new Payback())->orderBy('id', 'desc')->get();
 
 
         foreach ($paybacks as $payback) {
         foreach ($paybacks as $payback) {
             $payback->datetime = Tools::toDateTime((int) $payback->datetime);
             $payback->datetime = Tools::toDateTime((int) $payback->datetime);

+ 5 - 5
src/Controllers/Admin/InvoiceController.php

@@ -51,11 +51,11 @@ final class InvoiceController extends BaseController
     public function detail(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function detail(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $invoice = Invoice::find($id);
+        $invoice = (new Invoice())->find($id);
         $paylist = [];
         $paylist = [];
 
 
         if ($invoice->status === 'paid_gateway') {
         if ($invoice->status === 'paid_gateway') {
-            $paylist = Paylist::where('invoice_id', $invoice->id)->where('status', 1)->first();
+            $paylist = (new Paylist())->where('invoice_id', $invoice->id)->where('status', 1)->first();
         }
         }
 
 
         $invoice->status_text = $invoice->status();
         $invoice->status_text = $invoice->status();
@@ -76,7 +76,7 @@ final class InvoiceController extends BaseController
     public function markPaid(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function markPaid(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $invoice_id = $args['id'];
         $invoice_id = $args['id'];
-        $invoice = Invoice::find($invoice_id);
+        $invoice = (new Invoice())->find($invoice_id);
 
 
         if (in_array($invoice->status, ['paid_gateway', 'paid_balance', 'paid_admin'])) {
         if (in_array($invoice->status, ['paid_gateway', 'paid_balance', 'paid_admin'])) {
             return $response->withJson([
             return $response->withJson([
@@ -85,7 +85,7 @@ final class InvoiceController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $order = Order::find($invoice->order_id);
+        $order = (new Order())->find($invoice->order_id);
 
 
         if ($order->status === 'cancelled') {
         if ($order->status === 'cancelled') {
             return $response->withJson([
             return $response->withJson([
@@ -111,7 +111,7 @@ final class InvoiceController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $invoices = Invoice::orderBy('id', 'desc')->get();
+        $invoices = (new Invoice())->orderBy('id', 'desc')->get();
 
 
         foreach ($invoices as $invoice) {
         foreach ($invoices as $invoice) {
             $invoice->op = '<a class="btn btn-blue" href="/admin/invoice/' . $invoice->id . '/view">查看</a>';
             $invoice->op = '<a class="btn btn-blue" href="/admin/invoice/' . $invoice->id . '/view">查看</a>';

+ 2 - 2
src/Controllers/Admin/LoginLogController.php

@@ -53,8 +53,8 @@ final class LoginLogController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $logins = LoginIp::orderBy('id', 'desc')->paginate($length, '*', '', $page);
-        $total = LoginIp::count();
+        $logins = (new LoginIp())->orderBy('id', 'desc')->paginate($length, '*', '', $page);
+        $total = (new LoginIp())->count();
 
 
         foreach ($logins as $login) {
         foreach ($logins as $login) {
             $login->user_name = $login->userName();
             $login->user_name = $login->userName();

+ 1 - 1
src/Controllers/Admin/MoneyLogController.php

@@ -46,7 +46,7 @@ final class MoneyLogController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $money_logs = UserMoneyLog::orderBy('id', 'desc')->get();
+        $money_logs = (new UserMoneyLog())->orderBy('id', 'desc')->get();
 
 
         foreach ($money_logs as $money_log) {
         foreach ($money_logs as $money_log) {
             $money_log->create_time = Tools::toDateTime((int) $money_log->create_time);
             $money_log->create_time = Tools::toDateTime((int) $money_log->create_time);

+ 6 - 6
src/Controllers/Admin/NodeController.php

@@ -160,7 +160,7 @@ final class NodeController extends BaseController
      */
      */
     public function edit(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function edit(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
-        $node = Node::find($args['id']);
+        $node = (new Node())->find($args['id']);
 
 
         $dynamic_rate_config = json_decode($node->dynamic_rate_config);
         $dynamic_rate_config = json_decode($node->dynamic_rate_config);
         $node->max_rate = $dynamic_rate_config?->max_rate ?? 1;
         $node->max_rate = $dynamic_rate_config?->max_rate ?? 1;
@@ -184,7 +184,7 @@ final class NodeController extends BaseController
      */
      */
     public function update(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function update(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
-        $node = Node::find($args['id']);
+        $node = (new Node())->find($args['id']);
 
 
         $node->name = $request->getParam('name');
         $node->name = $request->getParam('name');
         $node->node_group = $request->getParam('node_group') ?? 0;
         $node->node_group = $request->getParam('node_group') ?? 0;
@@ -246,7 +246,7 @@ final class NodeController extends BaseController
 
 
     public function reset(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function reset(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $node = Node::find($args['id']);
+        $node = (new Node())->find($args['id']);
         $node->password = Tools::genRandomChar(32);
         $node->password = Tools::genRandomChar(32);
         $node->save();
         $node->save();
 
 
@@ -261,7 +261,7 @@ final class NodeController extends BaseController
      */
      */
     public function delete(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
-        $node = Node::find($args['id']);
+        $node = (new Node())->find($args['id']);
 
 
         if (! $node->delete()) {
         if (! $node->delete()) {
             return $response->withJson([
             return $response->withJson([
@@ -296,7 +296,7 @@ final class NodeController extends BaseController
 
 
     public function copy($request, $response, $args)
     public function copy($request, $response, $args)
     {
     {
-        $old_node = Node::find($args['id']);
+        $old_node = (new Node())->find($args['id']);
         $new_node = $old_node->replicate([
         $new_node = $old_node->replicate([
             'node_bandwidth',
             'node_bandwidth',
         ]);
         ]);
@@ -321,7 +321,7 @@ final class NodeController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
-        $nodes = Node::orderBy('id', 'desc')->get();
+        $nodes = (new Node())->orderBy('id', 'desc')->get();
 
 
         foreach ($nodes as $node) {
         foreach ($nodes as $node) {
             $node->op = '<button type="button" class="btn btn-red" id="delete-node-' . $node->id . '" 
             $node->op = '<button type="button" class="btn btn-red" id="delete-node-' . $node->id . '" 

+ 2 - 2
src/Controllers/Admin/OnlineLogController.php

@@ -56,8 +56,8 @@ final class OnlineLogController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $onlines = OnlineLog::where('last_time', '>', time() - 90)->orderByDesc('last_time')->paginate($length, '*', '', $page);
-        $total = OnlineLog::where('last_time', '>', time() - 90)->count();
+        $onlines = (new OnlineLog())->where('last_time', '>', time() - 90)->orderByDesc('last_time')->paginate($length, '*', '', $page);
+        $total = (new OnlineLog())->where('last_time', '>', time() - 90)->count();
 
 
         foreach ($onlines as $online) {
         foreach ($onlines as $online) {
             $online->user_name = $online->userName();
             $online->user_name = $online->userName();

+ 7 - 7
src/Controllers/Admin/OrderController.php

@@ -53,14 +53,14 @@ final class OrderController extends BaseController
     {
     {
         $id = $args['id'];
         $id = $args['id'];
 
 
-        $order = Order::find($id);
+        $order = (new Order())->find($id);
         $order->product_type_text = $order->productType();
         $order->product_type_text = $order->productType();
         $order->status_text = $order->status();
         $order->status_text = $order->status();
         $order->create_time = Tools::toDateTime($order->create_time);
         $order->create_time = Tools::toDateTime($order->create_time);
         $order->update_time = Tools::toDateTime($order->update_time);
         $order->update_time = Tools::toDateTime($order->update_time);
         $order->content = json_decode($order->product_content);
         $order->content = json_decode($order->product_content);
 
 
-        $invoice = Invoice::where('order_id', $id)->first();
+        $invoice = (new Invoice())->where('order_id', $id)->first();
         $invoice->status = $invoice->status();
         $invoice->status = $invoice->status();
         $invoice->create_time = Tools::toDateTime($invoice->create_time);
         $invoice->create_time = Tools::toDateTime($invoice->create_time);
         $invoice->update_time = Tools::toDateTime($invoice->update_time);
         $invoice->update_time = Tools::toDateTime($invoice->update_time);
@@ -78,7 +78,7 @@ final class OrderController extends BaseController
     public function cancel(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function cancel(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $order_id = $args['id'];
         $order_id = $args['id'];
-        $order = Order::find($order_id);
+        $order = (new Order())->find($order_id);
 
 
         if ($order->status === 'activated') {
         if ($order->status === 'activated') {
             return $response->withJson([
             return $response->withJson([
@@ -91,7 +91,7 @@ final class OrderController extends BaseController
         $order->status = 'cancelled';
         $order->status = 'cancelled';
         $order->save();
         $order->save();
 
 
-        $invoice = Invoice::where('order_id', $order_id)->first();
+        $invoice = (new Invoice())->where('order_id', $order_id)->first();
 
 
         if ($invoice === null) {
         if ($invoice === null) {
             return $response->withJson([
             return $response->withJson([
@@ -124,8 +124,8 @@ final class OrderController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $order_id = $args['id'];
         $order_id = $args['id'];
-        Order::find($order_id)->delete();
-        Invoice::where('order_id', $order_id)->first()->delete();
+        (new Order())->find($order_id)->delete();
+        (new Invoice())->where('order_id', $order_id)->first()->delete();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -135,7 +135,7 @@ final class OrderController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $orders = Order::orderBy('id', 'desc')->get();
+        $orders = (new Order())->orderBy('id', 'desc')->get();
 
 
         foreach ($orders as $order) {
         foreach ($orders as $order) {
             $order->op = '<button type="button" class="btn btn-red" id="delete-order-' . $order->id . '"
             $order->op = '<button type="button" class="btn btn-red" id="delete-order-' . $order->id . '"

+ 1 - 1
src/Controllers/Admin/PaylistController.php

@@ -47,7 +47,7 @@ final class PaylistController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $paylists = Paylist::orderBy('id', 'desc')->get();
+        $paylists = (new Paylist())->orderBy('id', 'desc')->get();
 
 
         foreach ($paylists as $paylist) {
         foreach ($paylists as $paylist) {
             $paylist->status = $paylist->status();
             $paylist->status = $paylist->status();

+ 5 - 5
src/Controllers/Admin/ProductController.php

@@ -81,7 +81,7 @@ final class ProductController extends BaseController
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $product = Product::find($id);
+        $product = (new Product())->find($id);
         $content = json_decode($product->content);
         $content = json_decode($product->content);
         $limit = json_decode($product->limit);
         $limit = json_decode($product->limit);
 
 
@@ -230,7 +230,7 @@ final class ProductController extends BaseController
         $node_group_required = $request->getParam('node_group_required') ?? '';
         $node_group_required = $request->getParam('node_group_required') ?? '';
         $new_user_required = $request->getParam('new_user_required') === 'true' ? 1 : 0;
         $new_user_required = $request->getParam('new_user_required') === 'true' ? 1 : 0;
 
 
-        $product = Product::find($product_id);
+        $product = (new Product())->find($product_id);
 
 
         if ($price < 0) {
         if ($price < 0) {
             return $response->withJson([
             return $response->withJson([
@@ -315,7 +315,7 @@ final class ProductController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $product_id = $args['id'];
         $product_id = $args['id'];
-        Product::find($product_id)->delete();
+        (new Product())->find($product_id)->delete();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -326,7 +326,7 @@ final class ProductController extends BaseController
     public function copy(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function copy(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $old_product_id = $args['id'];
         $old_product_id = $args['id'];
-        $old_product = Product::find($old_product_id);
+        $old_product = (new Product())->find($old_product_id);
 
 
         $new_product = $old_product->replicate([
         $new_product = $old_product->replicate([
             'create_time',
             'create_time',
@@ -346,7 +346,7 @@ final class ProductController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $products = Product::orderBy('id', 'desc')->get();
+        $products = (new Product())->orderBy('id', 'desc')->get();
 
 
         foreach ($products as $product) {
         foreach ($products as $product) {
             $product->op = '<button type="button" class="btn btn-red" id="delete-product-' . $product->id . '"
             $product->op = '<button type="button" class="btn btn-red" id="delete-product-' . $product->id . '"

+ 2 - 2
src/Controllers/Admin/Setting/BillingController.php

@@ -75,7 +75,7 @@ final class BillingController extends BaseController
             }
             }
         }
         }
 
 
-        $gateway = Config::where('item', 'payment_gateway')->first();
+        $gateway = (new Config())->where('item', 'payment_gateway')->first();
         $gateway->value = json_encode($gateway_in_use);
         $gateway->value = json_encode($gateway_in_use);
 
 
         if (! $gateway->save()) {
         if (! $gateway->save()) {
@@ -113,7 +113,7 @@ final class BillingController extends BaseController
 
 
     public function returnActiveGateways()
     public function returnActiveGateways()
     {
     {
-        $payment_gateways = Config::where('item', 'payment_gateway')->first();
+        $payment_gateways = (new Config())->where('item', 'payment_gateway')->first();
         return json_decode($payment_gateways->value);
         return json_decode($payment_gateways->value);
     }
     }
 }
 }

+ 2 - 2
src/Controllers/Admin/SubLogController.php

@@ -53,8 +53,8 @@ final class SubLogController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $subscribes = SubscribeLog::orderBy('id', 'desc')->paginate($length, '*', '', $page);
-        $total = SubscribeLog::count();
+        $subscribes = (new SubscribeLog())->orderBy('id', 'desc')->paginate($length, '*', '', $page);
+        $total = (new SubscribeLog())->count();
 
 
         foreach ($subscribes as $subscribe) {
         foreach ($subscribes as $subscribe) {
             $subscribe->request_time = Tools::toDateTime($subscribe->request_time);
             $subscribe->request_time = Tools::toDateTime($subscribe->request_time);

+ 8 - 8
src/Controllers/Admin/TicketController.php

@@ -71,7 +71,7 @@ final class TicketController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $ticket = Ticket::where('id', $id)->first();
+        $ticket = (new Ticket())->where('id', $id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withJson([
             return $response->withJson([
@@ -90,7 +90,7 @@ final class TicketController extends BaseController
             ],
             ],
         ];
         ];
 
 
-        $user = User::find($ticket->userid);
+        $user = (new User())->find($ticket->userid);
 
 
         Notification::notifyUser(
         Notification::notifyUser(
             $user,
             $user,
@@ -117,7 +117,7 @@ final class TicketController extends BaseController
     {
     {
         $id = $args['id'];
         $id = $args['id'];
 
 
-        $ticket = Ticket::where('id', $id)->first();
+        $ticket = (new Ticket())->where('id', $id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withJson([
             return $response->withJson([
@@ -138,7 +138,7 @@ final class TicketController extends BaseController
             ],
             ],
         ];
         ];
 
 
-        $user = User::find($ticket->userid);
+        $user = (new User())->find($ticket->userid);
 
 
         Notification::notifyUser(
         Notification::notifyUser(
             $user,
             $user,
@@ -164,7 +164,7 @@ final class TicketController extends BaseController
     public function detail(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function detail(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $ticket = Ticket::where('id', '=', $id)->first();
+        $ticket = (new Ticket())->where('id', '=', $id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withRedirect('/admin/ticket');
             return $response->withRedirect('/admin/ticket');
@@ -190,7 +190,7 @@ final class TicketController extends BaseController
     public function close(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function close(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $ticket = Ticket::where('id', '=', $id)->first();
+        $ticket = (new Ticket())->where('id', '=', $id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withJson([
             return $response->withJson([
@@ -221,7 +221,7 @@ final class TicketController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        Ticket::where('id', '=', $id)->delete();
+        (new Ticket())->where('id', '=', $id)->delete();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -234,7 +234,7 @@ final class TicketController extends BaseController
      */
      */
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $tickets = Ticket::orderBy('id', 'desc')->get();
+        $tickets = (new Ticket())->orderBy('id', 'desc')->get();
 
 
         foreach ($tickets as $ticket) {
         foreach ($tickets as $ticket) {
             $ticket->op = '<button type="button" class="btn btn-red" id="delete-ticket" 
             $ticket->op = '<button type="button" class="btn btn-red" id="delete-ticket" 

+ 2 - 2
src/Controllers/Admin/TrafficLogController.php

@@ -49,8 +49,8 @@ final class TrafficLogController extends BaseController
         $page = $request->getParam('start') / $length + 1;
         $page = $request->getParam('start') / $length + 1;
         $draw = $request->getParam('draw');
         $draw = $request->getParam('draw');
 
 
-        $trafficlogs = UserHourlyUsage::orderBy('id', 'desc')->paginate($length, '*', '', $page);
-        $total = UserHourlyUsage::count();
+        $trafficlogs = (new UserHourlyUsage())->orderBy('id', 'desc')->paginate($length, '*', '', $page);
+        $total = (new UserHourlyUsage())->count();
 
 
         foreach ($trafficlogs as $trafficlog) {
         foreach ($trafficlogs as $trafficlog) {
             $trafficlog->traffic = round(Tools::flowToGB($trafficlog->traffic), 2);
             $trafficlog->traffic = round(Tools::flowToGB($trafficlog->traffic), 2);

+ 6 - 6
src/Controllers/Admin/UserController.php

@@ -127,7 +127,7 @@ final class UserController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $exist = User::where('email', $email)->first();
+        $exist = (new User())->where('email', $email)->first();
 
 
         if ($exist !== null) {
         if ($exist !== null) {
             return $response->withJson([
             return $response->withJson([
@@ -141,7 +141,7 @@ final class UserController extends BaseController
         }
         }
 
 
         AuthController::registerHelper($response, 'user', $email, $password, '', 0, '', $balance, 1);
         AuthController::registerHelper($response, 'user', $email, $password, '', 0, '', $balance, 1);
-        $user = User::where('email', $email)->first();
+        $user = (new User())->where('email', $email)->first();
 
 
         if ($ref_by !== '') {
         if ($ref_by !== '') {
             $user->ref_by = (int) $ref_by;
             $user->ref_by = (int) $ref_by;
@@ -159,7 +159,7 @@ final class UserController extends BaseController
      */
      */
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function edit(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $user = User::find($args['id']);
+        $user = (new User())->find($args['id']);
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
@@ -172,7 +172,7 @@ final class UserController extends BaseController
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function update(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = (int) $args['id'];
         $id = (int) $args['id'];
-        $user = User::find($id);
+        $user = (new User())->find($id);
 
 
         if ($request->getParam('pass') !== '' && $request->getParam('pass') !== null) {
         if ($request->getParam('pass') !== '' && $request->getParam('pass') !== null) {
             $user->pass = Hash::passwordHash($request->getParam('pass'));
             $user->pass = Hash::passwordHash($request->getParam('pass'));
@@ -229,7 +229,7 @@ final class UserController extends BaseController
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function delete(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         $id = $args['id'];
         $id = $args['id'];
-        $user = User::find((int) $id);
+        $user = (new User())->find((int) $id);
 
 
         if (! $user->kill()) {
         if (! $user->kill()) {
             return $response->withJson([
             return $response->withJson([
@@ -246,7 +246,7 @@ final class UserController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $users = User::orderBy('id', 'desc')->get();
+        $users = (new User())->orderBy('id', 'desc')->get();
 
 
         foreach ($users as $user) {
         foreach ($users as $user) {
             $user->op = '<button type="button" class="btn btn-red" id="delete-user-' . $user->id . '" 
             $user->op = '<button type="button" class="btn btn-red" id="delete-user-' . $user->id . '" 

+ 6 - 6
src/Controllers/AuthController.php

@@ -75,7 +75,7 @@ final class AuthController extends BaseController
         $rememberMe = $request->getParam('remember_me') === 'true' ? 1 : 0;
         $rememberMe = $request->getParam('remember_me') === 'true' ? 1 : 0;
         $email = strtolower(trim($antiXss->xss_clean($request->getParam('email'))));
         $email = strtolower(trim($antiXss->xss_clean($request->getParam('email'))));
         $redir = Cookie::get('redir') === '' ? $antiXss->xss_clean(Cookie::get('redir')) : '/user';
         $redir = Cookie::get('redir') === '' ? $antiXss->xss_clean(Cookie::get('redir')) : '/user';
-        $user = User::where('email', $email)->first();
+        $user = (new User())->where('email', $email)->first();
         $loginIp = new LoginIp();
         $loginIp = new LoginIp();
 
 
         if ($user === null) {
         if ($user === null) {
@@ -172,7 +172,7 @@ final class AuthController extends BaseController
                 return ResponseHelper::error($response, '你的请求过于频繁,请稍后再试');
                 return ResponseHelper::error($response, '你的请求过于频繁,请稍后再试');
             }
             }
 
 
-            $user = User::where('email', $email)->first();
+            $user = (new User())->where('email', $email)->first();
 
 
             if ($user !== null) {
             if ($user !== null) {
                 return ResponseHelper::error($response, '此邮箱已经注册');
                 return ResponseHelper::error($response, '此邮箱已经注册');
@@ -263,7 +263,7 @@ final class AuthController extends BaseController
         $user->ref_by = 0;
         $user->ref_by = 0;
 
 
         if ($code !== '') {
         if ($code !== '') {
-            $invite = InviteCode::where('code', $code)->first();
+            $invite = (new InviteCode())->where('code', $code)->first();
             $invite->reward();
             $invite->reward();
             $user->ref_by = $invite->user_id;
             $user->ref_by = $invite->user_id;
             $user->money = Config::obtain('invitation_to_register_balance_reward');
             $user->money = Config::obtain('invitation_to_register_balance_reward');
@@ -338,13 +338,13 @@ final class AuthController extends BaseController
         }
         }
 
 
         if ($code !== '') {
         if ($code !== '') {
-            $user_invite = InviteCode::where('code', $code)->first();
+            $user_invite = (new InviteCode())->where('code', $code)->first();
 
 
             if ($user_invite === null) {
             if ($user_invite === null) {
                 return ResponseHelper::error($response, '邀请码无效');
                 return ResponseHelper::error($response, '邀请码无效');
             }
             }
 
 
-            $gift_user = User::where('id', $user_invite->user_id)->first();
+            $gift_user = (new User())->where('id', $user_invite->user_id)->first();
 
 
             if ($gift_user === null || $gift_user->invite_num === 0) {
             if ($gift_user === null || $gift_user->invite_num === 0) {
                 return ResponseHelper::error($response, '邀请码无效');
                 return ResponseHelper::error($response, '邀请码无效');
@@ -361,7 +361,7 @@ final class AuthController extends BaseController
             return $response->withJson($check_res);
             return $response->withJson($check_res);
         }
         }
         // check email
         // check email
-        $user = User::where('email', $email)->first();
+        $user = (new User())->where('email', $email)->first();
 
 
         if ($user !== null) {
         if ($user !== null) {
             return ResponseHelper::error($response, '邮箱已经被注册了');
             return ResponseHelper::error($response, '邮箱已经被注册了');

+ 3 - 3
src/Controllers/OAuthController.php

@@ -108,7 +108,7 @@ final class OAuthController extends BaseController
 
 
         $slack_user_id = $id_token->claims()->get('https://slack.com/user_id');
         $slack_user_id = $id_token->claims()->get('https://slack.com/user_id');
 
 
-        if (User::where('im_type', 1)->where('im_value', $slack_user_id)->first() !== null ||
+        if ((new User())->where('im_type', 1)->where('im_value', $slack_user_id)->first() !== null ||
             ($user->im_type === 1 && $user->im_value === $slack_user_id)) {
             ($user->im_type === 1 && $user->im_value === $slack_user_id)) {
             return ResponseHelper::error($response, 'Slack 账户已绑定');
             return ResponseHelper::error($response, 'Slack 账户已绑定');
         }
         }
@@ -193,7 +193,7 @@ final class OAuthController extends BaseController
 
 
         $discord_user_id = json_decode($user_response->getBody()->getContents(), true)['id'];
         $discord_user_id = json_decode($user_response->getBody()->getContents(), true)['id'];
 
 
-        if (User::where('im_type', 2)->where('im_value', $discord_user_id)->first() !== null ||
+        if ((new User())->where('im_type', 2)->where('im_value', $discord_user_id)->first() !== null ||
             ($user->im_type === 2 && $user->im_value === $discord_user_id)) {
             ($user->im_type === 2 && $user->im_value === $discord_user_id)) {
             return ResponseHelper::error($response, 'Discord 账户已绑定');
             return ResponseHelper::error($response, 'Discord 账户已绑定');
         }
         }
@@ -250,7 +250,7 @@ final class OAuthController extends BaseController
         $telegram_id = $antiXss->xss_clean($user_auth['id']);
         $telegram_id = $antiXss->xss_clean($user_auth['id']);
         $user = $this->user;
         $user = $this->user;
 
 
-        if (User::where('im_type', 4)->where('im_value', $telegram_id)->first() !== null ||
+        if ((new User())->where('im_type', 4)->where('im_value', $telegram_id)->first() !== null ||
             ($user->im_type === 4 && $user->im_value === $telegram_id)) {
             ($user->im_type === 4 && $user->im_value === $telegram_id)) {
             return ResponseHelper::error($response, 'Telegram 账户已绑定');
             return ResponseHelper::error($response, 'Telegram 账户已绑定');
         }
         }

+ 2 - 2
src/Controllers/PasswordController.php

@@ -67,7 +67,7 @@ final class PasswordController extends BaseController
             return ResponseHelper::error($response, '你的请求过于频繁,请稍后再试');
             return ResponseHelper::error($response, '你的请求过于频繁,请稍后再试');
         }
         }
 
 
-        $user = User::where('email', $email)->first();
+        $user = (new User())->where('email', $email)->first();
         $msg = '如果你的账户存在于我们的数据库中,那么重置密码的链接将会发送到你账户所对应的邮箱。';
         $msg = '如果你的账户存在于我们的数据库中,那么重置密码的链接将会发送到你账户所对应的邮箱。';
 
 
         if ($user !== null) {
         if ($user !== null) {
@@ -125,7 +125,7 @@ final class PasswordController extends BaseController
             return ResponseHelper::error($response, '链接无效');
             return ResponseHelper::error($response, '链接无效');
         }
         }
 
 
-        $user = User::where('email', $email)->first();
+        $user = (new User())->where('email', $email)->first();
 
 
         if ($user === null) {
         if ($user === null) {
             return ResponseHelper::error($response, '链接无效');
             return ResponseHelper::error($response, '链接无效');

+ 2 - 2
src/Controllers/SubController.php

@@ -58,7 +58,7 @@ final class SubController extends BaseController
             return ResponseHelper::error($response, $err_msg);
             return ResponseHelper::error($response, $err_msg);
         }
         }
 
 
-        $link = Link::where('token', $token)->first();
+        $link = (new Link())->where('token', $token)->first();
 
 
         if ($link === null || ! $link->isValid()) {
         if ($link === null || ! $link->isValid()) {
             return ResponseHelper::error($response, $err_msg);
             return ResponseHelper::error($response, $err_msg);
@@ -90,7 +90,7 @@ final class SubController extends BaseController
     public static function getUniversalSubLink($user): string
     public static function getUniversalSubLink($user): string
     {
     {
         $userid = $user->id;
         $userid = $user->id;
-        $token = Link::where('userid', $userid)->first();
+        $token = (new Link())->where('userid', $userid)->first();
 
 
         if ($token === null) {
         if ($token === null) {
             $token = new Link();
             $token = new Link();

+ 3 - 3
src/Controllers/User/CouponController.php

@@ -33,7 +33,7 @@ final class CouponController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $coupon = UserCoupon::where('code', $coupon_raw)->first();
+        $coupon = (new UserCoupon())->where('code', $coupon_raw)->first();
 
 
         if ($coupon === null || ($coupon->expire_time !== 0 && $coupon->expire_time < time())) {
         if ($coupon === null || ($coupon->expire_time !== 0 && $coupon->expire_time < time())) {
             return $response->withJson([
             return $response->withJson([
@@ -42,7 +42,7 @@ final class CouponController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $product = Product::where('id', $product_id)->first();
+        $product = (new Product())->where('id', $product_id)->first();
 
 
         if ($product === null) {
         if ($product === null) {
             return $response->withJson([
             return $response->withJson([
@@ -71,7 +71,7 @@ final class CouponController extends BaseController
         $use_limit = $limit->use_time;
         $use_limit = $limit->use_time;
 
 
         if ($use_limit > 0) {
         if ($use_limit > 0) {
-            $user_use_count = Order::where('user_id', $user->id)->where('coupon', $coupon->code)->count();
+            $user_use_count = (new Order())->where('user_id', $user->id)->where('coupon', $coupon->code)->count();
             if ($user_use_count >= $use_limit) {
             if ($user_use_count >= $use_limit) {
                 return $response->withJson([
                 return $response->withJson([
                     'ret' => 0,
                     'ret' => 0,

+ 1 - 1
src/Controllers/User/DetectLogController.php

@@ -21,7 +21,7 @@ final class DetectLogController extends BaseController
      */
      */
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $logs = DetectLog::orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
+        $logs = (new DetectLog())->orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
 
 
         foreach ($logs as $log) {
         foreach ($logs as $log) {
             $log->node_name = $log->nodeName();
             $log->node_name = $log->nodeName();

+ 1 - 1
src/Controllers/User/DetectRuleController.php

@@ -18,7 +18,7 @@ final class DetectRuleController extends BaseController
      */
      */
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $rules = DetectRule::get();
+        $rules = (new DetectRule())->get();
 
 
         return $response->write($this->view()
         return $response->write($this->view()
             ->assign('rules', $rules)
             ->assign('rules', $rules)

+ 2 - 2
src/Controllers/User/DocsController.php

@@ -24,7 +24,7 @@ final class DocsController extends BaseController
             return $response->withRedirect('/user');
             return $response->withRedirect('/user');
         }
         }
 
 
-        $docs = Docs::orderBy('id', 'desc')->get();
+        $docs = (new Docs())->orderBy('id', 'desc')->get();
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
@@ -44,7 +44,7 @@ final class DocsController extends BaseController
         }
         }
 
 
         $id = $args['id'];
         $id = $args['id'];
-        $doc = Docs::find($id);
+        $doc = (new Docs())->find($id);
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()

+ 1 - 1
src/Controllers/User/InfoController.php

@@ -68,7 +68,7 @@ final class InfoController extends BaseController
             return $response->withJson($check_res);
             return $response->withJson($check_res);
         }
         }
 
 
-        $exist_user = User::where('email', $new_email)->first();
+        $exist_user = (new User())->where('email', $new_email)->first();
 
 
         if ($exist_user !== null) {
         if ($exist_user !== null) {
             return ResponseHelper::error($response, '邮箱已经被使用了');
             return ResponseHelper::error($response, '邮箱已经被使用了');

+ 4 - 4
src/Controllers/User/InvoiceController.php

@@ -53,7 +53,7 @@ final class InvoiceController extends BaseController
         $antiXss = new AntiXSS();
         $antiXss = new AntiXSS();
         $id = $antiXss->xss_clean($args['id']);
         $id = $antiXss->xss_clean($args['id']);
 
 
-        $invoice = Invoice::where('user_id', $this->user->id)->where('id', $id)->first();
+        $invoice = (new Invoice())->where('user_id', $this->user->id)->where('id', $id)->first();
 
 
         if ($invoice === null) {
         if ($invoice === null) {
             return $response->withRedirect('/user/invoice');
             return $response->withRedirect('/user/invoice');
@@ -62,7 +62,7 @@ final class InvoiceController extends BaseController
         $paylist = [];
         $paylist = [];
 
 
         if ($invoice->status === 'paid_gateway') {
         if ($invoice->status === 'paid_gateway') {
-            $paylist = Paylist::where('invoice_id', $invoice->id)->where('status', 1)->first();
+            $paylist = (new Paylist())->where('invoice_id', $invoice->id)->where('status', 1)->first();
         }
         }
 
 
         $invoice->status_text = $invoice->status();
         $invoice->status_text = $invoice->status();
@@ -86,7 +86,7 @@ final class InvoiceController extends BaseController
         $antiXss = new AntiXSS();
         $antiXss = new AntiXSS();
         $invoice_id = $antiXss->xss_clean($request->getParam('invoice_id'));
         $invoice_id = $antiXss->xss_clean($request->getParam('invoice_id'));
 
 
-        $invoice = Invoice::where('user_id', $this->user->id)->where('id', $invoice_id)->first();
+        $invoice = (new Invoice())->where('user_id', $this->user->id)->where('id', $invoice_id)->first();
 
 
         if ($invoice === null) {
         if ($invoice === null) {
             return $response->withJson([
             return $response->withJson([
@@ -136,7 +136,7 @@ final class InvoiceController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $invoices = Invoice::orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
+        $invoices = (new Invoice())->orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
 
 
         foreach ($invoices as $invoice) {
         foreach ($invoices as $invoice) {
             $invoice->op = '<a class="btn btn-blue" href="/user/invoice/' . $invoice->id . '/view">查看</a>';
             $invoice->op = '<a class="btn btn-blue" href="/user/invoice/' . $invoice->id . '/view">查看</a>';

+ 2 - 2
src/Controllers/User/MoneyController.php

@@ -23,7 +23,7 @@ final class MoneyController extends BaseController
     public function index(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
         $user = $this->user;
         $user = $this->user;
-        $moneylogs = UserMoneyLog::where('user_id', $user->id)->orderBy('id', 'desc')->get();
+        $moneylogs = (new UserMoneyLog())->where('user_id', $user->id)->orderBy('id', 'desc')->get();
 
 
         foreach ($moneylogs as $moneylog) {
         foreach ($moneylogs as $moneylog) {
             $moneylog->create_time = Tools::toDateTime($moneylog->create_time);
             $moneylog->create_time = Tools::toDateTime($moneylog->create_time);
@@ -43,7 +43,7 @@ final class MoneyController extends BaseController
     {
     {
         $antiXss = new AntiXSS();
         $antiXss = new AntiXSS();
         $giftcard_raw = $antiXss->xss_clean($request->getParam('giftcard'));
         $giftcard_raw = $antiXss->xss_clean($request->getParam('giftcard'));
-        $giftcard = GiftCard::where('card', $giftcard_raw)->first();
+        $giftcard = (new GiftCard())->where('card', $giftcard_raw)->first();
 
 
         if ($giftcard === null || $giftcard->status !== 0) {
         if ($giftcard === null || $giftcard->status !== 0) {
             return $response->withJson([
             return $response->withJson([

+ 9 - 9
src/Controllers/User/OrderController.php

@@ -71,7 +71,7 @@ final class OrderController extends BaseController
             return $response->withRedirect('/user/product');
             return $response->withRedirect('/user/product');
         }
         }
 
 
-        $product = Product::where('id', $product_id)->first();
+        $product = (new Product())->where('id', $product_id)->first();
         $product->type_text = $product->type();
         $product->type_text = $product->type();
         $product->content = json_decode($product->content);
         $product->content = json_decode($product->content);
 
 
@@ -90,7 +90,7 @@ final class OrderController extends BaseController
         $antiXss = new AntiXSS();
         $antiXss = new AntiXSS();
         $id = $antiXss->xss_clean($args['id']);
         $id = $antiXss->xss_clean($args['id']);
 
 
-        $order = Order::where('user_id', $this->user->id)->where('id', $id)->first();
+        $order = (new Order())->where('user_id', $this->user->id)->where('id', $id)->first();
 
 
         if ($order === null) {
         if ($order === null) {
             return $response->withRedirect('/user/order');
             return $response->withRedirect('/user/order');
@@ -102,7 +102,7 @@ final class OrderController extends BaseController
         $order->update_time = Tools::toDateTime($order->update_time);
         $order->update_time = Tools::toDateTime($order->update_time);
         $order->content = json_decode($order->product_content);
         $order->content = json_decode($order->product_content);
 
 
-        $invoice = Invoice::where('order_id', $id)->first();
+        $invoice = (new Invoice())->where('order_id', $id)->first();
         $invoice->status = $invoice->status();
         $invoice->status = $invoice->status();
         $invoice->create_time = Tools::toDateTime($invoice->create_time);
         $invoice->create_time = Tools::toDateTime($invoice->create_time);
         $invoice->update_time = Tools::toDateTime($invoice->update_time);
         $invoice->update_time = Tools::toDateTime($invoice->update_time);
@@ -123,7 +123,7 @@ final class OrderController extends BaseController
         $coupon_raw = $antiXss->xss_clean($request->getParam('coupon'));
         $coupon_raw = $antiXss->xss_clean($request->getParam('coupon'));
         $product_id = $antiXss->xss_clean($request->getParam('product_id'));
         $product_id = $antiXss->xss_clean($request->getParam('product_id'));
 
 
-        $product = Product::find($product_id);
+        $product = (new Product())->find($product_id);
 
 
         if ($product === null || $product->stock === 0) {
         if ($product === null || $product->stock === 0) {
             return $response->withJson([
             return $response->withJson([
@@ -143,7 +143,7 @@ final class OrderController extends BaseController
         }
         }
 
 
         if ($coupon_raw !== '') {
         if ($coupon_raw !== '') {
-            $coupon = UserCoupon::where('code', $coupon_raw)->first();
+            $coupon = (new UserCoupon())->where('code', $coupon_raw)->first();
 
 
             if ($coupon === null || ($coupon->expire_time !== 0 && $coupon->expire_time < time())) {
             if ($coupon === null || ($coupon->expire_time !== 0 && $coupon->expire_time < time())) {
                 return $response->withJson([
                 return $response->withJson([
@@ -171,7 +171,7 @@ final class OrderController extends BaseController
             $coupon_use_limit = $coupon_limit->use_time;
             $coupon_use_limit = $coupon_limit->use_time;
 
 
             if ($coupon_use_limit > 0) {
             if ($coupon_use_limit > 0) {
-                $user_use_count = Order::where('user_id', $user->id)->where('coupon', $coupon->code)->count();
+                $user_use_count = (new Order())->where('user_id', $user->id)->where('coupon', $coupon->code)->count();
                 if ($user_use_count >= $coupon_use_limit) {
                 if ($user_use_count >= $coupon_use_limit) {
                     return $response->withJson([
                     return $response->withJson([
                         'ret' => 0,
                         'ret' => 0,
@@ -222,7 +222,7 @@ final class OrderController extends BaseController
         }
         }
 
 
         if ($product_limit->new_user_required !== 0) {
         if ($product_limit->new_user_required !== 0) {
-            $order_count = Order::where('user_id', $user->id)->count();
+            $order_count = (new Order())->where('user_id', $user->id)->count();
             if ($order_count > 0) {
             if ($order_count > 0) {
                 return $response->withJson([
                 return $response->withJson([
                     'ret' => 0,
                     'ret' => 0,
@@ -291,13 +291,13 @@ final class OrderController extends BaseController
 
 
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function ajax(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $orders = Order::orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
+        $orders = (new Order())->orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
 
 
         foreach ($orders as $order) {
         foreach ($orders as $order) {
             $order->op = '<a class="btn btn-blue" href="/user/order/' . $order->id . '/view">查看</a>';
             $order->op = '<a class="btn btn-blue" href="/user/order/' . $order->id . '/view">查看</a>';
 
 
             if ($order->status === 'pending_payment') {
             if ($order->status === 'pending_payment') {
-                $invoice_id = Invoice::where('order_id', $order->id)->first()->id;
+                $invoice_id = (new Invoice())->where('order_id', $order->id)->first()->id;
                 $order->op .= '
                 $order->op .= '
                 <a class="btn btn-red" href="/user/invoice/' . $invoice_id . '/view">支付</a>';
                 <a class="btn btn-red" href="/user/invoice/' . $invoice_id . '/view">支付</a>';
             }
             }

+ 3 - 3
src/Controllers/User/ProductController.php

@@ -19,17 +19,17 @@ final class ProductController extends BaseController
      */
      */
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $tabps = Product::where('status', '1')
+        $tabps = (new Product())->where('status', '1')
             ->where('type', 'tabp')
             ->where('type', 'tabp')
             ->orderBy('id')
             ->orderBy('id')
             ->get();
             ->get();
 
 
-        $bandwidths = Product::where('status', '1')
+        $bandwidths = (new Product())->where('status', '1')
             ->where('type', 'bandwidth')
             ->where('type', 'bandwidth')
             ->orderBy('id')
             ->orderBy('id')
             ->get();
             ->get();
 
 
-        $times = Product::where('status', '1')
+        $times = (new Product())->where('status', '1')
             ->where('type', 'time')
             ->where('type', 'time')
             ->orderBy('id')
             ->orderBy('id')
             ->get();
             ->get();

+ 1 - 1
src/Controllers/User/SubLogController.php

@@ -21,7 +21,7 @@ final class SubLogController extends BaseController
      */
      */
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $logs = SubscribeLog::orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
+        $logs = (new SubscribeLog())->orderBy('id', 'desc')->where('user_id', $this->user->id)->get();
 
 
         foreach ($logs as $log) {
         foreach ($logs as $log) {
             $log->request_time = Tools::toDateTime($log->request_time);
             $log->request_time = Tools::toDateTime($log->request_time);

+ 3 - 3
src/Controllers/User/TicketController.php

@@ -38,7 +38,7 @@ final class TicketController extends BaseController
             return $response->withRedirect('/user');
             return $response->withRedirect('/user');
         }
         }
 
 
-        $tickets = Ticket::where('userid', $this->user->id)->orderBy('datetime', 'desc')->get();
+        $tickets = (new Ticket())->where('userid', $this->user->id)->orderBy('datetime', 'desc')->get();
 
 
         foreach ($tickets as $ticket) {
         foreach ($tickets as $ticket) {
             $ticket->status = $ticket->status();
             $ticket->status = $ticket->status();
@@ -131,7 +131,7 @@ final class TicketController extends BaseController
             ]);
             ]);
         }
         }
 
 
-        $ticket = Ticket::where('id', $id)->where('userid', $this->user->id)->first();
+        $ticket = (new Ticket())->where('id', $id)->where('userid', $this->user->id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withJson([
             return $response->withJson([
@@ -181,7 +181,7 @@ final class TicketController extends BaseController
         }
         }
 
 
         $id = $args['id'];
         $id = $args['id'];
-        $ticket = Ticket::where('id', '=', $id)->where('userid', $this->user->id)->first();
+        $ticket = (new Ticket())->where('id', '=', $id)->where('userid', $this->user->id)->first();
 
 
         if ($ticket === null) {
         if ($ticket === null) {
             return $response->withRedirect('/user/ticket');
             return $response->withRedirect('/user/ticket');

+ 8 - 8
src/Controllers/UserController.php

@@ -40,7 +40,7 @@ final class UserController extends BaseController
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
-                ->assign('ann', Ann::orderBy('date', 'desc')->first())
+                ->assign('ann', (new Ann())->orderBy('date', 'desc')->first())
                 ->assign('captcha', $captcha)
                 ->assign('captcha', $captcha)
                 ->assign('class_expire_days', $class_expire_days)
                 ->assign('class_expire_days', $class_expire_days)
                 ->assign('UniversalSub', SubController::getUniversalSubLink($this->user))
                 ->assign('UniversalSub', SubController::getUniversalSubLink($this->user))
@@ -54,9 +54,9 @@ final class UserController extends BaseController
     public function profile(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function profile(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
         // 登录IP
         // 登录IP
-        $logins = LoginIp::where('userid', $this->user->id)
+        $logins = (new LoginIp())->where('userid', $this->user->id)
             ->where('type', '=', 0)->orderBy('datetime', 'desc')->take(10)->get();
             ->where('type', '=', 0)->orderBy('datetime', 'desc')->take(10)->get();
-        $ips = OnlineLog::where('user_id', $this->user->id)
+        $ips = (new OnlineLog())->where('user_id', $this->user->id)
             ->where('last_time', '>', time() - 90)->orderByDesc('last_time')->get();
             ->where('last_time', '>', time() - 90)->orderByDesc('last_time')->get();
 
 
         foreach ($logins as $login) {
         foreach ($logins as $login) {
@@ -72,7 +72,7 @@ final class UserController extends BaseController
         foreach ($ips as $ip) {
         foreach ($ips as $ip) {
             $ip->ip = str_replace('::ffff:', '', $ip->ip);
             $ip->ip = str_replace('::ffff:', '', $ip->ip);
             $ip->location = Tools::getIpLocation($ip->ip);
             $ip->location = Tools::getIpLocation($ip->ip);
-            $ip->node_name = Node::where('id', $ip->node_id)->first()->name;
+            $ip->node_name = (new Node())->where('id', $ip->node_id)->first()->name;
             $ip->last_time = Tools::toDateTime((int) $ip->last_time);
             $ip->last_time = Tools::toDateTime((int) $ip->last_time);
         }
         }
 
 
@@ -89,7 +89,7 @@ final class UserController extends BaseController
      */
      */
     public function announcement(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function announcement(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $anns = Ann::orderBy('date', 'desc')->get();
+        $anns = (new Ann())->orderBy('date', 'desc')->get();
 
 
         return $response->write(
         return $response->write(
             $this->view()
             $this->view()
@@ -103,13 +103,13 @@ final class UserController extends BaseController
      */
      */
     public function invite(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     public function invite(ServerRequest $request, Response $response, array $args): Response|ResponseInterface
     {
     {
-        $code = InviteCode::where('user_id', $this->user->id)->first()?->code;
+        $code = (new InviteCode())->where('user_id', $this->user->id)->first()?->code;
 
 
         if ($code === null) {
         if ($code === null) {
             $code = $this->user->addInviteCode();
             $code = $this->user->addInviteCode();
         }
         }
 
 
-        $paybacks = Payback::where('ref_by', $this->user->id)
+        $paybacks = (new Payback())->where('ref_by', $this->user->id)
             ->orderBy('id', 'desc')
             ->orderBy('id', 'desc')
             ->get();
             ->get();
 
 
@@ -117,7 +117,7 @@ final class UserController extends BaseController
             $payback->datetime = Tools::toDateTime($payback->datetime);
             $payback->datetime = Tools::toDateTime($payback->datetime);
         }
         }
 
 
-        $paybacks_sum = Payback::where('ref_by', $this->user->id)->sum('ref_get');
+        $paybacks_sum = (new Payback())->where('ref_by', $this->user->id)->sum('ref_get');
 
 
         if (! $paybacks_sum) {
         if (! $paybacks_sum) {
             $paybacks_sum = 0;
             $paybacks_sum = 0;

+ 1 - 1
src/Controllers/WebAPI/NodeController.php

@@ -18,7 +18,7 @@ final class NodeController extends BaseController
     public function getInfo(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function getInfo(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
         $node_id = $args['id'];
         $node_id = $args['id'];
-        $node = Node::find($node_id);
+        $node = (new Node())->find($node_id);
 
 
         if ($node === null) {
         if ($node === null) {
             return $response->withJson([
             return $response->withJson([

+ 5 - 5
src/Controllers/WebAPI/UserController.php

@@ -33,7 +33,7 @@ final class UserController extends BaseController
     public function index(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function index(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
         $node_id = $request->getQueryParam('node_id');
         $node_id = $request->getQueryParam('node_id');
-        $node = Node::find($node_id);
+        $node = (new Node())->find($node_id);
 
 
         if ($node === null) {
         if ($node === null) {
             return $response->withJson([
             return $response->withJson([
@@ -151,7 +151,7 @@ final class UserController extends BaseController
 
 
         $data = $data->data;
         $data = $data->data;
         $node_id = $request->getQueryParam('node_id');
         $node_id = $request->getQueryParam('node_id');
-        $node = Node::find($node_id);
+        $node = (new Node())->find($node_id);
 
 
         if ($node === null) {
         if ($node === null) {
             return $response->withJson([
             return $response->withJson([
@@ -229,7 +229,7 @@ final class UserController extends BaseController
         $data = $data->data;
         $data = $data->data;
         $node_id = $request->getQueryParam('node_id');
         $node_id = $request->getQueryParam('node_id');
 
 
-        if ($node_id === null || ! Node::where('id', $node_id)->exists()) {
+        if ($node_id === null || ! (new Node())->where('id', $node_id)->exists()) {
             return $response->withJson([
             return $response->withJson([
                 'ret' => 0,
                 'ret' => 0,
                 'msg' => 'Node not found.',
                 'msg' => 'Node not found.',
@@ -286,7 +286,7 @@ final class UserController extends BaseController
         $data = $data->data;
         $data = $data->data;
         $node_id = $request->getQueryParam('node_id');
         $node_id = $request->getQueryParam('node_id');
 
 
-        if ($node_id === null || ! Node::where('id', $node_id)->exists()) {
+        if ($node_id === null || ! (new Node())->where('id', $node_id)->exists()) {
             return $response->withJson([
             return $response->withJson([
                 'ret' => 0,
                 'ret' => 0,
                 'msg' => 'Node not found.',
                 'msg' => 'Node not found.',
@@ -297,7 +297,7 @@ final class UserController extends BaseController
             $list_id = (int) $log?->list_id;
             $list_id = (int) $log?->list_id;
             $user_id = (int) $log?->user_id;
             $user_id = (int) $log?->user_id;
 
 
-            DetectLog::insert([
+            (new DetectLog())->insert([
                 'user_id' => $user_id,
                 'user_id' => $user_id,
                 'list_id' => $list_id,
                 'list_id' => $list_id,
                 'node_id' => $node_id,
                 'node_id' => $node_id,

+ 1 - 1
src/Middleware/NodeToken.php

@@ -55,7 +55,7 @@ final class NodeToken implements MiddlewareInterface
         if ($_ENV['checkNodeIp']) {
         if ($_ENV['checkNodeIp']) {
             $ip = $request->getServerParam('REMOTE_ADDR');
             $ip = $request->getServerParam('REMOTE_ADDR');
 
 
-            if ($ip !== '127.0.0.1' && ! Node::where('node_ip', $ip)->exists()) {
+            if ($ip !== '127.0.0.1' && ! (new Node())->where('node_ip', $ip)->exists()) {
                 return AppFactory::determineResponseFactory()->createResponse(401)->withJson([
                 return AppFactory::determineResponseFactory()->createResponse(401)->withJson([
                     'ret' => 0,
                     'ret' => 0,
                     'msg' => 'Invalid request IP.',
                     'msg' => 'Invalid request IP.',

+ 4 - 4
src/Models/Config.php

@@ -24,7 +24,7 @@ final class Config extends Model
 
 
     public static function obtain($item): bool|int|string
     public static function obtain($item): bool|int|string
     {
     {
-        $config = self::where('item', $item)->first();
+        $config = (new Config())->where('item', $item)->first();
 
 
         return match ($config->type) {
         return match ($config->type) {
             'bool' => (bool) $config->value,
             'bool' => (bool) $config->value,
@@ -36,7 +36,7 @@ final class Config extends Model
     public static function getClass($class): array
     public static function getClass($class): array
     {
     {
         $configs = [];
         $configs = [];
-        $all_configs = self::where('class', $class)->get();
+        $all_configs = (new Config())->where('class', $class)->get();
 
 
         foreach ($all_configs as $config) {
         foreach ($all_configs as $config) {
             if ($config->type === 'bool') {
             if ($config->type === 'bool') {
@@ -54,7 +54,7 @@ final class Config extends Model
     public static function getPublicConfig(): array
     public static function getPublicConfig(): array
     {
     {
         $configs = [];
         $configs = [];
-        $all_configs = self::where('is_public', '1')->get();
+        $all_configs = (new Config())->where('is_public', '1')->get();
 
 
         foreach ($all_configs as $config) {
         foreach ($all_configs as $config) {
             if ($config->type === 'bool') {
             if ($config->type === 'bool') {
@@ -71,7 +71,7 @@ final class Config extends Model
 
 
     public static function set($item, $value): bool
     public static function set($item, $value): bool
     {
     {
-        $config = self::where('item', $item)->first();
+        $config = (new Config())->where('item', $item)->first();
 
 
         if ($config->tpye === 'array') {
         if ($config->tpye === 'array') {
             $config->value = json_encode($value);
             $config->value = json_encode($value);

+ 1 - 1
src/Models/DetectBanLog.php

@@ -28,7 +28,7 @@ final class DetectBanLog extends Model
      */
      */
     public function user(): ?User
     public function user(): ?User
     {
     {
-        return User::find($this->user_id);
+        return (new User())->find($this->user_id);
     }
     }
 
 
     /**
     /**

+ 3 - 3
src/Models/DetectLog.php

@@ -27,7 +27,7 @@ final class DetectLog extends Model
      */
      */
     public function user(): ?User
     public function user(): ?User
     {
     {
-        return User::find($this->user_id);
+        return (new User())->find($this->user_id);
     }
     }
 
 
     /**
     /**
@@ -43,7 +43,7 @@ final class DetectLog extends Model
      */
      */
     public function node(): ?Node
     public function node(): ?Node
     {
     {
-        return Node::find($this->node_id);
+        return (new Node())->find($this->node_id);
     }
     }
 
 
     /**
     /**
@@ -59,7 +59,7 @@ final class DetectLog extends Model
      */
      */
     public function rule(): ?DetectRule
     public function rule(): ?DetectRule
     {
     {
-        return DetectRule::find($this->list_id);
+        return (new DetectRule())->find($this->list_id);
     }
     }
 
 
     /**
     /**

+ 1 - 1
src/Models/InviteCode.php

@@ -21,7 +21,7 @@ final class InviteCode extends Model
 
 
     public function reward(): void
     public function reward(): void
     {
     {
-        $user = User::where('id', $this->user_id)
+        $user = (new User())->where('id', $this->user_id)
             ->where('is_banned', 0)
             ->where('is_banned', 0)
             ->where('is_shadow_banned', 0)
             ->where('is_shadow_banned', 0)
             ->first();
             ->first();

+ 1 - 1
src/Models/Link.php

@@ -20,7 +20,7 @@ final class Link extends Model
 
 
     public function user(): ?User
     public function user(): ?User
     {
     {
-        return User::find($this->attributes['userid']);
+        return (new User())->find($this->attributes['userid']);
     }
     }
 
 
     public function isValid(): bool
     public function isValid(): bool

+ 3 - 3
src/Models/LoginIp.php

@@ -31,7 +31,7 @@ final class LoginIp extends Model
      */
      */
     public function user(): ?User
     public function user(): ?User
     {
     {
-        return User::find($this->userid);
+        return (new User())->find($this->userid);
     }
     }
 
 
     /**
     /**
@@ -69,11 +69,11 @@ final class LoginIp extends Model
 
 
             if (Config::obtain('notify_new_login') &&
             if (Config::obtain('notify_new_login') &&
                 $user_id !== 0 &&
                 $user_id !== 0 &&
-                LoginIp::where('userid', $user_id)->where('ip', $this->ip)->count() === 0
+                (new LoginIp())->where('userid', $user_id)->where('ip', $this->ip)->count() === 0
             ) {
             ) {
                 try {
                 try {
                     Notification::notifyUser(
                     Notification::notifyUser(
-                        User::where('id', $user_id)->first(),
+                        (new User())->where('id', $user_id)->first(),
                         $_ENV['appName'] . '-新登录通知',
                         $_ENV['appName'] . '-新登录通知',
                         '你的账号于 ' . date('Y-m-d H:i:s') . ' 通过 ' . $this->ip . ' 地址登录了用户面板',
                         '你的账号于 ' . date('Y-m-d H:i:s') . ' 通过 ' . $this->ip . ' 地址登录了用户面板',
                     );
                     );

+ 2 - 2
src/Models/OnlineLog.php

@@ -48,11 +48,11 @@ final class OnlineLog extends Model
 
 
     public function userName(): string
     public function userName(): string
     {
     {
-        return User::where('id', $this->user_id)->value('user_name');
+        return (new User())->where('id', $this->user_id)->value('user_name');
     }
     }
 
 
     public function nodeName(): string
     public function nodeName(): string
     {
     {
-        return Node::where('id', $this->node_id)->value('name');
+        return (new Node())->where('id', $this->node_id)->value('name');
     }
     }
 }
 }

+ 8 - 8
src/Models/Payback.php

@@ -24,30 +24,30 @@ final class Payback extends Model
 
 
     public function user(): \Illuminate\Database\Eloquent\Model|User|null
     public function user(): \Illuminate\Database\Eloquent\Model|User|null
     {
     {
-        return User::where('id', $this->userid)->first();
+        return (new User())->where('id', $this->userid)->first();
     }
     }
 
 
     public function getUserNameAttribute(): string
     public function getUserNameAttribute(): string
     {
     {
-        return User::where('id', $this->userid)->first() === null ? '已注销' :
-            User::where('id', $this->userid)->first()->user_name;
+        return (new User())->where('id', $this->userid)->first() === null ? '已注销' :
+            (new User())->where('id', $this->userid)->first()->user_name;
     }
     }
 
 
     public function refUser(): \Illuminate\Database\Eloquent\Model|User|null
     public function refUser(): \Illuminate\Database\Eloquent\Model|User|null
     {
     {
-        return User::where('id', $this->ref_by)->first();
+        return (new User())->where('id', $this->ref_by)->first();
     }
     }
 
 
     public function getRefUserNameAttribute(): string
     public function getRefUserNameAttribute(): string
     {
     {
-        return User::where('id', $this->ref_by)->first() === null ? '已注销' :
-            User::where('id', $this->ref_by)->first()->user_name;
+        return (new User())->where('id', $this->ref_by)->first() === null ? '已注销' :
+            (new User())->where('id', $this->ref_by)->first()->user_name;
     }
     }
 
 
     public function rebate($user_id, $order_amount): void
     public function rebate($user_id, $order_amount): void
     {
     {
         $configs = Config::getClass('ref');
         $configs = Config::getClass('ref');
-        $user = User::where('id', $user_id)->first();
+        $user = (new User())->where('id', $user_id)->first();
         $gift_user_id = $user->ref_by;
         $gift_user_id = $user->ref_by;
         // 判断
         // 判断
         $invite_rebate_mode = (string) $configs['invite_rebate_mode'];
         $invite_rebate_mode = (string) $configs['invite_rebate_mode'];
@@ -88,7 +88,7 @@ final class Payback extends Model
 
 
     public function execute($user_id, $gift_user_id, $order_amount, $adjust_rebate = null): void
     public function execute($user_id, $gift_user_id, $order_amount, $adjust_rebate = null): void
     {
     {
-        $gift_user = User::where('id', $gift_user_id)
+        $gift_user = (new User())->where('id', $gift_user_id)
             ->where('is_banned', 0)
             ->where('is_banned', 0)
             ->where('is_shadow_banned', 0)
             ->where('is_shadow_banned', 0)
             ->first();
             ->first();

+ 2 - 2
src/Models/SubscribeLog.php

@@ -34,7 +34,7 @@ final class SubscribeLog extends Model
      */
      */
     public function user(): ?User
     public function user(): ?User
     {
     {
-        return User::find($this->user_id);
+        return (new User())->find($this->user_id);
     }
     }
 
 
     /**
     /**
@@ -61,7 +61,7 @@ final class SubscribeLog extends Model
         $this->request_time = time();
         $this->request_time = time();
 
 
         if (Config::obtain('notify_new_subscribe') &&
         if (Config::obtain('notify_new_subscribe') &&
-            SubscribeLog::where('user_id', $this->user_id)
+            (new SubscribeLog())->where('user_id', $this->user_id)
                 ->where('request_ip', 'like', '%' . $this->request_ip . '%')
                 ->where('request_ip', 'like', '%' . $this->request_ip . '%')
                 ->count() === 0
                 ->count() === 0
         ) {
         ) {

+ 11 - 11
src/Models/User.php

@@ -310,7 +310,7 @@ final class User extends Model
      */
      */
     public function cleanLink(): void
     public function cleanLink(): void
     {
     {
-        Link::where('userid', $this->id)->delete();
+        (new Link())->where('userid', $this->id)->delete();
     }
     }
 
 
     /**
     /**
@@ -318,7 +318,7 @@ final class User extends Model
      */
      */
     public function clearInviteCodes(): void
     public function clearInviteCodes(): void
     {
     {
-        InviteCode::where('user_id', $this->id)->delete();
+        (new InviteCode())->where('user_id', $this->id)->delete();
     }
     }
 
 
     /**
     /**
@@ -326,7 +326,7 @@ final class User extends Model
      */
      */
     public function getTopUp(): float
     public function getTopUp(): float
     {
     {
-        $number = Paylist::where('userid', $this->id)->sum('number');
+        $number = (new Paylist())->where('userid', $this->id)->sum('number');
         return is_null($number) ? 0.00 : round((float) $number, 2);
         return is_null($number) ? 0.00 : round((float) $number, 2);
     }
     }
 
 
@@ -335,7 +335,7 @@ final class User extends Model
      */
      */
     public function onlineIpCount(): int
     public function onlineIpCount(): int
     {
     {
-        return OnlineLog::where('user_id', $this->id)
+        return (new OnlineLog())->where('user_id', $this->id)
             ->where('last_time', '>', time() - 90)
             ->where('last_time', '>', time() - 90)
             ->count();
             ->count();
     }
     }
@@ -347,13 +347,13 @@ final class User extends Model
     {
     {
         $uid = $this->id;
         $uid = $this->id;
 
 
-        DetectBanLog::where('user_id', $uid)->delete();
-        DetectLog::where('user_id', $uid)->delete();
-        InviteCode::where('user_id', $uid)->delete();
-        OnlineLog::where('user_id', $uid)->delete();
-        Link::where('userid', $uid)->delete();
-        LoginIp::where('userid', $uid)->delete();
-        SubscribeLog::where('user_id', $uid)->delete();
+        (new DetectBanLog())->where('user_id', $uid)->delete();
+        (new DetectLog())->where('user_id', $uid)->delete();
+        (new InviteCode())->where('user_id', $uid)->delete();
+        (new OnlineLog())->where('user_id', $uid)->delete();
+        (new Link())->where('userid', $uid)->delete();
+        (new LoginIp())->where('userid', $uid)->delete();
+        (new SubscribeLog())->where('user_id', $uid)->delete();
 
 
         return $this->delete();
         return $this->delete();
     }
     }

+ 25 - 24
src/Services/Analytics.php

@@ -26,17 +26,18 @@ final class Analytics
     public static function getIncome(string $req): float
     public static function getIncome(string $req): float
     {
     {
         $today = strtotime('00:00:00');
         $today = strtotime('00:00:00');
+        $paylist = new Paylist();
         $number = match ($req) {
         $number = match ($req) {
-            'today' => Paylist::where('status', 1)
+            'today' => $paylist->where('status', 1)
                 ->whereBetween('datetime', [$today, time()])
                 ->whereBetween('datetime', [$today, time()])
                 ->sum('total'),
                 ->sum('total'),
-            'yesterday' => Paylist::where('status', 1)
+            'yesterday' => $paylist->where('status', 1)
                 ->whereBetween('datetime', [strtotime('-1 day', $today), $today])
                 ->whereBetween('datetime', [strtotime('-1 day', $today), $today])
                 ->sum('total'),
                 ->sum('total'),
-            'this month' => Paylist::where('status', 1)
+            'this month' => $paylist->where('status', 1)
                 ->whereBetween('datetime', [strtotime('first day of this month 00:00:00'), time()])
                 ->whereBetween('datetime', [strtotime('first day of this month 00:00:00'), time()])
                 ->sum('total'),
                 ->sum('total'),
-            default => Paylist::where('status', 1)->sum('total'),
+            default => $paylist->where('status', 1)->sum('total'),
         };
         };
 
 
         return is_null($number) ? 0.00 : round(floatval($number), 2);
         return is_null($number) ? 0.00 : round(floatval($number), 2);
@@ -44,101 +45,101 @@ final class Analytics
 
 
     public static function getTotalUser(): int
     public static function getTotalUser(): int
     {
     {
-        return User::count();
+        return (new User())->count();
     }
     }
 
 
     public static function getCheckinUser(): int
     public static function getCheckinUser(): int
     {
     {
-        return User::where('last_check_in_time', '>', 0)->count();
+        return (new User())->where('last_check_in_time', '>', 0)->count();
     }
     }
 
 
     public static function getTodayCheckinUser(): int
     public static function getTodayCheckinUser(): int
     {
     {
-        return User::where('last_check_in_time', '>', strtotime('today'))->count();
+        return (new User())->where('last_check_in_time', '>', strtotime('today'))->count();
     }
     }
 
 
     public static function getTrafficUsage(): string
     public static function getTrafficUsage(): string
     {
     {
-        return Tools::autoBytes(User::sum('u') + User::sum('d'));
+        return Tools::autoBytes((new User())->sum('u') + (new User())->sum('d'));
     }
     }
 
 
     public static function getTodayTrafficUsage(): string
     public static function getTodayTrafficUsage(): string
     {
     {
-        return Tools::autoBytes(User::sum('transfer_today'));
+        return Tools::autoBytes((new User())->sum('transfer_today'));
     }
     }
 
 
     public static function getRawTodayTrafficUsage()
     public static function getRawTodayTrafficUsage()
     {
     {
-        return User::sum('transfer_today');
+        return (new User())->sum('transfer_today');
     }
     }
 
 
     public static function getRawGbTodayTrafficUsage(): float
     public static function getRawGbTodayTrafficUsage(): float
     {
     {
-        return Tools::flowToGB(User::sum('transfer_today'));
+        return Tools::flowToGB((new User())->sum('transfer_today'));
     }
     }
 
 
     public static function getLastTrafficUsage(): string
     public static function getLastTrafficUsage(): string
     {
     {
-        return Tools::autoBytes(User::sum('u') + User::sum('d') - User::sum('transfer_today'));
+        return Tools::autoBytes((new User())->sum('u') + (new User())->sum('d') - (new User())->sum('transfer_today'));
     }
     }
 
 
     public static function getRawLastTrafficUsage()
     public static function getRawLastTrafficUsage()
     {
     {
-        return User::sum('u') + User::sum('d') - User::sum('transfer_today');
+        return (new User())->sum('u') + (new User())->sum('d') - (new User())->sum('transfer_today');
     }
     }
 
 
     public static function getRawGbLastTrafficUsage(): float
     public static function getRawGbLastTrafficUsage(): float
     {
     {
-        return Tools::flowToGB(User::sum('u') + User::sum('d') - User::sum('transfer_today'));
+        return Tools::flowToGB((new User())->sum('u') + (new User())->sum('d') - (new User())->sum('transfer_today'));
     }
     }
 
 
     public static function getUnusedTrafficUsage(): string
     public static function getUnusedTrafficUsage(): string
     {
     {
-        return Tools::autoBytes(User::sum('transfer_enable') - User::sum('u') - User::sum('d'));
+        return Tools::autoBytes((new User())->sum('transfer_enable') - (new User())->sum('u') - (new User())->sum('d'));
     }
     }
 
 
     public static function getRawUnusedTrafficUsage()
     public static function getRawUnusedTrafficUsage()
     {
     {
-        return User::sum('transfer_enable') - User::sum('u') - User::sum('d');
+        return (new User())->sum('transfer_enable') - (new User())->sum('u') - (new User())->sum('d');
     }
     }
 
 
     public static function getRawGbUnusedTrafficUsage(): float
     public static function getRawGbUnusedTrafficUsage(): float
     {
     {
-        return Tools::flowToGB(User::sum('transfer_enable') - User::sum('u') - User::sum('d'));
+        return Tools::flowToGB((new User())->sum('transfer_enable') - (new User())->sum('u') - (new User())->sum('d'));
     }
     }
 
 
     public static function getTotalTraffic(): string
     public static function getTotalTraffic(): string
     {
     {
-        return Tools::autoBytes(User::sum('transfer_enable'));
+        return Tools::autoBytes((new User())->sum('transfer_enable'));
     }
     }
 
 
     public static function getRawTotalTraffic()
     public static function getRawTotalTraffic()
     {
     {
-        return User::sum('transfer_enable');
+        return (new User())->sum('transfer_enable');
     }
     }
 
 
     public static function getRawGbTotalTraffic(): float
     public static function getRawGbTotalTraffic(): float
     {
     {
-        return Tools::flowToGB(User::sum('transfer_enable'));
+        return Tools::flowToGB((new User())->sum('transfer_enable'));
     }
     }
 
 
     public static function getTotalNode(): int
     public static function getTotalNode(): int
     {
     {
-        return Node::where('node_heartbeat', '>', 0)->count();
+        return (new Node())->where('node_heartbeat', '>', 0)->count();
     }
     }
 
 
     public static function getAliveNode(): int
     public static function getAliveNode(): int
     {
     {
-        return Node::where('node_heartbeat', '>', time() - 90)->count();
+        return (new Node())->where('node_heartbeat', '>', time() - 90)->count();
     }
     }
 
 
     public static function getInactiveUser(): int
     public static function getInactiveUser(): int
     {
     {
-        return User::where('is_inactive', 1)->count();
+        return (new User())->where('is_inactive', 1)->count();
     }
     }
 
 
     public static function getActiveUser(): int
     public static function getActiveUser(): int
     {
     {
-        return User::where('is_inactive', 0)->count();
+        return (new User())->where('is_inactive', 0)->count();
     }
     }
 }
 }

+ 3 - 3
src/Services/Auth/Cookie.php

@@ -14,7 +14,7 @@ final class Cookie extends Base
 {
 {
     public function login($uid, $time): void
     public function login($uid, $time): void
     {
     {
-        $user = User::find($uid);
+        $user = (new User())->find($uid);
         $expire_in = $time + time();
         $expire_in = $time + time();
 
 
         CookieUtils::setWithDomain([
         CookieUtils::setWithDomain([
@@ -55,7 +55,7 @@ final class Cookie extends Base
 
 
         if ($_ENV['enable_login_bind_ip']) {
         if ($_ENV['enable_login_bind_ip']) {
             $remote_ip = $_SERVER['REMOTE_ADDR'];
             $remote_ip = $_SERVER['REMOTE_ADDR'];
-            $node = Node::where('node_ip', $remote_ip)->first();
+            $node = (new Node())->where('node_ip', $remote_ip)->first();
 
 
             if ($node === null && $ipHash !== Hash::ipHash($remote_ip, $uid, $expire_in)) {
             if ($node === null && $ipHash !== Hash::ipHash($remote_ip, $uid, $expire_in)) {
                 return $user;
                 return $user;
@@ -70,7 +70,7 @@ final class Cookie extends Base
             }
             }
         }
         }
 
 
-        $user = User::find($uid);
+        $user = (new User())->find($uid);
 
 
         if ($user === null) {
         if ($user === null) {
             $user = new User();
             $user = new User();

+ 7 - 7
src/Services/Bot/Telegram/Callback.php

@@ -333,7 +333,7 @@ final class Callback
         switch ($OpEnd) {
         switch ($OpEnd) {
             case 'login_log':
             case 'login_log':
                 // 登录记录
                 // 登录记录
-                $total = LoginIp::where('userid', $this->user->id)
+                $total = (new LoginIp())->where('userid', $this->user->id)
                     ->where('type', '=', 0)
                     ->where('type', '=', 0)
                     ->orderBy('datetime', 'desc')
                     ->orderBy('datetime', 'desc')
                     ->take(10)
                     ->take(10)
@@ -361,7 +361,7 @@ final class Callback
                 break;
                 break;
             case 'usage_log':
             case 'usage_log':
                 // 使用记录
                 // 使用记录
-                $logs = OnlineLog::where('user_id', $this->user->id)
+                $logs = (new OnlineLog())->where('user_id', $this->user->id)
                     ->where('last_time', '>', time() - 90)->orderByDesc('last_time')->get('ip');
                     ->where('last_time', '>', time() - 90)->orderByDesc('last_time')->get('ip');
                 $text = '<strong>以下是你账户在线 IP 和地理位置:</strong>' . PHP_EOL . PHP_EOL;
                 $text = '<strong>以下是你账户在线 IP 和地理位置:</strong>' . PHP_EOL . PHP_EOL;
 
 
@@ -387,7 +387,7 @@ final class Callback
                 break;
                 break;
             case 'rebate_log':
             case 'rebate_log':
                 // 返利记录
                 // 返利记录
-                $paybacks = Payback::where('ref_by', $this->user->id)->orderBy('datetime', 'desc')->take(10)->get();
+                $paybacks = (new Payback())->where('ref_by', $this->user->id)->orderBy('datetime', 'desc')->take(10)->get();
                 $text = '<strong>以下是你最近 10 次返利记录:</strong>' . PHP_EOL . PHP_EOL;
                 $text = '<strong>以下是你最近 10 次返利记录:</strong>' . PHP_EOL . PHP_EOL;
 
 
                 foreach ($paybacks as $payback) {
                 foreach ($paybacks as $payback) {
@@ -412,7 +412,7 @@ final class Callback
             case 'subscribe_log':
             case 'subscribe_log':
                 // 订阅记录
                 // 订阅记录
                 if (Config::obtain('subscribe_log')) {
                 if (Config::obtain('subscribe_log')) {
-                    $logs = SubscribeLog::orderBy('id', 'desc')->where('user_id', $this->user->id)->take(10)->get();
+                    $logs = (new SubscribeLog())->orderBy('id', 'desc')->where('user_id', $this->user->id)->take(10)->get();
                     $text = '<strong>以下是你最近 10 次订阅记录:</strong>' . PHP_EOL . PHP_EOL;
                     $text = '<strong>以下是你最近 10 次订阅记录:</strong>' . PHP_EOL . PHP_EOL;
 
 
                     foreach ($logs as $log) {
                     foreach ($logs as $log) {
@@ -875,7 +875,7 @@ final class Callback
 
 
     public function getUserInviteKeyboard(): array
     public function getUserInviteKeyboard(): array
     {
     {
-        $paybacks_sum = Payback::where('ref_by', $this->user->id)->sum('ref_get');
+        $paybacks_sum = (new Payback())->where('ref_by', $this->user->id)->sum('ref_get');
 
 
         if (is_null($paybacks_sum)) {
         if (is_null($paybacks_sum)) {
             $paybacks_sum = 0;
             $paybacks_sum = 0;
@@ -927,11 +927,11 @@ final class Callback
 
 
         if ($OpEnd === 'get') {
         if ($OpEnd === 'get') {
             $this->allow_edit_message = false;
             $this->allow_edit_message = false;
-            $code = InviteCode::where('user_id', $this->user->id)->first();
+            $code = (new InviteCode())->where('user_id', $this->user->id)->first();
 
 
             if ($code === null) {
             if ($code === null) {
                 $this->user->addInviteCode();
                 $this->user->addInviteCode();
-                $code = InviteCode::where('user_id', $this->user->id)->first();
+                $code = (new InviteCode())->where('user_id', $this->user->id)->first();
             }
             }
 
 
             $inviteUrl = $_ENV['baseUrl'] . '/auth/register?code=' . $code->code;
             $inviteUrl = $_ENV['baseUrl'] . '/auth/register?code=' . $code->code;

+ 1 - 1
src/Services/Bot/Telegram/Commands/MyCommand.php

@@ -60,7 +60,7 @@ final class MyCommand extends Command
             'username' => $message->getFrom()->getUsername(),
             'username' => $message->getFrom()->getUsername(),
         ];
         ];
 
 
-        $user = User::where('im_type', 4)->where('im_value', $send_user['id'])->first();
+        $user = (new User())->where('im_type', 4)->where('im_value', $send_user['id'])->first();
 
 
         if ($user === null) {
         if ($user === null) {
             // 回送信息
             // 回送信息

+ 1 - 1
src/Services/Bot/Telegram/Message.php

@@ -242,6 +242,6 @@ final class Message
      */
      */
     public static function getUser(int $value, string $method = 'im_value'): null|Model|User
     public static function getUser(int $value, string $method = 'im_value'): null|Model|User
     {
     {
-        return User::where('im_type', 4)->where($method, $value)->first();
+        return (new User())->where('im_type', 4)->where($method, $value)->first();
     }
     }
 }
 }

+ 27 - 27
src/Services/Cron.php

@@ -40,7 +40,7 @@ final class Cron
 
 
         foreach ($users as $user) {
         foreach ($users as $user) {
             $transfer_total = $user->transfer_total;
             $transfer_total = $user->transfer_total;
-            $transfer_total_last = UserHourlyUsage::where('user_id', $user->id)->orderBy('id', 'desc')->first();
+            $transfer_total_last = (new UserHourlyUsage())->where('user_id', $user->id)->orderBy('id', 'desc')->first();
 
 
             if ($transfer_total_last === null) {
             if ($transfer_total_last === null) {
                 $transfer_total_last = 0;
                 $transfer_total_last = 0;
@@ -61,15 +61,15 @@ final class Cron
 
 
     public static function cleanDb(): void
     public static function cleanDb(): void
     {
     {
-        SubscribeLog::where(
+        (new SubscribeLog())->where(
             'request_time',
             'request_time',
             '<',
             '<',
             time() - 86400 * Config::obtain('subscribe_log_retention_days')
             time() - 86400 * Config::obtain('subscribe_log_retention_days')
         )->delete();
         )->delete();
-        UserHourlyUsage::where('datetime', '<', time() - 86400 * Config::obtain('traffic_log_retention_days'))->delete();
-        DetectLog::where('datetime', '<', time() - 86400 * 3)->delete();
-        EmailQueue::where('time', '<', time() - 86400)->delete();
-        OnlineLog::where('last_time', '<', time() - 86400)->delete();
+        (new UserHourlyUsage())->where('datetime', '<', time() - 86400 * Config::obtain('traffic_log_retention_days'))->delete();
+        (new DetectLog())->where('datetime', '<', time() - 86400 * 3)->delete();
+        (new EmailQueue())->where('time', '<', time() - 86400)->delete();
+        (new OnlineLog())->where('last_time', '<', time() - 86400)->delete();
 
 
         echo Tools::toDateTime(time()) . ' 数据库清理完成' . PHP_EOL;
         echo Tools::toDateTime(time()) . ' 数据库清理完成' . PHP_EOL;
     }
     }
@@ -80,14 +80,14 @@ final class Cron
         $login_days = Config::obtain('detect_inactive_user_login_days');
         $login_days = Config::obtain('detect_inactive_user_login_days');
         $use_days = Config::obtain('detect_inactive_user_use_days');
         $use_days = Config::obtain('detect_inactive_user_use_days');
 
 
-        User::where('is_admin', 0)
+        (new User())->where('is_admin', 0)
             ->where('is_inactive', 0)
             ->where('is_inactive', 0)
             ->where('last_check_in_time', '<', time() - 86400 * $checkin_days)
             ->where('last_check_in_time', '<', time() - 86400 * $checkin_days)
             ->where('last_login_time', '<', time() - 86400 * $login_days)
             ->where('last_login_time', '<', time() - 86400 * $login_days)
             ->where('last_use_time', '<', time() - 86400 * $use_days)
             ->where('last_use_time', '<', time() - 86400 * $use_days)
             ->update(['is_inactive' => 1]);
             ->update(['is_inactive' => 1]);
 
 
-        User::where('is_admin', 0)
+        (new User())->where('is_admin', 0)
             ->where('is_inactive', 1)
             ->where('is_inactive', 1)
             ->where('last_check_in_time', '>', time() - 86400 * $checkin_days)
             ->where('last_check_in_time', '>', time() - 86400 * $checkin_days)
             ->where('last_login_time', '>', time() - 86400 * $login_days)
             ->where('last_login_time', '>', time() - 86400 * $login_days)
@@ -95,12 +95,12 @@ final class Cron
             ->update(['is_inactive' => 0]);
             ->update(['is_inactive' => 0]);
 
 
         echo Tools::toDateTime(time()) .
         echo Tools::toDateTime(time()) .
-            ' 检测到 ' . User::where('is_inactive', 1)->count() . ' 个账户处于闲置状态' . PHP_EOL;
+            ' 检测到 ' . (new User())->where('is_inactive', 1)->count() . ' 个账户处于闲置状态' . PHP_EOL;
     }
     }
 
 
     public static function detectNodeOffline(): void
     public static function detectNodeOffline(): void
     {
     {
-        $nodes = Node::where('type', 1)->get();
+        $nodes = (new Node())->where('type', 1)->get();
 
 
         foreach ($nodes as $node) {
         foreach ($nodes as $node) {
             if ($node->getNodeOnlineStatus() >= 0 && $node->online === 1) {
             if ($node->getNodeOnlineStatus() >= 0 && $node->online === 1) {
@@ -175,7 +175,7 @@ final class Cron
 
 
     public static function expirePaidUserAccount(): void
     public static function expirePaidUserAccount(): void
     {
     {
-        $paidUsers = User::where('class', '>', 0)->get();
+        $paidUsers = (new User())->where('class', '>', 0)->get();
 
 
         foreach ($paidUsers as $user) {
         foreach ($paidUsers as $user) {
             if (strtotime($user->class_expire) < time()) {
             if (strtotime($user->class_expire) < time()) {
@@ -258,13 +258,13 @@ final class Cron
         foreach ($users as $user) {
         foreach ($users as $user) {
             $user_id = $user->id;
             $user_id = $user->id;
             // 获取用户账户等待激活的TABP订单
             // 获取用户账户等待激活的TABP订单
-            $pending_activation_orders = Order::where('user_id', $user_id)
+            $pending_activation_orders = (new Order())->where('user_id', $user_id)
                 ->where('status', 'pending_activation')
                 ->where('status', 'pending_activation')
                 ->where('product_type', 'tabp')
                 ->where('product_type', 'tabp')
                 ->orderBy('id')
                 ->orderBy('id')
                 ->get();
                 ->get();
             // 获取用户账户已激活的TABP订单,一个用户同时只能有一个已激活的TABP订单
             // 获取用户账户已激活的TABP订单,一个用户同时只能有一个已激活的TABP订单
-            $activated_order = Order::where('user_id', $user_id)
+            $activated_order = (new Order())->where('user_id', $user_id)
                 ->where('status', 'activated')
                 ->where('status', 'activated')
                 ->where('product_type', 'tabp')
                 ->where('product_type', 'tabp')
                 ->orderBy('id')
                 ->orderBy('id')
@@ -316,7 +316,7 @@ final class Cron
         foreach ($users as $user) {
         foreach ($users as $user) {
             $user_id = $user->id;
             $user_id = $user->id;
             // 获取用户账户等待激活的流量包订单
             // 获取用户账户等待激活的流量包订单
-            $order = Order::where('user_id', $user_id)
+            $order = (new Order())->where('user_id', $user_id)
                 ->where('status', 'pending_activation')
                 ->where('status', 'pending_activation')
                 ->where('product_type', 'bandwidth')
                 ->where('product_type', 'bandwidth')
                 ->orderBy('id')
                 ->orderBy('id')
@@ -348,7 +348,7 @@ final class Cron
         foreach ($users as $user) {
         foreach ($users as $user) {
             $user_id = $user->id;
             $user_id = $user->id;
             // 获取用户账户等待激活的时间包订单
             // 获取用户账户等待激活的时间包订单
-            $order = Order::where('user_id', $user_id)
+            $order = (new Order())->where('user_id', $user_id)
                 ->where('status', 'pending_activation')
                 ->where('status', 'pending_activation')
                 ->where('product_type', 'time')
                 ->where('product_type', 'time')
                 ->orderBy('id')
                 ->orderBy('id')
@@ -381,11 +381,11 @@ final class Cron
 
 
     public static function processPendingOrder(): void
     public static function processPendingOrder(): void
     {
     {
-        $pending_payment_orders = Order::where('status', 'pending_payment')->get();
+        $pending_payment_orders = (new Order())->where('status', 'pending_payment')->get();
 
 
         foreach ($pending_payment_orders as $order) {
         foreach ($pending_payment_orders as $order) {
             // 检查账单支付状态
             // 检查账单支付状态
-            $invoice = Invoice::where('order_id', $order->id)->first();
+            $invoice = (new Invoice())->where('order_id', $order->id)->first();
 
 
             if ($invoice === null) {
             if ($invoice === null) {
                 continue;
                 continue;
@@ -416,7 +416,7 @@ final class Cron
 
 
     public static function resetNodeBandwidth(): void
     public static function resetNodeBandwidth(): void
     {
     {
-        Node::where('bandwidthlimit_resetday', date('d'))->update(['node_bandwidth' => 0]);
+        (new Node())->where('bandwidthlimit_resetday', date('d'))->update(['node_bandwidth' => 0]);
 
 
         echo Tools::toDateTime(time()) . ' 重设节点流量完成' . PHP_EOL;
         echo Tools::toDateTime(time()) . ' 重设节点流量完成' . PHP_EOL;
     }
     }
@@ -430,7 +430,7 @@ final class Cron
 
 
     public static function resetFreeUserTraffic(): void
     public static function resetFreeUserTraffic(): void
     {
     {
-        $freeUsers = User::where('class', 0)->where('auto_reset_day', date('d'))->get();
+        $freeUsers = (new User())->where('class', 0)->where('auto_reset_day', date('d'))->get();
 
 
         foreach ($freeUsers as $user) {
         foreach ($freeUsers as $user) {
             try {
             try {
@@ -455,14 +455,14 @@ final class Cron
     public static function sendDailyFinanceMail(): void
     public static function sendDailyFinanceMail(): void
     {
     {
         $today = strtotime('00:00:00');
         $today = strtotime('00:00:00');
-        $paylists = Paylist::where('status', 1)->whereBetween('datetime', [strtotime('-1 day', $today), $today])->get();
+        $paylists = (new Paylist())->where('status', 1)->whereBetween('datetime', [strtotime('-1 day', $today), $today])->get();
         $text_html = '<table border=1><tr><td>金额</td><td>用户ID</td><td>用户名</td><td>充值时间</td>';
         $text_html = '<table border=1><tr><td>金额</td><td>用户ID</td><td>用户名</td><td>充值时间</td>';
 
 
         foreach ($paylists as $paylist) {
         foreach ($paylists as $paylist) {
             $text_html .= '<tr>';
             $text_html .= '<tr>';
             $text_html .= '<td>' . $paylist->total . '</td>';
             $text_html .= '<td>' . $paylist->total . '</td>';
             $text_html .= '<td>' . $paylist->userid . '</td>';
             $text_html .= '<td>' . $paylist->userid . '</td>';
-            $text_html .= '<td>' . User::find($paylist->userid)->user_name . '</td>';
+            $text_html .= '<td>' . (new User())->find($paylist->userid)->user_name . '</td>';
             $text_html .= '<td>' . Tools::toDateTime((int) $paylist->datetime) . '</td>';
             $text_html .= '<td>' . Tools::toDateTime((int) $paylist->datetime) . '</td>';
             $text_html .= '</tr>';
             $text_html .= '</tr>';
         }
         }
@@ -487,7 +487,7 @@ final class Cron
     public static function sendWeeklyFinanceMail(): void
     public static function sendWeeklyFinanceMail(): void
     {
     {
         $today = strtotime('00:00:00');
         $today = strtotime('00:00:00');
-        $paylists = Paylist::where('status', 1)
+        $paylists = (new Paylist())->where('status', 1)
             ->whereBetween('datetime', [strtotime('-1 week', $today), $today])
             ->whereBetween('datetime', [strtotime('-1 week', $today), $today])
             ->get();
             ->get();
 
 
@@ -510,7 +510,7 @@ final class Cron
     public static function sendMonthlyFinanceMail(): void
     public static function sendMonthlyFinanceMail(): void
     {
     {
         $today = strtotime('00:00:00');
         $today = strtotime('00:00:00');
-        $paylists = Paylist::where('status', 1)
+        $paylists = (new Paylist())->where('status', 1)
             ->whereBetween('datetime', [strtotime('-1 month', $today), $today])
             ->whereBetween('datetime', [strtotime('-1 month', $today), $today])
             ->get();
             ->get();
 
 
@@ -532,7 +532,7 @@ final class Cron
 
 
     public static function sendPaidUserUsageLimitNotification(): void
     public static function sendPaidUserUsageLimitNotification(): void
     {
     {
-        $paidUsers = User::where('class', '>', 0)->get();
+        $paidUsers = (new User())->where('class', '>', 0)->get();
 
 
         foreach ($paidUsers as $user) {
         foreach ($paidUsers as $user) {
             $user_traffic_left = $user->transfer_enable - $user->u - $user->d;
             $user_traffic_left = $user->transfer_enable - $user->u - $user->d;
@@ -577,8 +577,8 @@ final class Cron
 
 
     public static function sendDailyTrafficReport(): void
     public static function sendDailyTrafficReport(): void
     {
     {
-        $users = User::whereIn('daily_mail_enable', [1, 2])->get();
-        $ann_latest_raw = Ann::orderBy('date', 'desc')->first();
+        $users = (new User())->whereIn('daily_mail_enable', [1, 2])->get();
+        $ann_latest_raw = (new Ann())->orderBy('date', 'desc')->first();
 
 
         if ($ann_latest_raw === null) {
         if ($ann_latest_raw === null) {
             $ann_latest = '<br><br>';
             $ann_latest = '<br><br>';
@@ -628,7 +628,7 @@ final class Cron
 
 
     public static function updateNodeIp(): void
     public static function updateNodeIp(): void
     {
     {
-        $nodes = Node::where('type', 1)->get();
+        $nodes = (new Node())->where('type', 1)->get();
 
 
         foreach ($nodes as $node) {
         foreach ($nodes as $node) {
             $node->updateNodeIp();
             $node->updateNodeIp();

+ 6 - 6
src/Services/Detect.php

@@ -29,7 +29,7 @@ final class Detect
      */
      */
     public static function gfw(): void
     public static function gfw(): void
     {
     {
-        $nodes = Node::where('type', 1)->where('node_ip', '!=', '')->where('online', 1)->get();
+        $nodes = (new Node())->where('type', 1)->where('node_ip', '!=', '')->where('online', 1)->get();
 
 
         foreach ($nodes as $node) {
         foreach ($nodes as $node) {
             $api_url = str_replace(
             $api_url = str_replace(
@@ -106,7 +106,7 @@ final class Detect
 
 
     public static function ban(): void
     public static function ban(): void
     {
     {
-        $new_logs = DetectLog::where('status', '=', 0)->orderBy('id')->get();
+        $new_logs = (new DetectLog())->where('status', '=', 0)->orderBy('id')->get();
         $user_logs = [];
         $user_logs = [];
 
 
         foreach ($new_logs as $log) {
         foreach ($new_logs as $log) {
@@ -119,7 +119,7 @@ final class Detect
 
 
         foreach ($user_logs as $userid => $value) {
         foreach ($user_logs as $userid => $value) {
             // 执行封禁
             // 执行封禁
-            $user = User::find($userid);
+            $user = (new User())->find($userid);
 
 
             if ($user === null) {
             if ($user === null) {
                 continue;
                 continue;
@@ -134,7 +134,7 @@ final class Detect
             $user->all_detect_number += $value;
             $user->all_detect_number += $value;
             $user->save();
             $user->save();
 
 
-            $last_DetectBanLog = DetectBanLog::where('user_id', $userid)->orderBy('id', 'desc')->first();
+            $last_DetectBanLog = (new DetectBanLog())->where('user_id', $userid)->orderBy('id', 'desc')->first();
             $last_all_detect_number = ((int) $last_DetectBanLog?->all_detect_number);
             $last_all_detect_number = ((int) $last_DetectBanLog?->all_detect_number);
             $detect_number = $user->all_detect_number - $last_all_detect_number;
             $detect_number = $user->all_detect_number - $last_all_detect_number;
 
 
@@ -158,10 +158,10 @@ final class Detect
         echo Tools::toDateTime(time()) . ' 审计封禁检查结束' . PHP_EOL;
         echo Tools::toDateTime(time()) . ' 审计封禁检查结束' . PHP_EOL;
 
 
         // 审计封禁解封
         // 审计封禁解封
-        $banned_users = User::where('is_banned', 1)->where('banned_reason', 'DetectBan')->get();
+        $banned_users = (new User())->where('is_banned', 1)->where('banned_reason', 'DetectBan')->get();
 
 
         foreach ($banned_users as $user) {
         foreach ($banned_users as $user) {
-            $logs = DetectBanLog::where('user_id', $user->id)->orderBy('id', 'desc')->first();
+            $logs = (new DetectBanLog())->where('user_id', $user->id)->orderBy('id', 'desc')->first();
             if ($logs !== null && ($logs->end_time + $logs->ban_time * 60) <= time()) {
             if ($logs !== null && ($logs->end_time + $logs->ban_time * 60) <= time()) {
                 $user->is_banned = 0;
                 $user->is_banned = 0;
                 $user->banned_reason = '';
                 $user->banned_reason = '';

+ 5 - 5
src/Services/Gateway/Base.php

@@ -46,7 +46,7 @@ abstract class Base
 
 
     public function getStatus(ServerRequest $request, Response $response, array $args): ResponseInterface
     public function getStatus(ServerRequest $request, Response $response, array $args): ResponseInterface
     {
     {
-        $p = Paylist::where('tradeno', $_POST['pid'])->first();
+        $p = (new Paylist())->where('tradeno', $_POST['pid'])->first();
 
 
         return $response->withJson([
         return $response->withJson([
             'ret' => 1,
             'ret' => 1,
@@ -58,7 +58,7 @@ abstract class Base
 
 
     public function postPayment($trade_no): void
     public function postPayment($trade_no): void
     {
     {
-        $paylist = Paylist::where('tradeno', $trade_no)->first();
+        $paylist = (new Paylist())->where('tradeno', $trade_no)->first();
 
 
         if ($paylist?->status === 0) {
         if ($paylist?->status === 0) {
             $paylist->datetime = time();
             $paylist->datetime = time();
@@ -66,7 +66,7 @@ abstract class Base
             $paylist->save();
             $paylist->save();
         }
         }
 
 
-        $invoice = Invoice::where('id', $paylist?->invoice_id)->first();
+        $invoice = (new Invoice())->where('id', $paylist?->invoice_id)->first();
 
 
         if ($invoice?->status === 'unpaid' && (int) $invoice?->price === (int) $paylist?->total) {
         if ($invoice?->status === 'unpaid' && (int) $invoice?->price === (int) $paylist?->total) {
             $invoice->status = 'paid_gateway';
             $invoice->status = 'paid_gateway';
@@ -75,7 +75,7 @@ abstract class Base
             $invoice->save();
             $invoice->save();
         }
         }
 
 
-        $user = User::find($paylist?->userid);
+        $user = (new User())->find($paylist?->userid);
         // 返利
         // 返利
         if ($user !== null && $user->ref_by > 0 && Config::obtain('invitation_mode') === 'after_paid') {
         if ($user !== null && $user->ref_by > 0 && Config::obtain('invitation_mode') === 'after_paid') {
             (new Payback())->rebate($user->id, $paylist->total);
             (new Payback())->rebate($user->id, $paylist->total);
@@ -99,7 +99,7 @@ abstract class Base
 
 
     protected static function getActiveGateway($key): bool
     protected static function getActiveGateway($key): bool
     {
     {
-        $payment_gateways = Config::where('item', 'payment_gateway')->first();
+        $payment_gateways = (new Config())->where('item', 'payment_gateway')->first();
         $active_gateways = json_decode($payment_gateways->value);
         $active_gateways = json_decode($payment_gateways->value);
         if (in_array($key, $active_gateways)) {
         if (in_array($key, $active_gateways)) {
             return true;
             return true;

+ 1 - 4
src/Services/Notification.php

@@ -10,9 +10,6 @@ use GuzzleHttp\Exception\GuzzleException;
 use Psr\Http\Client\ClientExceptionInterface;
 use Psr\Http\Client\ClientExceptionInterface;
 use Telegram\Bot\Exceptions\TelegramSDKException;
 use Telegram\Bot\Exceptions\TelegramSDKException;
 
 
-/*
- * Notification Service
- */
 final class Notification
 final class Notification
 {
 {
     /**
     /**
@@ -22,7 +19,7 @@ final class Notification
      */
      */
     public static function notifyAdmin($title = '', $msg = '', $template = 'warn.tpl'): void
     public static function notifyAdmin($title = '', $msg = '', $template = 'warn.tpl'): void
     {
     {
-        $admins = User::where('is_admin', 1)->get();
+        $admins = (new User())->where('is_admin', 1)->get();
 
 
         foreach ($admins as $admin) {
         foreach ($admins as $admin) {
             if ($admin->contact_method === 1 || $admin->im_type === 0) {
             if ($admin->contact_method === 1 || $admin->im_type === 0) {

+ 2 - 2
src/Utils/Tools.php

@@ -206,7 +206,7 @@ final class Tools
     public static function genSubToken(): string
     public static function genSubToken(): string
     {
     {
         $token = self::genRandomChar($_ENV['sub_token_len']);
         $token = self::genRandomChar($_ENV['sub_token_len']);
-        $is_token_used = Link::where('token', $token)->first();
+        $is_token_used = (new Link())->where('token', $token)->first();
 
 
         if ($is_token_used === null) {
         if ($is_token_used === null) {
             return $token;
             return $token;
@@ -252,7 +252,7 @@ final class Tools
             return 0;
             return 0;
         }
         }
 
 
-        $det = User::pluck('port')->toArray();
+        $det = (new User())->pluck('port')->toArray();
         $port = array_diff(range(Config::obtain('min_port'), Config::obtain('max_port')), $det);
         $port = array_diff(range(Config::obtain('min_port'), Config::obtain('max_port')), $det);
         shuffle($port);
         shuffle($port);