diff --git a/app/Console/Commands/Test.php b/app/Console/Commands/Test.php index b5fe5faf..fea4b0a6 100644 --- a/app/Console/Commands/Test.php +++ b/app/Console/Commands/Test.php @@ -3,6 +3,7 @@ namespace App\Console\Commands; use App\Models\Order; +use App\Models\User; use App\Utils\Helper; use Illuminate\Console\Command; diff --git a/app/Models/ServerLog.php b/app/Models/ServerLog.php index ef3590c2..0d5ef2c6 100644 --- a/app/Models/ServerLog.php +++ b/app/Models/ServerLog.php @@ -13,4 +13,8 @@ class ServerLog extends Model 'created_at' => 'timestamp', 'updated_at' => 'timestamp' ]; + protected $fillable = [ + 'u', + 'd' + ]; } diff --git a/app/Services/ServerService.php b/app/Services/ServerService.php index cf6ef29c..cd040c10 100644 --- a/app/Services/ServerService.php +++ b/app/Services/ServerService.php @@ -9,6 +9,7 @@ use App\Models\Server; use App\Models\ServerTrojan; use App\Utils\CacheKey; use Illuminate\Support\Facades\Cache; +use Illuminate\Support\Facades\DB; class ServerService { @@ -268,12 +269,18 @@ class ServerService ->where('user_id', $userId) ->where('rate', $rate) ->where('method', $method) - ->lockForUpdate() ->first(); if ($serverLog) { - $serverLog->u = $serverLog->u + $u; - $serverLog->d = $serverLog->d + $d; - return $serverLog->save(); + try { + $serverLog->update([ + 'u' => DB::raw("u+{$u}"), + 'd' => DB::raw("d+{$d}") + ]); + return true; + } catch (\Exception $e) { + info($e); + return false; + } } else { $serverLog = new ServerLog(); $serverLog->user_id = $userId;