Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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);
            }
        }
Exemplo n.º 3
0
        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);
            }
        }