Example #1
0
        public IList <CourseDetails> GetAdminCourses(int schoolYearId, int gradeLevelId)
        {
            var classes = ClassStorage.GetAll()
                          .Where(c => c.SchoolYearRef == schoolYearId &&
                                 c.MinGradeLevelRef <= gradeLevelId && c.MaxGradeLevelRef >= gradeLevelId)
                          .Select(c => GetClassDetailsById(c.Id)).ToList();

            return(ClassStorage.GetAll().Where(c => !c.CourseRef.HasValue && classes.Any(y => y.CourseRef == c.Id))
                   .Select(c => new CourseDetails
            {
                Id = c.Id,
                Name = c.Name,
                ClassNumber = c.ClassNumber,
                CourseRef = c.CourseRef,
                CourseTypeRef = c.CourseTypeRef,
                Description = c.Description,
                GradingScaleRef = c.GradingScaleRef,
                MinGradeLevelRef = c.MinGradeLevelRef,
                MaxGradeLevelRef = c.MaxGradeLevelRef,
                ChalkableDepartmentRef = c.ChalkableDepartmentRef,
                PrimaryTeacherRef = c.PrimaryTeacherRef,
                RoomRef = c.RoomRef,
                SchoolYearRef = c.SchoolYearRef,
                Classes = classes.Where(x => x.CourseRef == c.Id).ToList()
            }).ToList());
        }
Example #2
0
        public IList <ClassDetails> SearchClasses(string filter)
        {
            var res     = new List <ClassDetails>();
            var classes = ClassStorage.GetAll();
            var words   = filter.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

            foreach (var @class in classes)
            {
                if (words.Any(x => @class.Name.Contains(x) || @class.ClassNumber.Contains(x)))
                {
                    res.Add(GetClassDetailsById(@class.Id));
                }
            }
            return(res);
        }
        public BootstrapClassSelectResult(ClassStorage <T> storage, string formName, NameValueCollection form, ClassFilter filter)
        {
            this.FormName = formName;
            PopulateDefaultParameterKeys();
            this._SearchFilter  = GetValueFromCollection <string>(form, this.DefaultParameterKeys["Filter"], null);
            this._PageOrdinal   = GetValueFromCollection <int>(form, this.DefaultParameterKeys["PageOrdinal"], 0);
            this._PageSize      = GetValueFromCollection <int>(form, this.DefaultParameterKeys["PageSize"], 20);
            this._OrderBy       = GetValueFromCollection <int>(form, this.DefaultParameterKeys["OrderBy"], -1);
            this._SortDirection = GetValueFromCollection <SortDirection>(form, this.DefaultParameterKeys["SortDirection"], EixoX.Data.SortDirection.Ascending);

            ClassSelect <T> select = null;

            if (string.IsNullOrEmpty(_SearchFilter.Value))
            {
                select = storage.Select();

                if (filter != null)
                {
                    select.Where(filter);
                }
            }
            else
            {
                select = storage.Search(_SearchFilter.Value);

                if (filter != null)
                {
                    select.And(filter);
                }
            }

            if (_OrderBy.Value >= 0)
            {
                select.OrderBy(_OrderBy.Value, _SortDirection.Value);
            }
            else
            {
                select.OrderBy(0, EixoX.Data.SortDirection.Descending);
            }

            select.Page(_PageSize.Value, _PageOrdinal.Value);

            this.Result = new ClassSelectResult <T>(select);
        }
Example #4
0
        public IList <ClassDetails> GetStudentClasses(int schoolYearId, int studentId, int?markingPeriodId = null)
        {
            var res          = new List <ClassDetails>();
            var classes      = ClassStorage.GetAll();
            var classPersons = ClassPersonStorage.GetAll();

            foreach (var @class in classes)
            {
                if (@class.SchoolYearRef != schoolYearId)
                {
                    continue;
                }
                if (classPersons.Any(x => x.ClassRef == @class.Id && x.PersonRef == studentId))
                {
                    var cd = GetClassDetailsById(@class.Id);
                    if (!markingPeriodId.HasValue || cd.MarkingPeriodClasses.Any(x => x.MarkingPeriodRef == markingPeriodId.Value))
                    {
                        res.Add(cd);
                    }
                }
            }
            return(res);
        }
