예제 #1
0
        public void CreateChapterStudy(Bo_De bo_De1)
        {
            Bo_De bo_De = new Bo_De();

            bo_De.NoiDung     = bo_De1.NoiDung;
            bo_De.ThoiGianThi = bo_De1.ThoiGianThi;
            bo_De.Ma_Mon      = bo_De1.Ma_Mon;
            bo_De.Ma_NguoiTao = bo_De1.Ma_NguoiTao;
            bo_De.TrangThai   = true;
            bo_De.Xoa         = true;
            foreach (var item in bo_De1.CauHois)
            {
                item.Kho_CauHoi = null;
                bo_De.CauHois.Add(item);
            }
            bo_De.SoCau = bo_De.CauHois.Count;
            try
            {
                db = new TracNghiemOnlineDB();
                db.Bo_De.Add(bo_De);
                db.SaveChanges();
            }catch (Exception e)
            {
            }
        }
예제 #2
0
        internal void CreateTopic(Bo_De bo_De1, List <SoLuongChuong> soluong, string mabm)
        {
            bo_De1.CauHois = new List <CauHoi>();

            foreach (var item in soluong)
            {
                Random(bo_De1, item.nhanBiet, item.Chuong, "Nhận Biết", mabm);
                Random(bo_De1, item.thongHieu, item.Chuong, "Thông Hiểu", mabm);
                Random(bo_De1, item.vandung, item.Chuong, "Vận Dụng", mabm);
                Random(bo_De1, item.vandungcao, item.Chuong, "Vận Dụng Cao", mabm);
            }
        }
예제 #3
0
        public De_Thi MixExemQuestion(Bo_De bo_De, string SV)
        {
            Random random = new Random();
            De_Thi de_Thi = new De_Thi();

            de_Thi.Ma_BoDe = bo_De.Ma_BoDe;
            de_Thi.Ma_SV   = SV;

            de_Thi.TrangThai = true;
            var lisQuestion = (List <CauHoi>)bo_De.CauHois;
            int Lenght      = lisQuestion.Count;

            for (int i = 0; i < Lenght; i++)
            {
                int vt = random.Next(lisQuestion.Count);

                CauHoiDeThi cauHoi = new CauHoiDeThi();
                cauHoi.MaCauHoi = lisQuestion[vt].Ma_CauHoi;

                de_Thi.CauHoiDeThis.Add(cauHoi);
                lisQuestion.RemoveAt(vt);
            }
            de_Thi.ThoiGianThi = bo_De.ThoiGianThi;
            de_Thi.TrangThai   = true;

            de_Thi.DiemTru = 0;
            db.De_Thi.Add(de_Thi);
            db.SaveChanges();
            de_Thi.MaDeThi      = db.De_Thi.Select(x => x).ToList().Last().MaDeThi;
            de_Thi.CauHoiDeThis = db.CauHoiDeThis.Where(x => x.MaDeThi == de_Thi.MaDeThi).ToList();
            foreach (var item in de_Thi.CauHoiDeThis)
            {
                item.Kho_CauHoi = new CauHoiDao().Question(long.Parse(item.MaCauHoi.ToString()));
                foreach (var item1 in item.Kho_CauHoi.Dap_AN)
                {
                    item1.TrangThai = false;
                }
            }
            de_Thi.SinhVien           = db.SinhViens.SingleOrDefault(x => x.MaSV.Equals(SV));
            de_Thi.SinhVien.Lop       = new TracNghiemOnlineDB().Lops.Find(de_Thi.SinhVien.Ma_Lop);
            de_Thi.SinhVien.Lop.Nganh = new TracNghiemOnlineDB().Nganhs.Find(de_Thi.SinhVien.Lop.Ma_Nganh);
            de_Thi.Bo_De = bo_De;
            return(de_Thi);
        }
예제 #4
0
        private void Random(Bo_De bo_De1, string sl, Chuong_Hoc chuong, string v, string mabm)
        {
            List <Kho_CauHoi> kho_CauHois = tracNghiem.Kho_CauHoi.Where(x => x.Ma_Chuong == chuong.Ma_Chuong && x.MucDo.Equals(v) && x.NguoiTao.Equals(mabm) && x.Xoa == true).ToList();

            Random random = new Random();

            if (kho_CauHois.Count > 0)
            {
                for (int i = 0; i < int.Parse(sl); i++)
                {
                    int    vt     = random.Next(kho_CauHois.Count);
                    CauHoi cauHoi = new CauHoi();
                    cauHoi.Ma_BoDe    = bo_De1.Ma_BoDe;
                    cauHoi.Ma_CauHoi  = kho_CauHois[vt].Ma_CauHoi;
                    cauHoi.Kho_CauHoi = kho_CauHois[vt];
                    bo_De1.CauHois.Add(cauHoi);
                    kho_CauHois.RemoveAt(vt);
                }
            }
        }
