From 51764f4f53c8ee8bbf35c386576c7f45743c4c29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=92=8A?= Date: Thu, 11 Dec 2025 18:30:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8A=9F=E8=83=BD=E6=8F=90?= =?UTF-8?q?=E4=BA=A4-=E8=81=94=E8=B0=83-=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/Tasks.php | 58 +++++++++++++++++++++------------ 1 file changed, 38 insertions(+), 20 deletions(-) diff --git a/application/api/model/Tasks.php b/application/api/model/Tasks.php index cd82d71e..43c10f20 100644 --- a/application/api/model/Tasks.php +++ b/application/api/model/Tasks.php @@ -18,9 +18,8 @@ class Tasks extends Model public $task_type = [ '1' => '新手任务', '2' => '每日任务', - '3' => '师徒任务', - '4' => '情侣任务', - '5' => '签到任务', + '3' => '情侣任务', + '4' => '师徒任务', ]; //每日任务类型枚举 public $processing_type_str = [ @@ -133,14 +132,23 @@ class Tasks extends Model $v['reward_str'] = $v['gold_reward']."钻石"; } } - if(in_array($v['task_type'],[1,2])){ + if($v['task_type'] == 2){ //今日完成进度 $user_daily_tasks = Db::name('vs_tasks_user_daily') ->where('user_id',$user_id) ->where('task_id',$v['task_id']) ->whereTime('createtime', 'today') ->find(); - }elseif(in_array($v['task_id'],[21,22,23])){ + }else{ + $user_daily_tasks = Db::name('vs_tasks_user_daily')->where('user_id',$user_id)->where('task_id',$v['task_id'])->find(); + if($v['jump_type']==4){ + //跳转的房间路径 + $v['from_id'] = model('api/Room')->task_jump_room_recommend($v['task_id']); + } + } + if(in_array($v['task_id'],[21,22,23])){ + $i = 0; + $sign_student_list = []; $first_sign_student_list = db::name('vs_tasks_student') ->where('user_id',$user_id) ->where('task_id',$v['task_id']) @@ -151,18 +159,25 @@ class Tasks extends Model }else{ //徒弟列表 foreach ($first_sign_student_list as $key => $value) { - if($v['task_id'] = 21){ + if($v['task_id'] == 21){ $title = "拍卖房停留({$value['value']} / {$v['target_quantity']})分钟"; - }elseif($v['task_id'] = 22){ + }elseif($v['task_id'] == 22){ $title = "点唱房点歌({$value['value']} / {$v['target_quantity']})首"; - }elseif($v['task_id'] = 23){ + }elseif($v['task_id'] == 23){ $title = "交友房停留({$value['value']} / {$v['target_quantity']})分钟"; } - $v['sign_student_list']['task_id'] = $v['task_id']; - $v['sign_student_list']['student_id'] = $value['student_id']; - $v['sign_student_list']['student_nickname'] = db::name('user')->where('id',$value['student_id'])->value('nickname'); - $v['sign_student_list']['task_name'] = '邀请'.$v['sign_student_list']['student_nickname']."徒弟在{$title},并送给徒弟特殊礼物"; - $v['sign_student_list']['reward_str'] = $v['reward_str']; + $sign_student_list[$i]['task_id'] = $v['task_id']; + $sign_student_list[$i]['icon'] = ""; + $sign_student_list[$i]['target_quantity'] = $v['target_quantity']; + $sign_student_list[$i]['task_type'] = $v['task_type']; + $sign_student_list[$i]['jump_type'] = $v['jump_type']; + $sign_student_list[$i]['tasks_bag_id'] = $v['tasks_bag_id']; + $sign_student_list[$i]['student_id'] = $value['student_id']; + $student_nickname = db::name('user')->where('id',$value['student_id'])->value('nickname'); + $sign_student_list[$i]['task_name'] = '邀请'.$student_nickname."徒弟在{$title},并送给徒弟特殊礼物"; + $sign_student_list[$i]['reward_str'] = $v['reward_str']; + $sign_student_list[$i]['from_id'] = model('api/Room')->task_jump_room_recommend($v['task_id'],$value['student_id']); + $i++; } } }elseif($v['task_id'] == 24){ @@ -180,12 +195,6 @@ class Tasks extends Model }else{ $progress = $user_sign_task['times']-1 ?? 0; } - }else{ - $user_daily_tasks = Db::name('vs_tasks_user_daily')->where('user_id',$user_id)->where('task_id',$v['task_id'])->find(); - if($v['jump_type']==4){ - //跳转的房间路径 - $v['from_id'] = model('api/Room')->task_jump_room_recommend($v['task_id']); - } } $progress = isset($user_daily_tasks['current_progress']) ? $user_daily_tasks['current_progress'] : 0; $v['is_time'] = 0; @@ -217,7 +226,16 @@ class Tasks extends Model } $v['jump_type_str'] = $this->jump_type[$v['jump_type']]; //返回任务列表 - $reslut['tasks'][$v['task_type']-1]['task_list'][] = $v; + if($v['task_type']!=4){ + $reslut['tasks'][$v['task_type']-1]['task_list'][] = $v; + }else{ + if(!empty($sign_student_list)){ + foreach ($sign_student_list as $key => $value) { + $reslut['tasks'][$v['task_type']-1]['task_list'][] = $value; + } + } + + } } return ['code' => 1, 'msg' => '获取成功', 'data' => $reslut]; }