module.exports = { createProject: async (db, projectData) => { const query = 'INSERT INTO public.projects (name, description, start_date, status) VALUES ($1, $2, $3, $4) RETURNING id'; const values = [projectData.name, projectData.description, projectData.start_date, projectData.status]; try { const result = await db.query(query, values); return result.rows[0].id; } catch (error) { throw new Error('Erreur lors de la création du projet: ' + error.message); } }, getProjectById: async (db, projectId) => { const query = 'SELECT * FROM public.projects WHERE id = $1'; try { const result = await db.query(query, [projectId]); return result.rows[0]; } catch (error) { throw new Error('Erreur lors de la récupération du projet: ' + error.message); } }, updateProject: async (db, projectId, projectData) => { const query = 'UPDATE public.projects SET name = $1, description = $2, start_date = $3, status = $4 WHERE id = $5'; const values = [projectData.name, projectData.description, projectData.start_date, projectData.status, projectId]; try { await db.query(query, values); } catch (error) { throw new Error('Erreur lors de la mise à jour du projet: ' + error.message); } }, deleteProject: async (db, projectId) => { const query = 'DELETE FROM public.projects WHERE id = $1'; try { await db.query(query, [projectId]); } catch (error) { throw new Error('Erreur lors de la suppression du projet: ' + error.message); } } };