private DateTime?GetDateOperationByFileLabel(string operationLabelWork, EnumOperationMethod enumOperationMethod) { string dateOperation; int index = -1; switch (enumOperationMethod) { case EnumOperationMethod.PaiementCarte: //////commence apres 'CARTE' prendre les 6 caractères suivants (date de longueur 6 au format ddMMyy) ////index = operationLabelWork.IndexOf("CARTE") + "CARTE".Length; ////dateOperation = operationLabelWork.Substring(index, 6); //Date est situé sur les 6 premiers caractères dateOperation = operationLabelWork.Substring(0, 6); return(DateTime.ParseExact(dateOperation, "ddMMyy", CultureInfo.CurrentCulture)); case EnumOperationMethod.RetraitCarte: //commence apres RETRAITDU, prendre les 6 caracteres suivants (date de longueur 6 au format ddMMyy) index = operationLabelWork.IndexOf("RETRAITDU"); if (index > -1) { index = index + "RETRAITDU".Length; dateOperation = operationLabelWork.Substring(index, 6); return(DateTime.ParseExact(dateOperation, "ddMMyy", CultureInfo.CurrentCulture)); } return(null); } return(null);; }
private DateTime?GetDateOperationByFileLabel(string trimOperationLabel, DateTime dateIntegration, EnumOperationMethod enumOperationMethod) { int idx = 0; int year = dateIntegration.Year; string dateOperation; switch (enumOperationMethod) { case EnumOperationMethod.PaiementCarte: //Recherche pos de 'Paiement Par Carte', la date est au format dd/MM et commence 5 pos avant. //Prendre l'année de la date integration pour mettre annee sur date operation idx = trimOperationLabel.IndexOf("PAIEMENTPARCARTE"); idx = idx - 4; dateOperation = trimOperationLabel.Substring(idx, 4); return(DateTime.ParseExact($"{dateOperation}{year}", "ddMMyyyy", CultureInfo.CurrentCulture)); case EnumOperationMethod.RetraitCarte: //Recherche pos de 'Retrait Au Distributeur', la date / heure est au format dd/MM hhhmm et commence 9 pos avant. //Prendre l'année de la date integration pour mettre annee sur date operation idx = trimOperationLabel.IndexOf("RETRAITAUDISTRIBUTEUR"); idx = idx - 9; dateOperation = $"{trimOperationLabel.Substring(idx, 4)}{year} {trimOperationLabel.Substring(idx+4, 5).Replace("H",":")}:00.000"; return(DateTime.ParseExact($"{dateOperation}", "ddMMyyyy HH:mm:ss.fff", CultureInfo.CurrentCulture)); } return(null); }