Ejemplo n.º 1
0
        /// <summary>
        /// 获取班级列表
        /// </summary>
        /// <param name="search"></param>
        /// <returns></returns>
        public List <DtoSchoolClass> GetSchoolClassList(DtoSchoolClassSearch search)
        {
            var list = SchoolClassRepository.GetSchoolClassList(search);

            SetSchoolClassSchedule(list);
            return(list);
        }
        public void oneTimeSetUp()
        {
            var connection = DbConnectionFactory.CreateTransient();

            this.ctx  = new ApplicationDbContext(connection);
            this.repo = new SchoolClassRepository(ctx);
            new DatabaseSeeder().CreateDependenciesAndSeed(ctx);//heavy duty
        }
Ejemplo n.º 3
0
 public AddModel(
     ExamRepository exams,
     TeacherRepository teachers,
     SchoolClassRepository schoolClasses,
     SubjectRepository subjects,
     IMapper mapper)
 {
     _exams         = exams;
     _teachers      = teachers;
     _schoolClasses = schoolClasses;
     _subjects      = subjects;
     _mapper        = mapper;
 }
Ejemplo n.º 4
0
 public UnitOfWork(LogDbContext dbContext)
 {
     _dbContext      = dbContext;
     Classes         = new SchoolClassRepository(dbContext);
     Users           = new UserRepository(dbContext);
     Students        = new StudentRepository(dbContext);
     Teachers        = new TeacherRepository(dbContext);
     Parents         = new ParentRepository(dbContext);
     Subjects        = new SubjectRepository(dbContext);
     SchoolGrades    = new SchoolGradeRepository(dbContext);
     Messages        = new MessageRepository(dbContext);
     Advertisements  = new AdvertisementRepository(dbContext);
     Files           = new FileRepository(dbContext);
     Questions       = new QuestionRepository(dbContext);
     QuestionAnswers = new QuestionAnswerRepository(dbContext);
     Tests           = new TestRepository(dbContext);
 }
        public MemoryStream GenerateCSV()
        {
            MemoryStream outStream = new MemoryStream();
            StreamWriter writer    = new StreamWriter(outStream);

            // Headings
            writer.Write("SchoolCode" + delimiter);
            writer.Write("CourseCode" + delimiter);
            writer.Write("CourseName" + delimiter);
            writer.Write("CreditValue" + delimiter);
            writer.Write("GradeLower" + delimiter);
            writer.Write("GradeUpper");
            writer.Write(Environment.NewLine);

            // HIGH SCHOOL CLASSES ONLY
            // - Or more specifically, courses that offer more than zero credits

            // Get all classes
            // Make a list of all courses offered

            SchoolClassRepository classRepository  = new SchoolClassRepository(_dbConnectionString);
            CourseRepository      courseRepository = new CourseRepository(_dbConnectionString);
            SchoolRepository      schoolRepo       = new SchoolRepository(_dbConnectionString);

            List <Course> coursesWithCredits = courseRepository.GetAll().Where(x => x.Credits > 0 && x.CurrentlyOffered).ToList();

            foreach (School school in schoolRepo.GetAll().Where(x => x.IsHighSchool))
            {
                foreach (Course course in coursesWithCredits)
                {
                    writer.Write(stringContainer + school.GovernmentID + stringContainer + delimiter);
                    writer.Write(stringContainer + course.CourseCode + stringContainer + delimiter);
                    writer.Write(stringContainer + course.Name + stringContainer + delimiter);
                    writer.Write(stringContainer + course.Credits + stringContainer + delimiter);
                    writer.Write(stringContainer + course.LowGrade + stringContainer + delimiter);
                    writer.Write(stringContainer + course.HighGrade + stringContainer);
                    writer.Write(Environment.NewLine);
                }
            }

            writer.Flush();
            outStream.Flush();
            return(outStream);
        }
