示例#1
0
        public ActionResult Report(MatchReportViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var request = new EventReportRequest {
                ClubId         = club.Guid,
                CoachsRemarks  = model.CoachsRemarks,
                EventId        = model.EventId,
                GoalsConceeded = model.GoalsConceeded.Value,
                GoalsScored    = model.GoalsScored.Value,
                Opponent       = model.Opponent,
                Scorers        = model.Scorers
            };

            var response = eventService.UpdateEventReport(request);

            if (!response.RequestIsFulfilled)
            {
                foreach (var error in response.Errors)
                {
                    ModelState.AddModelError("", error);
                }

                var @event = eventsQuery.GetEvent(model.EventId);
                model.EventTitle   = @event.Title;
                model.EventDetails = $"{@event.EventType.GetDescription()} {@event.StartDate.ToString("ddd dd-MMM-yyyy h:mm tt")}<br/>{@event.Location}<br/>{string.Join(", ", @event.Squads.Select(s => s.Name))}";
                model.Players      = GetSquadPlayersForEvent(@event);
                return(View(model));
            }
            return(RedirectToAction(nameof(Report)));
        }
示例#2
0
        public Response UpdateEventReport(EventReportRequest request)
        {
            var report = new EventReport(request.EventId)
            {
                Report = SerializeReport <MatchReport>(new MatchReport {
                    ClubId         = request.ClubId,
                    CoachsRemarks  = request.CoachsRemarks,
                    EventId        = request.EventId,
                    GoalsConceeded = request.GoalsConceeded,
                    GoalsScored    = request.GoalsScored,
                    Opponent       = request.Opponent,
                    Scorers        = request.Scorers
                })
            };

            try {
                eventRepository.SaveEventReport(report);
                return(Response.CreateSuccessResponse());
            } catch (Exception ex) {
                return(Response.CreateResponse(ex));
            }
        }