diff --git a/app/Models/CourseSign.php b/app/Models/CourseSign.php index de5fb52..b35bde8 100755 --- a/app/Models/CourseSign.php +++ b/app/Models/CourseSign.php @@ -274,23 +274,31 @@ class CourseSign extends SoftDeletesModel $suzhouArea = Company::where('company_city', '苏州市')->pluck('company_area')->unique(); $list = []; foreach ($suzhouArea as $area) { + $sourseSignList2 = (clone $courseSignList)->whereHas('user', function ($query) use ($area) { + $query->whereHas('company', function ($query) use ($area) { + $query->where('company_area', $area); + }); + })->get(); + $list[] = [ 'area' => $area, - 'total' => (clone $courseSignList)->whereHas('user', function ($query) use ($area) { - $query->whereHas('company', function ($query) use ($area) { - $query->where('company_area', $area); - }); - })->count(), + // 未去重 + 'total' => $sourseSignList2->count(), + // 已去重 + 'total_unique' => User::groupBy('mobile')->whereIn('id', $sourseSignList2->pluck('user_id'))->count(), ]; } + $courseSignList3 = (clone $courseSignList)->whereHas('user', function ($query) { + $query->whereHas('company', function ($query) { + $query->where('company_city', '!=', '苏州市'); + }); + })->get(); $list[] = [ 'area' => '苏州市外', - 'total' => (clone $courseSignList)->whereHas('user', function ($query) { - $query->whereHas('company', function ($query) { - $query->where('company_city', '!=', '苏州市'); - }); - })->count(), + 'total' => $courseSignList3->count(), + // 已去重 + 'total_unique' => User::groupBy('mobile')->whereIn('id', $courseSignList3->pluck('user_id'))->count(), ]; if ($retList) {