Viewing file: DashboardController.php (1.55 KB) -rw-rw-rw- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Webkul\Admin\Http\Controllers;
use Webkul\Admin\Helpers\Dashboard;
class DashboardController extends Controller { /** * Request param functions * * @var array */ protected $typeFunctions = [ 'over-all' => 'getOverAllStats', 'revenue-stats' => 'getRevenueStats', 'total-leads' => 'getTotalLeadsStats', 'revenue-by-sources' => 'getLeadsStatsBySources', 'revenue-by-types' => 'getLeadsStatsByTypes', 'top-selling-products' => 'getTopSellingProducts', 'top-persons' => 'getTopPersons', 'open-leads-by-states' => 'getOpenLeadsByStates', ];
/** * Create a new controller instance. * * @return void */ public function __construct(protected Dashboard $dashboardHelper) {}
/** * Display a listing of the resource. * * @return \Illuminate\View\View */ public function index() { return view('admin::dashboard.index')->with([ 'startDate' => $this->dashboardHelper->getStartDate(), 'endDate' => $this->dashboardHelper->getEndDate(), ]); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\JsonResponse */ public function stats() { $stats = $this->dashboardHelper->{$this->typeFunctions[request()->query('type')]}();
return response()->json([ 'statistics' => $stats, 'date_range' => $this->dashboardHelper->getDateRange(), ]); } }
|