Ejemplo n.º 1
0
        public void ViewStudents_Apply(object sender, EventArgs args)
        {
            //If row not selected, return
            if (!dgvStudentView.SelectedRow())
            {
                MessageBox.Show("Please select a row.");
                return;
            }

            //Get the student course of selected student
            Course_Schedule schedule = lcSchedules[cbCourses.SelectedIndex];
            User            student  = lcStudents[dgvStudentView.SelectedRowIndex()];
            Student_Course  sCourse  = student.GetStudentCourse(schedule);

            //Update
            sCourse.Grade            = cbGrade.Text;
            sCourse.ModifiedDateTime = DateTime.Now;
            SharedManager.Update(sCourse, s => s.Grade, s => s.ModifiedDateTime);

            //Show message
            MessageBox.Show("Grade updated successfully", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);

            //Refresh grid view
            ViewStudents_Refresh();
        }
Ejemplo n.º 2
0
        public void ViewStudents_PopulateGridView(int index)
        {
            //Get students list
            lcStudents = lcSchedules[index].GetStudents();

            //Create new data table
            DataTable dt = new DataTable();

            //Set columns
            dt.Columns.Add("First Name");
            dt.Columns.Add("Last Name");
            dt.Columns.Add("Student ID");
            dt.Columns.Add("Grade");
            dt.Columns.Add("Email");
            dt.Columns.Add("Contact");

            //Set rows
            for (int i = 0; i < lcStudents.Count; i++)
            {
                Student_Course sc = lcStudents[i].GetStudentCourse(lcSchedules[cbCourses.SelectedIndex]);
                dt.Rows.Add(lcStudents[i].FirstName, lcStudents[i].LastName, lcStudents[i].Student_ID, sc.Grade, lcStudents[i].Email, lcStudents[i].ContactNumber);
            }

            //Set data source
            dgvStudentView.DataSource = dt;
            dgvStudentView.ToggleColumnSort(false);

            //Refresh view
            dgvStudentView.Refresh();
        }
Ejemplo n.º 3
0
 public static Course_Schedule GetSchedule(this Student_Course context)
 {
     using (KeunhongInstituteDBEntities dbContext = new KeunhongInstituteDBEntities())
     {
         return(dbContext.Course_Schedule.FirstOrDefault(s => s.IsActive && s.CourseSchedule_ID.Equals(context.CourseSchedule_ID)));
     }
 }
Ejemplo n.º 4
0
 public static User GetStudent(this Student_Course context)
 {
     using (KeunhongInstituteDBEntities dbContext = new KeunhongInstituteDBEntities())
     {
         return(dbContext.Users.FirstOrDefault(u => u.User_ID.Equals(context.User_ID) && u.IsActive));
     }
 }
Ejemplo n.º 5
0
        public static bool Create(Student_Course source)
        {
            using (KeunhongInstituteDBEntities dbContext = new KeunhongInstituteDBEntities())
            {
                try
                {
                    Student_Course sc = new Student_Course();

                    sc.CourseSchedule_ID = source.CourseSchedule_ID;
                    sc.CreatedBy         = source.CreatedBy;
                    sc.CreatedDateTime   = DateTime.Now;
                    sc.IsActive          = true;
                    sc.ModifiedBy        = source.ModifiedBy;
                    sc.ModifiedDateTime  = DateTime.Now;
                    sc.User_ID           = source.User_ID;
                    sc.Grade             = source.Grade;

                    dbContext.Student_Course.Add(sc);
                    dbContext.SaveChanges();
                }
                catch (Exception)
                {
                    return(false);
                }
            }
            return(true);
        }
Ejemplo n.º 6
0
        public void Edit_Toggle(object sender, EventArgs args)
        {
            //Return if nothing selected
            if (!SelectedRow())
            {
                MessageBox.Show("Please select a student.");
                return;
            }

            //Selected row index
            int index = SelectedRowIndex();

            //Get selected student user info
            User student = lcStudents[index];

            //If toggled on
            if ((bool)dgvStudents.Rows[index].Cells[2].Value)
            {
                //Delete existing schedule
                Student_Course studentCourse = student.GetStudentCourse(cSelectedSchedule);
                if (studentCourse != null)
                {
                    studentCourse.IsActive = false;
                    SharedManager.Update(studentCourse, sc => sc.IsActive);
                }

                //Toggle off
                dgvStudents.Rows[SelectedRowIndex()].Cells[2].Value = false;
            }
            else
            {
                //Create new schedule
                Student_Course studentCourse = new Student_Course();
                studentCourse.CreatedBy         = GlobalApplication.cMyUser.User_ID;
                studentCourse.ModifiedBy        = GlobalApplication.cMyUser.User_ID;
                studentCourse.User_ID           = student.User_ID;
                studentCourse.CourseSchedule_ID = cSelectedSchedule.CourseSchedule_ID;
                studentCourse.Grade             = "A+";

                StudentCourseManager.Create(studentCourse);

                //Toggle on
                dgvStudents.Rows[SelectedRowIndex()].Cells[2].Value = true;
            }

            //Set modified date for selected schedule
            cSelectedSchedule.ModifiedDateTime = DateTime.Now;
            SharedManager.Update(cSelectedSchedule, s => s.ModifiedDateTime);

            //Refresh data grid view
            dgvStudents.Refresh();
        }
Ejemplo n.º 7
0
        public void FillLabels(int index)
        {
            //Selection
            Course          curCourse        = lcCourses[index];
            Course_Schedule curSchedule      = lcSchedules[index];
            Student_Course  curStudentCourse = GlobalApplication.cMyUser.GetStudentCourse(curSchedule);

            //Set label text
            lbCourseName.Text  = curCourse.Course_Name;
            lbCourseCode.Text  = curCourse.Course_Code;
            lbGrade.Text       = curStudentCourse.Grade;
            lbTutorName.Text   = curSchedule.GetTutor().FullName;
            lbTutorEmail.Text  = curSchedule.GetTutor().Email;
            lbStartDate.Text   = curSchedule.DT_From.ToString();
            lbFinishDate.Text  = curSchedule.DT_To.ToString();
            lbDescription.Text = curCourse.Course_Description;
        }
Ejemplo n.º 8
0
        public void ManageCourse_Delete(object sender, EventArgs args)
        {
            //Return if no selection
            if (!dgvCourses.SelectedRow())
            {
                MessageBox.Show("Please select a course.");
                return;
            }

            //Confirm first
            if (MessageBox.Show("Are you sure you want to delete this course?", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                //Select the target course
                Course course = lcCourses[dgvCourses.SelectedRowIndex()];
                //Disable it
                course.IsActive = false;
                SharedManager.Update(course, c => c.IsActive);

                //Disable all schedules associated with this course
                List <Course_Schedule> schedules = course.GetSchedules();
                for (int i = 0; i < schedules.Count; i++)
                {
                    Course_Schedule cs = schedules[i];
                    cs.IsActive = false;
                    SharedManager.Update(cs, x => x.IsActive);

                    //Disable all student courses associated with this schedule
                    List <Student_Course> studentCourses = cs.GetStudentCourses();
                    for (int j = 0; j < studentCourses.Count; j++)
                    {
                        Student_Course sc = studentCourses[j];
                        sc.IsActive = false;
                        SharedManager.Update(sc, x => x.IsActive);
                    }
                }

                MessageBox.Show("Course deleted successfully.");

                RefreshCourse();
            }
        }
Ejemplo n.º 9
0
 public static Course GetCourse(this Student_Course context)
 {
     return(GetSchedule(context).GetCourse());
 }