feat : ajout d'un parse pour facture #5

This commit is contained in:
Aurelien
2026-06-17 12:30:39 +02:00
parent 5ffb1c7983
commit 2ca6dc31a9
3 changed files with 86 additions and 3 deletions

65
src/modules/pdf-parse.ts Normal file
View File

@@ -0,0 +1,65 @@
const fs = require('fs');
const pdfParse = require('pdf-parse-fork');
function pdf_parse(travel: string){
interface PdfData {
text: string;
}
let fournisseur = '';
let date = '';
interface tab_res {
marque : string;
date_achats : string;
}
const dataBuffer = fs.readFileSync(travel);
pdfParse(dataBuffer)
.then((data: PdfData) => {
// on regarde si c'est auchan ou metro
const regexAuchan = /auchan/i;
if (regexAuchan.test(data.text)) {
fournisseur = "Auchan"
// on regarde la date d'achat avec une expression reguliere pour auchan
const regexDate = /(\d{2})\/(\d{2})\/(\d{4})/;
const correspondance = data.text.match(regexDate);
if (correspondance) {
date = correspondance[0]
} else {
date = "non trouvé"
}
} else {
fournisseur = "Metro"
// on regarde la date d'achat avec une expression reguliere pour metro
const regexDate = /(\d{2})-(\d{2})-(\d{4})/;
const correspondance = data.text.match(regexDate);
if (correspondance) {
date = correspondance[0]
} else {
date = "non trouvé"
}
}
// on renvoie les valeur avec un seul objet
const res : tab_res = {
marque: fournisseur,
date_achats: date
}
console.log(res);
})
.catch((error: unknown) => {
console.error("Erreur :", error);
});
}
export default pdf_parse;