Пример #1
0
        public ActionResult Create(FormCollection collection)
        {
            //try {
            ServiceReference.TournoiWS tournoi = new ServiceReference.TournoiWS();
            List<JediWS> jediList = new List<JediWS>();
            List<StadeWS> stadeList = new List<StadeWS>();

            using (ServiceReference.ServiceClient service = new ServiceReference.ServiceClient())
            {
                service.getJedis().ForEach(x => jediList.Add(x));
                service.getStades().ForEach(x => stadeList.Add(x));

                tournoi.Id = 0;
                tournoi.Nom = Convert.ToString(collection.Get("Item1.Nom"));
                tournoi.Matches = new List<MatchWS>();

                // Va chercher jedi1, jedi2 et stade pour les huitieme
                for (int i = (int)EPhaseTournoiWS.HuitiemeFinale1; i >= (int)EPhaseTournoiWS.HuitiemeFinale8; i--)
                {
                    MatchWS m = new MatchWS();
                    m.Id = 0;
                    m.JediVainqueur = null;
                    m.Phase = ((EPhaseTournoiWS)i);
                    m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i)));
                    m.Jedi1 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi1for" + i)));
                    m.Jedi2 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi2for" + i)));
                    tournoi.Matches.Add(m);
                    // TODO : ai-je besoin des participants ?
                }

                // Va chercher stade pour les autres phases
                for (int i = (int)EPhaseTournoiWS.QuartFinale1; i >= (int)EPhaseTournoiWS.Finale; i--)
                {
                    MatchWS m = new MatchWS();
                    m.Id = 0;
                    m.JediVainqueur = null;
                    m.Jedi1 = null;
                    m.Jedi2 = null;
                    m.Phase = ((EPhaseTournoiWS)i);
                    m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i)));

                    tournoi.Matches.Add(m);
                }

                List<MatchWS> vraiMatches = new List<MatchWS>();
                foreach (var m in tournoi.Matches)
                {
                    service.addMatch(m);
                }
                List<MatchWS> mmm = service.getMatches();
                foreach (var m in tournoi.Matches)
                {
                    if (m.Phase >= EPhaseTournoiWS.HuitiemeFinale8)
                    {
                        vraiMatches.Add(mmm.Find(x => x.Phase == m.Phase
                                                && x.Jedi1.Nom == m.Jedi1.Nom
                                                && x.Jedi2.Nom == m.Jedi2.Nom
                                                && x.Stade.Planete == m.Stade.Planete));
                    }
                    else
                    {
                        vraiMatches.Add(mmm.Find(x => x.Stade.Planete == m.Stade.Planete
                                                && x.Phase == m.Phase));
                    }
                }
                tournoi.Matches = vraiMatches;
                service.addTournoi(tournoi);
            }

            return RedirectToAction("Index");
            //} catch {
            //	return View("Error");
            //}
        }
Пример #2
0
        public ActionResult Create(FormCollection collection)
        {
            //try {
            ServiceReference.TournoiWS tournoi = new ServiceReference.TournoiWS();
            List <JediWS>  jediList            = new List <JediWS>();
            List <StadeWS> stadeList           = new List <StadeWS>();

            using (ServiceReference.ServiceClient service = new ServiceReference.ServiceClient())
            {
                service.getJedis().ForEach(x => jediList.Add(x));
                service.getStades().ForEach(x => stadeList.Add(x));

                tournoi.Id      = 0;
                tournoi.Nom     = Convert.ToString(collection.Get("Item1.Nom"));
                tournoi.Matches = new List <MatchWS>();

                // Va chercher jedi1, jedi2 et stade pour les huitieme
                for (int i = (int)EPhaseTournoiWS.HuitiemeFinale1; i >= (int)EPhaseTournoiWS.HuitiemeFinale8; i--)
                {
                    MatchWS m = new MatchWS();
                    m.Id            = 0;
                    m.JediVainqueur = null;
                    m.Phase         = ((EPhaseTournoiWS)i);
                    m.Stade         = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i)));
                    m.Jedi1         = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi1for" + i)));
                    m.Jedi2         = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi2for" + i)));
                    tournoi.Matches.Add(m);
                    // TODO : ai-je besoin des participants ?
                }

                // Va chercher stade pour les autres phases
                for (int i = (int)EPhaseTournoiWS.QuartFinale1; i >= (int)EPhaseTournoiWS.Finale; i--)
                {
                    MatchWS m = new MatchWS();
                    m.Id            = 0;
                    m.JediVainqueur = null;
                    m.Jedi1         = null;
                    m.Jedi2         = null;
                    m.Phase         = ((EPhaseTournoiWS)i);
                    m.Stade         = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i)));

                    tournoi.Matches.Add(m);
                }

                List <MatchWS> vraiMatches = new List <MatchWS>();
                foreach (var m in tournoi.Matches)
                {
                    service.addMatch(m);
                }
                List <MatchWS> mmm = service.getMatches();
                foreach (var m in tournoi.Matches)
                {
                    if (m.Phase >= EPhaseTournoiWS.HuitiemeFinale8)
                    {
                        vraiMatches.Add(mmm.Find(x => x.Phase == m.Phase &&
                                                 x.Jedi1.Nom == m.Jedi1.Nom &&
                                                 x.Jedi2.Nom == m.Jedi2.Nom &&
                                                 x.Stade.Planete == m.Stade.Planete));
                    }
                    else
                    {
                        vraiMatches.Add(mmm.Find(x => x.Stade.Planete == m.Stade.Planete &&
                                                 x.Phase == m.Phase));
                    }
                }
                tournoi.Matches = vraiMatches;
                service.addTournoi(tournoi);
            }

            return(RedirectToAction("Index"));
            //} catch {
            //	return View("Error");
            //}
        }
Пример #3
0
        public void TestServiceARTournois()
        {
            ServiceReference.ServiceClient client = new ServiceReference.ServiceClient();

            List<TournoiWS> tournois = client.getTournois();
            int size = tournois.Count;
            Assert.IsNotNull(tournois);
            /* AJOUT */
            TournoiWS bob = new TournoiWS(0, "Test", new List<MatchWS>());
            client.addTournoi(bob);
            Assert.AreEqual(size + 1, client.getTournois().Count);
            /* SUPPRESSION */
            bob = client.getTournois().Find(x => x.Nom.Equals("Test"));
            client.removeTournoi(bob);
            Assert.AreEqual(size, client.getTournois().Count);

            client.Close();
        }