public function getDomainsInf() { $organ = json_decode(INPUT::get('data')); $ar = array(); if (!empty($organ)) { $ar0 = Proverka::raw(function ($collection) { $organ = json_decode(INPUT::get('data')); return $collection->aggregate(array(array('$match' => array('organization.name' => $organ)), array('$project' => array('domain' => 1, 'organization.ips.count' => 1)), array('$group' => array('_id' => '$domain', 'number' => array('$sum' => '$organization.ips.count'))), array('$sort' => array('number' => -1)), array('$limit' => 10))); }); } else { $ar0 = Proverka::raw(function ($collection) { return $collection->aggregate(array(array('$project' => array('domain' => 1, 'organization.ips.count' => 1)), array('$group' => array('_id' => '$domain', 'number' => array('$sum' => '$organization.ips.count'))), array('$sort' => array('number' => -1)), array('$limit' => 10))); }); } $ar = $ar0['result']; foreach ($ar as $k => $val) { $ar[$k]['domain'] = $ar[$k]['_id']; unset($ar[$k]['_id']); } $ar = json_encode($ar); return response()->json($ar)->setStatusCode(200); }