wip dicom servers
This commit is contained in:
parent
b13c15ce5c
commit
4c68b3626a
@ -239,18 +239,22 @@ public function getColumns(): array
|
|||||||
|
|
||||||
case WorklistColumn::Organization:
|
case WorklistColumn::Organization:
|
||||||
$columns[] = Column::make($col->value)
|
$columns[] = Column::make($col->value)
|
||||||
->searchable(true)
|
->searchable(false)
|
||||||
->orderable(true)
|
|
||||||
->title('Org');
|
->title('Org');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WorklistColumn::Department:
|
case WorklistColumn::Department:
|
||||||
$columns[] = Column::make($col->value)
|
$columns[] = Column::make($col->value)
|
||||||
->searchable(true)
|
->searchable(false)
|
||||||
->orderable(true)
|
|
||||||
->title('Dept');
|
->title('Dept');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case WorklistColumn::DicomServer:
|
||||||
|
$columns[] = Column::make($col->value)
|
||||||
|
->searchable(false)
|
||||||
|
->title('Server');
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
// dd(Str::slug($col->value, '-'));
|
// dd(Str::slug($col->value, '-'));
|
||||||
$columns[] = Column::make($col->value)->title(formatTitle($col->value));
|
$columns[] = Column::make($col->value)->title(formatTitle($col->value));
|
||||||
@ -451,7 +455,9 @@ private function renderCustomColumns(): array
|
|||||||
};
|
};
|
||||||
break;
|
break;
|
||||||
case WorklistColumn::StudyDescription:
|
case WorklistColumn::StudyDescription:
|
||||||
$columns[$col->value] = static fn (Study $study) => $study->sanitizedStudyDescription();
|
$columns[$col->value] = function (Study $study) {
|
||||||
|
return sprintf('<span data-bs-toggle="tooltip" data-bs-placement="top" title="%s">%s</span>', $study->study_description, str_limit($study->sanitizedStudyDescription(), 20));
|
||||||
|
};
|
||||||
break;
|
break;
|
||||||
case WorklistColumn::AssignedPhysician:
|
case WorklistColumn::AssignedPhysician:
|
||||||
$columns[$col->value] = static function (Study $study) {
|
$columns[$col->value] = static function (Study $study) {
|
||||||
@ -506,6 +512,13 @@ private function renderCustomColumns(): array
|
|||||||
case WorklistColumn::ReportButtons:
|
case WorklistColumn::ReportButtons:
|
||||||
$columns[$col->value] = fn (Study $study) => $this->generateReportingButtons($study);
|
$columns[$col->value] = fn (Study $study) => $this->generateReportingButtons($study);
|
||||||
break;
|
break;
|
||||||
|
case WorklistColumn::DicomServer:
|
||||||
|
$columns[$col->value] = function (Study $study) {
|
||||||
|
return sprintf('<span class="fi fi-%s msg-icon me-1"></span>%s',
|
||||||
|
strtolower($study->dicomServer->geo_code),
|
||||||
|
$study->dicomServer->server_name);
|
||||||
|
};
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,4 +36,5 @@ enum WorklistColumn: string
|
|||||||
case ReportButtons = 'report_buttons';
|
case ReportButtons = 'report_buttons';
|
||||||
case Organization = 'organization';
|
case Organization = 'organization';
|
||||||
case Department = 'department';
|
case Department = 'department';
|
||||||
|
case DicomServer = 'dicom_server';
|
||||||
}
|
}
|
||||||
|
@ -45,6 +45,7 @@ public static function worklistColumns(User|int|null $usr = null): Collection
|
|||||||
if ($user->isAdmin()) {
|
if ($user->isAdmin()) {
|
||||||
$columns->push(WorklistColumn::Organization);
|
$columns->push(WorklistColumn::Organization);
|
||||||
$columns->push(WorklistColumn::Department);
|
$columns->push(WorklistColumn::Department);
|
||||||
|
$columns->push(WorklistColumn::DicomServer);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $columns;
|
return $columns;
|
||||||
|
@ -14,6 +14,7 @@ public function up(): void
|
|||||||
$table->id();
|
$table->id();
|
||||||
$table->boolean('is_active')->index();
|
$table->boolean('is_active')->index();
|
||||||
$table->string('server_name')->unique();
|
$table->string('server_name')->unique();
|
||||||
|
$table->string('geo_code', 2)->index();
|
||||||
$table->string('host');
|
$table->string('host');
|
||||||
$table->integer('port');
|
$table->integer('port');
|
||||||
$table->string('rest_api_endpoint');
|
$table->string('rest_api_endpoint');
|
||||||
|
@ -36,14 +36,14 @@ public function run(): void
|
|||||||
$dept_chev_xr = Department::create(
|
$dept_chev_xr = Department::create(
|
||||||
[
|
[
|
||||||
'is_active' => true,
|
'is_active' => true,
|
||||||
'name' => 'Chevron XR',
|
'name' => 'Chev-CR',
|
||||||
'organization_id' => $chev->id,
|
'organization_id' => $chev->id,
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
$chev_dep_ct_mr = Department::create(
|
$chev_dep_ct_mr = Department::create(
|
||||||
[
|
[
|
||||||
'is_active' => true,
|
'is_active' => true,
|
||||||
'name' => 'Chevron CT/MR',
|
'name' => 'Chev-MR',
|
||||||
'organization_id' => $chev->id,
|
'organization_id' => $chev->id,
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
@ -109,7 +109,8 @@ public function run(): void
|
|||||||
DicomServer::create(
|
DicomServer::create(
|
||||||
[
|
[
|
||||||
'is_active' => true,
|
'is_active' => true,
|
||||||
'server_name' => 'Orthanc Main',
|
'server_name' => 'CTG-1',
|
||||||
|
'geo_code' => 'BD',
|
||||||
'host' => 'pacs.mylabctg.com',
|
'host' => 'pacs.mylabctg.com',
|
||||||
'port' => 8042,
|
'port' => 8042,
|
||||||
'rest_api_endpoint' => 'http://pacs.mylabctg.com:8042/',
|
'rest_api_endpoint' => 'http://pacs.mylabctg.com:8042/',
|
||||||
@ -122,8 +123,9 @@ public function run(): void
|
|||||||
DicomServer::create(
|
DicomServer::create(
|
||||||
[
|
[
|
||||||
'is_active' => false,
|
'is_active' => false,
|
||||||
'server_name' => 'Orthanc XR',
|
'server_name' => 'MAA-1',
|
||||||
'host' => 'pacs.mylabctg.com',
|
'host' => 'pacs.mylabctg.com',
|
||||||
|
'geo_code' => 'IN',
|
||||||
'port' => 8043,
|
'port' => 8043,
|
||||||
'rest_api_endpoint' => 'http://pacs.mylabctg.com:8042/',
|
'rest_api_endpoint' => 'http://pacs.mylabctg.com:8042/',
|
||||||
'ae_title' => 'RADFUSION',
|
'ae_title' => 'RADFUSION',
|
||||||
|
@ -27,6 +27,8 @@
|
|||||||
'resources/assets/vendor/libs/bootstrap-datepicker/bootstrap-datepicker.scss',
|
'resources/assets/vendor/libs/bootstrap-datepicker/bootstrap-datepicker.scss',
|
||||||
'resources/assets/vendor/libs/bootstrap-daterangepicker/bootstrap-daterangepicker.scss',
|
'resources/assets/vendor/libs/bootstrap-daterangepicker/bootstrap-daterangepicker.scss',
|
||||||
])
|
])
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/7.2.3/css/flag-icons.min.css" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
@section('vendor-script')
|
@section('vendor-script')
|
||||||
|
Loading…
Reference in New Issue
Block a user