Ejemplo n.º 6
0
        static void Main(string[] args)
        {
            SchoolClassRepository schoolClassRepository = new SchoolClassRepository();
            SchoolClass           schoolClass           = schoolClassRepository.GetById(2);

            Console.WriteLine($"Klasse!  ID: {schoolClass.Id}, Raum: {schoolClass.RoomNumber}");

            PupilRepository pupilRepository = new PupilRepository();
            Pupil           pupil           = pupilRepository.GetById(3);

            Console.WriteLine($"Schüler! ID: {pupil.Id}, Name: {pupil.FirstName} {pupil.LastName}");


            RepositoryBase <SchoolClass> schoolClassRepositoryGeneric = new RepositoryBase <SchoolClass>();
            SchoolClass schoolClassGeneric = schoolClassRepositoryGeneric.GetById(2);

            Console.WriteLine($"Klasse!  ID: {schoolClassGeneric.Id}, Raum: {schoolClassGeneric.RoomNumber}");

            RepositoryBase <Pupil> pupilRepositoryGeneric = new RepositoryBase <Pupil>();
            Pupil pupilGeneric = pupilRepositoryGeneric.GetById(3);

            Console.WriteLine($"Schüler! ID: {pupilGeneric.Id}, Name: {pupilGeneric.FirstName} {pupilGeneric.LastName}");
        }
