<?php namespace app\controller\api; use support\Request; use App\Utils\ApiResponseApp; use App\model\Signlog; use hg\apidoc\annotation as Apidoc; use support\Db; /** * @Apidoc\Title("用户签到控制器") */ class SignController { protected $noNeedLogin = ['lists', 'get_project', 'get_projectdetailed', 'get_mechanism_list']; /** * @Apidoc\Title("1.0 签到信息") * @Apidoc\Url("api/Sign/info") * @Apidoc\Method("GET") */ public function info(Request $request) { /** * today_sign 今天是否签到 当前是否签到,0 表示今天还没有签到,1 则表示今天已经签到 * sign_days 用户已经连续签到的天数 * next_days 距离下一个奖励或活动的天数,表示用户还需等待多少天才能解锁下一个奖励 * next_score 下一个奖励 积分 * sign_info 当月签到历史 * day_score 每天签到赠送积分数量 */ $user_id=$request->data['id']; // $res=Signlog::all(); // 获取当前月份的天数 $days_in_month = date('t'); for ($day = 1; $day <= $days_in_month; $day++) { $res['sign_info'][$day]=0; } $res['today_sign']=0; $res['sign_days']=0; $res['next_days']=7; $res['next_score']=500; $res['day_score']=30; return ApiResponseApp::success($res); } /** * @Apidoc\Title("1.0 签到") * @Apidoc\Url("api/Sign/sign") * @Apidoc\Method("GET") */ public function sign(Request $request) { //TODO 这里业务逻辑不清晰不懂 //这里需要根据 业务逻辑判断 能不能签到 $user_id=$request->data['id']; $Signlog=new Signlog(); // 获取当前月份的天数 $Signlog->userid=$user_id; $Signlog->save(); return ApiResponseApp::success([]); } }