Files
Snacks-Analytics-backend/src/modules/pdf-parse.ts
2026-06-17 12:30:39 +02:00

65 lines
1.8 KiB
TypeScript

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;