diff --git a/Modules/Internal/Http/Controllers/Api/RequestLogController.php b/Modules/Internal/Http/Controllers/Api/RequestLogController.php
index 1dcc8e55..bf66f5ac 100644
--- a/Modules/Internal/Http/Controllers/Api/RequestLogController.php
+++ b/Modules/Internal/Http/Controllers/Api/RequestLogController.php
@@ -172,8 +172,10 @@ class RequestLogController extends Controller
'member.currentPlan' => function($memberPlan) {
$memberPlan->join('request_logs', 'request_logs.service_code', '=', 'plans.service_code');
},
+ // 'member.current_policy',
'claim',
'organization',
+
]);
return Helper::responseJson(data: RequestLogShowResource::make($claimRequest));
@@ -198,6 +200,12 @@ class RequestLogController extends Controller
public function update(Request $request, $id)
{
$requestLog = RequestLog::findOrFail($id);
+ $requestLog->keterangan = $request->keterangan;
+ $requestLog->hak_kamar_pasien = $request->hak_kamar_pasien;
+ $requestLog->penempatan_kamar = $request->penempatan_kamar;
+ $requestLog->catatan = $request->catatan;
+ $requestLog->no_identitas = $request->no_identitas;
+
$requestLog->status = $request->status;
$requestLog->approved_by = auth()->user()->id;
$requestLog->approved_at = Carbon::now();
@@ -313,6 +321,7 @@ class RequestLogController extends Controller
// Update Request LOG untuk lanjut ke Final LOG
+ $requestLog->catatan = $request->catatan;
$requestLog->final_log = 1;
$requestLog->status_final_log = $status;
$requestLog->approved_final_log_by = auth()->user()->id;
diff --git a/Modules/Internal/Transformers/RequestLogShowResource.php b/Modules/Internal/Transformers/RequestLogShowResource.php
index 480eb3f1..4bb86bce 100644
--- a/Modules/Internal/Transformers/RequestLogShowResource.php
+++ b/Modules/Internal/Transformers/RequestLogShowResource.php
@@ -85,6 +85,11 @@ class RequestLogShowResource extends JsonResource
'medicine' => $medicineData,
'files' => $requestLog['files'],
+ 'no_identitas' => $requestLog['no_identitas'],
+ 'keterangan' => $requestLog['keterangan'],
+ 'hak_kamar_pasien' => $requestLog['hak_kamar_pasien'],
+ 'penempatan_kamar' => $requestLog['penempatan_kamar'],
+
];
diff --git a/frontend/dashboard/src/pages/CustomerService/Request/Components/DialogConfirmation.tsx b/frontend/dashboard/src/pages/CustomerService/Request/Components/DialogConfirmation.tsx
index fe3a734b..96e467da 100644
--- a/frontend/dashboard/src/pages/CustomerService/Request/Components/DialogConfirmation.tsx
+++ b/frontend/dashboard/src/pages/CustomerService/Request/Components/DialogConfirmation.tsx
@@ -1,13 +1,14 @@
import MuiDialog from "@/components/MuiDialog";
-import { Button, Card, Checkbox, DialogActions, Grid, Typography } from "@mui/material";
+import { Button, Card, Checkbox, DialogActions, Grid, TextField, Typography } from "@mui/material";
import { Paper } from "@mui/material";
import { Stack } from '@mui/material';
-import React, { useState } from 'react';
+import React, { useEffect, useState } from 'react';
import { DetailRequestLogType } from "../Model/Types";
import { fDateTimesecond, toTitleCase } from "@/utils/formatTime";
import axios from "@/utils/axios";
import { enqueueSnackbar } from "notistack";
import { useNavigate } from "react-router";
+import { RHFTextField } from "@/components/hook-form";
type DialogConfirmationType = {
@@ -19,12 +20,42 @@ type DialogConfirmationType = {
}
export default function DialogConfirmation({requestLog, setOpenDialog, openDialog, approve, onSubmit} : DialogConfirmationType ) {
-
const navigate = useNavigate();
+
+ const [formData, setFormData] = useState({
+ status: approve || '',
+ no_identitas: '',
+ keterangan: '',
+ hak_kamar_pasien: '',
+ penempatan_kamar: '',
+ });
+
+ useEffect(() => {
+ // Update formData setiap kali approve berubah
+ setFormData(prevData => ({
+ ...prevData,
+ status: approve || '',
+ }));
+ }, [approve]);
+
+ const handleChange = (field, value) => {
+ setFormData((prevData) => ({
+ ...prevData,
+ [field]: value,
+ }));
+
+ };
+
+ const handleApprove = () => {
+ setFormData((prevData) => ({
+ ...prevData,
+ status: approve,
+ }));
+ handleSubmit();
+ };
+
+
const handleSubmit = () => {
- const formData = {
- status : approve
- }
axios
.put(`customer-service/request/${requestLog?.id}`, formData)
.then((response) => {
@@ -48,10 +79,31 @@ export default function DialogConfirmation({requestLog, setOpenDialog, openDialo
marginBottom: 1,
}
+ const marginBottom2 = {
+ marginBottom: 2,
+ }
+
+ const resetForm = () => {
+ setFormData({
+ status: approve,
+ no_identitas: '',
+ keterangan: '',
+ hak_kamar_pasien: '',
+ penempatan_kamar: '',
+ });
+ };
+
const handleCloseDialog = () => {
setOpenDialog(false);
+ resetForm();
}
+ const handleNumericInput = (input: any) => {
+ const numericInput = input.replace(/\D/g, '');
+ return numericInput;
+ };
+
+
const getContent = () => (
Are you sure to {approve == 'approved' ? 'approve' : 'deciline'} this request ?
@@ -82,14 +134,56 @@ export default function DialogConfirmation({requestLog, setOpenDialog, openDialo
{requestLog?.service_type}
+
+
+ No Identitas
+ handleChange('no_identitas', handleNumericInput(e.target.value))}
+ />
+
+
+ Keterangan
+ handleChange('keterangan', e.target.value)}
+ />
+
+
+ Hak Kamar Pasien
+ handleChange('hak_kamar_pasien', e.target.value)}
+ />
+
+
+ Penempatan Kamar
+ handleChange('penempatan_kamar', e.target.value)}
+ />
+
+
-
{approve == 'approved' ? (
-
+
) : (
-
+
+
) }
diff --git a/frontend/dashboard/src/pages/CustomerService/Request/Detail.tsx b/frontend/dashboard/src/pages/CustomerService/Request/Detail.tsx
index db8cc17d..3cec05cd 100644
--- a/frontend/dashboard/src/pages/CustomerService/Request/Detail.tsx
+++ b/frontend/dashboard/src/pages/CustomerService/Request/Detail.tsx
@@ -104,6 +104,23 @@ export default function Detail() {
Submission Date
{requestLog?.submission_date ? fDateTimesecond(requestLog?.submission_date) : '-'}
+
+
+ No KTP
+ {requestLog?.no_identitas ? requestLog?.no_identitas : '-'}
+
+
+ Keterangan
+ {requestLog?.keterangan ? requestLog?.keterangan : '-'}
+
+
+ Hak Kamar Pasien
+ {requestLog?.hak_kamar_pasien ? requestLog?.hak_kamar_pasien : '-'}
+
+
+ Penempatan Kamar
+ {requestLog?.penempatan_kamar ? requestLog?.penempatan_kamar : '-'}
+
diff --git a/frontend/dashboard/src/pages/CustomerService/Request/Model/Types.tsx b/frontend/dashboard/src/pages/CustomerService/Request/Model/Types.tsx
index 0091c213..44bdbec7 100644
--- a/frontend/dashboard/src/pages/CustomerService/Request/Model/Types.tsx
+++ b/frontend/dashboard/src/pages/CustomerService/Request/Model/Types.tsx
@@ -42,9 +42,13 @@ export type DetailRequestLogType = {
date_of_birth : string,
gender : string,
marital_status : string,
- submission_date : string,
+ submission_date : string,
service_type : string,
claim_method : string,
+ no_identitas : string,
+ keterangan : string,
+ hak_kamar_pasien : string,
+ penempatan_kamar : string,
status : string,
benefit : Benefit[],
}