where('start_date', '<=', date('Y-m-d')) // ->orderBy('start_date') // ->groupBy('start_date') // ->pluck('start_date') // ->toArray(); // 当日数据处理(日常定时任务) $dateList = [date('Y-m-d')]; foreach ($dateList as $date) { $courses = Course::with(['courseSigns' => function ($query) { $query->where('status', 1); }])->where('start_date', $date) ->orderBy('start_date') ->get(); $i = 1; // 编号前缀 $prefix = date('Ymd', strtotime($date)); foreach ($courses as $course) { foreach ($course->courseSigns as $sign) { $user = User::find($sign->user_id); if ($user->no) { continue; } $no = $prefix . str_pad($i, 3, '0', STR_PAD_LEFT); // 更新用户编号 $user->no = $no; $user->save(); $this->info($no); $i++; } } } return $this->info('更新完成'); } }