|
|
|
|
@ -90,16 +90,16 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
})->whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->whereHas('user', function ($query) use ($area) {
|
|
|
|
|
if (isset($area)) {
|
|
|
|
|
if ($area == '苏州市外') {
|
|
|
|
|
$allArea = ParameterDetail::where('parameter_id', 5)->get();
|
|
|
|
|
$query->whereNotIn('company_area', $allArea->pluck('value'));
|
|
|
|
|
} else {
|
|
|
|
|
$query->where('company_area', $area);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// if (isset($area)) {
|
|
|
|
|
// if ($area == '苏州市外') {
|
|
|
|
|
// $allArea = ParameterDetail::where('parameter_id', 5)->get();
|
|
|
|
|
// $query->whereNotIn('company_area', $allArea->pluck('value'));
|
|
|
|
|
// } else {
|
|
|
|
|
// $query->where('company_area', $area);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
})->whereNotIn('status', [4, 5]);
|
|
|
|
|
if ($retList) {
|
|
|
|
|
// 返回列表
|
|
|
|
|
@ -118,16 +118,16 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
$courseSignByType = CourseSign::whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->whereHas('user', function ($query) use ($area) {
|
|
|
|
|
if ($area) {
|
|
|
|
|
if ($area == '苏州市外') {
|
|
|
|
|
$allArea = ParameterDetail::where('parameter_id', 5)->get();
|
|
|
|
|
$query->whereNotIn('company_area', $allArea->pluck('value'));
|
|
|
|
|
} else {
|
|
|
|
|
$query->where('company_area', $area);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// if ($area) {
|
|
|
|
|
// if ($area == '苏州市外') {
|
|
|
|
|
// $allArea = ParameterDetail::where('parameter_id', 5)->get();
|
|
|
|
|
// $query->whereNotIn('company_area', $allArea->pluck('value'));
|
|
|
|
|
// } else {
|
|
|
|
|
// $query->where('company_area', $area);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
})->where(function ($query) use ($status, $course_ids) {
|
|
|
|
|
if (isset($status)) {
|
|
|
|
|
$query->where('status', $status);
|
|
|
|
|
@ -136,10 +136,10 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
$query->whereIn('course_id', $course_ids);
|
|
|
|
|
}
|
|
|
|
|
})->whereNotIn('status', [4, 5])->get();
|
|
|
|
|
$user = User::whereIn('id', $courseSignByType->pluck('user_id'))->distinct('mobile');
|
|
|
|
|
$user = User::whereIn('id', $courseSignByType->pluck('user_id'))->groupBy('mobile')->get();
|
|
|
|
|
if ($retList) {
|
|
|
|
|
// 列表
|
|
|
|
|
return $user->groupBy('mobile')->get();
|
|
|
|
|
return $user;
|
|
|
|
|
} else {
|
|
|
|
|
// 统计数据
|
|
|
|
|
return $user->count();
|
|
|
|
|
@ -154,7 +154,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
$courseSignByType = CourseSign::whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->whereNotIn('status', [4, 5])->get();
|
|
|
|
|
$list = Company::whereHas('users', function ($query) use ($courseSignByType) {
|
|
|
|
|
$query->whereIn('id', $courseSignByType->pluck('user_id'));
|
|
|
|
|
@ -181,7 +181,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
$courseSignsForGanbu = self::whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->where(function ($query) use ($course_ids) {
|
|
|
|
|
if ($course_ids) {
|
|
|
|
|
$query->whereIn('course_id', $course_ids);
|
|
|
|
|
@ -211,7 +211,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
$courseSignsForStock = self::whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->where(function ($query) use ($course_ids) {
|
|
|
|
|
if ($course_ids) {
|
|
|
|
|
$query->whereIn('course_id', $course_ids);
|
|
|
|
|
@ -268,7 +268,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
})->whereHas('course', function ($query) use ($start_date, $end_date) {
|
|
|
|
|
// 开始结束日期的筛选。or查询
|
|
|
|
|
$query->whereBetween('start_date', [$start_date, $end_date])
|
|
|
|
|
->whereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
->orWhereBetween('end_date', [$start_date, $end_date]);
|
|
|
|
|
})->whereHas('user')->whereNotIn('status', [4, 5]);
|
|
|
|
|
// 地区
|
|
|
|
|
$suzhouArea = Company::where('company_city', '苏州市')->pluck('company_area')->unique();
|
|
|
|
|
@ -285,7 +285,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
// 未去重
|
|
|
|
|
'total' => $sourseSignList2->count(),
|
|
|
|
|
// 已去重
|
|
|
|
|
'total_unique' => User::whereIn('id', $sourseSignList2->pluck('user_id'))->distinct('mobile')->groupBy('mobile')->get()->count(),
|
|
|
|
|
'total_unique' => User::whereIn('id', $sourseSignList2->pluck('user_id'))->groupBy('mobile')->get()->count(),
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
@ -298,7 +298,7 @@ class CourseSign extends SoftDeletesModel
|
|
|
|
|
'area' => '苏州市外',
|
|
|
|
|
'total' => $courseSignList3->count(),
|
|
|
|
|
// 已去重
|
|
|
|
|
'total_unique' => User::groupBy('mobile')->whereIn('id', $courseSignList3->pluck('user_id'))->count(),
|
|
|
|
|
'total_unique' => User::groupBy('mobile')->whereIn('id', $courseSignList3->pluck('user_id'))->get()->count(),
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
if ($retList) {
|
|
|
|
|
|