public function showUserBasedList() { $sales_sum = Prospect::where('status_closed', '1')->sum('sale_amount'); $sales_quantity = Prospect::where('status_closed', '1')->sum('sale_quantity'); $closed_count = Prospect::where('status_closed', '1')->count(); $not_interested_count = Prospect::where('status_not_interested', '1')->count(); $distinct_users = Prospect::select(array(DB::raw('DISTINCT `users`.`name`'), 'users.id'))->leftJoin('users', function ($join) { $join->on('users.id', '=', 'prospects.user_id'); })->get(); $prospects = array(); foreach ($distinct_users as $distinct_user) { $prospects[$distinct_user->id] = Prospect::where('user_id', $distinct_user->id)->orderBy('due_contact_date', 'asc')->get(); $prospects[$distinct_user->id] = $prospects[$distinct_user->id]->reverse(); } return view('user_prospects')->with('distinct_users', $distinct_users)->with('prospects', $prospects)->with('sales_sum', $sales_sum)->with('sales_quantity', $sales_quantity)->with('not_interested_count', $not_interested_count)->with('closed_count', $closed_count); }