This commit is contained in:
Dr Masroor Ehsan 2025-01-04 19:31:55 +06:00
parent 4caf779425
commit 97af6b42af

View File

@ -5,6 +5,7 @@
use App\DAL\Studies\WorklistFactory; use App\DAL\Studies\WorklistFactory;
use App\Models\Study; use App\Models\Study;
use Carbon\Carbon; use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Illuminate\Database\Eloquent\Builder as QueryBuilder; use Illuminate\Database\Eloquent\Builder as QueryBuilder;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Yajra\DataTables\EloquentDataTable; use Yajra\DataTables\EloquentDataTable;
@ -22,7 +23,12 @@ class WorklistDataTable extends DataTable
* @param QueryBuilder $query Results from query() method. * @param QueryBuilder $query Results from query() method.
*/ */
// const DATE_FORMAT = 'DD.MM.YYYY HH:mm'; // const DATE_FORMAT = 'DD.MM.YYYY HH:mm';
const DATE_FORMAT = 'MMM DD, YYYY HH:mm'; const DATE_FORMAT = 'DD.MM.YYYY HH:mm';
private static function dtFormat(Carbon|CarbonImmutable|null $dt): string
{
return $dt == null ? '' : $dt->isoFormat(self::DATE_FORMAT);
}
public function dataTable(QueryBuilder $query): EloquentDataTable public function dataTable(QueryBuilder $query): EloquentDataTable
{ {
@ -33,19 +39,19 @@ public function dataTable(QueryBuilder $query): EloquentDataTable
return ''; return '';
} }
return '<img class="rounded-circle me-4" height="24px" width="24px" src="'.$study->readingPhysician->avatar().'"></img>'.$study->readingPhysician->display_name; return '<img class="rounded-circle me-2" height="24px" width="24px" src="'.$study->readingPhysician->avatar().'"></img>'.$study->readingPhysician->display_name;
}) })
->editColumn('images', function (Study $study) { ->editColumn('images', function (Study $study) {
return $study->numInstances().'<br /><small class="text-muted mt-2">'.human_filesize($study->disk_size).'</small>'; return $study->numInstances().'<small class="text-muted ms-2 fw-lighter fs-xsmall">'.human_filesize($study->disk_size).'</small>';
}) })
->editColumn('study_date', function ($data) { ->editColumn('study_date', function ($data) {
return Carbon::parse($data->study_date)->isoFormat(self::DATE_FORMAT); return self::dtFormat($data->study_date);
}) })
->editColumn('reported_at', function ($data) { ->editColumn('reported_at', function ($data) {
return Carbon::parse($data->reported_at)->isoFormat(self::DATE_FORMAT); return self::dtFormat($data->reported_at);
}) })
->editColumn('received_at', function ($data) { ->editColumn('received_at', function ($data) {
return Carbon::parse($data->received_at)->isoFormat(self::DATE_FORMAT); return self::dtFormat($data->received_at);
}) })
->orderColumn('patient_name', 'patient_name $1') ->orderColumn('patient_name', 'patient_name $1')
->rawColumns(['priority_icon', 'report_status_led', 'images', 'reader']) ->rawColumns(['priority_icon', 'report_status_led', 'images', 'reader'])
@ -119,9 +125,9 @@ public function getColumns(): array
->width('20px') ->width('20px')
->title(''), ->title(''),
Column::make('modality'), Column::make('modality')->title('Mo'),
Column::make('patient_id'), Column::make('patient_id')->title('MRN'),
Column::make('patient_name'), Column::make('patient_name')->title('Patient'),
Column::make('sex_age') Column::make('sex_age')
->searchable(false) ->searchable(false)
->orderable(false) ->orderable(false)
@ -132,9 +138,10 @@ public function getColumns(): array
Column::make('received_at')->searchable(false)->title('Received'), Column::make('received_at')->searchable(false)->title('Received'),
Column::make('reported_at')->searchable(false)->title('Reported'), Column::make('reported_at')->searchable(false)->title('Reported'),
Column::make('study_description'), Column::make('study_description')
->title('Study'),
Column::make('reader') Column::make('reader')
->title('Reader'), ->title('Read by'),
// Column::make('body_part_examined'), // Column::make('body_part_examined'),
Column::make('images') Column::make('images')
->searchable(false) ->searchable(false)