|
|
|
|
@ -811,6 +811,43 @@ class OtherController extends CommonController
|
|
|
|
|
// 跟班学员明细 - 使用模型方法
|
|
|
|
|
$users = CourseSign::genban($start_date, $end_date, $course_ids, true);
|
|
|
|
|
foreach ($users as $user) {
|
|
|
|
|
// 获取该学员的课程报名记录
|
|
|
|
|
$userCourseSigns = CourseSign::where(function ($query) use ($course_ids) {
|
|
|
|
|
// status = 1
|
|
|
|
|
$query->where('status', 1);
|
|
|
|
|
// course_ids筛选
|
|
|
|
|
if ($course_ids && $course_ids->isNotEmpty()) {
|
|
|
|
|
$query->whereIn('course_id', $course_ids);
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
->whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
$query->where('is_chart', 1);
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
if ($start_date && $end_date) {
|
|
|
|
|
$query->where(function ($q) use ($start_date, $end_date) {
|
|
|
|
|
$q->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
->whereNotIn('status', [4, 5, 6])
|
|
|
|
|
->where('user_id', $user->id)
|
|
|
|
|
->with(['course.typeDetail'])
|
|
|
|
|
->get();
|
|
|
|
|
|
|
|
|
|
// 获取课程名称列表,用中文顿号分隔
|
|
|
|
|
$courseNames = $userCourseSigns->pluck('course.name')->filter()->unique()->values()->implode('、');
|
|
|
|
|
|
|
|
|
|
// 获取课程体系列表,用中文顿号分隔
|
|
|
|
|
$courseTypes = $userCourseSigns->pluck('course.typeDetail.name')
|
|
|
|
|
->filter()
|
|
|
|
|
->unique()
|
|
|
|
|
->values()
|
|
|
|
|
->implode('、');
|
|
|
|
|
|
|
|
|
|
// 报名课程数
|
|
|
|
|
$courseCount = $userCourseSigns->count();
|
|
|
|
|
|
|
|
|
|
$data[] = [
|
|
|
|
|
'name' => $user->username ?? '',
|
|
|
|
|
'sex' => $user->sex ?? '',
|
|
|
|
|
@ -818,6 +855,9 @@ class OtherController extends CommonController
|
|
|
|
|
'company_name' => $user->company_name ?? '',
|
|
|
|
|
'company_position' => $user->company_position ?? '',
|
|
|
|
|
'from' => $user->from ?? '',
|
|
|
|
|
'course_names' => $courseNames,
|
|
|
|
|
'course_types' => $courseTypes,
|
|
|
|
|
'course_count' => $courseCount,
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
$fields = [
|
|
|
|
|
@ -827,6 +867,9 @@ class OtherController extends CommonController
|
|
|
|
|
'company_name' => '企业名称',
|
|
|
|
|
'company_position' => '职位',
|
|
|
|
|
'from' => '标签',
|
|
|
|
|
'course_names' => '课程名称',
|
|
|
|
|
'course_types' => '课程体系',
|
|
|
|
|
'course_count' => '报名课程数',
|
|
|
|
|
];
|
|
|
|
|
$filename = '跟班学员明细';
|
|
|
|
|
break;
|
|
|
|
|
|