コード例 #1
0
        public ActionResult EditCompetitor(CompetitorVM competitorVM)
        {
            if (ModelState.IsValid)
            {
                var temporaryCompetitionEventsList = new List <CompetitorEvents>();
                var temporaryCompetitorEventsList  = new List <CompetitorEvents>();
                temporaryCompetitionEventsList = _competitorEventsRepository.GetWhere(x => x.CompetitionID == competitorVM.CompetitionID).ToList();
                temporaryCompetitorEventsList  = temporaryCompetitionEventsList.Where(x => x.CompetitiorID == competitorVM.Competitor.ID).ToList();

                foreach (var item in competitorVM.SelectedEventsList)
                {
                    if (temporaryCompetitorEventsList.Find(x => x.EventID == int.Parse(item)) == null)
                    {
                        var competitorEvents = new CompetitorEvents();
                        competitorEvents.CompetitiorID = competitorVM.Competitor.ID;
                        competitorEvents.EventID       = int.Parse(item);
                        competitorEvents.CompetitionID = competitorVM.CompetitionID;
                        _competitorEventsRepository.Create(competitorEvents);
                    }
                    else
                    {
                        var competitorEvents = temporaryCompetitorEventsList.Find(x => x.EventID == int.Parse(item));
                        _competitorEventsRepository.Delete(competitorEvents);
                    }
                }
                _competitorRepository.Update(competitorVM.Competitor);
                return(RedirectToAction("Registered", new { id = competitorVM.CompetitionID }));
            }
            return(View(competitorVM));
        }
コード例 #2
0
        public ActionResult EditCompetitor(int id, int competitionId)
        {
            var competitorVM = new CompetitorVM();

            competitorVM.CompetitionEventsList = new List <CompetitionEvents>();



            competitorVM.Competitor    = _competitorRepository.GetWhere(x => x.ID == id).FirstOrDefault();
            competitorVM.CompetitionID = competitionId;

            competitorVM.CompetitionEventsList = _comeptitionEventsRepository.GetWhere(x => x.CompetitionID == competitionId).ToList();


            competitorVM.EventsList = new List <Event>();
            foreach (var item in competitorVM.CompetitionEventsList)
            {
                competitorVM.EventsList.Add(_eventsRepository.GetWhere(x => x.ID == item.EventID).FirstOrDefault());
            }

            if (competitorVM.Competitor == null)
            {
                return(HttpNotFound());
            }
            return(View(competitorVM));
        }
コード例 #3
0
        public ActionResult Registered(int?id)
        {
            var competitionVM = new CompetitorVM();

            competitionVM = _competitionBusinessLogic.GetAllInformationAboutCompetiion(id.Value);

            return(View(competitionVM));
        }
コード例 #4
0
        public ActionResult Register(int?id)
        {
            var competitorVM = new CompetitorVM();

            competitorVM.CompetitionID         = id.Value;
            competitorVM.CompetitionEventsList = _competitionEventsRepository.GetWhere(x => x.CompetitionID == id.Value).ToList();

            competitorVM.EventsList = new List <Event>();
            foreach (var item in competitorVM.CompetitionEventsList)
            {
                competitorVM.EventsList.Add(_eventsRepository.GetWhere(x => x.ID == item.EventID).FirstOrDefault());
            }
            return(View(competitorVM));
        }
コード例 #5
0
        public ActionResult Register(CompetitorVM viewModel)
        {
            if (ModelState.IsValid)
            {
                viewModel.Competitor.IsConfirmed = false;
                _competitorRepository.Create(viewModel.Competitor);


                foreach (var item in viewModel.SelectedEventsList)
                {
                    var competitorEvents = new CompetitorEvents();
                    competitorEvents.CompetitiorID = viewModel.Competitor.ID;
                    competitorEvents.EventID       = int.Parse(item);
                    competitorEvents.CompetitionID = viewModel.CompetitionID;
                    _competitorEventsRepository.Create(competitorEvents);
                }
            }
            return(RedirectToAction("RegisterConfirm"));
        }
コード例 #6
0
        public CompetitorVM GetAllInformationAboutCompetiion(int id)
        {
            var competitorVM = new CompetitorVM();

            competitorVM.Competition                 = new Competition();
            competitorVM.CompetitorsList             = new List <Competitor>();
            competitorVM.CompetitorEventsList        = new List <CompetitorEvents>();
            competitorVM.CompetitionEventsList       = new List <CompetitionEvents>();
            competitorVM.Competitor                  = new Competitor();
            competitorVM.Competitor.CompetitorEvents = new List <CompetitorEvents>();
            competitorVM.EventsList                  = new List <Event>();

            competitorVM.Competition           = _competitionRepository.GetWhere(x => x.ID == id).FirstOrDefault();
            competitorVM.CompetitionEventsList = _competitionEventsRepository.GetWhere(x => x.CompetitionID == id).ToList();
            foreach (var item in competitorVM.CompetitionEventsList)
            {
                competitorVM.EventsList.Add(_eventsRepository.GetWhere(x => x.ID == item.EventID).FirstOrDefault());
            }

            competitorVM.CompetitorEventsList = _competitorEventsRepository.GetWhere(x => x.CompetitionID == id).ToList();


            var newCompetitorList = competitorVM.CompetitorEventsList.GroupBy(cel => cel.CompetitiorID).ToList();

            foreach (var item in newCompetitorList)
            {
                competitorVM.CompetitorsList.Add(_competitorRepository.GetWhere(x => x.ID == item.Key).FirstOrDefault());
            }



            foreach (var item in competitorVM.CompetitorsList)
            {
                item.CompetitorEvents = new List <CompetitorEvents>();
                foreach (var cos in competitorVM.CompetitorEventsList)
                {
                    if (item.ID == cos.CompetitiorID)
                    {
                        item.CompetitorEvents.Add(cos);
                    }
                }
            }

            int numberOfEventsOnCompetition = competitorVM.CompetitionEventsList.Count;

            foreach (var item in competitorVM.CompetitorsList)
            {
                item.CompetitorEvents = item.CompetitorEvents.ToList();
                var tempCompetitorEventsList = new List <CompetitorEvents>();
                var competitorlist           = new List <CompetitorEvents>();
                int j = 0;
                for (int i = 0; i < numberOfEventsOnCompetition; i++)
                {
                    competitorlist = item.CompetitorEvents.ToList();
                    for (int y = 0; y < numberOfEventsOnCompetition - competitorlist.Count; y++)
                    {
                        competitorlist.Add(new CompetitorEvents());
                    }
                    if (competitorlist[j].EventID == competitorVM.CompetitionEventsList[i].EventID)
                    {
                        tempCompetitorEventsList.Add(new CompetitorEvents()
                        {
                            EventID = competitorVM.CompetitionEventsList[i].EventID
                        });
                        j++;
                    }
                    else
                    {
                        tempCompetitorEventsList.Add(new CompetitorEvents()
                        {
                            EventID = 999
                        });
                    }
                }
                item.CompetitorEvents = tempCompetitorEventsList;
            }
            return(competitorVM);
        }