Bladeren bron

救济金cd

laowu 15 uur geleden
bovenliggende
commit
227b919d0d
1 gewijzigde bestanden met toevoegingen van 33 en 1 verwijderingen
  1. 33 1
      app/Http/Controllers/Game/ActivityController.php

+ 33 - 1
app/Http/Controllers/Game/ActivityController.php

@@ -160,6 +160,16 @@ class ActivityController extends Controller
 
         $cooldownLeftSeconds = 0;
         $cooldownEndTime = null;
+        $lastRecvTime = $recordProtectList->UpdateDate;
+
+        if (!empty($lastRecvTime)) {
+            $end = Carbon::parse($lastRecvTime)->addSeconds($cooldownSeconds);
+            $now = now();
+            if ($now->lt($end)) {
+                $cooldownLeftSeconds = $now->diffInSeconds($end);
+                $cooldownEndTime = $end->toDateTimeString();
+            }
+        }
 
         // 查询接口返回倒计时信息
         if (!empty($res) && isset($res[0])) {
@@ -172,7 +182,7 @@ class ActivityController extends Controller
             $res[0]->cooldown_seconds = $cooldownSeconds; //deprecated
             $res[0]->cooldown_left_seconds = $cooldownLeftSeconds; //deprecated
             $res[0]->cooldown_end_time = $cooldownEndTime; //deprecated
-            $res[0]->can_receive = 1;
+            $res[0]->can_receive = $cooldownLeftSeconds <= 0 ? 1 : 0;
             $res[0]->new_user_thirty_days_without_recharge = $regDays >= 30 && $webUser['vip'] == 0;
             $res[0]->can_receive_num = max(0, $totalRecharge-$totalAddNum);
             $res[0]->total_recharge = $totalRecharge;
@@ -205,6 +215,28 @@ class ActivityController extends Controller
             //欧洲暂时封闭
             return apiReturnSuc();
         }
+
+        // 领取低保增加 2 小时 CD
+        $cooldownSeconds = 2 * 60 * 60;
+        $lastRecvTime = DB::connection('sqlsrv')
+            ->table('QPAccountsDB.dbo.RecordProtectList')
+            ->where('UserID', $UserID)
+            ->value('UpdateDate');
+        if (!empty($lastRecvTime)) {
+            $end = Carbon::parse($lastRecvTime)->addSeconds($cooldownSeconds);
+            $now = now();
+            if ($now->lt($end)) {
+                $left = $now->diffInSeconds($end);
+                return apiReturnFail(
+                    ['web.protect.cooldown', 'Please claim again after cooldown'],
+                    [
+                        'cooldown_seconds' => $cooldownSeconds,
+                        'cooldown_left_seconds' => $left,
+                        'cooldown_end_time' => $end->toDateTimeString(),
+                    ]
+                );
+            }
+        }
         
         // 非vip用户30日后需要充值才能领取
         $webUser = GlobalUserInfo::toWebData($user);