edms2023/app/Http/Controllers/Admin/DashboardController.php

58 lines
1.5 KiB
PHP
Raw Normal View History

2023-09-14 20:59:46 +00:00
<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Absent;
use App\User;
use App\Role;
use Session;
use DB;
use Carbon;
class DashboardController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth:admin');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$todays_absent_user = DB::table('absents')
->join('users', 'absents.user_id', '=', 'users.id')
->join('role_user', 'absents.user_id', '=', 'role_user.user_id')
->join('roles', 'role_user.role_id', '=', 'roles.id')
->select('users.*', 'roles.name as role_name', 'absents.id as absent_id')
->orderBy('absents.id', 'desc')
->where([['start_date', '<=', date('Y-m-d')],['end_date', '>=', date('Y-m-d')]])
->where('users.working_status', '=', '1')
->where('users.status', '=', '1')
->get();
$users = DB::table('users')
->join('role_user', 'users.id', '=', 'role_user.user_id')
->join('roles', 'role_user.role_id', '=', 'roles.id')
->select('users.*', 'roles.id as role_id')
->where('users.status', '=', 1)
->where('users.working_status', '=', 1)
->where('roles.id', '=', 1)
->get();
$roles = Role::orderBy('id', 'asc')->get();
return view('admin.home', compact('todays_absent_user', 'users', 'roles'));
}
}