import React, { useState } from 'react'; import { TableContainer, Table, TableRow, TableCell, TableHead, TableBody, Paper } from '@material-ui/core'; import { FormControl, InputLabel, Select, MenuItem } from '@material-ui/core'; import t from '../common/localization'; import { formatPosition } from '../common/formatter'; import ReportFilter from './ReportFilter'; import ReportLayoutPage from './ReportLayoutPage'; const Filter = ({ setItems }) => { const [eventTypes, setEventTypes] = useState(['allEvents']); const handleSubmit = async (deviceId, from, to, mail, headers) => { const query = new URLSearchParams({ deviceId, from, to, mail }); eventTypes.forEach(it => query.append('type', it)); const response = await fetch(`/api/reports/events?${query.toString()}`, { headers }); if (response.ok) { const contentType = response.headers.get('content-type'); if (contentType) { if (contentType === 'application/json') { setItems(await response.json()); } else { window.location.assign(window.URL.createObjectURL(await response.blob())); } } } }; return ( {t('reportEventTypes')} ); } const EventReportPage = () => { const [items, setItems] = useState([]); return ( }> {t('positionFixTime')} {t('sharedType')} {t('sharedGeofence')} {t('sharedMaintenance')} {items.map(item => ( {formatPosition(item, 'eventTime')} {item.type} {} {} ))}
); } export default EventReportPage;