diff --git a/app/Http/Controllers/Staff/MetadataController.php b/app/Http/Controllers/Staff/MetadataController.php index 3dadf62..6a48be1 100644 --- a/app/Http/Controllers/Staff/MetadataController.php +++ b/app/Http/Controllers/Staff/MetadataController.php @@ -3,9 +3,10 @@ namespace App\Http\Controllers\Staff; use App\Domain\ACL\Permission; +use App\Domain\Report\ReportStatus; use App\Http\Controllers\HashidControllerBase; +use App\Http\Requests\StudyMetadataUpdateRequest; use App\Models\Study; -use Illuminate\Http\Request; class MetadataController extends HashidControllerBase { @@ -27,16 +28,19 @@ public function edit() return view('staff.meta.edit', compact('study')); } - public function save(Request $request) + public function save(StudyMetadataUpdateRequest $request) { - dd($request); abort_unless(auth()->user()->may(Permission::StudyMetadataEdit), 403); $this->decodeKeys(); - $study = Study::find($this->key); + $study = Study::findOrFail($this->key); $payload = array_trim_strings($request->validated()); + if ($request->has('cancel_read')) { + $payload['report_status'] = ReportStatus::Cancelled->value; + unset($payload['cancel_read']); + } $study->update($payload); // return redirect()->route('staff.history.view', _h($this->key)); - return redirect()->route('staff.meta.view', $study->hash); + return view('content.pages.close-window'); } } diff --git a/app/Http/Requests/StudyMetadataUpdateRequest.php b/app/Http/Requests/StudyMetadataUpdateRequest.php index dfdd1e6..ce47da3 100644 --- a/app/Http/Requests/StudyMetadataUpdateRequest.php +++ b/app/Http/Requests/StudyMetadataUpdateRequest.php @@ -4,31 +4,30 @@ use Illuminate\Foundation\Http\FormRequest; -class StudyMetadataUpdateRequest extends FormRequest +final class StudyMetadataUpdateRequest extends FormRequest { public function rules(): array { return [ - 'patient_id' => ['nullable'], 'patient_name' => ['required'], + 'patient_id' => ['nullable'], 'patient_sex' => ['nullable'], 'patient_birthdate' => ['nullable', 'date'], - 'study_id' => ['nullable'], 'accession_number' => ['nullable'], - 'study_description' => ['nullable'], - 'body_part_examined' => ['nullable'], - 'station_name' => ['nullable'], - 'operators_name' => ['nullable'], - 'manufacturer' => ['nullable'], - 'manufacturer_model_name' => ['nullable'], + + //'study_date' => ['required', 'date'], + 'study_description' => ['required'], + 'body_part_examined' => ['required'], 'referring_physician_name' => ['nullable'], - 'study_modality' => ['nullable'], - 'study_date' => ['required', 'date'], - 'receive_date' => ['required', 'date'], - 'assigned_physician_id' => ['nullable', 'exists:users,id'], + 'institution_name' => ['nullable'], + 'priority' => ['required', 'integer'], + 'cancel_read' => ['nullable', 'boolean'], + + /* 'referring_physician_id' => ['nullable', 'exists:users,id'], 'access_flags' => ['required', 'integer'], 'access_password' => ['nullable'], + */ ]; } diff --git a/resources/views/staff/meta/edit.blade.php b/resources/views/staff/meta/edit.blade.php index c40cf43..54798af 100644 --- a/resources/views/staff/meta/edit.blade.php +++ b/resources/views/staff/meta/edit.blade.php @@ -25,10 +25,7 @@ @include('staff.meta.partials._text', ['name' => 'patient_id', 'label' => 'Patient ID', 'value' => $study->patient_id]) @include('staff.meta.partials._text', ['name' => 'patient_name', 'label' => 'Patient Name', 'value' => $study->patient_name]) @include('staff.meta.partials._text', ['name' => 'patient_sex', 'label' => 'Sex', 'value' => $study->patient_sex]) -
- - -
+ @include('staff.meta.partials._date', ['name' => 'patient_birthdate', 'label' => 'Birth Date', 'value' => $study->patient_birthdate->toDateString()]) @include('staff.meta.partials._text', ['name' => 'accession_number', 'label' => 'Accession number', 'value' => $study->accession_number]) @@ -54,7 +51,7 @@ @@ -63,6 +60,10 @@ - + + @endsection diff --git a/resources/views/staff/meta/partials/_date.blade.php b/resources/views/staff/meta/partials/_date.blade.php new file mode 100644 index 0000000..a4afe2e --- /dev/null +++ b/resources/views/staff/meta/partials/_date.blade.php @@ -0,0 +1,4 @@ +
+ + +