This commit is contained in:
Dr Masroor Ehsan 2025-01-11 01:13:57 +06:00
parent 60ba494319
commit 5ec37cd58e
4 changed files with 8 additions and 13 deletions

View File

@ -164,7 +164,7 @@ protected function getStudiesQuery(): Builder
$q = Study::query(); $q = Study::query();
} }
return $q->with(['readingPhysician', 'assignedPhysician', 'dicomServer']); return $q->with(['readingPhysician', 'dicomServer']);
} }
protected function applySort(Builder $query): Builder protected function applySort(Builder $query): Builder
@ -281,7 +281,7 @@ private function applyDateFilters(Builder $query): Builder
} }
if (filled($this->reportDateFrom)) { if (filled($this->reportDateFrom)) {
$query = $this->applyDateFilter($query, 'reported_at', $this->reportDateFrom, $this->reportDateTo); $query = $this->applyDateFilter($query, 'read_at', $this->reportDateFrom, $this->reportDateTo);
} }
return $query; return $query;

View File

@ -231,10 +231,10 @@ private function renderCustomColumns(): array
$columns[$col->value] = fn (Study $study) => $study->sanitizedStudyDescription(); $columns[$col->value] = fn (Study $study) => $study->sanitizedStudyDescription();
break; break;
case WorklistColumn::AssignedPhysician: case WorklistColumn::AssignedPhysician:
$columns[$col->value] = fn (Study $study) => $this->physicianColumn($study->assignedPhysician, $study->assigned_at); $columns[$col->value] = fn (Study $study) => $this->physicianColumn(null, $study->assigned_at);
break; break;
case WorklistColumn::ReadingPhysician: case WorklistColumn::ReadingPhysician:
$columns[$col->value] = fn (Study $study) => $this->physicianColumn($study->readingPhysician, $study->reported_at); $columns[$col->value] = fn (Study $study) => $this->physicianColumn($study->readingPhysician, $study->read_at);
break; break;
case WorklistColumn::Series: case WorklistColumn::Series:
$columns[$col->value] = fn (Study $study) => Blade::render( $columns[$col->value] = fn (Study $study) => Blade::render(

View File

@ -130,9 +130,9 @@ public function dicomServer(): BelongsTo
return $this->belongsTo(DicomServer::class); return $this->belongsTo(DicomServer::class);
} }
public function isAssigned(int $rad_id): bool public function isAssigned(User|int|null $user = null): bool
{ {
return $this->assigned_physician_id === $rad_id; return $this->assignedPhysicians->contains(me($user)->id);
} }
public function isActive(): bool public function isActive(): bool
@ -272,7 +272,7 @@ public function toArray(): array
return array_merge(parent::toArray(), [ return array_merge(parent::toArray(), [
'disk_size_human' => human_filesize($this->disk_size), 'disk_size_human' => human_filesize($this->disk_size),
'reader_name' => $this->readingPhysician?->display_name, 'reader_name' => $this->readingPhysician?->display_name,
'assigned_physician_name' => $this->assignedPhysician?->display_name, // 'assigned_physician_name' => $this->assignedPhysician?->display_name,
'reader_photo' => $this->readingPhysician?->profile_photo_url, 'reader_photo' => $this->readingPhysician?->profile_photo_url,
'report_status_led' => $this->getReportStatusLedAttribute(), 'report_status_led' => $this->getReportStatusLedAttribute(),
'priority_icon' => $this->getPriorityIcon(), 'priority_icon' => $this->getPriorityIcon(),
@ -384,11 +384,6 @@ public function isLockedBy(User|int|null $user = null): bool
return $this->locking_physician_id === me($user)->id; return $this->locking_physician_id === me($user)->id;
} }
public function isAssignedTo(User|int|null $user = null): bool
{
return $this->assigned_physician_id === me($user)->id;
}
public function setReportStatus(ReportStatus $status, User|int|null $user = null): void public function setReportStatus(ReportStatus $status, User|int|null $user = null): void
{ {
$user_id = me($user)->id; $user_id = me($user)->id;

View File

@ -13,7 +13,7 @@ enum WorklistColumn: string
case History = 'history'; case History = 'history';
case StudyDate = 'study_date'; case StudyDate = 'study_date';
case ReceiveDate = 'received_at'; case ReceiveDate = 'received_at';
case ReportDate = 'reported_at'; case ReportDate = 'read_at';
case AssignDate = 'assigned_at'; case AssignDate = 'assigned_at';
case AuthorizeDate = 'authorized_at'; case AuthorizeDate = 'authorized_at';
case ArchiveDate = 'archived_at'; case ArchiveDate = 'archived_at';