Create Rekanan Hospital Portal
This commit is contained in:
@@ -108,6 +108,17 @@ class MemberController extends Controller
|
|||||||
|
|
||||||
$res_data['providers'] = $providers;
|
$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);
|
return ApiResponse::apiResponse("Success", $res_data, trans('Message.success'), 200);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ class RequestLogController extends Controller
|
|||||||
'organization_name' => $request->organization_name,
|
'organization_name' => $request->organization_name,
|
||||||
'address_provider' => $request->address_provider,
|
'address_provider' => $request->address_provider,
|
||||||
'submission_date' => $request->submission_date,
|
'submission_date' => $request->submission_date,
|
||||||
|
'corporate_id_partner' => $request->corporate_id_partner,
|
||||||
];
|
];
|
||||||
$validator = Validator::make($request->all(), [
|
$validator = Validator::make($request->all(), [
|
||||||
'member_id' => 'required',
|
'member_id' => 'required',
|
||||||
@@ -83,6 +84,7 @@ class RequestLogController extends Controller
|
|||||||
'name' => $request->organization_name,
|
'name' => $request->organization_name,
|
||||||
'code' => $kodeOrganisasi,
|
'code' => $kodeOrganisasi,
|
||||||
'type' => 'hospital',
|
'type' => 'hospital',
|
||||||
|
'corporate_id_partner' => $request->corporate_id_partner ? implode(',', $request->corporate_id_partner) : null,
|
||||||
'created_at' => now(),
|
'created_at' => now(),
|
||||||
'created_by' => auth()->user()->id
|
'created_by' => auth()->user()->id
|
||||||
]);
|
]);
|
||||||
|
|||||||
@@ -49,5 +49,6 @@
|
|||||||
"txtUnm" : "unread messages",
|
"txtUnm" : "unread messages",
|
||||||
"txtNew" : "New",
|
"txtNew" : "New",
|
||||||
"txtBeforeThat" : "Before that",
|
"txtBeforeThat" : "Before that",
|
||||||
"txtDischargeDate" : "Discharge Date"
|
"txtDischargeDate" : "Discharge Date",
|
||||||
|
"txtPatner" : "Patner"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,5 +49,6 @@
|
|||||||
"txtUnm" : "pesan yang belum dibaca",
|
"txtUnm" : "pesan yang belum dibaca",
|
||||||
"txtNew" : "Baru",
|
"txtNew" : "Baru",
|
||||||
"txtBeforeThat" : "Sebelum",
|
"txtBeforeThat" : "Sebelum",
|
||||||
"txtDischargeDate" : "Tanggal Keluar"
|
"txtDischargeDate" : "Tanggal Keluar",
|
||||||
|
"txtPatner" : "Rekanan"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ import { Card } from '@mui/material';
|
|||||||
import { Stack, Typography } from '@mui/material';
|
import { Stack, Typography } from '@mui/material';
|
||||||
import axios from '@/utils/axios';
|
import axios from '@/utils/axios';
|
||||||
import { enqueueSnackbar } from 'notistack';
|
import { enqueueSnackbar } from 'notistack';
|
||||||
import { useRef, useState, useContext } from 'react';
|
import { useRef, useState, useContext, useEffect } from 'react';
|
||||||
import { makeFormData } from '@/utils/jsonToFormData';
|
import { makeFormData } from '@/utils/jsonToFormData';
|
||||||
import { format } from 'date-fns';
|
import { format } from 'date-fns';
|
||||||
import { LanguageContext } from '@/contexts/LanguageContext';
|
import { LanguageContext } from '@/contexts/LanguageContext';
|
||||||
@@ -27,6 +27,7 @@ interface MemberType {
|
|||||||
members: any;
|
members: any;
|
||||||
services: any;
|
services: any;
|
||||||
providers:any;
|
providers:any;
|
||||||
|
companies:any;
|
||||||
}
|
}
|
||||||
interface FormRequestClaimProps {
|
interface FormRequestClaimProps {
|
||||||
member: MemberType;
|
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 [submissionDate, setSubmissionDate] = useState<string>(format(new Date(), "yyyy MMM d HH:mm:ss"));
|
||||||
|
|
||||||
const [submitLoading, setSubmitLoading] = useState<boolean>(false);
|
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() {
|
function submitRequest() {
|
||||||
if(!idProvider&& (name == '' || alamat == ''))
|
if(!idProvider&& (name == '' || alamat == ''))
|
||||||
{
|
{
|
||||||
@@ -63,7 +76,8 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }: FormRe
|
|||||||
organization_id: idProvider,
|
organization_id: idProvider,
|
||||||
organization_name : name,
|
organization_name : name,
|
||||||
address_provider: alamat,
|
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
|
axios
|
||||||
.post('/request-log', formData)
|
.post('/request-log', formData)
|
||||||
@@ -150,15 +164,28 @@ export default function FormRequestClaim({ member, handleSubmitSuccess }: FormRe
|
|||||||
<Stack direction="column" spacing={1} padding={1}>
|
<Stack direction="column" spacing={1} padding={1}>
|
||||||
<Typography variant='body2'>{localeData.txtAddNew} *</Typography>
|
<Typography variant='body2'>{localeData.txtAddNew} *</Typography>
|
||||||
<TextField
|
<TextField
|
||||||
|
required={true}
|
||||||
label={localeData.txtName}
|
label={localeData.txtName}
|
||||||
fullWidth
|
fullWidth
|
||||||
onChange={(e) => setName(e.target.value)}
|
onChange={(e) => setName(e.target.value)}
|
||||||
/>
|
/>
|
||||||
<TextField
|
<TextField
|
||||||
|
required={true}
|
||||||
label={localeData.txtAddress}
|
label={localeData.txtAddress}
|
||||||
fullWidth
|
fullWidth
|
||||||
onChange={(e) => setAlamat(e.target.value)}
|
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>
|
</Stack>
|
||||||
)}
|
)}
|
||||||
<FormHelperText style={{ color: 'red' }}></FormHelperText>
|
<FormHelperText style={{ color: 'red' }}></FormHelperText>
|
||||||
|
|||||||
Reference in New Issue
Block a user