public static List <Pruefergebnis> GetPruefergebnisEinschreiben(WettkampfModel wettkampf, FahrerModel fahrer, IDatabaseConnector connector)
 {
     return(new List <Pruefergebnis>()
     {
         TeilnahmePruefungen.CheckIfFahrerNimmtTeil(fahrer, wettkampf, connector)
     });
 }
 public static List <Pruefergebnis> GetPruefergebnisWettkampf(WettkampfModel wettkampf, IDatabaseConnector connector)
 {
     return(new List <Pruefergebnis>()
     {
         WettkmapfPruefungen.CheckIfWettkampfAlreadyExists(wettkampf, connector),
         WettkmapfPruefungen.CheckIfSelectedStreckeExists(wettkampf, connector)
     });
 }
        internal static int FuegeFahrerWettkampfHinzu(WettkampfModel wettkampfModel, FahrerModel fahrerModel, IDatabaseConnector db)
        {
            var dieBestenlisten = db.GetBestenlisteProWettkmapf(wettkampfModel);
            var startnummer     = dieBestenlisten.Max(x => x.Fahrer_startnummer) + 1 ?? 1;
            var neuerEintrag    = ModelFactory.CreateBestenlisteModel(wettkampfModel, fahrerModel, startnummer);

            return(db.TrageFahrerInWettkampfEin(neuerEintrag));
        }
        public List <BestenlisteModel> GetBestenlisteProWettkmapf(WettkampfModel wettkampf)
        {
            var procedure = Commands.procedures[(int)CommandNames.getAlleBestenlistenProWettkampf];

            using (var clone = (MySqlConnection)_connection.Clone())
            {
                return((List <BestenlisteModel>)clone.Query <BestenlisteModel>(procedure, wettkampf, commandType: System.Data.CommandType.StoredProcedure));
            }
        }
Exemple #5
0
        public static Pruefergebnis CheckIfSelectedStreckeExists(WettkampfModel wettkampf, IDatabaseConnector cnn)
        {
            var isValid = cnn.ZeigeAlleStrecken().Where(x => x.StreckenID == wettkampf.StreckenID).FirstOrDefault() != null;

            return(new Pruefergebnis
            {
                IsValid = isValid,
                Fehlertext = isValid ? "" : "Ausgewählte Strecke existiert nicht !"
            });
        }
Exemple #6
0
        public static Pruefergebnis CheckIfWettkampfAlreadyExists(WettkampfModel wettkampf, IDatabaseConnector cnn)
        {
            var isValid = cnn.ZeigeAlleWettkaempfe().Where(x => x.Name == wettkampf.Name).FirstOrDefault() == null;

            return(new Pruefergebnis
            {
                IsValid = isValid,
                Fehlertext = isValid ? "" : "Wettkämpfe dürfen nicht doppelt vorkommen !"
            });
        }
        public int CreateWettkampf(WettkampfModel wettkampf)
        {
            var procedure = Commands.procedures[(int)CommandNames.insertWettkampf];

            using (var clone = (MySqlConnection)_connection.Clone())
            {
                clone.Open();
                return(clone.Execute(procedure, wettkampf, commandType: System.Data.CommandType.StoredProcedure));
            }
        }
 public static BestenlisteModel CreateBestenlisteModel(WettkampfModel wettkampf, FahrerModel fahrer, int?startnummer = null)
 {
     return(new BestenlisteModel
     {
         Fahrer = fahrer,
         FahrerID = fahrer.FahrerID,
         Fahrer_startnummer = startnummer,
         wettkampf = wettkampf,
         WettkampfID = wettkampf.WettkampfID,
     });
 }
        public static Pruefergebnis CheckIfFahrerNimmtTeil(FahrerModel fahrer, WettkampfModel wk, IDatabaseConnector cnn)
        {
            var bl      = cnn.GetBestenlisteProWettkmapf(wk);
            var isValid = bl.Where(x => x.FahrerID == fahrer.FahrerID).Count() == 0;

            return(new Pruefergebnis
            {
                IsValid = isValid,
                Fehlertext = isValid ? "" : $"Der Fahrer {fahrer.Fullname} nimmt bereits am Wettkmapf teil"
            });
        }
        public static List <BestenlisteModel> GetBestenlisteFuerWettkampf(WettkampfModel wettkampf, IDatabaseConnector db)
        {
            var bestenlisten = db.GetBestenlisteProWettkmapf(wettkampf);
            var fahrer       = db.ZeigeAlleFahrer();

            bestenlisten.ForEach(x => {
                x.Fahrer = fahrer.Where(f => f.FahrerID == x.FahrerID).FirstOrDefault();
            });

            return(bestenlisten);
        }
        public static int UpdateBestzeiten(WettkampfModel wettkampfModel, FahrerModel fahrer, TimeSpan zeit, IDatabaseConnector db)
        {
            var updatedBestzeit = db.GetBestenlisteProWettkmapf(wettkampfModel).Where(x => x.FahrerID == fahrer.FahrerID).FirstOrDefault();

            //TODO: Vorher auch eigentlich prüfen !
            //Temporär daher
            //if (updatedBestzeit == 0) return updatedBestzeit;

            updatedBestzeit.Zeit = zeit;
            return(db.InsertErreichteZeit(updatedBestzeit).Result);
        }
 internal static int CreateWettkampf(WettkampfModel wettkmapf, IDatabaseConnector databaseConnector)
 {
     return(databaseConnector.CreateWettkampf(wettkmapf));
 }