import MenuIcon from '@mui/icons-material/Menu'; import React, { useState } from 'react'; import { ChevronLeftOutlined } from '@mui/icons-material'; import { Box, Button, Checkbox, Drawer, FormControlLabel, IconButton, List, ListItem, ListItemButton, ListItemIcon, ListItemText, TextField, } from '@mui/material'; import NonUrgentQueueItemCard from 'components/NonUrgentQueueItemCard'; import SemiUrgentQueueItemCard from 'components/SemiUrgentQueueItemCard'; import { useFormik } from 'formik'; import { useRouter } from 'next/dist/client/router'; import Head from 'next/head'; import * as yup from 'yup'; import NoResultFound from './NoResultFound'; import PressSearchToStart from './PressSearchToStart'; const default_init_values = { semi_urgent_case: true, non_urgent_case: true, hkid: '', mobile: '', }; const validationSchema = yup.object({}); const search_input_row_sx = { width: '100%', padding: '1rem', display: 'flex', flexDirection: 'column', justifyContent: 'flex-start', gap: '0.25rem', fontWeight: 'bold', }; const row_button_sx = { width: '100%', padding: '1rem', display: 'flex', justifyContent: 'space-around', gap: '0.5rem', }; export default () => { const [open, setOpen] = React.useState(false); const [p_queue, setPQueue] = React.useState([]); const router = useRouter(); const [not_search_yet, setNotSearchYet] = React.useState(true); const [changing_page, setChangingPage] = useState(false); const toggleDrawer = newOpen => () => { setOpen(newOpen); }; const formik = useFormik({ initialValues: default_init_values, validationSchema, onSubmit: values => { setNotSearchYet(false); fetch('/api/patient_queue/search', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(values), }) .then(res => res.json()) .then(data => { setPQueue(data.patient_queues); formik.setSubmitting(false); }) .catch(err => { console.error(err); alert('server error'); }); }, }); const DrawerList = ( { setChangingPage(true); router.push('/AdminHome'); }} > ); return ( <> dashboard - non-urgent case Search case
Search by case type: } label='semi-urgent case' checked={formik.values.semi_urgent_case} onChange={() => formik.setFieldValue('semi_urgent_case', !formik.values.semi_urgent_case)} /> } label='non-urgent case' checked={formik.values.non_urgent_case} onChange={() => formik.setFieldValue('non_urgent_case', !formik.values.non_urgent_case)} />
{not_search_yet ? ( ) : ( <> {p_queue.length === 0 ? ( ) : ( <> {p_queue.map(queue_data => { if (queue_data.queue_type === 'non-urgent') return ( ); if (queue_data.queue_type === 'semi-urgent') return ( ); return <>; })} --end of list-- )} )}
{DrawerList} ); };