Example #5
0
 public IList <Class> GetAll()
 {
     return(ClassStorage.GetAll());
 }
Example #6
0
 public Class GetById(int id)
 {
     return(ClassStorage.GetById(id));
 }
Example #7
0
 public void Delete(IList <Class> classes)
 {
     ClassStorage.Delete(classes);
 }
Example #8
0
 public void Edit(IList <Class> classes)
 {
     ClassStorage.Update(classes);
 }
Example #9
0
        public void AddClass(int id, string name, string classNumber)
        {
            ClassStorage.Add(new Class
            {
                Id                     = id,
                Name                   = name,
                Description            = name,
                ChalkableDepartmentRef = null,
                ClassNumber            = classNumber,
                PrimaryTeacherRef      = DemoSchoolConstants.TeacherId,
                SchoolYearRef          = DemoSchoolConstants.CurrentSchoolYearId
            });

            var mpcList = new List <MarkingPeriodClass>
            {
                new MarkingPeriodClass
                {
                    MarkingPeriodRef = DemoSchoolConstants.FirstMarkingPeriodId,
                    ClassRef         = id
                },
                new MarkingPeriodClass
                {
                    MarkingPeriodRef = DemoSchoolConstants.SecondMarkingPeriodId,
                    ClassRef         = id
                }
            };

            AssignClassToMarkingPeriod(mpcList);


            var clsAnnouncementTypeList = new List <ClassAnnouncementType>
            {
                new ClassAnnouncementType
                {
                    ClassRef    = id,
                    Description = "Academic Achievement",
                    Gradable    = true,
                    Name        = "Academic Achievement",
                    Percentage  = 50
                },
                new ClassAnnouncementType
                {
                    ClassRef    = id,
                    Description = "Academic Practice",
                    Gradable    = true,
                    Name        = "Academic Practice",
                    Percentage  = 50
                }
            };

            ((DemoClassAnnouncementTypeService)ServiceLocator.ClassAnnouncementTypeService).Add(clsAnnouncementTypeList);


            var periods = ServiceLocator.PeriodService.GetPeriods(DemoSchoolConstants.CurrentSchoolYearId);

            ServiceLocator.ClassPeriodService.Add(periods.Select(period => new ClassPeriod()
            {
                ClassRef   = id,
                DayTypeRef = DemoSchoolConstants.DayTypeId1,
                PeriodRef  = period.Id,
                Period     = period
            }).ToList());

            AddTeachers(new[] { new ClassTeacher
                                {
                                    ClassRef  = id,
                                    PersonRef = DemoSchoolConstants.TeacherId,
                                    IsPrimary = true
                                } });

            ServiceLocator.ClassroomOptionService.Add(new[] { new ClassroomOption()
                                                              {
                                                                  Id = id,
                                                                  SeatingChartColumns        = 3,
                                                                  SeatingChartRows           = 3,
                                                                  AveragingMethod            = "P",
                                                                  DefaultActivitySortOrder   = "D",
                                                                  StandardsCalculationMethod = "A",
                                                                  StandardsCalculationRule   = "G",
                                                                  DisplayStudentAverage      = true
                                                              } });

            for (var gp = DemoSchoolConstants.GradingPeriodQ1; gp <= DemoSchoolConstants.GradingPeriodQ4; ++gp)
            {
                AddGradeBookForClass(id, gp);
            }
        }
Example #10
0
 public void Add(IList <Class> classes)
 {
     ClassStorage.Add(classes);
 }
Example #11
0
 public ClassController(IConfiguration configuration)
 {
     _classStorage = new ClassStorage(configuration);
 }
 public BootstrapClassSelectResult(ClassStorage <T> storage, string formName, NameValueCollection form)
     : this(storage, formName, form, null)
 {
 }