panda 6 maanden geleden
bovenliggende
commit
46169d5e77

+ 5 - 4
app/Controller/Api/v1/PlayerController.php

@@ -14,6 +14,7 @@ use App\Request\Api\v1\Player\RecordRequest;
 use App\Master\Enum\RedisKeyEnum;
 use App\Utils\RedisUtil;
 use App\Service\QueueService;
+use Hyperf\Di\Annotation\Inject;
 
 /**
  * 选手接口
@@ -68,7 +69,7 @@ class PlayerController extends AbstractController
     }
 
     //投票检查
-    private function record_check(){
+    private function record_check($user_id){
         $result = array(
             'status'=>true,
             'code'=>1,
@@ -78,7 +79,7 @@ class PlayerController extends AbstractController
 
 
         //今天,投了几票
-        $today_record = RedisUtil::getInstance(RedisKeyEnum::VOTE_RECORD.date('Y-m-d').':'.$user['id'])->get();
+        $today_record = RedisUtil::getInstance(RedisKeyEnum::VOTE_RECORD.date('Y-m-d').':'.$user_id)->get();
         //今天,免费的的票
         $gift_votes = site('gift_votes_user_eday');
         //今天,免费的答题次数
@@ -94,7 +95,7 @@ class PlayerController extends AbstractController
         }
 
         //今天,用户答对的次数,也就是答题获得的票数
-        $question_vote  = RedisUtil::getInstance(RedisKeyEnum::EAXM_RIGHT.date('Y-m-d').':'.$user['id'])->get();
+        $question_vote  = RedisUtil::getInstance(RedisKeyEnum::EAXM_RIGHT.date('Y-m-d').':'.$user_id)->get();
 
         //投票次数  >= 免费票 + 答对次数
         if($today_record >= $gift_votes + $question_vote){
@@ -104,7 +105,7 @@ class PlayerController extends AbstractController
             $result['uservote'] = 0;
 
             //今天,用户答题的次数
-            $today_question = RedisUtil::getInstance(RedisKeyEnum::EAXM_TIMES.date('Y-m-d').':'.$user['id'])->get();
+            $today_question = RedisUtil::getInstance(RedisKeyEnum::EAXM_TIMES.date('Y-m-d').':'.$user_id)->get();
 
             //还有答题机会
             if($exam_times > $today_question){

+ 4 - 0
app/Controller/Api/v1/QuestionController.php

@@ -5,6 +5,7 @@ declare(strict_types=1);
 namespace App\Controller\Api\v1;
 
 use App\Controller\AbstractController;
+use App\Service\QueueService;
 use App\Utils\AppResult;
 use App\Utils\Control\AuthUser;
 use Hyperf\DbConnection\Db;
@@ -13,6 +14,7 @@ use Hyperf\DbConnection\Db;
 use App\Request\Api\v1\Question\SubmitRequest;
 use App\Master\Enum\RedisKeyEnum;
 use App\Utils\RedisUtil;
+use Hyperf\Di\Annotation\Inject;
 
 /**
  * 选手接口
@@ -23,6 +25,8 @@ class QuestionController extends AbstractController
     // 日志模块名称
     const LOG_MODULE = 'v1/QuestionController';
 
+    #[Inject]
+    protected QueueService $service;
 
     /**
      * 答题

+ 9 - 0
app/Utils/Encrypt/Token/Driver/Redis.php

@@ -6,6 +6,7 @@ namespace App\Utils\Encrypt\Token\Driver;
 use App\Utils\Encrypt\Token\Driver;
 use Hyperf\Config\Annotation\Value;
 use Hyperf\Context\ApplicationContext;
+use function Hyperf\Config\config;
 
 /**
  * Token操作类
@@ -94,6 +95,14 @@ class Redis extends Driver
      */
     public function get(string $token): array
     {
+        //方便测试
+        if (strpos($token, 'testuid_') !== false && config('app_debug',false)) {
+            $uid = substr($token, 8);
+            return [
+                'user_id' => intval($uid),
+            ];
+        }
+        //方便测试
         $key = $this->getEncryptedToken($token);
         $value = $this->handler->get($key);
         if (is_null($value) || false === $value) {

+ 1 - 1
routes/api/routes.php

@@ -31,7 +31,7 @@ Router::addGroup('/v1', function () {
     // 需登录
     Router::addGroup('/auth', function () {
 
-        Router::post('/player/recode', [PlayerController::class, 'recode']);
+        Router::post('/player/record', [PlayerController::class, 'record']);
         Router::post('/question/submit', [QuestionController::class, 'submit']);
 
     }, ['middleware' => [ApiSign::class]]);