diff --git a/Modules/HospitalPortal/Http/Controllers/Api/ClaimRequestController.php b/Modules/HospitalPortal/Http/Controllers/Api/ClaimRequestController.php index 1d03ab6c..d606cf82 100644 --- a/Modules/HospitalPortal/Http/Controllers/Api/ClaimRequestController.php +++ b/Modules/HospitalPortal/Http/Controllers/Api/ClaimRequestController.php @@ -109,7 +109,7 @@ class ClaimRequestController extends Controller } if ($request->hasFile('kondisi_files')) { - foreach ($request->result_files as $file) { + foreach ($request->kondisi_files as $file) { $pathFile = File::storeFile('claim-kondisi', $newClaimRequest->id, $file); $newClaimRequest->files()->updateOrCreate([ 'type' => 'claim-kondisi', @@ -137,7 +137,8 @@ class ClaimRequestController extends Controller $claimRequest->load([ 'histories' => function ($history) { $history->latest(); - } + }, + 'files', ]); return Helper::responseJson(data: ClaimRequestShowResource::make($claimRequest)); diff --git a/Modules/HospitalPortal/Transformers/ClaimRequestShowResource.php b/Modules/HospitalPortal/Transformers/ClaimRequestShowResource.php index 6bda3c8e..6ce23566 100644 --- a/Modules/HospitalPortal/Transformers/ClaimRequestShowResource.php +++ b/Modules/HospitalPortal/Transformers/ClaimRequestShowResource.php @@ -3,6 +3,7 @@ namespace Modules\HospitalPortal\Transformers; use Illuminate\Http\Resources\Json\JsonResource; +use Illuminate\Support\Str; class ClaimRequestShowResource extends JsonResource { @@ -25,6 +26,12 @@ class ClaimRequestShowResource extends JsonResource 'histories' => $histories ]; } + + // Map Files by type + $filesGroupByType = $this->files->mapToGroups(function($file) { + return [Str::slug($file->type, '_') => $file]; + }); + $data['files_by_type'] = $filesGroupByType; return $data; } diff --git a/frontend/dashboard/src/components/dialogs/DialogDetailClaim.tsx b/frontend/dashboard/src/components/dialogs/DialogDetailClaim.tsx index 960c0d11..edbca61e 100644 --- a/frontend/dashboard/src/components/dialogs/DialogDetailClaim.tsx +++ b/frontend/dashboard/src/components/dialogs/DialogDetailClaim.tsx @@ -291,8 +291,8 @@ const DialogDetailClaim = ({ title, openDialog, setOpenDialog, data }: MuiDialog spacing={1} sx={{ marginY: 2 }} > - {claim.files_by_type?.result && - claim.files_by_type.result.map((file, index) => ( + {claim.files_by_type?.claim_result && + claim.files_by_type.claim_result.map((file, index) => ( diff --git a/frontend/hospital-portal/src/components/dialogs/DialogDetailClaim.tsx b/frontend/hospital-portal/src/components/dialogs/DialogDetailClaim.tsx index 8abc61b7..374603df 100644 --- a/frontend/hospital-portal/src/components/dialogs/DialogDetailClaim.tsx +++ b/frontend/hospital-portal/src/components/dialogs/DialogDetailClaim.tsx @@ -292,8 +292,8 @@ const DialogDetailClaim = ({ title, openDialog, setOpenDialog, data }: MuiDialog spacing={1} sx={{ marginY: 2 }} > - {claim.files_by_type?.result && - claim.files_by_type.result.map((file, index) => ( + {claim.files_by_type?.claim_result && + claim.files_by_type.claim_result.map((file, index) => ( diff --git a/frontend/hospital-portal/src/sections/dashboard/FormRequestClaim.tsx b/frontend/hospital-portal/src/sections/dashboard/FormRequestClaim.tsx index bdfb8e6f..799d43ad 100644 --- a/frontend/hospital-portal/src/sections/dashboard/FormRequestClaim.tsx +++ b/frontend/hospital-portal/src/sections/dashboard/FormRequestClaim.tsx @@ -210,7 +210,7 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }) { style={{ display: 'none' }} multiple onChange={handleKondisiInputChange} - accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel, text/plain" + accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel, text/plain, application/pdf" />