Example #1
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            string[] Name    = cmbTeachers.Text.Split(' ');
            string[] Title   = cmbClasses.Text.Split(' ');
            Teacher  teacher = TeacherDB.TeacherFind(Convert.ToInt32(Name[0]));
            Classes  classes = ClassesDB.ClassFind(Convert.ToInt32(Title[0]));

            foreach (int teacherId in classes.TeacherID)
            {
                if (teacherId == teacher.TeacherID)
                {
                    MessageBox.Show("Teacher already part of class");
                    return;;
                }
            }

            classes.TeacherID.RemoveAll(item => item == 0);

            classes.TeacherID.Add(teacher.TeacherID);
            teacher.ClassID.Add(classes.ClassID);

            ClassesDB.ClassDelete(classes);
            ClassesDB.ClassSave(classes);

            TeacherDB.TeacherDelete(teacher);
            TeacherDB.TeacherSave(teacher);
        }
Example #2
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            Teacher deleteTeacher = new Teacher();

            deleteTeacher.TeacherID = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value.ToString());
            deleteTeacher.FirstName = dataGridView1.CurrentRow.Cells[1].Value.ToString();
            deleteTeacher.LastName  = dataGridView1.CurrentRow.Cells[2].Value.ToString();

            //Need to check all classes and see if teacher has that class and delete them.
            List <Classes> ListClasses = ClassesDB.ClassLoad();

            foreach (Classes classes in ListClasses)
            {
                foreach (int teacherid in classes.TeacherID)
                {
                    if (deleteTeacher.TeacherID == teacherid)
                    {
                        classes.TeacherID.Remove(teacherid);
                        ClassesDB.ClassDelete(classes);
                        ClassesDB.ClassSave(classes);
                    }
                }
            }

            TeacherDB.TeacherDelete(deleteTeacher);
            RefreshTable();
        }
Example #3
0
        public IHttpActionResult PutTeacherDB(int id, TeacherDB teacherDB)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != teacherDB.Teacher_ID)
            {
                return(BadRequest());
            }

            db.Entry(teacherDB).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TeacherDBExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Example #4
0
        public IHttpActionResult PostTeacherDB(TeacherDB teacherDB)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.TeacherDBs.Add(teacherDB);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (TeacherDBExists(teacherDB.Teacher_ID))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = teacherDB.Teacher_ID }, teacherDB));
        }
Example #5
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (lblSelected.Text == "")
            {
                MessageBox.Show("Please select a class to delete");
            }
            else
            {
                Classes newClasses = new Classes();
                int     classNum   = Convert.ToInt32(lblSelected.Text);

                newClasses.ClassID = classNum;
                ClassesDB.ClassDelete(newClasses);

                List <Teacher> teacherList = TeacherDB.TeacherLoad();
                foreach (Teacher teacher in teacherList)
                {
                    foreach (int classid in teacher.ClassID)
                    {
                        if (classid == newClasses.ClassID)
                        {
                            teacher.ClassID.Remove(classid);
                            TeacherDB.TeacherDelete(teacher);
                            TeacherDB.TeacherSave(teacher);
                        }
                    }
                }

                RefreshTable();
            }
        }
Example #6
0
        private void RefreshTable()
        {
            dataGridView1.Rows.Clear();
            dataGridView1.Refresh();

            List <Teacher> teacherList = new List <Teacher>();

            teacherList = TeacherDB.TeacherLoad();

            dataGridView1.ColumnCount     = 3;
            dataGridView1.Columns[0].Name = "Teacher ID";
            dataGridView1.Columns[1].Name = "First Name";
            dataGridView1.Columns[2].Name = "Last Name";

            foreach (Teacher teacher in teacherList)
            {
                string[] row = new string[] { teacher.TeacherID.ToString(), teacher.FirstName, teacher.LastName };
                dataGridView1.Rows.Add(row);
            }

            int id = 0;

            foreach (Teacher teacher in teacherList)
            {
                if (teacher.TeacherID >= id)
                {
                    id = teacher.TeacherID + 1;
                }
            }

            teacherIDLabel1.Text = id.ToString();
        }
