This commit is contained in:
Dr Masroor Ehsan 2025-01-07 01:04:18 +06:00
parent d5a30a79ea
commit 01a2868adb
4 changed files with 132 additions and 83 deletions

View File

@ -5,6 +5,7 @@
use App\DAL\Radiologists;
use App\Http\Controllers\HashidControllerBase;
use App\Http\Requests\AssignPhysicianRequest;
use App\Models\Enums\ReportStatus;
use App\Models\Enums\UserRole;
use App\Models\Study;
use App\Models\User;
@ -18,12 +19,12 @@ public function show()
$this->decodeKeys();
$study = Study::with('assignedPhysician')->findOrFail($this->key);
$rads = User::active()->role(UserRole::Radiologist)->get(['id', 'display_name', 'profile_photo_path', 'first_name', 'last_name', 'created_at']);
$stats = Radiologists::worklist_stats();
$stats = Radiologists::worklist_stats(3, ReportStatus::Finalized->value);
foreach ($stats as $rad) {
$found = $rads->where('id', $rad->id)->first();
if ($found) {
$found->info['workload'] = $rad->workload;
$found->info['last_seen'] = 'Seen: ' . ($rad->last_seen ?? Carbon::now()->addHours(-10))->diffForHumans();
$found->info['last_seen'] = ($rad->last_seen ?? Carbon::now()->addHours(-10))->diffForHumans();
}
}

View File

@ -7,3 +7,13 @@
width: $badge-width;
@include font-size($badge-font-size);
}
.badge-tiny {
min-width: 1.8em;
padding: .25em !important;
margin-left: .1em;
margin-right: .1em;
color: white !important;
cursor: pointer;
}

View File

@ -11,6 +11,7 @@
$active-border: null
) {
}
@mixin template-button-variant(
$parent,
$background,
@ -49,6 +50,7 @@
@include gradient-bg($background);
border-color: $border;
@include box-shadow($btn-box-shadow);
&:hover {
color: $hover-color !important;
@include gradient-bg($hover-background !important);
@ -130,6 +132,7 @@
#{$parent} {
color: $label-color !important;
&.waves-effect {
.waves-ripple {
background: radial-gradient(
@ -232,6 +235,7 @@
color: $label-color;
border-color: $label-background;
background: $label-background;
&.waves-effect {
.waves-ripple {
background: radial-gradient(
@ -267,6 +271,7 @@
background-image: if($enable-gradients, none !important, null);
border-color: $active-background !important;
}
&.disabled,
&:disabled {
color: $label-color !important;
@ -324,6 +329,7 @@
color: $color;
border-color: $border-color;
background: transparent;
&.waves-effect {
.waves-ripple {
background: radial-gradient(
@ -381,3 +387,10 @@
color: color-contrast($color-hover);
}
}
.btn-group-xs > .btn, .btn-xs {
padding: 1px 5px;
font-size: 12px;
line-height: 1.4;
border-radius: 3px;
}

View File

@ -1,27 +1,46 @@
<div class="row mb-2">
<div class="col-4">
Currently assigned: {{ $study->assignedPhysician?->display_name }}
</div>
<div class="col-2">
@php
$label = isset($study->assignedPhysician) ? 'Re-assign': 'Assign';
$color = isset($study->assignedPhysician) ? 'btn-instagram': 'btn-primary';
@endphp
<div class="row mb-2 text-nowrap">
<table class="table table-borderless table-sm">
<tr>
<td>Patient ID</td>
<td class="fw-semibold">{{ $study->patient_id }}</td>
</tr>
<tr>
<td>Patient Name</td>
<td class="fw-semibold">{{ $study->patient_name }}</td>
</tr>
<tr>
<td>Currently assigned</td>
<td>
@isset($study->assignedPhysician)
<div class="d-inline-flex">
<span class="fw-semibold me-4">{{ $study->assignedPhysician?->display_name }}</span>
<form action="{{ route('staff.assign.remove', $study->hash) }}" class="inline" method="post">
@csrf
@method('DELETE')
<button class="btn btn-danger btn-xs" type="submit">Remove</button>
<button class="btn btn-danger btn-xs" type="submit">
<i class="fa-light fa-user-slash me-2"></i>
Remove
</button>
</form>
</div>
@endisset
</td>
</tr>
</table>
<div class="col-2">
</div>
</div>
<table class="table table-sm">
<thead>
<tr>
<th>Physician</th>
<th>Workload</th>
<th>&nbsp;</th>
<tr class="fw-light">
<td>Physician</td>
<td>Workload</td>
<td>&nbsp;</td>
</tr>
</thead>
<tbody>
@foreach ($rads as $doc)
<tr>
@ -36,10 +55,13 @@
<span class="text-truncate fw-semibold mb-0">
{{ $doc->display_name }}
@if ($study->isAssigned($doc->id))
<span class="badge bg-success badge-dot ms-2"></span>
<span class="badge bg-danger badge-dot ms-1"></span>
@endif
</span>
<small class="text-truncate fw-light text-muted">{{ $doc->info['last_seen'] }}</small>
<small class="text-truncate fw-light text-muted">
<i class="fa-light fa-wave-pulse me-2"></i>
{{ $doc->info['last_seen'] }}
</small>
</div>
</div>
</td>
@ -52,7 +74,10 @@
<form action="{{ route('staff.assign.save', $study->hash) }}" class="inline" method="post">
@csrf
<input type="hidden" name="rad_id" value="{{ $doc->id }}">
<button class="btn btn-primary btn-xs" type="submit">Assign</button>
<button class="btn {{ $color }} btn-xs" type="submit">
<i class="fa-light fa-user-check me-2"></i>
{{ $label }}
</button>
</form>
@endif
</td>