Ken hai 2 días
pai
achega
2c79bace49
Modificáronse 3 ficheiros con 53 adicións e 1 borrados
  1. 1 1
      app/Http/Controllers/api/Issue.php
  2. 51 0
      app/Http/Controllers/api/NewPc.php
  3. 1 0
      routes/api.php

+ 1 - 1
app/Http/Controllers/api/Issue.php

@@ -163,7 +163,7 @@ class Issue extends BaseController
     public function countdown(): JsonResponse
     {
         //获取最新一期已开奖的数据
-        $data2 = \App\Models\Issue::where('status', 3)->orderByDesc('issue_no')->first();
+        $data2 = \App\Models\Issue::where('status', \App\Models\Issue::STATUS_DRAW)->orderByDesc('issue_no')->first();
 
         $issue_no2 = $data2->issue_no + 1;
         $issue_no2 .= '';

+ 51 - 0
app/Http/Controllers/api/NewPc.php

@@ -5,6 +5,7 @@ namespace App\Http\Controllers\api;
 use App\Models\PcCaoHistory;
 use App\Models\PcIssue;
 use App\Models\PcPrediction;
+use App\Services\IssueService;
 use Carbon\Carbon;
 use Illuminate\Validation\ValidationException;
 use Exception;
@@ -136,4 +137,54 @@ class NewPc extends BaseController
         }
         return $this->success($list);
     }
+
+    /**
+     * @api {get} /newPc/countdown 倒计时
+     * @apiGroup newPc
+     * @apiVersion 1.0.0
+     *
+     * @apiSuccess {int} code
+     * @apiSuccess {int} timestamp
+     * @apiSuccess {String} msg
+     * @apiSuccess {Object} data
+     * @apiSuccess {String} data.issue_no 期号
+     * @apiSuccess {int} data.current_time 当前时间
+     * @apiSuccess {int} data.end_time 结束时间
+     * @apiSuccess {Object} data.winnings 开奖结果
+     *
+     */
+    public function countdown(): JsonResponse
+    {
+        //获取最新一期已开奖的数据
+        $data2 = PcIssue::where('status', PcIssue::STATUS_DRAW)->orderByDesc('issue_no')->first();
+
+        $issue_no2 = $data2->issue_no + 1;
+        $issue_no2 .= '';
+        $data1 = PcIssue::where('issue_no', $issue_no2)->first();
+        $end_time = $data1 ? strtotime($data1->end_time) : (bcadd(strtotime($data2->end_time), 210, 0));
+
+        $winnings = explode(',', $data2->winning_numbers);
+        $winnings = array_map('intval', $winnings);
+        $award = IssueService::award($winnings);
+        $arr['sum'] = array_sum($winnings);
+        $arr['a'] = $winnings[0];
+        $arr['b'] = $winnings[1];
+        $arr['c'] = $winnings[2];
+
+        $arr['size'] = in_array('大', $award) ? '大' : "小";
+        $arr['odd_or_even'] = in_array('单', $award) ? '单' : "双";
+        $arr['issue_no'] = $data2->issue_no;
+        $data = [
+            'issue_no' => $issue_no2,
+            'current_time' => time(),
+            'end_time' => $end_time,
+//            'winnings' => $arr,
+        ];
+        if ($data['end_time'] < $data['current_time']) {
+            $data['end_time'] += 210;
+        }
+        $data['aa'] = $data['end_time'] - $data['current_time'];
+        $data['winnings'] = $arr;
+        return $this->success($data);
+    }
 }

+ 1 - 0
routes/api.php

@@ -20,6 +20,7 @@ Route::prefix('/newPc')->group(function () {
     Route::get("/yuanTou", [NewPc::class, 'yuanTou']);
     Route::get("/history", [NewPc::class, 'history']);
     Route::get("/prediction", [NewPc::class, 'prediction']);
+    Route::get("/countdown", [Issue::class, 'countdown']);
 });
 
 Route::prefix('/issue')->group(function () {