Ejemplo n.º 7
0
        private bool SaveSchoolClass(Yw_SchoolClass schoolClass)
        {
            bool result = false;

            if (schoolClass.Ycc_Id > 0)
            {
                //var old = SchoolClassRepository.Get(schoolClass.Ycc_Id);
                //if (old != null)
                //{
                //    schoolClass.Ycc_CreateTime = old.Ycc_CreateTime;
                //    schoolClass.Ycc_Creator = old.Ycc_Creator;
                //    result = SchoolClassRepository.Update(schoolClass);
                //}
                result = SchoolClassRepository.Update(schoolClass);
            }
            else
            {
                var id = SchoolClassRepository.Insert(schoolClass);
                schoolClass.Ycc_Id = id;
                result             = id > 0;
            }
            return(result);
        }
        public MemoryStream GenerateCSV()
        {
            MemoryStream outStream = new MemoryStream();
            StreamWriter writer    = new StreamWriter(outStream);

            // Headings
            writer.Write("School_id" + delimiter);
            writer.Write("Staff_id" + delimiter);
            writer.Write("Staff_email" + delimiter);
            writer.Write("First_name" + delimiter);
            writer.Write("Last_name" + delimiter);
            writer.Write("Department" + delimiter);
            writer.Write("Title" + delimiter);
            writer.Write("Username" + delimiter);
            writer.Write("Password" + delimiter);

            writer.Write(Environment.NewLine);

            StaffRepository    _staffRepo             = new StaffRepository(_dbConnectionString);
            List <StaffMember> allStaff               = _staffRepo.GetAll();
            List <string>      seenTeacherCertNumbers = new List <string>();

            // Get all sections
            SchoolClassRepository screpo   = new SchoolClassRepository(_dbConnectionString);
            List <SchoolClass>    sections = screpo.GetAll();

            // Get all teacher assignments
            TeacherAssignmentRepository teacherAssignmentRepo  = new TeacherAssignmentRepository(_dbConnectionString);
            List <TeacherAssignment>    allTeachingAssignments = teacherAssignmentRepo.GetAll();

            // Sort teacher assignments into a dictionary for easier consumption
            // Only send up classes that have teachers assigned
            Dictionary <int, List <TeacherAssignment> > assignmentsByClassID = new Dictionary <int, List <TeacherAssignment> >();

            foreach (TeacherAssignment ta in allTeachingAssignments)
            {
                if (ta.Class != null)
                {
                    if (!assignmentsByClassID.ContainsKey(ta.Class.iClassID))
                    {
                        assignmentsByClassID.Add(ta.Class.iClassID, new List <TeacherAssignment>());
                    }
                    if (ta.Teacher.TeachingCertificateNumber.Length > 0)
                    {
                        assignmentsByClassID[ta.Class.iClassID].Add(ta);
                    }
                }
            }

            // Now make a list of teachers we need
            Dictionary <int, StaffMember> activeTeachers = new Dictionary <int, StaffMember>();

            foreach (int classID in assignmentsByClassID.Keys)
            {
                foreach (TeacherAssignment ta in assignmentsByClassID[classID])
                {
                    if (ta.Teacher != null)
                    {
                        if (!activeTeachers.ContainsKey(ta.Teacher.iStaffId))
                        {
                            activeTeachers.Add(ta.Teacher.iStaffId, ta.Teacher);
                        }
                    }
                }
            }

            // Now find all the teachers who aren't on the above list
            List <StaffMember> activeStaffWithoutClasses = new List <StaffMember>();

            foreach (StaffMember teacher in allStaff)
            {
                if ((!activeTeachers.ContainsKey(teacher.iStaffId)) && teacher.IsEnabled)
                {
                    activeStaffWithoutClasses.Add(teacher);
                }
            }

            // Now make the CSV
            foreach (StaffMember staff in activeStaffWithoutClasses)
            {
                if (!string.IsNullOrEmpty(staff.EmailAddress))
                {
                    string schoolID = staff.School.DAN;
                    if (staff.School.isFake)
                    {
                        schoolID = "DEFAULT_DISTRICT_OFFICE";
                    }

                    writer.Write(stringContainer + schoolID + stringContainer + delimiter);           // School id
                    writer.Write(stringContainer + staff.EmailAddress + stringContainer + delimiter); // Staff id
                    writer.Write(stringContainer + staff.EmailAddress + stringContainer + delimiter); // staff email
                    writer.Write(stringContainer + staff.FirstName + stringContainer + delimiter);    // firstname
                    writer.Write(stringContainer + staff.LastName + stringContainer + delimiter);     // lastname
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                 // department
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                 // title
                    writer.Write(stringContainer + staff.EmailAddress + stringContainer + delimiter); // username
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                 // password
                    writer.Write(Environment.NewLine);
                }
            }

            writer.Flush();
            outStream.Flush();
            return(outStream);
        }
        public MemoryStream GenerateCSV()
        {
            MemoryStream outStream = new MemoryStream();
            StreamWriter writer    = new StreamWriter(outStream);

            // Headings
            writer.Write("School_id" + delimiter);
            writer.Write("Teacher_id" + delimiter);
            writer.Write("Teacher_number" + delimiter);
            writer.Write("State_teacher_id" + delimiter);
            writer.Write("Teacher_email" + delimiter);
            writer.Write("First_name" + delimiter);
            writer.Write("Middle_name" + delimiter);
            writer.Write("Last_name" + delimiter);
            writer.Write("Title" + delimiter);
            writer.Write("Username" + delimiter);
            writer.Write("Password" + delimiter);

            writer.Write(Environment.NewLine);

            StaffRepository    _staffRepo             = new StaffRepository(_dbConnectionString);
            List <StaffMember> staff                  = _staffRepo.GetAll();
            List <string>      seenTeacherCertNumbers = new List <string>();

            // Get all sections
            SchoolClassRepository screpo   = new SchoolClassRepository(_dbConnectionString);
            List <SchoolClass>    sections = screpo.GetAll();

            // Get all teacher assignments
            TeacherAssignmentRepository teacherAssignmentRepo  = new TeacherAssignmentRepository(_dbConnectionString);
            List <TeacherAssignment>    allTeachingAssignments = teacherAssignmentRepo.GetAll();

            // Sort teacher assignments into a dictionary for easier consumption
            // Only send up classes that have teachers assigned
            Dictionary <int, List <TeacherAssignment> > assignmentsByClassID = new Dictionary <int, List <TeacherAssignment> >();

            foreach (TeacherAssignment ta in allTeachingAssignments)
            {
                if (ta.Class != null)
                {
                    if (!assignmentsByClassID.ContainsKey(ta.Class.iClassID))
                    {
                        assignmentsByClassID.Add(ta.Class.iClassID, new List <TeacherAssignment>());
                    }
                    if (ta.Teacher.TeachingCertificateNumber.Length > 0)
                    {
                        assignmentsByClassID[ta.Class.iClassID].Add(ta);
                    }
                }
            }

            // Now make a list of teachers we need
            Dictionary <int, StaffMember> activeTeachers = new Dictionary <int, StaffMember>();

            foreach (int classID in assignmentsByClassID.Keys)
            {
                foreach (TeacherAssignment ta in assignmentsByClassID[classID])
                {
                    if (ta.Teacher != null)
                    {
                        if (!activeTeachers.ContainsKey(ta.Teacher.iStaffId))
                        {
                            activeTeachers.Add(ta.Teacher.iStaffId, ta.Teacher);
                        }
                    }
                }
            }

            // Now make the CSV
            foreach (StaffMember teacher in activeTeachers.Values)
            {
                if ((teacher.School.DAN != "0") && (teacher.School.DAN.Length > 1) && (!string.IsNullOrEmpty(teacher.TeachingCertificateNumber) && (!seenTeacherCertNumbers.Contains(teacher.TeachingCertificateNumber))))
                {
                    seenTeacherCertNumbers.Add(teacher.TeachingCertificateNumber);
                    writer.Write(stringContainer + teacher.School.DAN + stringContainer + delimiter);                // School id
                    writer.Write(stringContainer + teacher.TeachingCertificateNumber + stringContainer + delimiter); // Teacher id
                    writer.Write(stringContainer + teacher.TeachingCertificateNumber + stringContainer + delimiter); // Teacher number
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                                // State teacher id
                    writer.Write(stringContainer + teacher.EmailAddress + stringContainer + delimiter);              // teacher email
                    writer.Write(stringContainer + teacher.FirstName + stringContainer + delimiter);                 // firstname
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                                // middlename
                    writer.Write(stringContainer + teacher.LastName + stringContainer + delimiter);                  // lastname
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                                // title
                    writer.Write(stringContainer + teacher.EmailAddress + stringContainer + delimiter);              // username
                    writer.Write(stringContainer + "" + stringContainer + delimiter);                                // password
                    writer.Write(Environment.NewLine);
                }
            }

            writer.Flush();
            outStream.Flush();
            return(outStream);
        }
