import { useEffect } from 'react'
import {
Box,
Typography,
Paper,
Card,
CardContent,
Chip,
Alert,
Button,
Accordion,
AccordionSummary,
AccordionDetails,
CircularProgress,
} from '@mui/material'
import {
ExpandMore,
LocationOn,
Warning,
CheckCircle,
Error,
Public,
Business,
Home,
} from '@mui/icons-material'
import type { ChipProps } from '@mui/material'
import { useAppDispatch, useAppSelector } from '../store'
import { getContextData } from '../store/documentSlice'
import { Layout } from '../components/Layout'
export default function ContexteView() {
const dispatch = useAppDispatch()
const { currentDocument, contextResult, loading } = useAppSelector(
(state) => state.document
)
useEffect(() => {
if (currentDocument && !contextResult) {
dispatch(getContextData(currentDocument.id))
}
}, [currentDocument, contextResult, dispatch])
if (!currentDocument) {
return (
Veuillez d'abord téléverser et sélectionner un document.
)
}
if (loading) {
return (
Recherche d'informations contextuelles...
)
}
if (!contextResult) {
return (
Aucune donnée contextuelle disponible.
)
}
const getStatusIcon = (hasData: boolean) => {
return hasData ? :
}
const getStatusColor = (hasData: boolean): ChipProps['color'] => {
return hasData ? 'success' : 'error'
}
return (
Informations contextuelles
{/* Résumé des sources */}
Sources de données consultées
Dernière mise à jour: {new Date(contextResult.lastUpdated).toLocaleString()}
{/* Données cadastrales */}
}>
Données cadastrales
{contextResult.cadastreData ? (
{JSON.stringify(contextResult.cadastreData, null, 2)}
) : (
Aucune donnée cadastrale trouvée pour ce document.
)}
{/* Données Géorisques */}
}>
Données Géorisques
{contextResult.georisquesData ? (
{JSON.stringify(contextResult.georisquesData, null, 2)}
) : (
Aucune donnée Géorisques trouvée pour ce document.
)}
{/* Données Géofoncier */}
}>
Données Géofoncier
{contextResult.geofoncierData ? (
{JSON.stringify(contextResult.geofoncierData, null, 2)}
) : (
Aucune donnée Géofoncier trouvée pour ce document.
)}
{/* Données BODACC */}
}>
Données BODACC
{contextResult.bodaccData ? (
{JSON.stringify(contextResult.bodaccData, null, 2)}
) : (
Aucune donnée BODACC trouvée pour ce document.
)}
{/* Données Infogreffe */}
}>
Données Infogreffe
{contextResult.infogreffeData ? (
{JSON.stringify(contextResult.infogreffeData, null, 2)}
) : (
Aucune donnée Infogreffe trouvée pour ce document.
)}
{/* Actions */}
Actions
)
}