import React, { useState, useEffect } from 'react';
import { api } from '../stores/api';
import PageHeader from '../components/PageHeader';
import SuccessCheck from '../components/SuccessCheck';
export default function RapportRSG() {
const [rapports, setRapports] = useState([]);
const [form, setForm] = useState({
reunion_dist: new Date().toISOString().slice(0, 10),
decisions_text: '',
infos_region: '',
sujets_groupe: '',
});
const [loading, setLoading] = useState(true);
const [success, setSuccess] = useState(false);
const [viewRapport, setViewRapport] = useState(null);
const [error, setError] = useState('');
useEffect(() => {
api.get('/rapports-rsg/').then((data) => {
setRapports(data);
setLoading(false);
}).catch(() => setLoading(false));
}, []);
const handleSubmit = async () => {
if (!form.decisions_text.trim() && !form.infos_region.trim() && !form.sujets_groupe.trim()) {
setError('Au moins une section doit être remplie');
return;
}
setError('');
try {
const decisionsList = form.decisions_text
.split('\n')
.map((d) => d.trim())
.filter((d) => d.length > 0);
await api.post('/rapports-rsg/', {
reunion_dist: form.reunion_dist,
decisions: decisionsList.length > 0 ? decisionsList : null,
infos_region: form.infos_region.trim() || null,
sujets_groupe: form.sujets_groupe.trim() || null,
});
setSuccess(true);
} catch (e) { setError(e.message); }
};
if (success) return
Réunion du {viewRapport.reunion_dist}
Rédigé par {viewRapport.redacteur_prenom}
• {d}
{viewRapport.infos_region}
{viewRapport.sujets_groupe}
{error}
}