wip
This commit is contained in:
parent
9bca444e99
commit
75abd3f314
51
app/DAL/Radiologist.php
Normal file
51
app/DAL/Radiologist.php
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\DAL;
|
||||||
|
|
||||||
|
use App\Services\UserService;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
|
final readonly class Radiologist
|
||||||
|
{
|
||||||
|
public static function assignables()
|
||||||
|
{
|
||||||
|
$sql = <<<'SQL'
|
||||||
|
SELECT
|
||||||
|
users."id",
|
||||||
|
users.display_name,
|
||||||
|
COALESCE (studies.assign_counts, 0) AS workload
|
||||||
|
FROM
|
||||||
|
roles
|
||||||
|
INNER JOIN model_has_roles ON roles."id" = model_has_roles.role_id
|
||||||
|
INNER JOIN users ON users."id" = model_has_roles.model_id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT
|
||||||
|
assigned_physician_id,
|
||||||
|
COUNT(*) AS assign_counts
|
||||||
|
FROM
|
||||||
|
studies
|
||||||
|
WHERE
|
||||||
|
received_at::DATE >= NOW() - INTERVAL '3 DAY'
|
||||||
|
AND report_status < 3
|
||||||
|
AND reported_at IS NULL
|
||||||
|
GROUP BY
|
||||||
|
assigned_physician_id
|
||||||
|
) AS studies ON studies.assigned_physician_id = users."id"
|
||||||
|
WHERE
|
||||||
|
roles."name" = 'radiologist'
|
||||||
|
AND users.is_active = TRUE
|
||||||
|
GROUP BY
|
||||||
|
users."id",
|
||||||
|
studies.assign_counts
|
||||||
|
ORDER BY
|
||||||
|
users.display_name
|
||||||
|
SQL;
|
||||||
|
|
||||||
|
$rows = DB::select($sql);
|
||||||
|
foreach ($rows as $row) {
|
||||||
|
$row->last_seen = UserService::getLastSeen((int) $row->id);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $rows;
|
||||||
|
}
|
||||||
|
}
|
@ -73,7 +73,7 @@
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'home' => '/',
|
'home' => '/studies',
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
@php
|
@php
|
||||||
use App\Services\ThemeHelper;
|
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
$configData = ThemeHelper::appClasses();
|
$configData = App\Services\ThemeHelper::appClasses();
|
||||||
$customizerHidden = 'customizer-hide';
|
$customizerHidden = 'customizer-hide';
|
||||||
@endphp
|
@endphp
|
||||||
|
|
||||||
@ -54,14 +53,14 @@ class="d-flex col-12 col-lg-5 col-xl-4 align-items-center authentication-bg posi
|
|||||||
<form id="formAuthentication" class="mb-5" action="{{ route('login') }}" method="POST">
|
<form id="formAuthentication" class="mb-5" action="{{ route('login') }}" method="POST">
|
||||||
@csrf
|
@csrf
|
||||||
<div class="form-floating form-floating-outline mb-5">
|
<div class="form-floating form-floating-outline mb-5">
|
||||||
<input type="text" class="form-control @error('email') is-invalid @enderror"
|
<input type="text" class="form-control @error('username') is-invalid @enderror"
|
||||||
id="login-email" name="email" placeholder="john@example.com" autofocus
|
id="login-username" name="username" autofocus
|
||||||
value="{{ old('email') }}">
|
value="{{ old('username') }}">
|
||||||
<label for="login-email">Email</label>
|
<label for="login-username">Username</label>
|
||||||
@error('email')
|
@error('username')
|
||||||
<span class="invalid-feedback" role="alert">
|
<span class="invalid-feedback" role="alert">
|
||||||
<span class="fw-medium">{{ $message }}</span>
|
<span class="fw-medium">{{ $message }}</span>
|
||||||
</span>
|
</span>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-5">
|
<div class="mb-5">
|
||||||
@ -79,8 +78,8 @@ class="form-control @error('password') is-invalid @enderror"
|
|||||||
</div>
|
</div>
|
||||||
@error('password')
|
@error('password')
|
||||||
<span class="invalid-feedback" role="alert">
|
<span class="invalid-feedback" role="alert">
|
||||||
<span class="fw-medium">{{ $message }}</span>
|
<span class="fw-medium">{{ $message }}</span>
|
||||||
</span>
|
</span>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -10,6 +10,8 @@
|
|||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
|
||||||
Route::get('/', function () {
|
Route::get('/', function () {
|
||||||
|
// dd(Radiologist::assignables());
|
||||||
|
|
||||||
return view('welcome');
|
return view('welcome');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user