Esempio n. 1
0
        public IHttpActionResult CreateTeam(Int32 eventID, Int32 tournamentID, CreateTeamRequest request)
        {
            BaseViewModel                           viewmodel               = new BaseViewModel();
            TournamentDataController                dataCtrl                = new TournamentDataController();
            SeatDataController                      seatDataCtrl            = new SeatDataController();
            TournamentTeamDataController            teamDataCtrl            = new TournamentTeamDataController();
            TournamentTeamParticipantDataController teamParticipantDataCtrl = new TournamentTeamParticipantDataController();

            try
            {
                if (seatDataCtrl.GetCurrentUserSeats(eventID).FindAll(x => x.State >= 2).Count == 0)
                {
                    return(Error(viewmodel, "Du bist kein Teilnehmer dieser Veranstaltung. Bitte reserviere einen Platz."));
                }

                var team = teamDataCtrl.Insert(request.ToModel(tournamentID));
                JoinTournamentRequest _tmp = new JoinTournamentRequest()
                {
                    TeamID = team.ID
                };
                teamParticipantDataCtrl.Insert(_tmp.ToTeamModel());
            }
            catch (Exception ex)
            {
                return(Error(viewmodel, ex));
            }

            return(Ok(viewmodel, "Team wurde erstellt."));
        }
Esempio n. 2
0
        public IHttpActionResult Backend_Detail_Update(Int32 id, BackendTournamentViewModelItem request)
        {
            BackendTournamentViewModel   viewmodel     = new BackendTournamentViewModel();
            TournamentDataController     dataCtrl      = new TournamentDataController();
            TournamentGameDataController gameDataCtrl  = new TournamentGameDataController();
            EventDataController          eventDataCtrl = new EventDataController();

            try
            {
                viewmodel.EventOptions = eventDataCtrl.GetItems().ToList().ConvertAll(x =>
                {
                    return(new BackendEventViewModelItem().FromModel(x));
                }).OrderByDescending(x => x.ID).ToList();
                viewmodel.GameOptions = gameDataCtrl.GetItems().ToList().ConvertAll(x =>
                {
                    return(new BackendGameViewModelItem().FromModel(x));
                }).OrderBy(x => x.Name).ToList();

                var data = dataCtrl.Update(request.ToModel());
                viewmodel.Data.FromModel(data);
            }
            catch (Exception ex)
            {
                return(Error(viewmodel, ex));
            }

            return(Ok(viewmodel, "Speichern erfolgreich."));
        }
Esempio n. 3
0
        public IHttpActionResult Detail(Int32 eventID, Int32 tournamentID)
        {
            TournamentViewModel      viewmodel = new TournamentViewModel();
            TournamentDataController dataCtrl  = new TournamentDataController();

            try
            {
                viewmodel.Data.FromModel(dataCtrl.GetItem(tournamentID));
            }
            catch (Exception ex)
            {
                return(Error(viewmodel, ex));
            }

            return(Ok(viewmodel));
        }
Esempio n. 4
0
        public IHttpActionResult Backend_FilterList(BackendTournamentListArgs args)
        {
            BackendTournamentListViewModel viewmodel     = new BackendTournamentListViewModel();
            TournamentDataController       dataCtrl      = new TournamentDataController();
            TournamentGameDataController   gameDataCtrl  = new TournamentGameDataController();
            EventDataController            eventDataCtrl = new EventDataController();

            try
            {
                viewmodel.Filter.GameSelected  = args.Filter.GameSelected;
                viewmodel.Filter.EventSelected = args.Filter.EventSelected;
                viewmodel.Filter.GameOptions   = gameDataCtrl.GetItems().OrderBy(x => x.Name).ToList().ConvertAll(x => {
                    return(new BackendTournamentFilter.TournamentFilterGame()
                    {
                        ID = x.ID,
                        Name = x.Name
                    });
                });
                viewmodel.Filter.EventOptions = eventDataCtrl.GetItems().ToList().ConvertAll(x => {
                    return(new BackendTournamentFilter.TournamentFilterEvent()
                    {
                        ID = x.ID,
                        Name = x.EventType.Name + " Vol. " + x.Volume.ToString()
                    });
                }).OrderByDescending(x => x.ID).ToList();
                viewmodel.Pagination = args.Pagination;

                Int32 TotalItemsCount = 0;
                viewmodel.Data.FromModel(dataCtrl.FilterList(args, out TotalItemsCount));

                viewmodel.Pagination.TotalItemsCount = TotalItemsCount;
            }
            catch (Exception ex)
            {
                return(Error(viewmodel, ex));
            }

            return(Ok(viewmodel));
        }
Esempio n. 5
0
        public IHttpActionResult Backend_Delete(Int32[] IDs)
        {
            BaseViewModel            viewmodel = new BaseViewModel();
            TournamentDataController dataCtrl  = new TournamentDataController();

            try
            {
                foreach (var id in IDs)
                {
                    dataCtrl.Delete(id);
                }
            }
            catch (Exception ex)
            {
                return(Error(viewmodel, ex));
            }

            if (IDs.Count() <= 1)
            {
                return(Ok(viewmodel, "Eintrag wurden gelöscht"));
            }
            return(Ok(viewmodel, IDs.Count() + " Einträge wurden gelöscht"));
        }