Example #7
0
        public static void PeriodConstructor(int totalTeachers, int maxClassSize)
        {
            //Find teacher availabilty to determine max classes per hour (store in a list that is zero indexed)
            //Take the number of teachers and the desired class size and use that to determine the number of classes each hour

            List <Teacher> TeacherList    = TeacherDB.TeacherLoad();
            List <int>     AvailableSlots = new List <int>();

            //For loop gains total number of available slots, zero indexed
            foreach (Teacher teacher in TeacherList)
            {
                for (int i = 0; i < teacher.Availability.Count; i++)
                {
                    if (teacher.Availability[i] == 1)
                    {
                        AvailableSlots[i] += 1;
                    }
                }
            }

            //Start with first class in the list, place the remaing x number of compatible classes
            List <Schedule> Schedules = ScheduleLoad();



            //Move to 2nd Period, place next classes
        }
Example #8
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            List <int> teacherAvailability = new List <int>()
            {
                1, 1, 1, 1, 1, 1, 1
            };
            List <int> classListID = new List <int>()
            {
                0, 0, 0, 0, 0, 0, 0
            };
            Teacher newTeacher = new Teacher();

            newTeacher.FirstName    = txtFirstName.Text;
            newTeacher.LastName     = txtLastName.Text;
            newTeacher.TeacherID    = Convert.ToInt32(teacherIDLabel1.Text);
            newTeacher.Availability = teacherAvailability;
            newTeacher.ClassID      = classListID;

            TeacherDB.TeacherSave(newTeacher);

            RefreshTable();

            txtFirstName.Text = string.Empty;
            txtLastName.Text  = string.Empty;

            MessageBox.Show("Teacher Saved");
        }
Example #9
0
        public IHttpActionResult GetTeacherDB(int id)
        {
            TeacherDB teacherDB = db.TeacherDBs.Find(id);

            if (teacherDB == null)
            {
                return(NotFound());
            }

            return(Ok(teacherDB));
        }
Example #10
0
        public IHttpActionResult DeleteTeacherDB(int id)
        {
            TeacherDB teacherDB = db.TeacherDBs.Find(id);

            if (teacherDB == null)
            {
                return(NotFound());
            }

            db.TeacherDBs.Remove(teacherDB);
            db.SaveChanges();

            return(Ok(teacherDB));
        }
Example #11
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            string[] Name    = cmbTeachers.Text.Split(' ');
            string[] Title   = cmbClasses.Text.Split(' ');
            Teacher  teacher = TeacherDB.TeacherFind(Convert.ToInt32(Name[0]));
            Classes  classes = ClassesDB.ClassFind(Convert.ToInt32(Title[0]));

            classes.TeacherID.Remove(teacher.TeacherID);
            teacher.ClassID.Remove(classes.ClassID);

            ClassesDB.ClassDelete(classes);
            ClassesDB.ClassSave(classes);

            TeacherDB.TeacherDelete(teacher);
            TeacherDB.TeacherSave(teacher);
        }
Example #12
0
        private void ClassAddTeacher_Load(object sender, EventArgs e)
        {
            RefreshTable();

            List <Classes> ClassList   = ClassesDB.ClassLoad();
            List <Teacher> TeacherList = TeacherDB.TeacherLoad();

            foreach (Classes classes in ClassList)
            {
                cmbClasses.Items.Add(classes.ClassID.ToString() + " " + classes.ClassTitle);
            }

            foreach (Teacher teacher in TeacherList)
            {
                cmbTeachers.Items.Add(teacher.TeacherID + " " + teacher.FirstName + " " + teacher.LastName);
            }
        }
