From 07c71c04baff9a1f97a88490dfb9f21de0ae96b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=92=8A?= Date: Tue, 30 Dec 2025 22:58:02 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/Tasks.php | 80 ++++++++++++++++++++++++++------- 1 file changed, 63 insertions(+), 17 deletions(-) diff --git a/application/api/model/Tasks.php b/application/api/model/Tasks.php index 7d46b3aa..897ea272 100644 --- a/application/api/model/Tasks.php +++ b/application/api/model/Tasks.php @@ -106,11 +106,23 @@ class Tasks extends Model $reslut['gift_box_list'][$key]['status_str'] = '已用完('.$reslut['gift_box_list'][$key]['taday_number'].'/'.$ext['num'].')'; } } - //判断用户是否实名认证,并查询用户手机号下的用户 - $is_real = model('UserData')->real_name_info($user_id); - if($is_real['code']==1){ - if($is_real['data']['is_real'] ==1){ - $user_ids = db::name('user')->where('mobile',$is_real['data']['mobile'])->column('id'); + //查询是否实名认证 + $mobile = db::name('user')->where(['id' => $user_id,'status'=>1])->value('mobile'); + $is_real = db::name('user_auth')->where('mobile' , $mobile)->field('real_name,card_id,is_real,mobile')->find(); + if(empty($is_real)){ + return ['code' => 0, 'msg' => '请先实名认证','data' => null]; + }else{ + if($is_real['is_real'] !=1){ + return ['code' => 0, 'msg' => '请先实名认证','data' => null]; + }else{ + //查询同一个身份证下的 用户 + $user_auth_mobile = db::name('user_auth')->where(['card_id'=>$is_real['card_id']])->column('mobile'); + if(count($user_auth_mobile)>1){ + $user_ids = db::name('user')->whereIn('mobile',$user_auth_mobile)->column('id'); + }else{ + $user_ids = db::name('user')->where('mobile',$is_real['mobile'])->column('id'); + } + } } @@ -335,15 +347,41 @@ class Tasks extends Model $user_daily_tasks = Db::name('vs_tasks_user_daily')->where('user_id',$user_id)->where('task_id',$task_id)->whereTime('createtime', 'today')->find(); }else{ if($task_info['task_type'] == 1){ - //判断用户是否实名认证,并查询用户手机号下的用户 - $is_real = model('UserData')->real_name_info($user_id); - if($is_real['code']==1){ - if($is_real['data']['is_real'] ==1){ - $user_ids = db::name('user')->where('mobile',$is_real['data']['mobile'])->column('id'); - $user_daily_tasks = Db::name('vs_tasks_user_daily')->whereIn('user_id',$user_ids)->where('task_id',$task_id)->find(); - if($user_daily_tasks){ - return ['code' => 0, 'msg' => '您已完成该任务','data' => null]; + //查询是否实名认证 + $mobile = db::name('user')->where(['id' => $user_id,'status'=>1])->value('mobile'); + $is_real = db::name('user_auth')->where('mobile' , $mobile)->field('real_name,card_id,is_real,mobile')->find(); + if(empty($is_real)){ + return ['code' => 0, 'msg' => '请先实名认证','data' => null]; + }else{ + if($is_real['is_real'] !=1){ + return ['code' => 0, 'msg' => '请先实名认证','data' => null]; + }else{ + //查询同一个身份证下的 用户 + $user_auth_mobile = db::name('user_auth')->where(['card_id'=>$is_real['card_id']])->column('mobile'); + if(count($user_auth_mobile)>1){ + $user_ids = db::name('user')->whereIn('mobile',$user_auth_mobile)->column('id'); + }else{ + $user_ids = db::name('user')->where('mobile',$is_real['mobile'])->column('id'); } + + } + } + + + //判断用户是否实名认证,并查询用户手机号下的用户 + $mobile = db::name('user')->where(['id' => $user_id,'status'=>1])->value('mobile'); + $is_real = db::name('user_auth')->where('mobile' , $mobile)->field('real_name,card_id,is_real,mobile')->find(); + if($is_real['is_real'] ==1){ + //查询同一个身份证下的 用户 + $user_auth_mobile = db::name('user_auth')->where(['card_id'=>$is_real['card_id']])->column('mobile'); + if(count($user_auth_mobile)>1){ + $user_ids = db::name('user')->whereIn('mobile',$user_auth_mobile)->column('id'); + }else{ + $user_ids = db::name('user')->where('mobile',$is_real['mobile'])->column('id'); + } + $user_daily_tasks = Db::name('vs_tasks_user_daily')->whereIn('user_id',$user_ids)->where('task_id',$task_id)->find(); + if($user_daily_tasks){ + return ['code' => 0, 'msg' => '您已完成该任务','data' => null]; } } } @@ -434,14 +472,22 @@ class Tasks extends Model //领取每日任务奖励 public function daily_tasks_receive($user_id,$task_id,$student_id = 0){ //查询是否实名认证 - $is_real = model('UserData')->real_name_info($user_id); - if($is_real['code']==0){ + $mobile = db::name('user')->where(['id' => $user_id,'status'=>1])->value('mobile'); + $is_real = db::name('user_auth')->where('mobile' , $mobile)->field('real_name,card_id,is_real,mobile')->find(); + if(empty($is_real)){ return ['code' => 0, 'msg' => '请先实名认证','data' => null]; }else{ - if($is_real['data']['is_real'] !=1){ + if($is_real['is_real'] !=1){ return ['code' => 0, 'msg' => '请先实名认证','data' => null]; }else{ - $user_ids = db::name('user')->where('mobile',$is_real['data']['mobile'])->column('id'); + //查询同一个身份证下的 用户 + $user_auth_mobile = db::name('user_auth')->where(['card_id'=>$is_real['card_id']])->column('mobile'); + if(count($user_auth_mobile)>1){ + $user_ids = db::name('user')->whereIn('mobile',$user_auth_mobile)->column('id'); + }else{ + $user_ids = db::name('user')->where('mobile',$is_real['mobile'])->column('id'); + } + } } $task_info = Db::name('vs_tasks')->where('id',$task_id)->find();