Exemplo n.º 1
0
        public JsonResult ValidatePool(IEnumerable <ParticipationCombatModel> participations)
        {
            var result = new JsonResult();

            result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            var tree = TournamentHelper.BuildTree(participations);

            result.Data = new { competiteurs = tree, count = participations.Count(), usePool = false };
            return(result);
        }
Exemplo n.º 2
0
        public JsonResult UpdatePresentielCombat(IEnumerable <ParticipationModel> participations, IEnumerable <EncadrantModel> encadrants, string getTree)
        {
            this.resultats.Read();
            var  types   = this.types.Read();
            bool inError = false;

            try
            {
                var epreuveId = participations.First().EpreuveId;
                foreach (var participation in participations)
                {
                    var participationCompetiteur = this.participations.Read(p => p.EpreuveId == participation.EpreuveId && p.ParticipantId == participation.ParticipantId).FirstOrDefault();

                    if (participationCompetiteur != null)
                    {
                        participationCompetiteur.Resultat.Absence = !participation.Present;
                        this.participations.Update(participationCompetiteur);
                    }
                    else
                    {
                        inError = true;
                    }
                }

                var encadrements = this.unitOfWork.Repository <Encadrement>();
                if (encadrants != null)
                {
                    foreach (var encadrant in encadrants)
                    {
                        var dbItem = this.encadrements.Read(e => e.EncadrantId == encadrant.Id).FirstOrDefault();
                        if (dbItem == null)
                        {
                            encadrements.Create(new Encadrement
                            {
                                EpreuveId   = epreuveId,
                                EncadrantId = encadrant.Id,
                                Role        = encadrant.Role == "Arbitre" ? Role.Arbitre : Role.Administrateur
                            });
                        }
                        else
                        {
                            dbItem.EncadrantId = encadrant.Id;
                            dbItem.EpreuveId   = epreuveId;
                            dbItem.Role        = encadrant.Role == "Arbitre" ? Role.Arbitre : Role.Administrateur;
                            encadrements.Update(dbItem);
                        }
                    }
                }

                if (!inError)
                {
                    var epreuve = this.epreuvesCombat.Read().FirstOrDefault(e => e.Id == epreuveId);
                    if (epreuve != null)
                    {
                        bool needTree;

                        if (!bool.TryParse(getTree, out needTree))
                        {
                            needTree = false;
                        }
                        var result = new JsonResult();
                        result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
                        epreuve.Statut             = StatutEpreuve.EnCours;
                        this.epreuvesCombat.Update(epreuve);

                        var competiteurs = participations.Where(p => p.Present).Select(p => p.ConvertToCombat()).OrderBy(c => Guid.NewGuid());
                        if (!epreuve.TypeEpreuve.UseSwissSystem || needTree)
                        {
                            var tree = TournamentHelper.BuildTree(competiteurs);
                            result.Data = new { competiteurs = tree, count = competiteurs.Count(), usePool = false };
                        }
                        else
                        {
                            var rounds = TournamentHelper.BuildRounds(competiteurs);
                            result.Data = new { rounds = rounds, count = competiteurs.Count(), usePool = true };
                        }
                        return(result);
                    }

                    throw new ArgumentException("unable to find contest !!");
                }
                else
                {
                    throw new ArgumentException("oups !!");
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            //using (var context = new CoupeQuachVanKeContext())
            //{
            //    var coupe = new Coupe()
            //    {
            //        Nom = "CoupeQVK2015",
            //        Description = "Coupe Quach Van Kê 2015",
            //        NombreTapis = 4,
            //        Ville = "JACOU",
            //        CodePostal = "34830",
            //        Voie = "Rue Henri MOYNIER",
            //        Complement = "Gymnase Puigsegur",
            //        DateDebut = new DateTime(2015, 5, 16, 12, 0, 0),
            //        DateFin = new DateTime(2015, 5, 17, 18, 0, 0),
            //        Responsable = new ResponsableCoupe
            //        {
            //            Nom = "Tran Van Ba",
            //            Prenom = "Christophe",
            //            MailContact = "*****@*****.**",
            //            Telephone = "00-00-00-00-00",
            //            Adresse = "chez cricri"
            //        }
            //    };

            //    var md = new Medecin
            //    {
            //        Nom = "GALLAUX",
            //        Prenom = "Jean-Pierre"
            //    };

            //    coupe.Medecins = new List<Medecin>();
            //    coupe.Medecins.Add(md);
            //    context.Entry(coupe).State = EntityState.Added;


            //    context.SaveChanges();
            //}

            int count;

            string input = Console.ReadLine();

            if (!int.TryParse(input, out count))
            {
                count = 1;
            }

            var list = new List <ParticipationCombatModel>();

            for (int i = 1; i < count + 1; i++)
            {
                list.Add(new ParticipationCombatModel
                {
                    Club          = "Club " + (i),
                    ClubId        = i,
                    Couleur       = (i % 2 == 0)? "#0000FF" : "#FF0000",
                    EpreuveId     = 1004,
                    Id            = i,
                    Nom           = "Nom " + i,
                    ParticipantId = i,
                    Prenom        = "Prenom " + i,
                });
            }

            var source = list.OrderBy(a => Guid.NewGuid());

            var tree = TournamentHelper.BuildTree(source);

            Console.ReadLine();
        }