任务统计提交

This commit is contained in:
2025-12-18 16:30:46 +08:00
parent 3c3c332d05
commit e9eaedd14d
4 changed files with 290 additions and 10 deletions

View File

@@ -305,6 +305,7 @@ class Tasks extends Model
return ['code' => 0, 'msg' => '您已完成该任务','data' => null];
}
$is_completed = 0;
$completion_time = null;
if(in_array($task_id,[21,22,23])){
$task_student_data =[];
$task_student = Db::name('vs_tasks_student')->where(['user_id'=>$user_id,'task_id'=>$task_id,'student_id'=>$student_id,'status'=>0,'delete_time'=>0])->find();
@@ -341,15 +342,18 @@ class Tasks extends Model
}
if($task_info['target_quantity']==$current_progress){
$is_completed = 1;
$completion_time = time();
}
$reslut = Db::name('vs_tasks_user_daily')->where('id',$user_daily_tasks['id'])->update([
'current_progress' => $current_progress,
'is_completed'=> $is_completed,
'ext' => $ext_value,
'completion_time' => $completion_time,
]);
}else{
if($task_info['target_quantity'] == 1){
$is_completed = 1;
$completion_time = time();
}
$reslut = Db::name('vs_tasks_user_daily')->insert([
'user_id' => $user_id,
@@ -359,6 +363,7 @@ class Tasks extends Model
'is_completed' => $is_completed,
'ext' => $ext_value,
'createtime' => time(),
'completion_time' => $completion_time,
]);
}
}
@@ -454,18 +459,49 @@ class Tasks extends Model
Db::rollback();
return ['code' => 0, 'msg' => '操作失败', 'data' => null];
}
Db::name('vs_tasks_user_daily')->insert([
'user_id' => $user_id,
'task_id' => $task_id,
'tasks_bag_id' => $task_info['tasks_bag_id'],
'is_completed' => 1,
'is_claimed' => 1,
'createtime' => time(),
'completion_time' => $user_sign_task['createtime'],
'collection_time' => time(),
]);
}elseif(in_array($task_id,[21,22,23])) {
$reslut = Db::name('vs_tasks_student')->where('id', $task_student['id'])->update([
'status' => 2,
'updatetime' => time(),
]);
Db::name('vs_tasks_user_daily')->insert([
'user_id' => $user_id,
'task_id' => $task_id,
'tasks_bag_id' => $task_info['tasks_bag_id'],
'is_completed' => 1,
'is_claimed' => 1,
'createtime' => time(),
'completion_time' => $task_student['createtime'],
'collection_time' => time(),
]);
}elseif(in_array($task_id,[26,27,28,29,30,31,32])){
$reslut = Db::name('vs_user_cp_task')->where(['id'=>$user_couple_task['id']])->update([
'status' => 2
]);
Db::name('vs_tasks_user_daily')->insert([
'user_id' => $user_id,
'task_id' => $task_id,
'tasks_bag_id' => $task_info['tasks_bag_id'],
'is_completed' => 1,
'is_claimed' => 1,
'createtime' => time(),
'completion_time' => $user_couple_task['createtime'],
'collection_time' => time(),
]);
} else{
$reslut = Db::name('vs_tasks_user_daily')->where('id',$user_daily_tasks['id'])->update([
'is_claimed' => 1,
'collection_time' => time(),
]);
if (!$reslut) {
Db::rollback();