@extends('layouts.admin')
@section('title', 'Dashboard - {{ ucfirst(auth()->user()->roles->first()->name ?? "User") }} Panel')
@section('content')
@php
$userRole = auth()->user()->roles->first()->name ?? 'user';
$userCompanies = [];
if($userRole !== 'admin') {
$userAccess = \App\Models\UserAccess::where('user_id', auth()->id())
->with(['folder.company' => function($query) {
$query->select('id', 'name', 'is_enabled');
}])
->get()
->pluck('folder.company')
->unique('id');
$userCompanies = $userAccess;
}
@endphp
@if(in_array($userRole, ['admin', 'accounts']))
@endif
@if($userRole == 'admin')
Total Users
{{ \App\Models\User::count() }}
@endif
Total Documents
{{ \App\Models\Document::where('status', '!=', 'deleted')->count() }}
Approved
{{ \App\Models\Document::where('status', 'approved')->count() }}
Pending Audit
{{ \App\Models\Document::where('status', 'pending')->count() }}
@if($userRole == 'admin')
Total Companies
{{ \App\Models\Company::count() }}
@endif
@if(in_array($userRole, ['admin', 'accounts']))
Reupload
{{ \App\Models\Document::where('status', 'reupload_requested')->count() }}
@endif
@if($userRole == 'admin')
New Users Today
{{ \App\Models\User::whereDate('created_at', today())->count() }}
@endif
Uploaded Today
{{ \App\Models\Document::whereDate('created_at', today())->count() }}
Approved Today
{{ \App\Models\Document::where('status', 'approved')->whereDate('updated_at', today())->count() }}
New Pending
{{ \App\Models\Document::where('status', 'pending')->whereDate('created_at', today())->count() }}
@if($userRole == 'admin')
New Companies
{{ \App\Models\Company::whereDate('created_at', today())->count() }}
@endif
@if(in_array($userRole, ['admin', 'accounts']))
Reupload Today
{{ \App\Models\Document::where('status', 'reupload_requested')->whereDate('updated_at', today())->count() }}
@endif
Recent Companies
@php
$userRole = auth()->user()->roles->first()->name ?? 'user';
$userCompanies = [];
if($userRole !== 'admin') {
$userAccess = \App\Models\UserAccess::where('user_id', auth()->id())
->with(['folder.company' => function($query) {
$query->select('id', 'name', 'is_enabled');
}])
->get()
->pluck('folder.company')
->unique('id');
$userCompanies = $userAccess;
}
$companies = $userRole === 'admin' ? \App\Models\Company::with('yearFolders')->latest()->take(8)->get() : $userCompanies->take(8);
@endphp
@if($companies->count() > 0)
@foreach($companies as $company)
{{ Str::limit($company->name, 20) }}
{{ $company->yearFolders->count() }} Years
View Details
@endforeach
@else
👋
No companies available
@if(auth()->user()->hasRole('admin'))
Create your first company to get started!
Create Company
@endif
@endif
@if($userRole == 'accounts')
Pending Documents
| # |
Company |
Operator |
Uploaded |
Action |
@php $pendingDocs = \App\Models\Document::where('status', 'pending')->with('user', 'company')->latest()->take(10)->get(); @endphp
@forelse($pendingDocs as $index => $doc)
| {{ $index + 1 }} |
{{ $doc->company->name }} |
{{ $doc->user->name }} |
{{ $doc->created_at->format('d M Y, H:i') }} |
Review
|
@empty
|
No pending documents
|
@endforelse
@endif
{{-- DataTables --}}
@endsection