完善签到 幸运转盘需要完成任务

This commit is contained in:
lingling 2025-02-17 22:48:06 +08:00
parent b409fbe497
commit 82277b6373
3 changed files with 24 additions and 3 deletions

View File

@ -3,6 +3,7 @@
namespace app\controller\api; namespace app\controller\api;
use app\dao\SignDao; use app\dao\SignDao;
use app\dao\UserPhoneLogDao;
use support\Request; use support\Request;
use App\Utils\ApiResponseApp; use App\Utils\ApiResponseApp;
@ -59,10 +60,11 @@ class SignController
*/ */
public function sign(Request $request) public function sign(Request $request)
{ {
//TODO 这里业务逻辑不清晰不懂
//这里需要根据 业务逻辑判断 能不能签到 //这里需要根据 业务逻辑判断 能不能签到
$user_id=$request->data['id']; $user_id=$request->data['id'];
if(!UserPhoneLogDao::getOnlineTimeByPhoneTodayId($user_id)){
return ApiResponseApp::error([],'挂机时长没有超过6小时暂不能签到');
}
SignDao::Sign($user_id); SignDao::Sign($user_id);
return ApiResponseApp::success([]); return ApiResponseApp::success([]);
} }

View File

@ -3,6 +3,7 @@
namespace app\controller\api; namespace app\controller\api;
use app\dao\UserDao; use app\dao\UserDao;
use app\dao\UserPhoneLogDao;
use app\dao\UserRewardDao; use app\dao\UserRewardDao;
use support\Request; use support\Request;
@ -47,7 +48,9 @@ class TurntableController
if($user->money<10){ if($user->money<10){
return ApiResponseApp::error([],'账户余额不足'); return ApiResponseApp::error([],'账户余额不足');
} }
//TODO 这里好像还需要写是否完成今天的任务 if(!UserPhoneLogDao::getOnlineTimeByPhoneTodayId($user_id)){
return ApiResponseApp::error([],'需要完成Whatsapp任务');
}
UserRewardDao::lottery($user_id,-10); UserRewardDao::lottery($user_id,-10);
UserRewardDao::winning($user_id,1); UserRewardDao::winning($user_id,1);
return ApiResponseApp::success(1,'恭喜抽中1.00'); return ApiResponseApp::success(1,'恭喜抽中1.00');

View File

@ -1,6 +1,8 @@
<?php <?php
namespace app\dao; namespace app\dao;
use app\model\UserPhone;
use app\model\UserPhoneLog; use app\model\UserPhoneLog;
/** /**
* 手机号在线时长日志 * 手机号在线时长日志
@ -52,4 +54,18 @@ class UserPhoneLogDao{
$new_UserPhoneLog->save(); $new_UserPhoneLog->save();
} }
} }
/**
* 根据用户id查询 是否有手机号在线时间大于6小时
* 有返回 true 没用返回false
*/
public static function getOnlineTimeByPhoneTodayId($user_id){
$today = date('Y-m-d');
$user_phones=UserPhone::where('user_id',$user_id)->get();
foreach($user_phones as $v){
if(self::getOnlineTimeByPhoneToday($v->phone)>60*60*6){
return true;
}
}
return false;
}
} }