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); }
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.")); }
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); }