diff --git a/app/DataTables/WorklistDataTable.php b/app/DataTables/WorklistDataTable.php index bfeda79..fbd9deb 100644 --- a/app/DataTables/WorklistDataTable.php +++ b/app/DataTables/WorklistDataTable.php @@ -36,6 +36,13 @@ public function dataTable(QueryBuilder $query): EloquentDataTable return '' . $study->readingPhysician->display_name; }) + ->editColumn('assigned_to', function (Study $study) { + if ($study->assignedPhysician == null) { + return ''; + } + + return '' . $study->assignedPhysician->display_name; + }) ->editColumn('images', function (Study $study) { return $study->numInstances() . '' . human_filesize($study->disk_size) . ''; }) @@ -64,7 +71,7 @@ public function dataTable(QueryBuilder $query): EloquentDataTable ', blank($study->body_part_examined) ? 'text-muted' : 'text-primary'); }) ->orderColumn('patient_name', 'patient_name $1') - ->rawColumns(['priority_icon', 'report_status_led', 'images', 'reader', 'history', 'show_study']) + ->rawColumns(['priority_icon', 'report_status_led', 'images', 'reader', 'assigned_to', 'history', 'show_study']) ->setRowId('id'); } @@ -157,9 +164,15 @@ public function getColumns(): array ->title(''), Column::make('study_date')->searchable(false)->title('Scan Dt'), + + Column::make('assigned_to') + ->searchable(false) + ->title('Assigned'), + Column::make('reader') ->searchable(false) ->title('Read by'), + Column::make('reported_at')->searchable(false)->title('Read At'), // Column::make('body_part_examined'), Column::make('images') diff --git a/app/Http/Controllers/Staff/StudyAssignmentController.php b/app/Http/Controllers/Staff/StudyAssignmentController.php index fa9ae66..7bf1950 100644 --- a/app/Http/Controllers/Staff/StudyAssignmentController.php +++ b/app/Http/Controllers/Staff/StudyAssignmentController.php @@ -15,7 +15,7 @@ public function show() { $this->decodeKeys(); $study = Study::with('assignedPhysician')->findOrFail($this->key); - $rads = User::active()->role(UserRole::Radiologist)->get(); + $rads = User::active()->role(UserRole::Radiologist)->get(['id', 'display_name', 'profile_photo_path', 'first_name', 'last_name']); return view('staff.studies.assign-form', compact('study', 'rads')); } @@ -28,7 +28,7 @@ public function remove() $study->update(['assigned_physician_id' => null]); audit() ->did(Activity::Unassign_Physician) - ->notes("Previous assignment: {$study->assignedPhysician?->display_name}") + ->notes("Unassigned: {$study->assignedPhysician?->display_name}") ->on($study) ->log(); } @@ -42,7 +42,11 @@ public function save(AssignPhysicianRequest $request) $study = Study::findOrFail($this->key); $rad = User::active()->findOrFail($request->input('rad_id')); $study->update(['assigned_physician_id' => $rad->id]); - audit()->did(Activity::Assign_Physician)->on($study)->log(); + audit() + ->did(Activity::Assign_Physician) + ->on($study) + ->notes("Assigned: {$rad->display_name}") + ->log(); return redirect()->route('staff.worklist.index')->with('success', "Assigned study to {$rad->display_name}"); } diff --git a/resources/views/staff/studies/assign-form.blade.php b/resources/views/staff/studies/assign-form.blade.php index 076dc00..51ae2f3 100644 --- a/resources/views/staff/studies/assign-form.blade.php +++ b/resources/views/staff/studies/assign-form.blade.php @@ -9,10 +9,34 @@ @endisset - +
+ + + + + + + + + @foreach ($rads as $doc) - + + @endforeach +
PhysicianWorkload 
{{ $doc->display_name }} +
+
+
+ +
+
+
+ {{ $doc->display_name }} + last seen +
+
+
+ 0 / 0 +
@csrf @@ -22,4 +46,5 @@