diff --git a/client/src/pages/AutomationRules.tsx b/client/src/pages/AutomationRules.tsx index d923483..4b5d986 100644 --- a/client/src/pages/AutomationRules.tsx +++ b/client/src/pages/AutomationRules.tsx @@ -237,6 +237,7 @@ export default function AutomationRules() { const fieldOptions = [ { value: "supplierName", label: "Fournisseur" }, + { value: "recipientName", label: "Destinataire" }, { value: "invoiceNumber", label: "N° Facture" }, { value: "totalAmount", label: "Montant" }, { value: "invoiceDate", label: "Date facture" }, diff --git a/client/src/pages/InvoiceDetail.tsx b/client/src/pages/InvoiceDetail.tsx index 38fa57c..b858f5c 100644 --- a/client/src/pages/InvoiceDetail.tsx +++ b/client/src/pages/InvoiceDetail.tsx @@ -28,6 +28,7 @@ export default function InvoiceDetail() { deliveryNoteNumber: "", orderNumber: "", totalAmount: "", + recipientName: "", serviceConcerne: "", typeAchat: "", ventilationComptable: "", @@ -45,6 +46,7 @@ export default function InvoiceDetail() { deliveryNoteNumber: invoice.deliveryNoteNumber || "", orderNumber: invoice.orderNumber || "", totalAmount: invoice.totalAmount ? invoice.totalAmount.toString() : "", + recipientName: (invoice as any).recipientName || "", serviceConcerne: invoice.serviceConcerne || "", typeAchat: invoice.typeAchat || "", ventilationComptable: invoice.ventilationComptable || "", @@ -87,6 +89,7 @@ export default function InvoiceDetail() { deliveryNoteNumber: formData.deliveryNoteNumber || undefined, orderNumber: formData.orderNumber || undefined, totalAmount: formData.totalAmount ? formData.totalAmount : undefined, + recipientName: formData.recipientName || undefined, serviceConcerne: formData.serviceConcerne || undefined, typeAchat: (formData.typeAchat as "CAPEX" | "OPEX" | "") || undefined, ventilationComptable: formData.ventilationComptable || undefined, @@ -330,6 +333,20 @@ export default function InvoiceDetail() { )} + +
+ + {isEditing ? ( + setFormData({ ...formData, recipientName: e.target.value })} + placeholder="Nom du destinataire" + /> + ) : ( +
{(invoice as any).recipientName || "-"}
+ )} +
diff --git a/client/src/pages/Invoices.tsx b/client/src/pages/Invoices.tsx index bf125f4..df2c169 100644 --- a/client/src/pages/Invoices.tsx +++ b/client/src/pages/Invoices.tsx @@ -60,15 +60,16 @@ export default function Invoices() { // Generate Excel file const worksheet = XLSX.utils.json_to_sheet(data.invoices.map(inv => ({ 'Fournisseur': inv.supplierName, - 'N\u00b0 Facture': inv.invoiceNumber, + 'Destinataire': (inv as any).recipientName, + 'N° Facture': inv.invoiceNumber, 'Date': inv.invoiceDate, - 'N\u00b0 Bon de livraison': inv.deliveryNoteNumber, - 'N\u00b0 Commande': inv.orderNumber, + 'N° Bon de livraison': inv.deliveryNoteNumber, + 'N° Commande': inv.orderNumber, 'Montant': inv.totalAmount, 'Score': inv.qualityScore, 'Statut export': inv.exportStatus, - 'Export\u00e9 le': inv.exportedAt, - 'Cr\u00e9\u00e9 le': inv.createdAt, + 'Exporté le': inv.exportedAt, + 'Créé le': inv.createdAt, }))); const workbook = XLSX.utils.book_new(); @@ -398,6 +399,7 @@ export default function Invoices() { /> Fournisseur + Destinataire N° Facture Date Montant @@ -426,6 +428,7 @@ export default function Invoices() { {invoice.supplierName || "Inconnu"} + {(invoice as any).recipientName || "-"} {invoice.invoiceNumber || "-"} {invoice.invoiceDate diff --git a/client/src/pages/Settings.tsx b/client/src/pages/Settings.tsx index 36c1e10..fc06bcb 100644 --- a/client/src/pages/Settings.tsx +++ b/client/src/pages/Settings.tsx @@ -664,6 +664,7 @@ export default function Settings() { const [supplierKeywords, setSupplierKeywords] = useState(""); const [totalAmountKeywords, setTotalAmountKeywords] = useState(""); const [subscriptionKeywords, setSubscriptionKeywords] = useState(""); + const [recipientKeywords, setRecipientKeywords] = useState(""); const [sftpHost, setSftpHost] = useState(""); const [sftpPort, setSftpPort] = useState(22); const [sftpUsername, setSftpUsername] = useState(""); @@ -681,6 +682,7 @@ export default function Settings() { setSupplierKeywords(settings.supplierKeywords || ""); setTotalAmountKeywords(settings.totalAmountKeywords || ""); setSubscriptionKeywords(settings.subscriptionKeywords || ""); + setRecipientKeywords((settings as any).recipientKeywords || ""); setSftpHost(settings.sftpHost || ""); setSftpPort(settings.sftpPort || 22); setSftpUsername(settings.sftpUsername || ""); @@ -723,6 +725,7 @@ export default function Settings() { supplierKeywords, totalAmountKeywords, subscriptionKeywords, + recipientKeywords, sftpHost, sftpPort, sftpUsername, @@ -986,6 +989,24 @@ export default function Settings() { Les factures contenant ces mots-clés seront automatiquement marquées comme abonnement

+ +
+ +