public CreateInputModel GetInputModel(string userIdentity) { var createInputModel = new CreateInputModel(); var holes = _holeRepository.GetAll().ToList(); var handicap = _handicapRepository.GetAll().ToList(); var member = _memberRepository.FindBy(x => x.EmailAddress == userIdentity).SingleOrDefault(); var reservations = _reservationRepository.GetNormalListForMember(member.ID).ToList(); createInputModel.Holes = holes.Select (x => (new HoleViewModel { ID = x.ID, Name = x.Name })).ToList(); createInputModel.HoleEntry = holes.Select (x => new HoleEntryViewModels { HoleID = x.ID, HoleName = x.Name, Score = 0 }).ToList(); createInputModel.Handicaps = handicap.Select (x => (new HandicapViewModel { ID = x.Id, Name = x.Name })).ToList(); createInputModel.Reservations = reservations.Select (x => (new ReservationScoreViewModel { ID = x.ID, Date = x.TeeTime.StartDate.ToString("f") + " - " + x.TeeTime.EndDate.ToString("f") })).ToList(); return(createInputModel); }
public CreateInputModel CreatePlayerScore(CreateInputModel model, string userIdentity) { var member = _memberRepository.FindBy(x => x.EmailAddress == userIdentity). SingleOrDefault(); var reservation = _reservationRepository.GetWithGolfCourse(model.ReservationID); var golfCourse = reservation.TeeTime.GolfCourse; var calculatedScore = model.Score - (golfCourse.Rating / golfCourse.Slope * 113); var playerScoreModel = new PlayerScores { ReservationID = model.ReservationID, MemberID = member.ID, Score = calculatedScore, HoleId = model.HoleID, HandicapId = model.HandicapID, DateCreated = DateTime.UtcNow, DatePlayed = model.DatePlayed, }; _playerScoreRepository.Add(playerScoreModel); _playerScoreRepository.SaveChanges(); return(model); }