Example #13
0
        private void SchedulePlan_Load(object sender, EventArgs e)
        {
            List <Classes> ClassList   = ClassesDB.ClassLoad();
            List <Teacher> TeacherList = TeacherDB.TeacherLoad();
            List <Student> StudentList = StudentDB.StudentLoad();

            txtClasses.Text   = ClassList.Count.ToString();
            txtStudents.Text  = StudentList.Count.ToString();
            txtTeachers.Text  = TeacherList.Count.ToString();
            txtErrors.Text    = "3";
            txtClassSize.Text = "10"; //Needs to be set based on a formula (Total Teachers, Periods, Classes and Students)

            int    classSize      = Convert.ToInt32(txtClassSize.Text);
            double classesPerHour = StudentList.Count / classSize;

            txtClassesPerHour.Text = classesPerHour.ToString();
        }
Example #14
0
        //Adjust teacher availability
        private void button1_Click_1(object sender, EventArgs e)
        {
            if (lblSelected.Text != "")
            {
                Teacher teacher = new Teacher();
                teacher.TeacherID = Convert.ToInt32(lblSelected.Text);
                teacher.FirstName = dataGridView1.CurrentRow.Cells[1].Value.ToString();
                teacher.LastName  = dataGridView1.CurrentRow.Cells[2].Value.ToString();

                TeacherDB.TempSave(teacher);

                TeacherSchedule newTeacherSchedule = new TeacherSchedule();
                newTeacherSchedule.Show();
            }
            else
            {
                MessageBox.Show("Please select a teacher to modify");
            }
        }
Example #15
0
        public void RefreshTable()
        {
            dataGridView1.Rows.Clear();
            dataGridView1.Refresh();

            List <Classes> classList   = ClassesDB.ClassLoad();
            List <Teacher> teacherList = TeacherDB.TeacherLoad();

            dataGridView1.ColumnCount     = 7;
            dataGridView1.Columns[0].Name = "Class ID";
            dataGridView1.Columns[1].Name = "Class Title";
            dataGridView1.Columns[2].Name = "Class Track";
            dataGridView1.Columns[3].Name = "Teacher";
            dataGridView1.Columns[4].Name = "Teacher(s)";
            dataGridView1.Columns[5].Name = "Teacher(s)";
            dataGridView1.Columns[6].Name = "Teacher(s)";

            foreach (Classes classes in classList)
            {
                string[]      row;
                List <string> teacherNames = new List <string>()
                {
                    "", "", "", "", "", "", "", "", "", ""
                };
                int count = 0;
                foreach (int teacherid in classes.TeacherID)
                {
                    if (teacherid != 0)
                    {
                        Teacher newTeacher = TeacherDB.TeacherFind(teacherid);
                        teacherNames[count] = newTeacher.TeacherID.ToString() + " " + newTeacher.FirstName + " " + newTeacher.LastName;
                        count++;
                    }
                }

                row = new string[] { classes.ClassID.ToString(), classes.ClassTitle, classes.ClassTrack, teacherNames[0], teacherNames[1], teacherNames[2], teacherNames[3] };
                dataGridView1.Rows.Add(row);
            }
        }
Example #16
0
        private void button1_Click(object sender, EventArgs e)
        {
            List <Teacher> TeacherList = TeacherDB.TeacherLoad();
            Teacher        teacher     = TeacherDB.TempLoad();

            int[]      schedule            = { 0, 0, 0, 0, 0, 0, 0, 0 };
            List <int> teacherAvailability = new List <int>(schedule);

            for (int i = 0; i < chkListBoxPeriod.Items.Count; i++)
            {
                if (chkListBoxPeriod.GetItemChecked(i))
                {
                    teacherAvailability[i] = 1;
                }
            }

            Teacher newTeacher = TeacherDB.TeacherFind(teacher.TeacherID);

            newTeacher.Availability = teacherAvailability;
            TeacherDB.TeacherDelete(newTeacher);
            TeacherDB.TeacherSave(newTeacher);

            this.Close();
        }
Example #17
0
 public TeacherService()
 {
     teacherDB = new TeacherDB();
 }