예제 #5
0
 public void ListChapterQuestion(Bo_De bo_De)
 {
     bo_De.CauHois = db.CauHois.Where(x => x.Ma_BoDe == bo_De.Ma_BoDe).ToList();
 }
예제 #6
0
        public ActionResult MonHoc(Bo_De bo_De)
        {
            var session = (TaiKhoan)Session[ComMon.ComMonStants.UserLogin];
            var dethi   = (Model.BoDeThi)Session[ComMon.ComMonStants.ChapterStudy];

            if (ModelState.IsValid && dethi.BoDeThi1.ThoiGianThi.Length > 0 && dethi.LoaiDe1.Length > 0 && dethi.BoDeThi1.Ma_Mon > 0)
            {
                bo_De.ThoiGianThi = dethi.BoDeThi1.ThoiGianThi;
                bo_De.Ma_Mon      = dethi.BoDeThi1.Ma_Mon;

                bo_De.MonHoc = new MonHocDao().Subject(long.Parse(bo_De.Ma_Mon.ToString()));

                dethi.BoDeThi1 = bo_De;

                Session[ComMon.ComMonStants.ChapterStudy] = dethi;
                if (session.ChưcVu.Equals("BoMon") || (bo_De.LoaiDe == true))
                {
                    if (dethi.LoaiDe1.Equals("Tự Chọn"))
                    {
                        List <Kho_CauHoi> kho_CauHois = new List <Kho_CauHoi>();
                        foreach (var item in new MonHocDao().ListChapterStudy(long.Parse(dethi.BoDeThi1.Ma_Mon.ToString())))
                        {
                            kho_CauHois.AddRange(new CauHoiDao().ListQuestion(long.Parse(item.Ma_Chuong.ToString())));
                        }
                        ViewBag.Question = kho_CauHois;
                        return(View("ChonCauhoi"));
                    }
                    else
                    {
                        var chuong = new TracNghiemOnlineDB().Chuong_Hoc.Where(x => x.Ma_Mon == bo_De.Ma_Mon).ToList();
                        ViewBag.Chuong = chuong;

                        return(View(bo_De));
                    }
                }
                else
                {
                    if (dethi.LoaiDe1.Equals("Tự Chọn"))
                    {
                        List <Kho_CauHoi> kho_CauHois = new List <Kho_CauHoi>();
                        foreach (var item in new MonHocDao().ListChapterStudy(long.Parse(dethi.BoDeThi1.Ma_Mon.ToString())))
                        {
                            kho_CauHois.AddRange(new CauHoiDao().ListQuestion(long.Parse(item.Ma_Chuong.ToString())));
                        }
                        ViewBag.Question = kho_CauHois;
                        return(View("TuChon"));
                    }
                    else
                    {
                        var chuong = new TracNghiemOnlineDB().Chuong_Hoc.Where(x => x.Ma_Mon == bo_De.Ma_Mon).ToList();
                        ViewBag.Chuong = chuong;
                        ViewBag.bode   = bo_De;
                        return(View("TaoCau"));
                    }
                }
            }
            else
            {
                string mess  = "";
                string mess1 = "";
                string mess2 = "";


                if (dethi.BoDeThi1.ThoiGianThi.Length <= 0)
                {
                    mess = "Bạn Vui Lòng Chọn Thời Gian Thi";
                }
                if (dethi.BoDeThi1.Ma_Mon <= 0)
                {
                    mess1 = "Bạn Vui Lòng Chọn Môn Học ";
                }
                if (dethi.LoaiDe1.Length <= 0)
                {
                    mess2 = "Bạn Vui Lòng Chọn Cách Tạo Đề";
                }
                ViewBag.A = mess;
                ViewBag.B = mess1;
                var dao = new TracNghiemOnline.Modell.TracNghiemOnlineDB().MonHocs.Select(x => x).ToList();
                ViewBag.MonHoc = dao;
                ViewBag.C      = mess2;
            }
            reseach();

            return(View("TaoDeThi"));
        }
