예제 #1
0
        public ActionResult Create(Zawodnik zawodnik)
        {
            try
            {
                using (NHibernate.ISession session = NHIbernateSession.OpenSession())
                {
                    using (ITransaction transaction = session.BeginTransaction())
                    {
                        session.Save(zawodnik);
                        transaction.Commit();
                        zawodnicy = session.Query <Zawodnik>().ToList();
                    }
                }
            }
            catch (Exception exception)
            {
                return(View());
            }
            Zawodnik            nowyzawodnik   = zawodnicy.Find(x => x.Nazwisko == zawodnik.Nazwisko);
            StatystykiZawodnika nowestatystyki = new StatystykiZawodnika();

            nowestatystyki.StatystykiZawodnikaID = nowyzawodnik.ZawodnikID;
            nowestatystyki.IloscFauli            = 0;
            nowestatystyki.IloscGier             = 0;
            nowestatystyki.IloscPunktow          = 0;
            try
            {
                using (NHibernate.ISession session = NHIbernateSession.OpenSession())
                {
                    using (ITransaction transaction = session.BeginTransaction())
                    {
                        session.Save(nowestatystyki);
                        transaction.Commit();
                    }
                }
            }
            catch (Exception exception)
            {
                return(View());
            }
            try
            {
                using (NHibernate.ISession session = NHIbernateSession.OpenSession())
                {
                    using (ITransaction transaction = session.BeginTransaction())
                    {
                        nowyzawodnik.StatystykiZawodnikaID = nowyzawodnik.ZawodnikID;
                        session.Update(nowyzawodnik);
                        transaction.Commit();
                    }
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception exception)
            {
                return(View());
            }
        }
예제 #2
0
        public ActionResult Create(Zawodnik zawodnik)
        {
            StatystykiZawodnika nowestatystyki = new StatystykiZawodnika();

            zawodnik.StatystykiZawodnikaID       = zawodnik.ZawodnikID;
            nowestatystyki.StatystykiZawodnikaID = zawodnik.ZawodnikID;
            nowestatystyki.IloscPunktow          = 0;
            nowestatystyki.IloscGier             = 0;
            nowestatystyki.IloscFauli            = 0;

            try
            {
                using (NHibernate.ISession session = NHIbernateSession.OpenSession())
                {
                    using (ITransaction transaction = session.BeginTransaction())
                    {
                        session.Save(zawodnik);
                        transaction.Commit();
                    }
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception exception)
            {
                return(View());
            }

            try
            {
                using (NHibernate.ISession session = NHIbernateSession.OpenSession())
                {
                    using (ITransaction transaction = session.BeginTransaction())
                    {
                        session.Save(zawodnik);
                        transaction.Commit();
                    }
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception exception)
            {
                return(View());
            }
        }
예제 #3
0
 public ActionResult EditStatystyki(int StatystykiZawodnikaID, StatystykiZawodnika statystyki)
 {
     try
     {
         using (NHibernate.ISession session = NHIbernateSession.OpenSession())
         {
             using (ITransaction transaction = session.BeginTransaction())
             {
                 session.Update(statystyki);
                 transaction.Commit();
             }
         }
         return(RedirectToAction("Index"));
     }
     catch (Exception exception)
     {
         return(View());
     }
 }
예제 #4
0
        public List <StatystykiZawodnika> PobierzStatytstyki(DateTime dataOd, DateTime dataDo, PlecGracza?plecGracza, KategoriaWiekowa?kategoriaWiekowa, long?klubId,
                                                             long uzytkownikId)
        {
            try
            {
                List <StatystykiZawodnika> listaStatystyk = new List <StatystykiZawodnika>();
                using (PracaMagisterskaEntities baza = new PracaMagisterskaEntities())
                {
                    List <Gra> listaGier = baza.Gra.Where(g => g.Data >= dataOd &&
                                                          g.Data <= dataDo && g.Typ != (byte)TypGry.Trening && g.CzyUsuniete == false && g.UzytkownikId == uzytkownikId)
                                           .ToList();
                    List <Gracz> listaGraczy = baza.Gracz.Where(g => g.UczestnicyGry.Where(u => u.Gra.Data >= dataOd &&
                                                                                           u.Gra.Data <= dataDo && u.Gra.Typ != (byte)TypGry.Trening && u.CzyUsuniety == false && u.Gra.CzyUsuniete == false).Any() &&
                                                                g.CzyUsuniety == false && ((PlecGracza)g.Plec == plecGracza || plecGracza == null) &&
                                                                ((KategoriaWiekowa)g.KategoriaWiekowa == kategoriaWiekowa || kategoriaWiekowa == null) &&
                                                                (g.KlubId == klubId || klubId == null) && g.UzytkownikId == uzytkownikId)
                                               .ToList();
                    List <OcenaGracza> listaOcen = baza.OcenaGracza.Where(o => o.UczestnikGry.Gra.Data >= dataOd && o.UczestnikGry.Gra.Data <= dataDo &&
                                                                          o.UczestnikGry.Gra.Typ != (byte)TypGry.Trening && o.UczestnikGry.CzyUsuniety == false && o.UczestnikGry.Gra.CzyUsuniete == false &&
                                                                          o.UczestnikGry.Gra.UzytkownikId == uzytkownikId).ToList();

                    //switch (listaOcen.Count)
                    //{
                    //    case 0:
                    //        zrobCosGdyPusta();
                    //        break;
                    //    case 1:
                    //    case 2:
                    //        zrobCosInnegoGdy1Element();
                    //        break;
                    //    default:
                    //        zrobCosJeszczeInnego();
                    //        break;
                    //}

                    foreach (Gracz gracz in listaGraczy)
                    {
                        {
                            StatystykiZawodnika statystykiZawodnika = new StatystykiZawodnika()
                            {
                                Imie         = gracz.Imie,
                                Nazwisko     = gracz.Nazwisko,
                                IloscSpotkan = listaGier.Where(x => x.UczestnicyGry.Where(y => y.GraczId == gracz.Id).Any()).ToList().Count,
                                Pozycja      = (PozycjaGracza)gracz.Pozycja,
                                Plec         = (PlecGracza)gracz.Plec,
                                //wez liste ocen danego gracza , pobierz wszystkie id gier i  usun ich powtorzenia(distinct) dodaj na liste i zlicz
                                SredniaOcen            = Math.Round(listaOcen.Where(x => x.UczestnikGry.GraczId == gracz.Id).Average(x => (byte?)x.Ocena).GetValueOrDefault(0), 2), //wez liste ocen danego gracza i wylicz srednia z ocen
                                KategoriaWiekowaGraczy = (KategoriaWiekowa)gracz.KategoriaWiekowa,
                                NazwaKlubu             = gracz.KlubId.HasValue ? gracz.Klub.Nazwa : ""
                            };

                            //if (gracz.KlubId.HasValue)
                            //{
                            //    statystykiZawodnika.NazwaKlubu = ...
                            //}
                            //else
                            //{

                            //}

                            listaStatystyk.Add(statystykiZawodnika);
                        }
                    }
                    return(listaStatystyk.OrderByDescending(x => x.SredniaOcen).ToList());
                }
            }
            catch (Exception ex)
            {
                LogHelper.Log.Error(ex);
                return(null);
            }
        }