コード例 #1
0
 private Result MapResult(PriorAttainmentResultViewModel from)
 {
     return(new Result
     {
         SubjectCode = from.SubjectCode,
         ExamYear = from.ExamYear,
         TestMark = from.TestMark,
         ScaledScore = from.ScaledScore,
         QualificationTypeCode = from.QualificationTypeCode,
         ExamDate = from.ExamDate,
         ExamNumber = from.ExamNumber,
         FineGrade = from.FineGrade,
         GradeCode = from.GradeCode,
         MatchReg = from.MatchReg,
         RIncl = from.RIncl,
         SeasonCode = from.SeasonCode,
         TierCode = from.TierCode,
         AwardingBodyNumber = from.AwardingBodyNumber,
         BoardSubjectNumber = from.BoardSubjectNumber,
         NationalCentreNumber = from.NationalCentreNumber,
         Qan = from.QAN,
         SubLevelCode = from.SubLevelCode,
         PortlandResultID = from.PortlandResultID,
     });
 }
        public IActionResult Add()
        {
            var amendment       = GetAmendment();
            var amendmentDetail = amendment?.AmendmentDetail;

            if (amendment?.Pupil == null || amendmentDetail == null ||
                amendmentDetail.GetField <string>(Constants.AddPupil.AddReason) != AddReason.New)
            {
                return(RedirectToAction("Index", "AddPupil"));
            }

            var priorAttainmentList = amendmentDetail
                                      .GetList <PriorAttainmentResult>(Constants.AddPupil.PriorAttainmentResults);

            if (priorAttainmentList.Count == 3)
            {
                var referer = HttpContext.Request.Headers["Referer"].ToString();
                var action  = referer.Contains("AddEvidence") ? "Add" : "AddEvidence";
                return(RedirectToAction(action, "Pupil"));
            }

            var model = new PriorAttainmentResultViewModel
            {
                PupilDetails = new PupilViewModel(amendment.Pupil),
                Ks2Subjects  = priorAttainmentList
                               .Select(r => r.Ks2Subject).ToList()
            };

            return(View(model));
        }
        public IActionResult Add(PriorAttainmentResultViewModel result)
        {
            var amendment = GetAmendment();

            var amendmentDetail = amendment.AmendmentDetail ?? new AmendmentDetail();

            if (ModelState.IsValid)
            {
                if (amendmentDetail.Fields.All(x => x.Name != Constants.AddPupil.PriorAttainmentResults))
                {
                    amendmentDetail.AddField(Constants.AddPupil.PriorAttainmentResults,
                                             new List <PriorAttainmentResult>());
                }

                var priorAttainmentResults =
                    amendmentDetail.GetList <PriorAttainmentResult>(Constants.AddPupil.PriorAttainmentResults);

                priorAttainmentResults.Add(new PriorAttainmentResult
                {
                    Ks2Subject  = result.SubjectCode,
                    ExamYear    = result.ExamYear.ToString(),
                    Mark        = result.TestMark,
                    ScaledScore = result.ScaledScore
                });


                SaveAmendment(amendment);

                var results = amendmentDetail
                              .GetList <PriorAttainmentResult>(Constants.AddPupil.PriorAttainmentResults);

                if (results.Count == 3)
                {
                    return(RedirectToAction("Index", "Evidence"));
                }

                ModelState.Clear();

                var model = new PriorAttainmentResultViewModel
                {
                    PupilDetails = new PupilViewModel(amendment.Pupil),
                    Ks2Subjects  = results.Select(r => r.Ks2Subject).ToList()
                };
                return(View(model));
            }

            return(View(result));
        }