Ejemplo n.º 1
0
        public static BackendTournamentViewModelItem FromModel(this BackendTournamentViewModelItem viewmodel, Tournament model)
        {
            viewmodel.ID            = model.ID;
            viewmodel.ChallongeLink = model.ChallongeLink;
            viewmodel.Mode          = model.Mode;
            viewmodel.Start         = model.Start;
            viewmodel.End           = model.End;
            viewmodel.TeamSize      = model.TeamSize;

            viewmodel.Event.FromModel(model.Event);
            viewmodel.Game.FromModel(model.TournamentGame);

            viewmodel.Player = model.TournamentParticipant.ToList().ConvertAll(x => {
                var vm = new BackendUserViewModelItem();
                vm.FromModel(x);
                return(vm);
            });

            viewmodel.Teams = model.TournamentTeam.Where(x => x.TournamentTeamParticipant.Count > 0).ToList().ConvertAll(x => {
                var vm = new BackendTournamentTeamViewModelItem();
                vm.FromModel(x);
                return(vm);
            });

            if (model.Partner != null)
            {
                viewmodel.Partner.FromModel(model.Partner);
            }

            viewmodel.ParticipantCount = model.TournamentParticipant.Count;
            viewmodel.Teams.ForEach(team => viewmodel.ParticipantCount += team.Player.Count);

            return(viewmodel);
        }
Ejemplo 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."));
        }
Ejemplo n.º 3
0
        public static Tournament ToModel(this BackendTournamentViewModelItem viewmodel)
        {
            Tournament model = new Tournament();

            model.ID               = viewmodel.ID;
            model.EventID          = viewmodel.Event.ID;
            model.TournamentGameID = viewmodel.Game.ID;
            model.Mode             = viewmodel.Mode;
            model.TeamSize         = viewmodel.TeamSize;
            model.Start            = viewmodel.Start;
            model.End              = viewmodel.End;
            model.ChallongeLink    = viewmodel.ChallongeLink;
            if (viewmodel.Partner != null)
            {
                model.PartnerID = viewmodel.Partner.ID;
            }

            return(model);
        }