private ICab CréerCab(DonnéesCabBrutesNmpp donnéesCabBrutesNmpp) { try { var parutionCible = (from p in DépôtParutions.Parutions where p.Codif == donnéesCabBrutesNmpp.Codif && p.Numéro == donnéesCabBrutesNmpp.Numéro select p).FirstOrDefault(); if (parutionCible == null) { return(null); } int mois = ConversionMois(donnéesCabBrutesNmpp.SMois); int année = ConversionAnnée(donnéesCabBrutesNmpp.SAnnée, mois, donnéesCabBrutesNmpp.Jour); return(CabFactory.CréerCab(this, donnéesCabBrutesNmpp.Url, TypeEditeur.Inconnu, TypeDistributeur.Nmpp, donnéesCabBrutesNmpp.Codif, donnéesCabBrutesNmpp.Numéro, donnéesCabBrutesNmpp.Prix, TypePériodicité.Inconnue, QualificationRéseauNmppVersTypeQualificationRéseau( donnéesCabBrutesNmpp.SQualification), new DateTime(année, mois, donnéesCabBrutesNmpp.Jour, donnéesCabBrutesNmpp.Heure, donnéesCabBrutesNmpp.Minutes, 0), parutionCible)); } catch (Exception) { // TODO: tracer exception return(null); } }
private ICab CréerCab(DonnéesCabBrutesMlp donnéesCabBrutesMlp) { try { var parutionCible = DépôtParutions.Parutions.FirstOrDefault( p => p.Codif == donnéesCabBrutesMlp.Codif && p.Numéro == donnéesCabBrutesMlp.Numéro); if (parutionCible == null) { return(null); } return(CabFactory.CréerCab(this, donnéesCabBrutesMlp.Url, donnéesCabBrutesMlp.TypeEditeur, TypeDistributeur.Mlp, donnéesCabBrutesMlp.Codif, donnéesCabBrutesMlp.Numéro, donnéesCabBrutesMlp.Prix, PériodicitéMlpVersPériodicité(donnéesCabBrutesMlp.SPériodicité), QualificationMlpVersTypeQualification(donnéesCabBrutesMlp.SQualification), new DateTime(donnéesCabBrutesMlp.Année, donnéesCabBrutesMlp.Mois, donnéesCabBrutesMlp.Jour, donnéesCabBrutesMlp.Heure, donnéesCabBrutesMlp.Minutes, 0), parutionCible)); } catch (Exception) { // TODO: tracer exception return(null); } }
private ICab CréerCab(FileInfo fiCab, IParution parutionCible) { try { string sDonnées = Path.GetFileNameWithoutExtension(fiCab.Name); if (sDonnées == null) { return(null); } if (sDonnées[4] == '_') { // Code de type Bdi migré sDonnées = $"{sDonnées.Substring(0, 4)}#{sDonnées.Substring(5)}"; } var données = sDonnées.Replace('-', '_').Split('_'); if (données.Length < 6) { return(null); } string codeProduit = données[0]; if (codeProduit[4] == '#') { codeProduit = $"{codeProduit.Substring(0, 4)}_{codeProduit.Substring(5)}"; } string sDistributeur = données[1]; string codif = données[2]; string sPrix = données[3].Replace('.', ','); string sPériodicité = données[4]; string sQualification = données[5]; decimal prix = decimal.Parse(sPrix); string sNuméro; if (codeProduit.Length == 6) { sNuméro = codeProduit.Substring(4); } else { sNuméro = codeProduit.Substring(5); } int numéro = int.Parse(sNuméro); var distributeur = DistributeurPaoVersTypeDistributeur(sDistributeur); var périodicité = PériodicitéPaoVersTypePériodicité(sPériodicité); var qualificationRéseau = QualificationPaoVersTypeQualificationRéseau(sQualification); return(CabFactory.CréerCab( this, fiCab.FullName, TypeEditeur.Inconnu, distributeur, codif, numéro, prix, périodicité, qualificationRéseau, fiCab.CreationTime, parutionCible)); } catch (Exception) { // TOTO: tracer l'exception return(null); } }