From 337b8c947ea380b86f0d36cdaa5c43f20aaedba3 Mon Sep 17 00:00:00 2001 From: Alexis Leboeuf Date: Sat, 13 Dec 2025 22:24:12 +0100 Subject: [PATCH] Changed Ouvriers to come from Firebase rather than mocked --- app/(tabs)/gestion_ouvrier.tsx | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/app/(tabs)/gestion_ouvrier.tsx b/app/(tabs)/gestion_ouvrier.tsx index 0b68cc9..7d622a2 100644 --- a/app/(tabs)/gestion_ouvrier.tsx +++ b/app/(tabs)/gestion_ouvrier.tsx @@ -3,12 +3,14 @@ import { ThemedTextInput } from "@/components/theme/themed-textinput"; import { ThemedView } from "@/components/theme/themed-view"; import Constants from "expo-constants"; //pour connaître la taille de la barre menu de l'OS en haut import { useLocalSearchParams, useRouter } from "expo-router"; -import React, { useMemo, useState } from "react"; +import React, { useEffect, useMemo, useState } from "react"; import { FlatList, Image, StyleSheet, Text, View } from "react-native"; import rawConcerts from "../../data/concerts.json"; - +import { getUsers } from "@/services/ressourcesService"; import { useChantier } from "../ContextChantier"; import SelectChantier from "@/components/selectChantier"; +import { Ressources } from "@/class/class"; +import { getRessources } from "@/services/ressourcesService"; type Concert = { group: string; @@ -26,6 +28,20 @@ export default function GestionOuvrier() { const { nom, prenom } = useLocalSearchParams(); // Recup data ecran precedent const [search, setSearch] = useState(""); const { chantier, setChantier } = useChantier(); + const [artisans, setRessources] = useState([]); + + useEffect(() => { + async function loadData() { + try { + //Nous ne gardons que les Ouvriers, qui peuvent être assignés à un chantier + const data = (await getRessources()).filter(u => u.type === "Ouvrier"); + setRessources(data); + } catch (error) { + console.error("Erreur lors du chargement :", error); + } + } + loadData(); + }, []); const concertsData: Concert[] = Array.isArray(rawConcerts) ? (rawConcerts as Concert[]) @@ -40,17 +56,17 @@ export default function GestionOuvrier() { ); }, [concertsData, search]); - const renderItem = ({ item, index }: { item?: Concert; index: number }) => { + const renderItem = ({ item, index }: { item?: Ressources; index: number }) => { if (!item) { return null; } return ( - - {item.group} - {item.date} - {item.location} + + {item.name} + {item.quantity} + {item.type} ); @@ -65,7 +81,7 @@ export default function GestionOuvrier() { index.toString()} contentContainerStyle={{ paddingBottom: 40 }}