Create Rekanan Hospital Portal

This commit is contained in:
ivan-sim
2024-02-02 13:31:20 +07:00
parent 1dc7b99d42
commit 74d5da95a4
5 changed files with 46 additions and 4 deletions

View File

@@ -108,6 +108,17 @@ class MemberController extends Controller
$res_data['providers'] = $providers;
//company
$companies = DB::table('corporates')
->where('corporates.active', '=', 1)
->select(
'corporates.id',
'corporates.name'
)
->get();
$res_data['companies'] = $companies;
return ApiResponse::apiResponse("Success", $res_data, trans('Message.success'), 200);
}

View File

@@ -29,6 +29,7 @@ class RequestLogController extends Controller
'organization_name' => $request->organization_name,
'address_provider' => $request->address_provider,
'submission_date' => $request->submission_date,
'corporate_id_partner' => $request->corporate_id_partner,
];
$validator = Validator::make($request->all(), [
'member_id' => 'required',
@@ -83,6 +84,7 @@ class RequestLogController extends Controller
'name' => $request->organization_name,
'code' => $kodeOrganisasi,
'type' => 'hospital',
'corporate_id_partner' => $request->corporate_id_partner ? implode(',', $request->corporate_id_partner) : null,
'created_at' => now(),
'created_by' => auth()->user()->id
]);

View File

@@ -49,5 +49,6 @@
"txtUnm" : "unread messages",
"txtNew" : "New",
"txtBeforeThat" : "Before that",
"txtDischargeDate" : "Discharge Date"
"txtDischargeDate" : "Discharge Date",
"txtPatner" : "Patner"
}

View File

@@ -49,5 +49,6 @@
"txtUnm" : "pesan yang belum dibaca",
"txtNew" : "Baru",
"txtBeforeThat" : "Sebelum",
"txtDischargeDate" : "Tanggal Keluar"
"txtDischargeDate" : "Tanggal Keluar",
"txtPatner" : "Rekanan"
}

View File

@@ -12,7 +12,7 @@ import { Card } from '@mui/material';
import { Stack, Typography } from '@mui/material';
import axios from '@/utils/axios';
import { enqueueSnackbar } from 'notistack';
import { useRef, useState, useContext } from 'react';
import { useRef, useState, useContext, useEffect } from 'react';
import { makeFormData } from '@/utils/jsonToFormData';
import { format } from 'date-fns';
import { LanguageContext } from '@/contexts/LanguageContext';
@@ -27,6 +27,7 @@ interface MemberType {
members: any;
services: any;
providers:any;
companies:any;
}
interface FormRequestClaimProps {
member: MemberType;
@@ -40,6 +41,18 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }: FormRe
const [submissionDate, setSubmissionDate] = useState<string>(format(new Date(), "yyyy MMM d HH:mm:ss"));
const [submitLoading, setSubmitLoading] = useState<boolean>(false);
const [corporate_id_partner, setCorporateIdPartner] = useState<any>([]);
useEffect(() => {
setCorporateIdPartner(member?.companies?.map((item: { id: any; name: any; }) => ({ value: item.id, label: item.name })));
}, []);
const [selectedCorporatID, setSelectedCorporateID] = useState<any>([]);
const handleSelectChangePatner = (event:any, selectedOptions:any) => {
const selectedValues = selectedOptions.map((option: { value: any; }) => option.value);
setSelectedCorporateID(selectedValues);
};
function submitRequest() {
if(!idProvider&& (name == '' || alamat == ''))
{
@@ -63,7 +76,8 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }: FormRe
organization_id: idProvider,
organization_name : name,
address_provider: alamat,
submission_date: fPostFormat(submissionDate, 'yyyy-MM-dd HH:mm:ss')
submission_date: fPostFormat(submissionDate, 'yyyy-MM-dd HH:mm:ss'),
corporate_id_partner: selectedCorporatID
};
axios
.post('/request-log', formData)
@@ -150,15 +164,28 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }: FormRe
<Stack direction="column" spacing={1} padding={1}>
<Typography variant='body2'>{localeData.txtAddNew} *</Typography>
<TextField
required={true}
label={localeData.txtName}
fullWidth
onChange={(e) => setName(e.target.value)}
/>
<TextField
required={true}
label={localeData.txtAddress}
fullWidth
onChange={(e) => setAlamat(e.target.value)}
/>
<Autocomplete
id="corporate_id_partner"
options={corporate_id_partner}
getOptionLabel={(option:any) => option.label}
value={corporate_id_partner.filter((option: { value: any; }) => selectedCorporatID.includes(option.value))}
onChange={handleSelectChangePatner}
multiple
renderInput={(params) => (
<TextField {...params} label={localeData.txtPatner} fullWidth />
)}
/>
</Stack>
)}
<FormHelperText style={{ color: 'red' }}></FormHelperText>