public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            if (ModelState.IsValid)
            {
                var exists = (from e in _context.AcademicRecord where string.Compare(e.StudentId, academicRecord.StudentId) == 0 && string.Compare(e.CourseCode, academicRecord.CourseCode) == 0 select e).FirstOrDefault <AcademicRecord>();

                if (exists == null)
                {
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ModelState.AddModelError("CourseCode", "The student has already had an academic record for this course");
                }
            }
            var courses = (from a in _context.Course select new { Code = a.Code, Title = a.Code + " - " + a.Title }).ToList();

            ViewData["CourseCode"] = new SelectList(courses, "Code", "Title");

            var students = (from b in _context.Student select new { Id = b.Id, Name = b.Id + " - " + b.Name }).ToList();

            ViewData["StudentId"] = new SelectList(students, "Id", "Name");
            return(View(academicRecord));
        }
Exemplo n.º 2
0
 public async Task <IActionResult> Edit([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
 {
     if (ModelState.IsValid)
     {
         try
         {
             _context.Update(academicRecord);
             await _context.SaveChangesAsync();
         }
         catch (DbUpdateConcurrencyException)
         {
             if (!AcademicRecordExists(academicRecord.StudentId))
             {
                 return(NotFound());
             }
             else
             {
                 throw;
             }
         }
         return(RedirectToAction(nameof(Index)));
     }
     ViewData["CourseCode"] = new SelectList(_context.Course, "Code", "Code", academicRecord.CourseCode);
     ViewData["StudentId"]  = new SelectList(_context.Student, "Id", "Id", academicRecord.StudentId);
     return(View(academicRecord));
 }
    protected void btnAddtoCourseRecord(object sender, EventArgs e)
    {
        //put inputs into vars
        string sNumber = txtStudentID.Text;
        string sName   = txtStudentName.Text;
        int    sGrade  = int.Parse(txtGrade.Text);

        //attach courses sesssion to courses list and selectedCourse to index of dropdown
        List <Course> courses        = (List <Course>)Session["courses"];
        Course        selectedCourse = courses[dropdownCourseList.SelectedIndex - 1];

        //create new student object with inputs and new academicrecord object with selected course and student objects
        Student        student   = new Student(sNumber, sName);
        AcademicRecord newRecord = new AcademicRecord(selectedCourse, student);

        //add grade to record object
        newRecord.Grade = sGrade;



        //make records list var (no list yet)
        List <AcademicRecord> records;

        if (Session["records"] != null)
        {
            //if records session exists, attach it to records list and add new Record, otherwise make new list
            records = (List <AcademicRecord>)Session["records"];
            records.Add(newRecord);
        }
        else
        {
            records = new List <AcademicRecord>();
            records.Add(newRecord);
        }

        //make list accessible by content page
        List <AcademicRecord> visibleList = new List <AcademicRecord>();

        //add the students to the new list
        foreach (AcademicRecord r in records)
        {
            if (r.Course == selectedCourse)
            {
                visibleList.Add(r);
            }
        }

        //The following line of code was copied from Brenna Arbour
        visibleList = visibleList.OrderBy(x => x.Student.Name.Split(' ').Last()).ThenBy(x => x.Student.Name.Split(' ').First()).ToList();

        //update records sesssion and selectedCourse
        Session["records"]        = records;
        Session["selectedcourse"] = selectedCourse;

        //display students using the new list
        foreach (AcademicRecord r in visibleList)
        {
            DisplayStudentsTable(r);
        }
    }
        public async Task <IActionResult> Edit(string studentId, string courseCode, [Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            if (studentId != academicRecord.StudentId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(academicRecord);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AcademicRecordExists(academicRecord.StudentId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }

            // Pass student name and course title to view
            populateEditViewData(studentId, courseCode);

            return(View(academicRecord));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            var existing = _context.AcademicRecord.Where(a => a.CourseCode.Equals(academicRecord.CourseCode) && a.StudentId.Equals(academicRecord.StudentId)).FirstOrDefault();

            ViewData["Error"] = "";
            if (existing != null)
            {
                ViewData["Error"] = "The student has already had this academic record";
            }
            else
            {
                if (ModelState.IsValid)
                {
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            //ViewData["CourseCode"] = new SelectList(_context.Course, "Code", "Code", academicRecord.CourseCode);
            //ViewData["StudentId"] = new SelectList(_context.Student, "Id", "Id", academicRecord.StudentId);
            ViewData["CourseCode"] = new SelectList(_context.Course.Select(c => new { Code = c.Code, Course = c.Code + " - " + c.Title }), "Code", "Course");
            ViewData["StudentId"]  = new SelectList(_context.Student.Select(s => new { Id = s.Id, Student = s.Id + " - " + s.Name }), "Id", "Student");
            return(View(academicRecord));
        }
Exemplo n.º 6
0
        protected void ActionHandler(string action)
        {
            string courseId  = Request.Params["course"] as String;
            string studentId = Request.Params["id"] as String;

            using (StudentRecordEntities1 entityContext = new StudentRecordEntities1())
            {
                Course course = (from c in entityContext.Courses
                                 where c.Code == courseId
                                 select c).FirstOrDefault <Course>();

                if (action == "edit")
                {
                    AcademicRecord record = (from c in course.AcademicRecords
                                             where c.StudentId == studentId
                                             select c).FirstOrDefault <AcademicRecord>();

                    CourseList.SelectedValue = course.Code + " " + course.Title;
                    txtStudentName.Text      = record.Student.Name;
                    txtStudentNum.Text       = record.Student.Id;
                    txtStudentName.ReadOnly  = true;
                    txtStudentNum.ReadOnly   = true;
                    CourseList.Enabled       = false;
                }
                else if (action == "delete")
                {
                    AcademicRecord record = (from c in course.AcademicRecords
                                             where c.StudentId == studentId
                                             select c).FirstOrDefault <AcademicRecord>();
                    course.AcademicRecords.Remove(record);
                    entityContext.SaveChanges();
                    Response.Redirect("AddStudent.aspx");
                }
            }
        }
Exemplo n.º 7
0
    protected void btnAddStudent_OnClick(object sender, EventArgs e)
    {
        using (var studentRecords = new StudentRecordEntities())
        {
            Course course = (from a in studentRecords.Courses where a.Code == courseList.SelectedValue select a).FirstOrDefault();
            List <AcademicRecord> records = (from b in course.AcademicRecords where b.StudentId == number.Text select b).ToList();
            if (records.Count > 0)
            {
                numberError.Text = "The system already has record of this student for the selected course";
                ShowStudent(course);
            }
            else
            {
                Student student = (from c in studentRecords.Students where c.Id == number.Text select c).FirstOrDefault();
                if (student == null)
                {
                    student      = new Student();
                    student.Id   = number.Text;
                    student.Name = name.Text;
                    studentRecords.Students.Add(student);
                }

                AcademicRecord academic = new AcademicRecord();
                academic.CourseCode = course.Code;
                academic.Grade      = int.Parse(grade.Text);
                academic.Student    = student;

                course.AcademicRecords.Add(academic);
                studentRecords.SaveChanges();

                Response.Redirect("AddStudent.aspx");
            }
        }
    }
Exemplo n.º 8
0
        protected void btnAddstudentRecord_Click(object sender, EventArgs e)
        {
            //Initializing variables
            string sName   = studentName.Text;
            string sNumber = studentNumber.Text;
            int    sGrade  = int.Parse(grade.Text);
            //Retrieving session for added Courses
            List <Course> addedCourses = (List <Course>)Session["addedCourses"];
            //Retrieving session for Academic Records
            List <AcademicRecord> records = (List <AcademicRecord>)Session["records"];

            AcademicRecord record = null;
            //getting course object from course selection
            Course selectedCourse = addedCourses[courseSelection.SelectedIndex - 1];

            if (courseSelection.SelectedValue == selectedCourse.ToString())
            {
                //Initializing selected course object
                Course course = new Course(selectedCourse.CourseNumber, selectedCourse.CourseName);
                //Initializing student object
                Student student = new Student(sNumber, sName);
                //Initializing Academic Record object
                record = new AcademicRecord(course, student);
                //Getting grade
                record.Grade = sGrade;
                //adding academic record object into a session list
                records.Add(record);


                //Displaying Table of added students
                foreach (AcademicRecord r in records)
                {
                    if (courseSelection.SelectedValue == r.Course.ToString())
                    {
                        TableCell c1 = new TableCell();
                        c1.Text = string.Concat(r.Student.Id);

                        TableCell c2 = new TableCell();
                        c2.Text = string.Concat(r.Student.Name);

                        TableCell c3 = new TableCell();
                        c3.Text = string.Concat(r.Grade);

                        TableRow row = new TableRow();
                        row.Controls.Add(c1);
                        row.Controls.Add(c2);
                        row.Controls.Add(c3);

                        tblStudents.Controls.Add(row);
                    }
                }
            }


            // Clearing text inputs
            studentName.Text   = "";
            studentNumber.Text = "";
            grade.Text         = "";
        }
Exemplo n.º 9
0
        public ActionResult DeleteAcademicPlanForSubjectId(int subjectId, int studentId, int semesterId)
        {
            AcademicRecord academicRecord = db.AcademicPlan.FirstOrDefault(p => p.SubjectId == subjectId && p.StudentId == studentId && p.SemesterId == semesterId);

            db.AcademicPlan.Remove(academicRecord);
            db.SaveChanges();
            return(RedirectToAction("AcademicPlanForSubjectId", new { id = subjectId }));
        }
Exemplo n.º 10
0
 public ActionResult CreateAcademicPlanForSubjectId(AcademicRecord academicRecord)
 {
     //try
     //{
     db.AcademicPlan.Add(academicRecord);
     db.SaveChanges();
     return(RedirectToAction("AcademicPlanForSubjectId", new { id = academicRecord.SubjectId }));
     //}
     //catch
     //{
     //    return RedirectToAction("Error");
     //}
 }
Exemplo n.º 11
0
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            if (ModelState.IsValid)
            {
                _context.Add(academicRecord);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["CourseCode"] = new SelectList(_context.Course, "Code", "Code", academicRecord.CourseCode);
            ViewData["StudentId"]  = new SelectList(_context.Student, "Id", "Id", academicRecord.StudentId);
            return(View(academicRecord));
        }
Exemplo n.º 12
0
    public void btnSubmit_Click(object sender, EventArgs e)
    {
        Page.Validate();

        if (Session["selectedcourse"] != null)
        {
            if (Page.IsValid)
            {
                using (var context = new StudentRecordEntities1())
                {
                    Course course = context.Courses.Where(c => c.Code == drpCourseSelection.SelectedValue).FirstOrDefault();

                    if (course != null)
                    {
                        List <AcademicRecord> records = course.AcademicRecords.Where(r => r.StudentId == studentID.Text).ToList();
                        if (records.Count > 0)
                        {
                            studentExistsError.Text = "The system already has a record of this student for the selected course";
                            orderList();
                        }
                        else
                        {
                            Student s = context.Students.Where(st => st.Id == studentID.Text).FirstOrDefault();

                            if (s == null)
                            {
                                s      = new Student();
                                s.Id   = studentID.Text;
                                s.Name = studentName.Text;
                                context.Students.Add(s);
                            }

                            AcademicRecord a = new AcademicRecord();
                            a.CourseCode = course.Code;
                            a.Grade      = int.Parse(studentGrade.Text);
                            a.Student    = s;

                            course.AcademicRecords.Add(a);
                            context.SaveChanges();

                            Response.Redirect("AddStudent.aspx");
                        }
                    }
                }
            }
        }
    }
Exemplo n.º 13
0
    protected void btnAddStudent_OnClick(object sender, EventArgs e)
    {
        List <Course> courses = Session["courses"] as List <Course>;
        Course        course  = courses[courseList.SelectedIndex];
        Student       student = new Student(number.Text, name.Text);

        AcademicRecord academicRecord = new AcademicRecord(course, student);

        academicRecord.Grade = Int32.Parse(grade.Text);
        course.AcademicRecords.Add(academicRecord);

        course.AcademicRecords.OrderBy(s => s.Student.Name.Split(' ')[1]).ThenBy(s => s.Student.Name.Split(' ')[0]).ToList();

        if (courses == null || courses.Count == 0)
        {
            TableRow  errorRow  = new TableRow();
            TableCell errorCell = new TableCell();
            errorCell.Text            = "No students in system yet";
            errorCell.ForeColor       = System.Drawing.Color.Red;
            errorCell.ColumnSpan      = 4;
            errorCell.HorizontalAlign = HorizontalAlign.Center;
            errorRow.Cells.Add(errorCell);
            Table.Rows.Add(errorRow);

            Table.Visible = true;
        }
        foreach (var record in course.AcademicRecords)
        {
            TableRow  row  = new TableRow();
            TableCell cell = new TableCell();;
            cell.Text = record.Student.Id;
            row.Cells.Add(cell);

            cell      = new TableCell();
            cell.Text = record.Student.Name;
            row.Cells.Add(cell);

            cell      = new TableCell();
            cell.Text = record.Grade.ToString();
            row.Cells.Add(cell);

            Table.Rows.Add(row);
            Table.Visible = true;
        }

        Table.Visible = true;
    }
Exemplo n.º 14
0
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            var existing = _context.AcademicRecord.Where(a => a.CourseCode.Equals(academicRecord.CourseCode) && a.StudentId.Equals(academicRecord.StudentId)).FirstOrDefault();

            ViewData["Error"] = "";
            if (existing != null)
            {
                ViewData["Error"] = "The student already has an academic record for the course.";
            }
            else
            {
                if (ModelState.IsValid)
                {
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }

            List <object> courses = new List <object>();

            foreach (var course in _context.Course)
            {
                courses.Add(new
                {
                    Code  = course.Code,
                    Title = course.Code + " - " + course.Title
                });
            }

            ViewData["CourseCode"] = new SelectList(courses, "Code", "Title");

            List <object> students = new List <object>();

            foreach (var student in _context.Student)
            {
                students.Add(new
                {
                    Id   = student.Id,
                    Name = student.Id + " - " + student.Name
                });
            }

            ViewData["StudentId"] = new SelectList(students, "Id", "Name");
            return(View(academicRecord));
        }
Exemplo n.º 15
0
    protected void btnAddNewStudent_Click(object sender, EventArgs e)
    {
        string selectedCourseCode = Session["selectedCourseCode"] as string;

        if (selectedCourseCode != null && selectedCourseCode != "-1")
        {
            using (StudentRecordEntities entityContext = new StudentRecordEntities())
            {
                Course selectedCourse = (from c in entityContext.Courses where c.Code == selectedCourseCode select c).FirstOrDefault <Course>();
                //might need .ToList() or list type after FirstorDefault

                string  idInput    = txtStudentID.Text.Trim().ToUpper();
                Student newStudent = (from s in entityContext.Students
                                      where s.Id == idInput
                                      select s).FirstOrDefault <Student>();
                if (newStudent == null)
                {
                    newStudent      = new Student();
                    newStudent.Name = txtStudentName.Text;
                    newStudent.Id   = txtStudentID.Text;
                    entityContext.Students.Add(newStudent);

                    AcademicRecord newRecord = new AcademicRecord();
                    newRecord.Student = newStudent;
                    newRecord.Course  = selectedCourse;
                    newRecord.Grade   = int.Parse(txtGrade.Text);
                    entityContext.AcademicRecords.Add(newRecord);
                    entityContext.SaveChanges();

                    Response.Redirect("AddStudent.aspx");
                }
                else
                {
                    AcademicRecord ar = (from a in entityContext.AcademicRecords
                                         where a.Course.Code == selectedCourse.Code && a.StudentId == newStudent.Id
                                         select a).FirstOrDefault <AcademicRecord>();

                    //check if the system already has a record of this student/ course?
                    if (ar != null)
                    {
                        txtStudentIdExists.Text = "The system already has record of this student in this class";
                    }
                }
            }
        }
    }
Exemplo n.º 16
0
        protected void ShowStudentRecords()
        {
            var courses = GetCourses();

            for (int i = studentTable.Rows.Count - 1; i > 0; i--)
            {
                studentTable.Rows.RemoveAt(i);
            }
            foreach (Course course in courses)
            {
                string format = course.Code + " " + course.Title;
                if (CourseList.SelectedValue == format)
                {
                    using (StudentRecordEntities1 entityContext = new StudentRecordEntities1())
                    {
                        AcademicRecord records = (from c in entityContext.AcademicRecords
                                                  where c.CourseCode == course.Code
                                                  select c).FirstOrDefault <AcademicRecord>();
                        if (records != null)
                        {
                            foreach (AcademicRecord record in records.Course.AcademicRecords)
                            {
                                TableRow  studentRow = new TableRow();
                                TableCell idCell     = new TableCell();
                                TableCell nameCell   = new TableCell();
                                TableCell gradeCell  = new TableCell();
                                TableCell cell       = new TableCell();

                                idCell.Text    = record.Student.Id;
                                nameCell.Text  = record.Student.Name;
                                gradeCell.Text = record.Grade.ToString();
                                cell.Text      = "<a href='AddStudent.aspx?action=edit&id=" + record.Student.Id + "&course=" + course.Code + "'/>Change Grade</a>"
                                                 + " | <a class='deleteCourse' href='AddStudent.aspx?action=delete&id=" + record.Student.Id + "&course=" + course.Code + "'/>Delete</a>";

                                studentRow.Cells.Add(idCell);
                                studentRow.Cells.Add(nameCell);
                                studentRow.Cells.Add(gradeCell);
                                studentRow.Cells.Add(cell);
                                studentTable.Rows.Add(studentRow);
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 17
0
    private void DisplayStudentsTable(AcademicRecord r)
    {
        TableRow row = new TableRow();

        TableCell cell = new TableCell();

        cell.Text = r.Student.Id;
        row.Cells.Add(cell);

        cell      = new TableCell();
        cell.Text = r.Student.Name;
        row.Cells.Add(cell);

        cell      = new TableCell();
        cell.Text = r.Grade.ToString();
        row.Cells.Add(cell);

        studentRecordsTable.Rows.Add(row);
    }
Exemplo n.º 18
0
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            if (ModelState.IsValid)
            {
                if (!AcademicRecordExists(academicRecord.StudentId, academicRecord.CourseCode))
                {
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    ViewBag.ErrorStyle = "color:red; display:block";
                }
            }

            SetCourseAndStudentViewData();
            return(View(academicRecord));
        }
Exemplo n.º 19
0
        protected void addBtn_Click(object sender, EventArgs e)
        {
            //creating a new student
            string studentNumber = studentNumberTxt.Text;
            string studentName   = studentNameTxt.Text;

            AlgonquinCollege.Registration.Entities.Student newStudent = new AlgonquinCollege.Registration.Entities.Student(studentNumber, studentName);

            //create a new course
            string index = (string)Session["selectedCourse"];
            string selectedCourseName = DropDownList1.SelectedValue.ToString();
            Course newCourse          = new Course(index, selectedCourseName);

            //creating a list of academic records
            List <AcademicRecord> academicRecordList = new List <AcademicRecord>();
            AcademicRecord        newAcademicRecord  = new AcademicRecord(newCourse, newStudent);

            newAcademicRecord.Grade = int.Parse(gradeTxt.Text);

            //adding course to list and session
            if (Session["academicRecordListSession"] == null)
            {
                academicRecordList.Add(newAcademicRecord);
                Session["academicRecordListSession"] = academicRecordList;
            }
            else
            {
                academicRecordList = (List <AcademicRecord>)Session["academicRecordListSession"];
                academicRecordList.Add(newAcademicRecord);
                Session["academicRecordListSession"] = academicRecordList;
            }

            academicRecordList.Sort((p1, p2) => string.Compare(p1.Student.Name, p2.Student.Name, true));

            //displaying table
            ShowStudentRecords();

            studentNumberTxt.Text = "";
            studentNameTxt.Text   = "";
            gradeTxt.Text         = "";
        }
Exemplo n.º 20
0
 protected void btnAdd_Click(object sender, EventArgs e)
 {
     using (var entityContext = new StudentRecordEntities())
     {
         if (Page.IsValid)
         {
             List <Student>        students      = entityContext.Students.ToList <Student>();
             List <AcademicRecord> academRecords = entityContext.AcademicRecords.ToList <AcademicRecord>();
             bool stExist = false;
             foreach (Student student in students)
             {
                 if (student.Id == stdId.Text)
                 {
                     AcademicRecord academRecord = new AcademicRecord();
                     academRecord.CourseCode = Session["selectedcourseCode"].ToString();
                     academRecord.Student    = student;
                     academRecord.Grade      = Int32.Parse(stdGrade.Text);
                     entityContext.AcademicRecords.Add(academRecord);
                     entityContext.SaveChanges();
                     stExist = true;
                     break;
                 }
             }
             if (!stExist)
             {
                 Student std = new Student();
                 std.Id   = stdId.Text;
                 std.Name = stdName.Text;
                 entityContext.Students.Add(std);
                 AcademicRecord academRecord = new AcademicRecord();
                 academRecord.CourseCode = Session["selectedcourseCode"].ToString();
                 academRecord.Student    = std;
                 academRecord.Grade      = Int32.Parse(stdGrade.Text);
                 entityContext.AcademicRecords.Add(academRecord);
                 entityContext.SaveChanges();
             }
         }
     }
     DisplayStdn();
 }
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            // Check for duplicate records:
            if ((from a in _context.AcademicRecord
                 where a.CourseCode.Equals(academicRecord.CourseCode) &&
                 a.StudentId.Equals(academicRecord.StudentId)
                 select a).FirstOrDefault() != null)
            { // Duplicate record exists
                ViewData["Error"] = "Student already has an academic record for the course.";
            }
            else if (ModelState.IsValid)
            {
                _context.Add(academicRecord);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            // Include course titles and student names in drop down lists
            populateCreateViewData();

            return(View(academicRecord));
        }
Exemplo n.º 22
0
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            var selectedAccount = (from account in _context.AcademicRecord where account.StudentId == academicRecord.StudentId && account.CourseCode == academicRecord.CourseCode select account).FirstOrDefault();

            if (selectedAccount != null)
            {
                ModelState.AddModelError("", "The Student Already Exists Within The System.");
            }
            else
            {
                if (ModelState.IsValid)
                {
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }

            List <object> courses = new List <object>();

            foreach (Course course in _context.Course)
            {
                courses.Add(new { Code = course.Code, Title = course.Code + "-" + course.Title });
            }

            List <object> students = new List <object>();

            foreach (Student student in _context.Student)
            {
                students.Add(new { Id = student.Id, Name = student.Id + "-" + student.Name });
            }


            ViewData["CourseCode"] = new SelectList(courses, "Code", "Title", academicRecord.CourseCode);
            ViewData["StudentId"]  = new SelectList(students, "Id", "Name", academicRecord.StudentId);
            return(View(academicRecord));
        }
        public async Task <IActionResult> Create([Bind("CourseCode,StudentId,Grade")] AcademicRecord academicRecord)
        {
            if (ModelState.IsValid)
            {
                //query if student ID + courseCode already exists
                var academicExist = (from acExist in _context.AcademicRecord
                                     where string.Compare(acExist.StudentId, academicRecord.StudentId) == 0 &&
                                     string.Compare(acExist.CourseCode, academicRecord.CourseCode) == 0
                                     select acExist).FirstOrDefault <AcademicRecord>();

                //if academic record does not exist yet:
                if (academicExist == null)
                {
                    //adding an academic record
                    _context.Add(academicRecord);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    //display error:
                    ModelState.AddModelError("", "The academic record of this course already exists!");
                }
            }

            //display updated view
            var courses = (from c in _context.Course select new { Code = c.Code, Title = c.Code + " - " + c.Title }).ToList();

            ViewData["CourseCode"] = new SelectList(courses, "Code", "Title");

            var students = (from st in _context.Student select new { Id = st.Id, Name = st.Id + " - " + st.Name }).ToList();

            ViewData["StudentId"] = new SelectList(students, "Id", "Name");
            return(View());
        }
Exemplo n.º 24
0
        protected void btn_AddToCourse_Click(object sender, EventArgs e)
        {
            string action = Request.Params["action"];

            ActionHandler(action);

            String studentName = txtStudentName.Text.Trim();
            String studentID   = txtStudentNum.Text.Trim();

            String[] courseString = CourseList.SelectedValue.Split();
            string   courseCode   = courseString[0];

            using (StudentRecordEntities1 entityContext = new StudentRecordEntities1())
            {
                // TODO: Add edit actions
                if (action == "edit")
                {
                    string studentId  = Request.Params["id"] as String;
                    string courseId   = Request.Params["course"] as String;
                    Course editCourse = (from c in entityContext.Courses
                                         where c.Code == courseId
                                         select c).FirstOrDefault <Course>();

                    if (editCourse != null)
                    {
                        AcademicRecord record = (from c in editCourse.AcademicRecords
                                                 where c.StudentId == studentId
                                                 select c).FirstOrDefault <AcademicRecord>();

                        record.Grade = int.Parse(txtStudentGrade.Text);
                        entityContext.Entry(record).State = System.Data.Entity.EntityState.Modified;
                        entityContext.SaveChanges();
                        Response.Redirect("AddStudent.aspx");
                    }
                }
                else
                {
                    Course course = (from c in entityContext.Courses
                                     where c.Code == courseCode.Trim()
                                     select c).FirstOrDefault <Course>();

                    string format = course.Code + " " + course.Title;
                    if (CourseList.SelectedValue == format)
                    {
                        int studentGrade = int.Parse(txtStudentGrade.Text.Trim());

                        Student student = (from c in entityContext.Students
                                           where c.Id == studentID
                                           select c).FirstOrDefault <Student>();

                        if (student != null)
                        {
                            AcademicRecord record = (from c in student.AcademicRecords
                                                     where c.CourseCode == course.Code
                                                     select c).FirstOrDefault <AcademicRecord>();

                            if (course.AcademicRecords.Contains(record))
                            {
                                errMsg.Text    = "The system already has a record of this student for the selected course";
                                errMsg.Visible = true;
                            }
                            else
                            {
                                AcademicRecord newRecord = new AcademicRecord();
                                newRecord.Grade   = studentGrade;
                                newRecord.Student = student;
                                newRecord.Course  = course;
                                course.AcademicRecords.Add(newRecord);
                                entityContext.SaveChanges();
                                Response.Redirect("AddStudent.aspx");
                            }
                        }
                        else
                        {
                            Student newStudent = new Student();
                            newStudent.Name = studentName;
                            newStudent.Id   = studentID;
                            AcademicRecord newRecord = new AcademicRecord();
                            newRecord.Grade   = studentGrade;
                            newRecord.Student = newStudent;
                            newRecord.Course  = course;
                            course.AcademicRecords.Add(newRecord);
                            entityContext.SaveChanges();
                            Response.Redirect("AddStudent.aspx");
                        }
                    }
                }
            }
        }
Exemplo n.º 25
0
        public int Add(StudentProfileViewModel model,
                       List <AcademicRecordsViewModel> records,
                       GuardianViewModel gardian,
                       InitialPaymentDetailViewModel officeFrom, int[] OriginalDocumentId)
        {
            Student std = new Student();

            std.Id                   = Guid.NewGuid();
            std.StdNameBangla        = model.StdNameBangla;
            std.StdNameEnglish       = model.StdNameEnglish;
            std.StdFatherNameBangla  = model.StdFatherNameBangla;
            std.StdFatherNameEnglish = model.StdFatherNameEnglish;
            std.StdMotherNameBangla  = model.StdMotherNameBangla;
            std.StdMotherNameEnglish = model.StdMotherNameEnglish;
            std.AdmissionDate        = DateTime.Now;
            std.DateOfBirth          = model.DateOfBirth;
            std.EntryDate            = DateTime.Now;
            std.FormNo               = _context.Students.Select(s => s.FormNo).Max() + 1;
            std.Gender               = model.Gender;
            std.IsActive             = true;
            std.IsSuspended          = model.IsSuspended;
            std.Nationality          = model.Nationality;
            std.PermanentAddress     = model.PermanentAddress;
            std.Phone                = model.Phone;
            std.Email                = model.Email;
            std.Picture              = model.Picture;
            std.PresentAddress       = model.PresentAddress;
            std.Religion             = model.Religion;
            std.SuspendedDesc        = model.SuspendedDesc;

            std.RegistrationNo    = officeFrom.RegistrationNo;
            std.ExamRollNo        = officeFrom.ExamRollNo;
            std.CourseId          = model.CourseId;
            std.AcademicSessionId = model.AcademicSessionId;
            std.SemesterId        = model.SemesterId;
            _context.Students.Add(std);

            foreach (var item in records)
            {
                if (item.ExamId > 0)
                {
                    AcademicRecord r = new AcademicRecord();
                    r.ExamId        = item.ExamId;
                    r.GroupId       = item.GroupId;
                    r.BoardId       = item.BoardId;
                    r.YearOfPassing = item.YearOfPassing;
                    r.RollOfExam    = item.RollOfExam;
                    r.Grade         = item.Grade;
                    r.StudentId     = std.Id;
                    _context.AcademicRecords.Add(r);
                }
            }

            Guardian gar = new Guardian();

            gar.Id         = Guid.NewGuid();
            gar.Name       = gardian.Name;
            gar.Occupation = gardian.Occupation;
            gar.Relation   = gardian.Relation;
            gar.Phone      = gardian.Phone;
            gar.Address    = gardian.Address;
            gar.StudentId  = std.Id;
            _context.Guardians.Add(gar);

            InitialPaymentDetail ip = new InitialPaymentDetail();

            ip.CourseFee = officeFrom.CourseFee;
            //ip.InitialPayment = officeFrom.InitialPayment;
            ip.CourseId = model.CourseId;
            //ip.PaymentScheduleId = officeFrom.PaymentScheduleId;
            ip.StudentId = std.Id;
            _context.InitialPaymentDetails.Add(ip);


            foreach (var d in OriginalDocumentId)
            {
                StudentOriginalDocument stdDOc = new StudentOriginalDocument();
                stdDOc.StudentId          = std.Id;
                stdDOc.OriginalDocumentId = d;
                _context.StudentOriginalDocuments.Add(stdDOc);
            }

            StudentSemesterMapping sm = new StudentSemesterMapping();

            sm.StudentId  = std.Id;
            sm.SemesterId = model.SemesterId;
            sm.IsActive   = true;
            _context.StudentSemesterMappings.Add(sm);

            try
            {
                _context.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                Console.WriteLine(e);
            }

            return(0);
        }
Exemplo n.º 26
0
    protected void addBtn_Click(object sender, EventArgs e)
    {
        using (StudentRecordEntities entityContext = new StudentRecordEntities())
        {
            //check if student number exists
            var student = (from st in entityContext.Students
                           where st.Id == studentNumberTxt.Text
                           select st).FirstOrDefault <Student>();

            if (student == null) //if student number is not found
            {
                //creating a new student and saving into database
                Student student1 = new Student();
                { student1.Id = studentNumberTxt.Text; student1.Name = studentNameTxt.Text; };
                entityContext.Students.Add(student1);
                entityContext.SaveChanges();

                //retrieving the course info from dropdown list
                var course = (from c in entityContext.Courses
                              where c.Code == DropDownList1.SelectedValue.ToString()
                              select c).FirstOrDefault <Course>();

                //creating academic records
                AcademicRecord academicRecord = new AcademicRecord();
                { academicRecord.Course = course; academicRecord.Student = student1; academicRecord.Grade = int.Parse(gradeTxt.Text); };

                //adding academic record to database:
                entityContext.AcademicRecords.Add(academicRecord);
                entityContext.SaveChanges();

                //clear form fields and redirecting to home page:
                studentNumberTxt.Text = "";
                studentNameTxt.Text   = "";
                gradeTxt.Text         = "";
                Response.Redirect("AddStudent.aspx");
            }
            else //if student number already exists
            {
                if (Request.Params["action"] == "edit") //if user wants to change grade (edit)
                {
                    List <Student> stList = entityContext.Students.ToList <Student>();
                    student.Id = studentNumberTxt.Text;
                    var academicRecord = (from ac in entityContext.AcademicRecords
                                          where (ac.StudentId == student.Id &&
                                                 ac.CourseCode == DropDownList1.SelectedValue)
                                          select ac).FirstOrDefault <AcademicRecord>();
                    academicRecord.Grade = int.Parse(gradeTxt.Text);

                    entityContext.SaveChanges();
                    studentNumberTxt.Text    = "";
                    studentNumberTxt.Enabled = true;
                    studentNameTxt.Text      = "";
                    studentNameTxt.Enabled   = true;
                    gradeTxt.Text            = "";
                    gradeTxt.Enabled         = true;
                    DropDownList1.Enabled    = true;
                    Response.Redirect("AddStudent.aspx");
                }
                else //if it's not editing
                {
                    //checking if there is an academic record for student + course
                    var academicRecord = (from ac in entityContext.AcademicRecords
                                          where ac.StudentId == studentNumberTxt.Text && ac.Course.Code == DropDownList1.SelectedValue.ToString()
                                          select ac).FirstOrDefault <AcademicRecord>();

                    if (academicRecord == null) //if academicRecord for student + course is not found
                    {
                        //creating a new student
                        Student student1 = new Student();
                        { student1.Id = studentNumberTxt.Text; student1.Name = studentNameTxt.Text; };

                        //retrieving the course info from dropdown list
                        var course = (from c in entityContext.Courses
                                      where c.Code == DropDownList1.SelectedValue.ToString()
                                      select c).FirstOrDefault <Course>();

                        //creating academic records
                        AcademicRecord academicRecord1 = new AcademicRecord();
                        { academicRecord1.CourseCode = course.Code; academicRecord1.StudentId = student1.Id; academicRecord1.Grade = int.Parse(gradeTxt.Text); };

                        //adding academic record to database:
                        entityContext.AcademicRecords.Add(academicRecord1);
                        entityContext.SaveChanges();

                        //clear form fields:
                        studentNumberTxt.Text = "";
                        studentNameTxt.Text   = "";
                        gradeTxt.Text         = "";
                        Response.Redirect("AddStudent.aspx");
                    }
                    else //if there is an academic record with student number + course (display error)
                    {
                        spanNumber.InnerText = "The system already has records of this student for the selected course!";
                        //clear form fields:
                        studentNumberTxt.Text = "";
                        studentNameTxt.Text   = "";
                        gradeTxt.Text         = "";
                    }
                }
            }
        }
    }
    protected void ButtonAddToCourse_Click(object sender, EventArgs e)
    {
        if (DropDownListCourses.SelectedValue != "-1")
        {
            string selectedCourseID = DropDownListCourses.SelectedValue;

            string studentNumber = TextBoxStudentNumber.Text;
            string studentName   = TextBoxStudentName.Text;
            int    studentGrade  = Convert.ToInt32(TextBoxGrade.Text);

            using (StudentRecordEntities entityContext = new StudentRecordEntities())
            {
                var course = (from c in entityContext.Courses
                              where c.Code == selectedCourseID
                              select c).FirstOrDefault <Course>();


                Student student = new Student();

                AcademicRecord academicRecord = new AcademicRecord();

                student.Id   = studentNumber;
                student.Name = studentName;

                academicRecord.Grade      = studentGrade;
                academicRecord.StudentId  = studentNumber;
                academicRecord.CourseCode = course.Code;

                // academicRecord.Course = course;

                var CheckStudent = (from s in entityContext.Students
                                    where s.Id == studentNumber
                                    select s).FirstOrDefault <Student>();

                if (CheckStudent != null)
                {
                    LabelErrorMessage.Text = "Student with this ID already exist in Student table";
                }
                else
                {
                    academicRecord.Course  = course;
                    academicRecord.Student = student;

                    entityContext.Students.Add(student);

                    entityContext.SaveChanges();
                    LabelErrorMessage.Text = "";
                }


                course.AcademicRecords.Add(academicRecord);//

                var academicRecrd = (from a in entityContext.AcademicRecords
                                     where a.StudentId == studentNumber && a.CourseCode == course.Code
                                     select a).FirstOrDefault <AcademicRecord>();
                if (academicRecrd != null)
                {
                    LabelErrorMessage.Text = "The system already has a record of this student for the selected course";
                }
                else
                {
                    entityContext.AcademicRecords.Add(academicRecord);
                    entityContext.SaveChanges();
                    LabelErrorMessage.Text = "";
                }

                using (StudentRecordEntities studentsCourse = new StudentRecordEntities())
                {
                    var studentsInSelectedCourse = (from a in entityContext.AcademicRecords
                                                    where a.CourseCode == selectedCourseID
                                                    select a).ToList <AcademicRecord>();


                    showCourseInfo(studentsInSelectedCourse);
                }
            }
        }
    }
Exemplo n.º 28
0
    protected void addBtn_Click(object sender, EventArgs e)
    {
        //creating a new student
        string studentNumber = studentNumberTxt.Text;
        string studentName   = studentNameTxt.Text;

        AlgonquinCollege.Registration.Entities.Student newStudent = new AlgonquinCollege.Registration.Entities.Student(studentNumber, studentName);

        //create a new course
        string index = (string)Session["selectedCourse"];
        string selectedCourseName = DropDownList1.SelectedValue.ToString();
        Course newCourse          = new Course(index, selectedCourseName);

        //creating a list of academic records
        List <AcademicRecord> academicRecordList = new List <AcademicRecord>();
        AcademicRecord        newAcademicRecord  = new AcademicRecord(newCourse, newStudent);

        newAcademicRecord.Grade = int.Parse(gradeTxt.Text);

        //adding course to list and session
        if (Session["academicRecordListSession"] == null)
        {
            academicRecordList.Add(newAcademicRecord);
            Session["academicRecordListSession"] = academicRecordList;
        }
        else
        {
            academicRecordList = (List <AcademicRecord>)Session["academicRecordListSession"];
            academicRecordList.Add(newAcademicRecord);
            Session["academicRecordListSession"] = academicRecordList;
        }

        //sorting list by name
        StudentCompareByName myComp = new StudentCompareByName();

        academicRecordList.Sort(myComp);

        //displaying table
        foreach (AcademicRecord item in academicRecordList)
        {
            if (item.Course.CourseName == DropDownList1.Text)
            {
                TableRow  row  = new TableRow();
                TableCell cell = new TableCell();

                cell.Text = item.Student.Id.ToString();
                row.Cells.Add(cell);

                cell      = new TableCell();
                cell.Text = item.Student.Name;
                row.Cells.Add(cell);

                cell      = new TableCell();
                cell.Text = item.Grade.ToString();
                row.Cells.Add(cell);
                tableSort.Rows.Add(row);
            }
        }
        studentNumberTxt.Text = "";
        studentNameTxt.Text   = "";
        gradeTxt.Text         = "";
    }