Просмотр исходного кода

修改极速28的开盘和封盘时间

lip 1 день назад
Родитель
Сommit
589e72e483

+ 40 - 28
app/Http/Controllers/admin/LhcNumber.php

@@ -15,34 +15,37 @@ class LhcNumber extends Controller
     public function list()
     {
         try {
-            $params = request()->validate([
-                'page' => ['nullable', 'integer', 'min:1'],
-                'limit' => ['nullable', 'integer', 'min:1'],
-                'game' => ['nullable', 'string'],
-                'gameplay' => ['nullable', 'string'],
-                'number' => ['nullable'],
-            ]);
-            $page = request()->input('page', 1);
-            $limit = request()->input('limit', 15);
-
-            $query = new LhcNumberModel();
-            if (!empty($params['game'])) {
-                $query = $query->where('game', $params['game']);
+            $list = LhcNumberModel::get();
+            // 2. 格式化树形结构
+            $tree = [];
+        
+            foreach ($list as $item) {
+                // 一级节点:game
+                if (!isset($tree[$item->game])) {
+                    $tree[$item->game] = [
+                        'name' => $item->game,
+                        'children' => []
+                    ];
+                }
+        
+                // 二级节点:gameplay
+                if (!isset($tree[$item->game]['children'][$item->gameplay])) {
+                    $tree[$item->game]['children'][$item->gameplay] = [
+                        'name' => $item->gameplay,
+                        'children' => []
+                    ];
+                }
+        
+                // 三级:把数据放入 children
+                $tree[$item->game]['children'][$item->gameplay]['children'][] = ['id' => $item->id,'number' => $item->number, 'odds' => $item->odds];
             }
-            if (!empty($params['gameplay'])) {
-                $query = $query->where('gameplay', $params['gameplay']);
-            }
-            if (!empty($params['number'])) {
-                $query = $query->where('number', $params['number']);
-            }
-            $count = $query->count();
-            $list = $query
-                ->forPage($page, $limit)
-                ->get();
+        
+            // 重新索引,返回纯数组结构
+            $tree = array_values($tree);
         } catch (Exception $e) {
             return $this->error(HttpStatus::CUSTOM_ERROR,$e->getMessage());
         }
-        return $this->success(['total' => $count, 'data' => $list]);
+        return $this->success([ 'data' => $tree]);
 
     }
 
@@ -51,12 +54,21 @@ class LhcNumber extends Controller
     {
         try {
             $params = request()->validate([
-                'id' => ['required','integer'],
+                'id' => ['nullable','integer'],
+                'game' => ['nullable','string'],
+                'gameplay' => ['nullable','string'],
                 'odds' => ['required','numeric']
             ]);
-            $id = $params['id'];
-            $info = LhcNumberModel::where('id', $id)->first();
-            if (!$info) throw new Exception('数据不存在');
+            $id = $params['id'] ?? 0;
+            if ($id) {
+                $info = LhcNumberModel::where('id', $id)->first();
+                if (!$info) throw new Exception('数据不存在');
+            } else if (!empty($params['game']) && !empty($params['gameplay'])) {
+                $info = LhcNumberModel::where('game', $params['game'])->where('gameplay', $params['gameplay'])->first();
+                if (!$info) throw new Exception('数据不存在');
+            } else {
+                throw new Exception('参数错误');
+            }
 
             $info->odds = $params['odds'];
             $info->updated_by = auth()->id();

+ 5 - 5
app/Http/Controllers/admin/Sport.php

@@ -25,9 +25,9 @@ class Sport extends Controller
             $params = request()->validate([
                 'page' => ['nullable', 'integer', 'min:1'],
                 'limit' => ['nullable', 'integer', 'min:1'],
-                'data_id' => ['nullable', 'string'],
-                'team_name' => ['nullable', 'integer'],
-                'league' => ['nullable', 'string'],
+                'data_id' => ['nullable'],
+                'team_name' => ['nullable'],
+                'league' => ['nullable'],
                 'state' => ['nullable', 'integer'],
                 'status' => ['nullable', 'integer'],
                 'is_locked' => ['nullable', 'integer'],
@@ -48,8 +48,8 @@ class Sport extends Controller
             if (!empty($params['team_name'])) {
                 $team_name = $params['team_name'];
                 $query = $query->where(function ($query) use ($team_name) {
-                    $query->where('team_name', 'like', "%{$team_name}%")
-                    ->orWhere('team_name_en', 'like', "%{$team_name}%")
+                    $query->where('home_team', 'like', "%{$team_name}%")
+                    ->orWhere('home_team_en', 'like', "%{$team_name}%")
                     ->orWhere('guest_team', 'like', "%{$team_name}%")
                     ->orWhere('guest_team_en', 'like', "%{$team_name}%");
                 });

+ 1 - 1
app/Jobs/FiveSecondTaskJob.php

@@ -50,7 +50,7 @@ class FiveSecondTaskJob implements ShouldQueue
     {
         try {
 //            Log::error('🚀 开始执行15秒任务: ' . now());
-            //自定义开奖
+            //(极速28)自定义开奖
             PcIssueService::index();
 
             // 提前60秒秒提醒封盘倒数

+ 1 - 1
app/Services/BalanceLogService.php

@@ -25,7 +25,7 @@ class BalanceLogService extends BaseService
         '提现', '人工扣款', '三方提现', 
         '体彩投注','体彩退款','体彩和局退款','体彩中奖','体彩输半退款',
         '澳门六合彩投注','澳门六合彩退款','澳门六合彩和局退款','澳门六合彩中奖',
-        '香港六合彩投注','香港六合彩退款','香港六合彩和局退款','香港六合彩中奖','PC28投注','极速28投注',
+        '香港六合彩投注','香港六合彩退款','香港六合彩和局退款','香港六合彩中奖','加拿大28投注','极速28投注',
         '投注','中奖', '资产转移', '比比返', '返水', '回水', '笔笔返', '投注退分','充值返现','即充即送','老用户回归','余额宝转入','转出至余额宝','余额宝利息','流水解冻'
     ];
 

+ 5 - 3
app/Services/PcIssueService.php

@@ -17,6 +17,8 @@ class PcIssueService extends BaseService
 {
     public static string $MODEL = PcIssue::class;
 
+    const COUN_TDOWN = 90; //每轮开盘的时长(秒数)
+    const FENG_PAN = 15; //提前15秒封盘
 
     public static function index(): void
     {
@@ -69,7 +71,7 @@ class PcIssueService extends BaseService
             ->orderByDesc('id')->get();
         $now = time();
         $pc28Switch = Config::where('field', 'pc28_switch')->first()->val;
-        $now += 30;
+        $now += self::FENG_PAN; //提前封盘时间
 
         foreach ($list as $index => $item) {
             if (strtotime($item->end_time) < $now) {
@@ -297,8 +299,8 @@ class PcIssueService extends BaseService
             $number = preg_replace('/\D/', '', $issue_no);
             $number = (int)$number + 1;
             $new_str = "P" . $number;
-            $end_time = strtotime($issue->end_time) + 210;
-            $status = $end_time - 30 > $now ? PcIssue::STATUS_BETTING : PcIssue::STATUS_CLOSE;
+            $end_time = strtotime($issue->end_time) + self::COUN_TDOWN; //每轮开盘的时长(秒数)
+            $status = $end_time - self::FENG_PAN > $now ? PcIssue::STATUS_BETTING : PcIssue::STATUS_CLOSE;
             $issue1 = PcIssue::create([
                 'issue_no' => $new_str,
                 'status' => $status,