Exemple #1
0
        private void button2_Click(object sender, EventArgs e)
        {
            TeacherSchedule frm = new TeacherSchedule();

            frm.Show();
            this.Hide();
        }
Exemple #2
0
        /// <summary>
        /// Get Schedule for the specific teacher
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult ScheduleTeacher(int id)
        {
            var days = new List <string>()
            {
                "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
            };

            ViewBag.Days = days;
            TeacherSchedule schedule     = new TeacherSchedule();
            var             scheduleList = schedule.GetSchedule(id);

            return(View(scheduleList));
        }
        private void button1_Click(object sender, EventArgs e)
        {
            gas = new Gas();
            gas.Evolved += gas_Evolved;
            gas.Genetic();
            schedule = gas.Best;
            //this.dataGridView1.DataSource = gas.Best.TeacherSchedule[59].GetTeacherLessonTable();
            ts = schedule.TeacherSchedule;
            //ts = gas.Worst.TeacherSchedule;
            loaded = true;
            //this.textBox1.AppendText(gas.Best.TeacherSchedule[]

            this.button1.Text = "完成";
        }
Exemple #4
0
        public TeacherSchedule LoadTeacherScheduleBoard(Guid scheduleId)
        {
            Logger.Debug($"Start loading teacher schedule-board: {scheduleId}");

            if (scheduleId == null || scheduleId == Guid.Empty)
            {
                Logger.Error($"ScheduleId is empty.");
                throw new ArgumentNullException("scheduleId");
            }

            Schedule.Models.SchedulingTable schedule = this.UnitOfWork.SchedulingTableRepository.GetById(scheduleId);

            if (schedule == null)
            {
                Logger.Error($"Schedule ({scheduleId}) does not exist.");
                throw new InvalidOperationException($"Schedule ({scheduleId}) does not exist.");
            }

            Guid semesterId = schedule.SemesterId;

            if (semesterId == null || semesterId == Guid.Empty)
            {
                Logger.Error($"Schedule ({scheduleId}) does not content SemesterId.");
                throw new InvalidOperationException($"Schedule ({scheduleId}) does not content SemesterId.");
            }

            TeacherSchedule board = new TeacherSchedule();

            board.Id           = scheduleId;
            board.WorkingDays  = (int)Commons.Constants.DAY_OF_WEEK;
            board.ShiftPerDay  = 2;
            board.SlotPerShift = 5;

            Logger.Debug($"Start loading teacher schedule-board for semester: {semesterId}");

            // Get Class Groups
            List <Teacher> teachers = this.UnitOfWork.TeacherRepository.GetSemesterTeacher(semesterId).ToList();

            Logger.Debug($"Found {teachers.Count} teachers");

            var mapper = config.CreateMapper();

            List <StoneCastle.Scheduler.Models.TeacherScheduleModel> teacherModels = mapper.Map <List <Teacher>, List <StoneCastle.Scheduler.Models.TeacherScheduleModel> >(teachers);

            foreach (StoneCastle.Scheduler.Models.TeacherScheduleModel teacher in teacherModels)
            {
                Logger.Debug($"Loading teacher: {teacher.Account.Profile.FullName}");
                board.Teachers.Add(teacher);

                Timetable tt = this.UnitOfWork.TeacherRepository.GetTeacherTimetable(teacher.Id, scheduleId);

                teacher.Timetable = mapper.Map <Timetable, TimetableModel>(tt);

                teacher.Timetable.TimeTableMatrix2 = teacher.Timetable.GenerateTimeTableMatrix2();

                Logger.Debug($"Complete loading teacher schedule: {teacher.Account.Profile.FullName}");
            }

            Logger.Debug($"Complete loading teacher schedule for semester: {semesterId}");

            return(board);
        }