Edit Final LOG
This commit is contained in:
@@ -16,6 +16,7 @@ use Modules\HospitalPortal\Http\Middleware\Authentication;
|
|||||||
use Modules\HospitalPortal\Http\Middleware\Authorization;
|
use Modules\HospitalPortal\Http\Middleware\Authorization;
|
||||||
use Modules\Internal\Http\Controllers\Api\NavigationController;
|
use Modules\Internal\Http\Controllers\Api\NavigationController;
|
||||||
use Modules\Linksehat\Http\Controllers\Api\AutocompleteController;
|
use Modules\Linksehat\Http\Controllers\Api\AutocompleteController;
|
||||||
|
use Modules\Primaya\Http\Controllers\Api\MasterController;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
@@ -128,6 +129,8 @@ Route::prefix('v1')->group(function() {
|
|||||||
Route::get('get-claim-requests', [ClaimRequestController::class, 'get_claim_requests'])->name('claim-requests.get_claim_requests');
|
Route::get('get-claim-requests', [ClaimRequestController::class, 'get_claim_requests'])->name('claim-requests.get_claim_requests');
|
||||||
Route::get('detail-claim-requests/{id}', [ClaimRequestController::class, 'detail_claim_requests'])->name('claim-requests.detail_claim_requests');
|
Route::get('detail-claim-requests/{id}', [ClaimRequestController::class, 'detail_claim_requests'])->name('claim-requests.detail_claim_requests');
|
||||||
Route::post('claim-requests/{id}/request-files', [ClaimRequestController::class, 'requestFiles']);
|
Route::post('claim-requests/{id}/request-files', [ClaimRequestController::class, 'requestFiles']);
|
||||||
|
|
||||||
|
Route::get('organizations', [MasterController::class, 'organizations']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -529,6 +529,10 @@ class RequestLogController extends Controller
|
|||||||
$requestLog->type_of_member = $request->type_of_member;
|
$requestLog->type_of_member = $request->type_of_member;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($request->organization_id)){
|
||||||
|
$requestLog->organization_id = $request->organization_id;
|
||||||
|
}
|
||||||
|
|
||||||
$requestLog->final_log = 1;
|
$requestLog->final_log = 1;
|
||||||
$requestLog->approved_final_log_by = auth()->user()->id;
|
$requestLog->approved_final_log_by = auth()->user()->id;
|
||||||
$requestLog->approved_final_log_at = Carbon::now();
|
$requestLog->approved_final_log_at = Carbon::now();
|
||||||
|
|||||||
@@ -174,6 +174,7 @@ class RequestLogShowResource extends JsonResource
|
|||||||
'medicine' => $medicineData,
|
'medicine' => $medicineData,
|
||||||
'files' => $requestLog['files'],
|
'files' => $requestLog['files'],
|
||||||
'provider' => $providerName,
|
'provider' => $providerName,
|
||||||
|
'organization_id' => $requestLog['organization_id'],
|
||||||
'no_identitas' => $requestLog['member']['nric'],
|
'no_identitas' => $requestLog['member']['nric'],
|
||||||
'keterangan' => $requestLog['keterangan'],
|
'keterangan' => $requestLog['keterangan'],
|
||||||
'hak_kamar_pasien' => $requestLog['hak_kamar_pasien'],
|
'hak_kamar_pasien' => $requestLog['hak_kamar_pasien'],
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ export default function DialogEditFinalLOG({requestLog, setOpenDialog, openDialo
|
|||||||
icdCodes: requestLog?.diagnosis,
|
icdCodes: requestLog?.diagnosis,
|
||||||
reason: requestLog?.reason,
|
reason: requestLog?.reason,
|
||||||
type_of_member: requestLog?.type_of_member,
|
type_of_member: requestLog?.type_of_member,
|
||||||
|
organization_id: requestLog?.organization_id || 0,
|
||||||
status: 'requested',
|
status: 'requested',
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -62,8 +63,10 @@ export default function DialogEditFinalLOG({requestLog, setOpenDialog, openDialo
|
|||||||
icdCodes: requestLog?.diagnosis|| [],
|
icdCodes: requestLog?.diagnosis|| [],
|
||||||
reason: requestLog?.reason|| '',
|
reason: requestLog?.reason|| '',
|
||||||
type_of_member: requestLog?.type_of_member|| '',
|
type_of_member: requestLog?.type_of_member|| '',
|
||||||
|
organization_id: requestLog?.organization_id || 0,
|
||||||
status: 'requested',
|
status: 'requested',
|
||||||
});
|
});
|
||||||
|
setIdProvider(requestLog?.organization_id || 0); // ✅ sekalian sync UI
|
||||||
}, [requestLog]);
|
}, [requestLog]);
|
||||||
|
|
||||||
|
|
||||||
@@ -144,6 +147,7 @@ export default function DialogEditFinalLOG({requestLog, setOpenDialog, openDialo
|
|||||||
icdCodes: requestLog?.diagnosis ?? [],
|
icdCodes: requestLog?.diagnosis ?? [],
|
||||||
reason: requestLog?.reason ?? '',
|
reason: requestLog?.reason ?? '',
|
||||||
type_of_member: requestLog?.type_of_member ?? '',
|
type_of_member: requestLog?.type_of_member ?? '',
|
||||||
|
organization_id: requestLog?.organization_id || 0,
|
||||||
status: 'requested'
|
status: 'requested'
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -162,6 +166,24 @@ export default function DialogEditFinalLOG({requestLog, setOpenDialog, openDialo
|
|||||||
// Add more options as needed
|
// Add more options as needed
|
||||||
];
|
];
|
||||||
|
|
||||||
|
const [providers, setProviders] = useState([]);
|
||||||
|
const [idProvider, setIdProvider] = useState(0);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
axios
|
||||||
|
.get('/organizations')
|
||||||
|
.then((res) => {
|
||||||
|
setProviders(res.data.data || []);
|
||||||
|
})
|
||||||
|
.catch((err) => console.error(err));
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (requestLog?.organization_id) {
|
||||||
|
setIdProvider(requestLog.organization_id);
|
||||||
|
}
|
||||||
|
}, [requestLog]);
|
||||||
|
|
||||||
// console.log(formData.type_of_member)
|
// console.log(formData.type_of_member)
|
||||||
|
|
||||||
const getContent = () => (
|
const getContent = () => (
|
||||||
@@ -196,6 +218,26 @@ export default function DialogEditFinalLOG({requestLog, setOpenDialog, openDialo
|
|||||||
</Card>
|
</Card>
|
||||||
|
|
||||||
<Card sx={{padding:2, marginTop:2}} >
|
<Card sx={{padding:2, marginTop:2}} >
|
||||||
|
<Stack direction="row" spacing={2} sx={marginBottom2}>
|
||||||
|
<Typography variant="subtitle2" sx={style1} gutterBottom>
|
||||||
|
Provider
|
||||||
|
</Typography>
|
||||||
|
|
||||||
|
<Autocomplete
|
||||||
|
options={providers}
|
||||||
|
getOptionLabel={(option) => option.name?.trim() || '-'}
|
||||||
|
value={providers.find((item) => item.id == idProvider) || null}
|
||||||
|
onChange={(event, newValue) => {
|
||||||
|
const id = newValue?.id || 0;
|
||||||
|
setIdProvider(id);
|
||||||
|
handleChange('organization_id', id);
|
||||||
|
}}
|
||||||
|
renderInput={(params) => (
|
||||||
|
<TextField {...params} label="Provider" fullWidth />
|
||||||
|
)}
|
||||||
|
fullWidth
|
||||||
|
/>
|
||||||
|
</Stack>
|
||||||
<Stack direction='row' spacing={2} sx={marginBottom2}>
|
<Stack direction='row' spacing={2} sx={marginBottom2}>
|
||||||
<Typography variant='subtitle2' sx={style1} gutterBottom>Invoice Provider</Typography>
|
<Typography variant='subtitle2' sx={style1} gutterBottom>Invoice Provider</Typography>
|
||||||
<TextField
|
<TextField
|
||||||
|
|||||||
@@ -356,7 +356,7 @@ export default function DetailRequestFinalLog() {
|
|||||||
}
|
}
|
||||||
setSubmitLoading(true);
|
setSubmitLoading(true);
|
||||||
const formData = makeFormData({
|
const formData = makeFormData({
|
||||||
request_logs_id: Log_id,
|
request_logs_id: requestLog?.id,
|
||||||
// result_files: fileHasilPenunjangs,
|
// result_files: fileHasilPenunjangs,
|
||||||
// diagnosa_files: fileDiagnosas,
|
// diagnosa_files: fileDiagnosas,
|
||||||
// kondisi_files: fileKondisis,
|
// kondisi_files: fileKondisis,
|
||||||
@@ -424,7 +424,7 @@ export default function DetailRequestFinalLog() {
|
|||||||
Detail
|
Detail
|
||||||
</Typography>
|
</Typography>
|
||||||
</Grid>
|
</Grid>
|
||||||
{requestLog?.status_final_log != 'requested' ? (
|
{requestLog?.status_final_log != 'approved' ? (
|
||||||
<Grid item xs={6} sx={{ display: 'flex', placeContent: 'end' }}>
|
<Grid item xs={6} sx={{ display: 'flex', placeContent: 'end' }}>
|
||||||
<MoreMenu
|
<MoreMenu
|
||||||
actions={
|
actions={
|
||||||
@@ -1316,7 +1316,7 @@ export default function DetailRequestFinalLog() {
|
|||||||
setOpenDialogSubmit(true);
|
setOpenDialogSubmit(true);
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
Request Final LOG
|
{requestLog?.status_final_log == 'requested' ? 'Edit' : ''} Request Final LOG
|
||||||
</Button>
|
</Button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -1330,7 +1330,6 @@ export default function DetailRequestFinalLog() {
|
|||||||
</Stack>
|
</Stack>
|
||||||
</Grid>
|
</Grid>
|
||||||
) : null}
|
) : null}
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</Container>
|
</Container>
|
||||||
</Page>
|
</Page>
|
||||||
|
|||||||
@@ -466,6 +466,27 @@ export default function TableListFinalLog() {
|
|||||||
<Iconify icon="eva:eye-fill" />
|
<Iconify icon="eva:eye-fill" />
|
||||||
View
|
View
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
{obj.status !== 'approved' ? (
|
||||||
|
<MenuItem
|
||||||
|
onClick={() =>
|
||||||
|
navigate('/detail-request-final-log/'+obj.id, {
|
||||||
|
state: {
|
||||||
|
Log_id: obj.id,
|
||||||
|
full_name: obj.full_name,
|
||||||
|
no_polis: obj.no_polis,
|
||||||
|
submission_date: obj.submission_date,
|
||||||
|
service_code: obj.service_code,
|
||||||
|
member_id: obj.member_id,
|
||||||
|
specialities_id: obj.specialities_id,
|
||||||
|
dppj: obj.dppj,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
>
|
||||||
|
<Iconify icon="fa:file-text" />
|
||||||
|
Edit Request Final LOG
|
||||||
|
</MenuItem>
|
||||||
|
):''}
|
||||||
{obj.status === 'approved' ? (
|
{obj.status === 'approved' ? (
|
||||||
<MenuItem onClick={() => handleDownloadLog(obj.id, obj.service_code, obj.no_polis, obj.full_name, obj.provider, obj.approved_final_log_at)}>
|
<MenuItem onClick={() => handleDownloadLog(obj.id, obj.service_code, obj.no_polis, obj.full_name, obj.provider, obj.approved_final_log_at)}>
|
||||||
<Iconify icon="eva:download-fill" />
|
<Iconify icon="eva:download-fill" />
|
||||||
|
|||||||
Reference in New Issue
Block a user