예제 #7
0
        public JsonResult Updatepheduyet(long maDe, string Pheduyet, string lydo)
        {
            var tk = (TaiKhoan)Session[ComMon.ComMonStants.UserLogin];

            if (tk.ChưcVu.Contains("Admin"))
            {
                TracNghiemOnlineDB db = new TracNghiemOnlineDB();
                var Bode = db.Bo_De.Where(x => x.Ma_BoDe.Equals(maDe));
                Bode.ToList()[0].PheDuyet  = Pheduyet;
                Bode.ToList()[0].TrangThai = false;
                db.SaveChanges();
                if (Pheduyet.Equals("Đã duyệt"))
                {
                    try
                    {
                        Bo_De boDeThi = new Bo_De();
                        boDeThi.NoiDung     = Bode.ToList()[0].NoiDung;
                        boDeThi.Ma_Mon      = Bode.ToList()[0].Ma_Mon;
                        boDeThi.ThoiGianThi = Bode.ToList()[0].ThoiGianThi;
                        boDeThi.Ma_NguoiTao = Bode.ToList()[0].Ma_NguoiTao;
                        boDeThi.NguoiDuyet  = tk.TaiKhoan1;
                        boDeThi.TrangThai   = true;
                        boDeThi.Xoa         = true;
                        foreach (var item in Bode.ToList()[0].CauHois)
                        {
                            Modell.CauHoi cauHoi = new Modell.CauHoi();
                            cauHoi.Ma_CauHoi = item.Ma_CauHoi;
                            boDeThi.CauHois.Add(cauHoi);
                        }
                        boDeThi.SoCau = boDeThi.CauHois.Count;
                        db.Bo_De.Add(boDeThi);
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        string ess = e.Message;
                    }

                    var de = new TracNghiemOnlineDB().BoMons.Select(x => x).ToList().Last();
                }

                List <Bo_De> bo_Des = new TracNghiemOnlineDB().Bo_De.Where(x => x.Xoa == true && x.NguoiDuyet.Equals(tk.TaiKhoan1) && x.TrangThai == false && x.PheDuyet.Equals("Đang xử lý")).ToList();

                var bode1 = (from n in bo_Des
                             select new
                {
                    Ten = n.NoiDung,
                    MaDe = n.Ma_BoDe,
                    SoCau = n.SoCau,
                    ThoiGian = n.ThoiGianThi,
                    TenMon = n.MonHoc.TenMon,
                    Giaovien = n.GiaoVien.TenGV,
                    Pheduyet = n.PheDuyet,
                    Trangthai = n.TrangThai,
                    Ngay = n.NguoiDuyet,
                }).ToList();
                return(Json(new
                {
                    Bode = bode1
                }, JsonRequestBehavior.AllowGet));;
            }

            else
            {
                TracNghiemOnlineDB db = new TracNghiemOnlineDB();
                var ds = db.DSGV_ThucHien.Find(maDe);
                ds.trangthai = Pheduyet;
                ds.LyDo      = lydo;
                db.SaveChanges();

                if (Pheduyet.Equals("Đã duyệt"))
                {
                    try
                    {
                        var   Bode    = new TracNghiemOnlineDB().Bo_De.Where(x => x.Ma_BoDe == ds.MaDE);
                        Bo_De boDeThi = new Bo_De();
                        boDeThi.NoiDung     = Bode.ToList()[0].NoiDung;
                        boDeThi.Ma_Mon      = Bode.ToList()[0].Ma_Mon;
                        boDeThi.ThoiGianThi = Bode.ToList()[0].ThoiGianThi;
                        boDeThi.Ma_NguoiTao = Bode.ToList()[0].Ma_NguoiTao;
                        boDeThi.NguoiDuyet  = tk.TaiKhoan1;
                        boDeThi.TrangThai   = true;
                        boDeThi.Xoa         = true;
                        foreach (var item in Bode.ToList()[0].CauHois)
                        {
                            Modell.CauHoi cauHoi = new Modell.CauHoi();
                            cauHoi.Ma_CauHoi = item.Ma_CauHoi;
                            boDeThi.CauHois.Add(cauHoi);
                        }
                        boDeThi.SoCau = boDeThi.CauHois.Count;
                        db.Bo_De.Add(boDeThi);
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        string ess = e.Message;
                    }

                    var de = new TracNghiemOnlineDB().BoMons.Select(x => x).ToList().Last();
                }

                return(Json(new
                {
                    statust = true,
                }, JsonRequestBehavior.AllowGet));;
            }
        }