Skip to content

Commit

Permalink
Correction d'un cas de plante sur scan facture
Browse files Browse the repository at this point in the history
-Correction d'un cas de plantage sur scan facture
-Si on ne trouve pas de club, le logiciel tente désormais par défaut une méthodes d'extraction générique
  • Loading branch information
cvermot committed Apr 23, 2024
1 parent dae43fc commit 7c8a779
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 26 deletions.
35 changes: 11 additions & 24 deletions src/PdfExtractor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,12 @@ AeroDmsTypes::ListeDonneesFacture PdfExtractor::recupererLesDonneesDuPdf( const
index++;
}

//Si on a pas identifié de club, on tente le tout pour le tout avec la méthode générique 1 passe...
if (aeroclub == AeroDmsTypes::Aeroclub_INCONNU)
{
aeroclub = AeroDmsTypes::Aeroclub_GENERIQUE_1_PASSE;
}

switch (aeroclub)
{
case AeroDmsTypes::Aeroclub_CAPAM:
Expand Down Expand Up @@ -134,7 +140,7 @@ AeroDmsTypes::DonneesFacture PdfExtractor::extraireDonneesOpenFlyer( std::vector
if (data.contains("Vol"))
{
QStringList str = data.replace("Vol du ", "").split(" ");
donneesFactures.dateDuVol = extraireDate(str.at(0));
donneesFactures.dateDuVol = extraireDateRegex(str.at(0));

if (QString(p_entries.at(index + 1).Text.data()).contains(immatRe))
{
Expand All @@ -147,7 +153,7 @@ AeroDmsTypes::DonneesFacture PdfExtractor::extraireDonneesOpenFlyer( std::vector
{
if (!QString(p_entries.at(index).Text.data()).contains(":") && index+1 < p_entries.size())
index++;
donneesFactures.dureeDuVol = extraireDuree(QString(p_entries.at(index).Text.data()));
donneesFactures.dureeDuVol = extraireDureeRegex(QString(p_entries.at(index).Text.data()));
}

if (index+2 < p_entries.size())
Expand Down Expand Up @@ -183,7 +189,7 @@ AeroDmsTypes::DonneesFacture PdfExtractor::extraireDonneesACAndernos( std::vecto
{
QStringList str = data.replace("Vol n°", "").split(" ");

donneesFacture.dateDuVol = extraireDate(str.at(2));
donneesFacture.dateDuVol = extraireDateRegex(str.at(2));
QString duree = str.at(4);
donneesFacture.dureeDuVol = AeroDmsServices::convertirMinutesEnQTime(duree.replace("min", "").toInt());

Expand Down Expand Up @@ -234,11 +240,11 @@ AeroDmsTypes::ListeDonneesFacture PdfExtractor::extraireDonneesDaca( std::vector
{
if (str.at(i).contains("/"))
{
donneesFactures.dateDuVol = extraireDate(str.at(i));
donneesFactures.dateDuVol = extraireDateRegex(str.at(i));
}
else if(str.at(i).contains(":"))
{
donneesFactures.dureeDuVol = extraireDuree(str.at(i));
donneesFactures.dureeDuVol = extraireDureeRegex(str.at(i));
}
else if (str.at(i).contains("vol"))
{
Expand Down Expand Up @@ -507,25 +513,6 @@ const QTime PdfExtractor::extraireDureeRegex(const QString p_str)
return duree;
}

const QDate PdfExtractor::extraireDate(const QString p_date)
{
const QStringList dateStr = p_date.split("/");
const QDate date = QDate(dateStr.at(2).toInt(),
dateStr.at(1).toInt(),
dateStr.at(0).toInt());

return date;
}

const QTime PdfExtractor::extraireDuree(const QString p_duree)
{
const QStringList dureeStr = p_duree.split(":");
const QTime duree = QTime(dureeStr.at(0).toInt(),
dureeStr.at(1).toInt(),
0);
return duree;
}

const float PdfExtractor::recupererMontantAca(QString p_chaine)
{
//On ne sais pas trop pourquoi mais parfois (pas toujours...) les montant sont
Expand Down
2 changes: 0 additions & 2 deletions src/PdfExtractor.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ class PdfExtractor : public QWidget {
static AeroDmsTypes::ListeDonneesFacture extraireDonneesGenerique(std::vector<PoDoFo::PdfTextEntry> p_entries, const unsigned p_noPage);
static AeroDmsTypes::ListeDonneesFacture extraireDonneesGenerique1Passe(std::vector<PoDoFo::PdfTextEntry> p_entries, const unsigned p_noPage);

static const QDate extraireDate(const QString p_date);
static const QTime extraireDuree(const QString p_duree);
static const float recupererMontantAca(QString p_chaine);

static const QDate extraireDateRegex(const QString p_date);
Expand Down

0 comments on commit 7c8a779

Please sign in to comment.