This commit is contained in:
Dr Masroor Ehsan 2025-01-04 13:56:35 +06:00
parent 3e5d54eac8
commit 444b1592ab
3 changed files with 13 additions and 3 deletions

View File

@ -4,6 +4,7 @@
use App\Models\Enums\ReportStatus; use App\Models\Enums\ReportStatus;
use App\Models\Enums\StudyLevelStatus; use App\Models\Enums\StudyLevelStatus;
use Illuminate\Contracts\Database\Eloquent\Builder;
use Illuminate\Contracts\Pagination\LengthAwarePaginator; use Illuminate\Contracts\Pagination\LengthAwarePaginator;
interface IUserStudyLister interface IUserStudyLister
@ -26,6 +27,8 @@ public function setLocked(bool $locked): self;
public function get(?int $user_id = null): LengthAwarePaginator; public function get(?int $user_id = null): LengthAwarePaginator;
public function query(?int $user_id = null): Builder;
public function setStudyDate(string $from, ?string $to = null): self; public function setStudyDate(string $from, ?string $to = null): self;
public function setReceiveDate(string $from, ?string $to = null): self; public function setReceiveDate(string $from, ?string $to = null): self;

View File

@ -110,12 +110,20 @@ protected function applySort(Builder $query): Builder
} }
return $query return $query
->orderByDesc('study_priority') ->orderByDesc('priority')
->orderByDesc('received_at'); ->orderByDesc('received_at');
} }
abstract protected function buildQuery(?int $user_id = null): Builder; abstract protected function buildQuery(?int $user_id = null): Builder;
public function query(?int $user_id = null): Builder
{
$query = $this->buildQuery($user_id);
$query = $this->applySort($query);
return $query;
}
public function get(?int $user_id = null): LengthAwarePaginator public function get(?int $user_id = null): LengthAwarePaginator
{ {
$query = $this->buildQuery($user_id); $query = $this->buildQuery($user_id);

View File

@ -93,7 +93,7 @@ public function getColumns(): array
Column::make('study_description'), Column::make('study_description'),
Column::make('reporting_physician_id'), Column::make('reporting_physician_id'),
Column::make('body_part_examined'), // Column::make('body_part_examined'),
Column::make('num_instances') Column::make('num_instances')
->searchable(false) ->searchable(false)
->orderable(false) ->orderable(false)
@ -105,7 +105,6 @@ public function getColumns(): array
->printable(false) ->printable(false)
->width(60) ->width(60)
->addClass('text-center'), ->addClass('text-center'),
]; ];
} }