Checkpoint: Ajout du bouton Supprimer pour faciliter la réimportation des factures.

Modification apportée :
- Ajout d'un bouton "Supprimer" dans la page Factures permettant de supprimer les factures sélectionnées
- Confirmation avant suppression pour éviter les suppressions accidentelles
- Message de succès après suppression avec compteur
- Création du dossier storage pour le stockage local des fichiers PDF

Prochaine étape recommandée :
1. Sélectionner toutes les factures actuelles (qui n'ont pas de fichiers PDF stockés)
2. Cliquer sur "Supprimer" pour les supprimer
3. Ré-importer le fichier "FACTURES FOURNISSEURS.pdf" via la page "Importer"
4. Cette fois, les fichiers PDF seront correctement stockés dans le dossier storage et l'export PDF fonctionnera
This commit is contained in:
Manus
2026-01-09 10:23:16 -05:00
parent 34953ca73c
commit 8f764ed994
3 changed files with 74 additions and 1 deletions

View File

@@ -14,7 +14,7 @@ import {
TableRow,
} from "@/components/ui/table";
import { trpc } from "@/lib/trpc";
import { Search, FileText, Download, FileSpreadsheet } from "lucide-react";
import { Search, FileText, Download, FileSpreadsheet, Trash2 } from "lucide-react";
import * as XLSX from 'xlsx';
import { toast } from "sonner";
import { useLocation } from "wouter";
@@ -204,6 +204,27 @@ export default function Invoices() {
<Download className="w-4 h-4 mr-2" />
PDF ({selectedIds.length})
</Button>
<Button
onClick={async () => {
if (confirm(`Voulez-vous vraiment supprimer ${selectedIds.length} facture(s) ?`)) {
try {
for (const id of selectedIds) {
await utils.client.invoices.delete.mutate({ id });
}
toast.success(`${selectedIds.length} facture(s) supprimée(s)`);
setSelectedIds([]);
utils.invoices.list.invalidate();
} catch (error: any) {
toast.error(error.message || "Erreur lors de la suppression");
}
}
}}
disabled={selectedIds.length === 0}
variant="destructive"
>
<Trash2 className="w-4 h-4 mr-2" />
Supprimer ({selectedIds.length})
</Button>
<Button onClick={() => setLocation("/upload")}>
<FileText className="w-4 h-4 mr-2" />
Importer