1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
export default function Station(){
//const params = useLocalSearchParams() as {id: string, from?: string, to?: string};
const params = useLocalSearchParams() as {id: string};
//const {data: getstation, isFetching} = useFetchQuery("/getstation/[id]/[from]/[to]", {id: params.id, from: params.from ?? '2021-03-01', to: params.to ?? '2021-04-30'})
const {data: getstation, isFetching} = useFetchQuery("/getstation/[id]", {id: params.id})
// PEUT-ON FAIRE UNE PAUSE ICI, POUR ATTENDRE QUE TOUTES LES DONNEES SOIENT COLLECTEES?
// MAIS COMMENT ALORS FAIRE UN LOADING POUR l'UTILISATEUR?
const measures = getstation?.stations?.[0].measures
const station = getstation?.stations?.[0]
console.log("Latest measure:")
console.log(dayjs(station?.latest_measure).format("YYYY-MM-DD"))
const [dateFrom, setDateFrom] = useState(new Date(dayjs(station?.latest_measure).format("YYYY-MM-DD")));
const [dateTo, setDateTo] = useState(new Date(dayjs(station?.latest_measure).format("YYYY-MM-DD")));
useLayoutEffect(()=>{
console.log("useLayoutEffect")
}, [])
useEffect(()=>{
console.log("useEffect")
})
//const navigation = useNavigation();
const colors = useThemeColors()
const onChangeFrom = (event:any, selectedDate:any) => {
const currentDate = selectedDate;
console.log("DateFrom")
console.log(currentDate)
setDateFrom(currentDate);
//navigation.navigate('station', { id: "1" });
};
const onChangeTo = (event:any, selectedDate:any) => {
const currentDate = selectedDate;
console.log("DateTo")
console.log(currentDate)
setDateTo(currentDate);
};
const charts:any = []
measures?.map((d,i) => {
charts[i] = d.datasets?.data
})
const dataset = new Array()
measures?.map((d,i) => {
dataset.push( {
title: {
title: d.datasets?.label,
fontawesome: d.sensor_type_awe
},
data: [d.datasets?.data],
id_sensor: d.id_sensor
})
})
console.log("dateFrom:")
console.log(dateFrom)
console.log("dateTo:")
console.log(dateTo)
console.log("dataset")
console.log(dataset)
if(isFetching)
{
return <RootView><Loading /></RootView>
}
else
{
return (
<RootView>
<Tabs.Screen
options={{
title: 'Station ' + station?.station_longname,
headerLeft: () => (
<FontAwesome style={{marginLeft:15}} name='arrow-left' width={30} onPress={() => router.back()} />
),
headerShown: false,
}}
/>
{/* Reste du code */)
</RootView>
)
} |
Partager