|
|
@@ -6,6 +6,7 @@ use App\Facade\TableName;
|
|
|
use App\Game\Services\OuroGameService;
|
|
|
use App\Http\helper\NumConfig;
|
|
|
use Carbon\Carbon;
|
|
|
+use Illuminate\Database\QueryException;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
use Illuminate\Support\Facades\Redis;
|
|
|
use App\Services\VipService;
|
|
|
@@ -602,16 +603,23 @@ class SuperballActivityService
|
|
|
return $row;
|
|
|
}
|
|
|
$lucky = mt_rand(0, 9);
|
|
|
- DB::connection('write')->table(TableName::agent() . 'superball_daily')->insert([
|
|
|
- 'pool_date' => $date,
|
|
|
- 'pool_amount' => 0,
|
|
|
- 'total_balls' => 0,
|
|
|
- 'lucky_number' => $lucky,
|
|
|
- 'completed_count' => 0,
|
|
|
- 'lucky_count' => 0,
|
|
|
- 'created_at' => now()->format('Y-m-d H:i:s'),
|
|
|
- 'updated_at' => now()->format('Y-m-d H:i:s'),
|
|
|
- ]);
|
|
|
+ try {
|
|
|
+ DB::connection('write')->table(TableName::agent() . 'superball_daily')->insert([
|
|
|
+ 'pool_date' => $date,
|
|
|
+ 'pool_amount' => 0,
|
|
|
+ 'total_balls' => 0,
|
|
|
+ 'lucky_number' => $lucky,
|
|
|
+ 'completed_count' => 0,
|
|
|
+ 'lucky_count' => 0,
|
|
|
+ 'created_at' => now()->format('Y-m-d H:i:s'),
|
|
|
+ 'updated_at' => now()->format('Y-m-d H:i:s'),
|
|
|
+ ]);
|
|
|
+ } catch (QueryException $e) {
|
|
|
+ // Concurrent getOrCreateDaily: unique index IX_superball_daily_date (pool_date)
|
|
|
+ if (stripos($e->getMessage(), 'duplicate key') === false) {
|
|
|
+ throw $e;
|
|
|
+ }
|
|
|
+ }
|
|
|
return DB::table(TableName::agent() . 'superball_daily')->where('pool_date', $date)->first();
|
|
|
}
|
|
|
|