// GET: /StudentSection/Delete/5
        public ActionResult Delete(int?id, int?ids, int?idsc, int?idc, int?ide, int?idss)
        {
            ViewBag.idss     = idss;
            ViewBag.idc      = idc;
            ViewBag.ids      = ids;
            ViewBag.idsc     = idsc;
            ViewBag.ide      = ide;
            ViewBag.UserType = adtype();
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SSExam ssexam = db.SSExams.Find(id);

            if (ssexam == null)
            {
                return(HttpNotFound());
            }
            if (adtype() == "Admin")
            {
                return(View(ssexam));
            }
            else if (adtype() == "Teacher" && ssexam.Exam.SectionCourse.Teacher.AspNetUser.UserName == User.Identity.Name)
            {
                return(View(ssexam));
            }
            return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
        }
        // GET: /StudentSection/Details/5
        public ActionResult Details(int?id)
        {
            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SSExam ssexam = db.SSExams.Find(id);

            if (ssexam == null)
            {
                return(HttpNotFound());
            }
            return(View(ssexam));
        }
        public ActionResult Edit([Bind(Include = "SSId,ExamId,ObtainedMarks,Id")] SSExam ssexam, int?ids, int?idsc, int?idc, int?ide, int?idss)
        {
            ViewBag.idss = idss;
            ViewBag.idc  = idc;
            ViewBag.ids  = ids;
            ViewBag.idsc = idsc;
            ViewBag.ide  = ide;
            Exam var = db.Exams.Find(ssexam.ExamId);

            if (ModelState.IsValid && var.TotalMarks >= ssexam.ObtainedMarks)
            {
                db.Entry(ssexam).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", new { idsc = idsc, ids = ids, idc = idc, ide = ide, idss = idss }));
            }
            ViewBag.Error = "";
            if (var.TotalMarks < ssexam.ObtainedMarks)
            {
                ViewBag.Error = "Obtained Marks cannot be greater than total marks.";
            }
            if (adtype() == "Admin")
            {
                ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                ViewBag.SSId   = new SelectList(db.SectionStudents, "Id", "StudentId", ssexam.SSId);
                return(View(ssexam));
            }
            else if (adtype() == "Teacher")
            {
                if (ssexam.Exam.SectionCourse.Teacher.AspNetUser.UserName == User.Identity.Name)
                {
                    ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                    ViewBag.SSId   = new SelectList(db.SectionStudents, "Id", "StudentId", ssexam.SSId);
                    return(View(ssexam));
                }
            }
            return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
        }
        public ActionResult DeleteConfirmed(int id, int?ids, int?idsc, int?idc, int?ide, int?idss)
        {
            ViewBag.UserType = adtype();
            ViewBag.idss     = idss;
            ViewBag.idc      = idc;
            ViewBag.ids      = ids;
            ViewBag.idsc     = idsc;
            ViewBag.ide      = ide;
            SSExam ssexam = db.SSExams.Find(id);

            if (adtype() == "Admin")
            {
                db.SSExams.Remove(ssexam);
                db.SaveChanges();
                return(RedirectToAction("Index", new { idsc = idsc, ids = ids, idc = idc, ide = ide, idss = idss }));
            }
            else if (adtype() == "Teacher" && ssexam.Exam.SectionCourse.Teacher.AspNetUser.UserName == User.Identity.Name)
            {
                return(View(ssexam)); db.SSExams.Remove(ssexam);
                db.SaveChanges();
                return(RedirectToAction("Index", new { idsc = idsc, ids = ids, idc = idc, ide = ide, idss = idss }));
            }
            return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
        }
        // GET: /StudentSection/Edit/5
        public ActionResult Edit(int?id, int?ids, int?idsc, int?idc, int?ide, int?idss)
        {
            ViewBag.idss     = idss;
            ViewBag.idc      = idc;
            ViewBag.ids      = ids;
            ViewBag.idsc     = idsc;
            ViewBag.ide      = ide;
            ViewBag.Error    = "";
            ViewBag.UserType = adtype();
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SSExam ssexam = db.SSExams.Find(id);

            if (ssexam == null)
            {
                return(HttpNotFound());
            }
            if (adtype() == "Admin")
            {
                ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                ViewBag.SSId   = new SelectList(db.SectionStudents, "Id", "StudentId", ssexam.SSId);
                return(View(ssexam));
            }
            else if (adtype() == "Teacher")
            {
                if (ssexam.Exam.SectionCourse.Teacher.AspNetUser.UserName == User.Identity.Name)
                {
                    ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                    ViewBag.SSId   = new SelectList(db.SectionStudents, "Id", "StudentId", ssexam.SSId);
                    return(View(ssexam));
                }
            }
            return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
        }
        public ActionResult Create([Bind(Include = "SSId,ExamId,ObtainedMarks,Id")] SSExam ssexam, int?ids, int?idsc, int?idc, int?ide, int?idss)
        {
            ViewBag.idss = idss;
            ViewBag.idc  = idc;
            ViewBag.ids  = ids;
            ViewBag.idsc = idsc;
            ViewBag.ide  = ide;
            Exam var = db.Exams.Find(ssexam.ExamId);

            if (ModelState.IsValid && var.TotalMarks >= ssexam.ObtainedMarks)
            {
                db.SSExams.Add(ssexam);
                db.SaveChanges();
                return(RedirectToAction("Index", new { idsc = idsc, ids = ids, idc = idc, ide = ide, idss = idss }));
            }
            ViewBag.Error = "";
            if (var.TotalMarks < ssexam.ObtainedMarks)
            {
                ViewBag.Error = "Obtained Marks cannot be greater than total marks.";
            }
            if (adtype() == "Admin")
            {
                if (ide != null && (ids != null || idc != null))
                {
                    ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                    ViewBag.SSId   = new SelectList(db.SectionStudents.Where(ss => db.SSExams.Where(sse => sse.SSId == ss.Id && sse.ExamId == ide).Count() == 0), "Id", "Id");
                    var look = db.SectionStudents.Where(ss => db.SSExams.Where(sse => sse.SSId == ss.Id && sse.ExamId == ide).Count() == 0 && (ss.SectionId == ids || ss.Section.SectionCourses.Where(sc => sc.CourseId == idc).Count() > 0));
                    IList <SelectListItem> status = new List <SelectListItem> {
                    };
                    foreach (SectionStudent item in look)
                    {
                        SelectListItem m = new SelectListItem();
                        m.Text  = item.Student.RegistrationNo;
                        m.Value = item.Id.ToString();
                        if (m.Value == ssexam.SSId.ToString())
                        {
                            m.Selected = true;
                        }
                        status.Add(m);
                    }
                    ViewBag.SSId = status;
                    return(View());
                }
            }
            else if (adtype() == "Teacher")
            {
                if (ide != null && (ids != null || idc != null) && db.Exams.Where(e => e.SectionCourse.Teacher.AspNetUser.UserName == User.Identity.Name).Count() > 0)
                {
                    ViewBag.ExamId = new SelectList(db.Exams, "Id", "ExamType", ssexam.ExamId);
                    ViewBag.SSId   = new SelectList(db.SectionStudents.Where(ss => db.SSExams.Where(sse => sse.SSId == ss.Id && sse.ExamId == ide).Count() == 0 && ss.SectionId == ids), "Id", "Id");
                    var look = db.SectionStudents.Where(ss => db.SSExams.Where(sse => sse.SSId == ss.Id && sse.ExamId == ide).Count() == 0 && (ss.SectionId == ids || ss.Section.SectionCourses.Where(sc => sc.CourseId == idc).Count() > 0));
                    IList <SelectListItem> status = new List <SelectListItem> {
                    };
                    foreach (SectionStudent item in look)
                    {
                        SelectListItem m = new SelectListItem();
                        m.Text  = item.Student.RegistrationNo;
                        m.Value = item.Id.ToString();
                        if (m.Value == ssexam.SSId.ToString())
                        {
                            m.Selected = true;
                        }
                        status.Add(m);
                    }
                    ViewBag.SSId = status;
                    return(View());
                }
            }
            return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
        }
示例#7
0
        private int ExamMarks(int eid, int ssid)
        {
            SSExam var = db.SSExams.Where(e => e.ExamId == eid && e.SSId == ssid).First();

            return(var.ObtainedMarks);
        }