Exemple #1
0
        public static IList <StandardGradingViewData> Create(IList <GradingStandardInfo> gradingStandards, IList <int> studentIds)
        {
            var gradigDic = gradingStandards.GroupBy(x => x.Standard.Id).ToDictionary(x => x.Key, x => x.ToList());
            var res       = new List <StandardGradingViewData>();

            foreach (var kv in gradigDic)
            {
                var gradingSt       = kv.Value.First();
                var standardGrading = new StandardGradingViewData
                {
                    Standard   = StandardViewData.Create(gradingSt.Standard),
                    NumericAvg = (int?)kv.Value.Average(x => x.NumericGrade),
                    Items      = new List <StandardGradingItemViewData>()
                };
                res.Add(standardGrading);
                foreach (var studentId in studentIds)
                {
                    var gradingInfo = kv.Value.FirstOrDefault(x => x.StudentId == studentId);
                    if (gradingInfo != null)
                    {
                        standardGrading.Items.Add(StandardGradingItemViewData.Create(gradingInfo));
                    }
                }
            }
            return(res);
        }
Exemple #2
0
 public static GradingStandardClassItemViewData Create(IList <ClassAnnouncement> announcements,
                                                       decimal?avg, Standard standard, IList <ClaimInfo> claims)
 {
     return(new GradingStandardClassItemViewData
     {
         ItemDescription = StandardViewData.Create(standard),
         Avg = avg,
         Announcements = ClassAnnouncementViewData.Create(announcements, claims)
     });
 }
 public static GradingGridsViewData Create(ChalkableGradeBook grid, IList <GradingPeriod> gradingPeriods
                                           , IList <Standard> standards, IList <ClassAnnouncementType> classAnnouncementTypes, IList <ClaimInfo> claims)
 {
     return(new GradingGridsViewData
     {
         CurrentGradingGrid = grid != null?GradingGridViewData.Create(grid, claims) : null,
                                  GradingPeriods = gradingPeriods.Select(GradingPeriodViewData.Create).ToList(),
                                  Standards = StandardViewData.Create(standards),
                                  ClassAnnouncementTypes = ClassAnnouncementTypeViewData.Create(classAnnouncementTypes)
     });
 }