User dashboard caching

This commit is contained in:
Deon George 2021-11-26 17:19:55 +11:00
parent 6acc8ee407
commit 41d36fe86d
No known key found for this signature in database
GPG Key ID: 7670E8DC27415254
3 changed files with 29 additions and 20 deletions

View File

@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use Illuminate\Auth\Events\Registered;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Models\User;
@ -50,7 +51,11 @@ class UserController extends Controller
public function dashboard()
{
return view('dashboard');
$user = Auth::user();
$user->load('systems.addresses.zone.domain');
return view('dashboard')
->with('user',$user);
}
public function home()

View File

@ -61,7 +61,7 @@ class Domain extends Model
if (! $this->echoareas->count())
return collect();
$key = sprintf('%s_%d','daily_echoarea_stats',$this->id);
$key = sprintf('%s_%d','daily_area_stats',$this->id);
return Cache::driver('redis')->remember($key,self::CACHE_TIME,function() {
$where = ['echoarea_id'=>$this->echoareas->pluck('id')->toArray()];
@ -99,6 +99,9 @@ class Domain extends Model
if (! $this->echoareas->count())
return collect();
$key = sprintf('%s_%d_%d','stats',$this->id,$o?->id);
return Cache::driver('redis')->remember($key,self::CACHE_TIME,function() use ($o) {
$where = collect(['echoarea_id'=>$this->echoareas->pluck('id')->toArray()]);
if ($o)
@ -118,5 +121,6 @@ class Domain extends Model
return $item;
});
});
}
}

View File

@ -161,7 +161,7 @@
name: 'Networks',
colorByPoint: true,
data: [
@foreach($o->addresses->pluck('zone.domain')->sortBy('name') as $oo)
@foreach(($xx=$user->systems->pluck('addresses')->flatten()->pluck('zone.domain')->sortBy('name')) as $oo)
@php($x = $oo->stats())
{
name: '{{ $oo->name }}',
@ -176,7 +176,7 @@
colorByPoint: true,
pointPlacement: 0.1,
data: [
@foreach($o->addresses->pluck('zone.domain')->sortBy('name') as $oo)
@foreach($xx as $oo)
@php($x = $oo->stats($o))
{
name: '{{ $oo->name }}',
@ -196,7 +196,7 @@
}
},
series: [
@foreach($o->addresses->pluck('zone.domain')->sortBy('name') as $oo)
@foreach($xx as $oo)
@php($x = $oo->stats())
{
name: '{{ $oo->name }}',
@ -205,7 +205,7 @@
},
@endforeach
@foreach($o->addresses->pluck('zone.domain')->sortBy('name') as $oo)
@foreach($xx as $oo)
@php($x = $oo->stats($o))
{
name: '{{ $oo->name }}',