Ejemplo n.º 10
0
        public MemoryStream GenerateCSV()
        {
            MemoryStream outStream = new MemoryStream();
            StreamWriter writer    = new StreamWriter(outStream);

            // Headings
            writer.Write("School_id" + delimiter);
            writer.Write("Section_id" + delimiter);
            writer.Write("Teacher_id" + delimiter);
            writer.Write("Teacher_2_id" + delimiter);
            writer.Write("Teacher_3_id" + delimiter);
            writer.Write("Teacher_4_id" + delimiter);
            writer.Write("Teacher_5_id" + delimiter);
            writer.Write("Teacher_6_id" + delimiter);
            writer.Write("Teacher_7_id" + delimiter);
            writer.Write("Teacher_8_id" + delimiter);
            writer.Write("Teacher_9_id" + delimiter);
            writer.Write("Teacher_10_id" + delimiter);
            writer.Write("Name" + delimiter);
            writer.Write("Section_number" + delimiter);
            writer.Write("Grade" + delimiter);
            writer.Write("Course_name" + delimiter);
            writer.Write("Course_number" + delimiter);
            writer.Write("Course_description" + delimiter);
            writer.Write("Period" + delimiter);
            writer.Write("Subject" + delimiter);
            writer.Write("Term_name" + delimiter);
            writer.Write("Term_start" + delimiter);
            writer.Write("Term_end" + delimiter);

            writer.Write(Environment.NewLine);

            SchoolClassRepository screpo   = new SchoolClassRepository(_dbConnectionString);
            List <SchoolClass>    sections = screpo.GetAll();

            TeacherAssignmentRepository teacherAssignmentRepo  = new TeacherAssignmentRepository(_dbConnectionString);
            List <TeacherAssignment>    allTeachingAssignments = teacherAssignmentRepo.GetAll();

            // Sort teacher assignments into a dictionary for easier consumption
            // Only send up classes that have teachers assigned
            Dictionary <int, List <TeacherAssignment> > assignmentsByClassID = new Dictionary <int, List <TeacherAssignment> >();

            // Don't send empty classes, so get enrolment counts for each class
            StudentClassEnrolmentRepository enrolmentRepo            = new StudentClassEnrolmentRepository(_dbConnectionString);
            Dictionary <int, int>           enrolmentCountsByClassID = enrolmentRepo.GetEnrolmentCountsByClassID();

            foreach (TeacherAssignment ta in allTeachingAssignments)
            {
                if (ta.Class != null)
                {
                    if (!assignmentsByClassID.ContainsKey(ta.Class.iClassID))
                    {
                        assignmentsByClassID.Add(ta.Class.iClassID, new List <TeacherAssignment>());
                    }
                    if (ta.Teacher.TeachingCertificateNumber.Length > 0)
                    {
                        assignmentsByClassID[ta.Class.iClassID].Add(ta);
                    }
                }
            }

            foreach (SchoolClass sc in sections)
            {
                if (enrolmentCountsByClassID.ContainsKey(sc.iClassID))
                {
                    if (enrolmentCountsByClassID[sc.iClassID] > 0)
                    {
                        if (assignmentsByClassID.ContainsKey(sc.iClassID))
                        {
                            List <TeacherAssignment> thisClassAssignments = assignmentsByClassID[sc.iClassID];
                            if (thisClassAssignments.Count > 0)
                            {
                                writer.Write(stringContainer + sc.School.DAN + stringContainer + delimiter);                                                                                                            // School id
                                writer.Write(stringContainer + sc.iClassID + stringContainer + delimiter);                                                                                                              // Section id
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 1 ? thisClassAssignments[0].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 1
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 2 ? thisClassAssignments[1].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 2
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 3 ? thisClassAssignments[2].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 3
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 4 ? thisClassAssignments[3].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 4
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 5 ? thisClassAssignments[4].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 5
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 6 ? thisClassAssignments[5].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 6
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 7 ? thisClassAssignments[6].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 7
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 8 ? thisClassAssignments[7].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 8
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 9 ? thisClassAssignments[8].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter);  // Teacher 9
                                writer.Write(stringContainer + (thisClassAssignments.Count >= 10 ? thisClassAssignments[9].Teacher.TeachingCertificateNumber.ToString() : string.Empty) + stringContainer + delimiter); // Teacher 10
                                writer.Write(stringContainer + sc.Name + stringContainer + delimiter);                                                                                                                  // Name
                                writer.Write(stringContainer + sc.Section + stringContainer + delimiter);                                                                                                               // Section number
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Grade
                                writer.Write(stringContainer + sc.Course.Name + stringContainer + delimiter);                                                                                                           // Course Name
                                writer.Write(stringContainer + sc.Course.CourseCode + stringContainer + delimiter);                                                                                                     // Course Number
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Course Description
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Period
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Subject
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Term name
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Term start
                                writer.Write(stringContainer + "" + stringContainer + delimiter);                                                                                                                       // Term end
                                writer.Write(Environment.NewLine);
                            }
                        }
                    }
                }
            }

            writer.Flush();
            outStream.Flush();
            return(outStream);
        }
Ejemplo n.º 11
0
 /// <summary>
 /// 根据课程id查班级
 /// </summary>
 /// <param name="courseId"></param>
 /// <param name="schoolId"></param>
 /// <returns></returns>
 public List <Yw_SchoolClass> GetSchoolClassByCourseId(int courseId, int schoolId)
 {
     return(SchoolClassRepository.GetSchoolClassByCourseId(courseId, schoolId));
 }
Ejemplo n.º 12
0
 public Yw_SchoolClass GetSchoolClass(int classId)
 {
     return(SchoolClassRepository.Get(classId));
 }
Ejemplo n.º 13
0
 public bool IncrementStudentCount(int classId, int count, int oper)
 {
     return(SchoolClassRepository.IncrementStudentCount(classId, count, oper));
 }