Esempio n. 1
0
        public ActionResult DiemDanh()
        {
            using (HocPhiEntities context = new HocPhiEntities())
            {
                var dsLop = (from lop in context.Lops
                             join hs in context.HocSinhs on lop.MaLop equals hs.MaLop
                             join dd in context.DiemDanhs on hs.MaHocSinh equals dd.HocSinh
                             group dd by
                             new
                {
                    IDLop = lop.MaLop,
                    TenLopP = lop.TenLop,
                }
                             into g
                             select new
                {
                    g.Key.IDLop,
                    TenLopHoc
                        = g.Key.TenLopP,
                    Mindate = g.Min(x => x.NgayDiemDanh)
                }).ToList();

                return(Json(dsLop, JsonRequestBehavior.AllowGet));
            }
        }
        public ActionResult DiemDanhUpdate(FormCollection form)
        {
            string[]    status     = form["statuslist"].ToString().Split(new Char[] { ',' });
            List <bool> statusbool = status.Select(x => {
                if (x == "true")
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }).ToList();

            string[] dsHS = form[1].ToString().Split(new Char[] { ',' });
            ViewBag.TongSoHocSinh = (int)Session["TongSoHocSinh"];
            using (HocPhiEntities context = new HocPhiEntities())
            {
                using (IDbConnection db = new SqlConnection(context.Database.Connection.ConnectionString))
                {
                    if (form["operation"].ToString() == "create")
                    {
                        int i = 0;
                        dsHS.ToList().ForEach(
                            x =>
                        {
                            var p = new DynamicParameters();
                            p.Add("@MahocSinh", x);
                            p.Add("@TrangThai", statusbool[i]);
                            db.Execute("sp_DiemDanhHS", p, commandType: CommandType.StoredProcedure);
                            i++;
                        });
                        ViewBag.DaDiemDanh = i;
                    }
                    else
                    {
                        int j = 0;
                        dsHS.ToList().ForEach(
                            x =>
                        {
                            var q = new DynamicParameters();
                            q.Add("@MaHs", x);
                            q.Add("@TrangThaiDiemDanh", statusbool[j]);
                            db.Execute("sp_CapNhatTrangThaiDiemDanh", q, commandType: CommandType.StoredProcedure);
                            j++;
                        });
                        ViewBag.DaDiemDanh = j;
                    }
                }
            }
            return(View());
        }
        public ActionResult LayDanhSachDiemDanh(FormCollection form)
        {
            string MaLop = form[0].ToString();

            ViewBag.Operation = "create";
            using (HocPhiEntities context = new HocPhiEntities())
            {
                var HsTheoLop = (from hs in context.HocSinhs
                                 join lop in context.Lops on hs.Lop.MaLop equals lop.MaLop
                                 where hs.Lop.MaLop == MaLop
                                 select hs);
                var DsDiemDanh = (from dd in context.DiemDanhs
                                  join hs in HsTheoLop on dd.HocSinh equals hs.MaHocSinh
                                  where dd.NgayDiemDanh.Year == DateTime.Now.Year && dd.NgayDiemDanh.Month == DateTime.Now.Month && dd.NgayDiemDanh.Day == DateTime.Now.Day
                                  select dd
                                  ).ToList();
                var HSTheoTrangThaiDiemDanh = HsTheoLop.FullOuterJoin(DsDiemDanh, a => a.MaHocSinh, b => b.HocSinh, (a, b, MaHocSinh) => new
                {
                    MaHocSinh,
                    a.TenHocSinh,
                    a.GioiTinh,
                    a.NamSinh,
                    a.TenPhuHuynh,
                    a.DienThoai,
                    a.DiaChiLienHe,
                    b?.TrangThaiDiemDanh
                });
                List <DiemDanhViewModel> _hs = new List <DiemDanhViewModel>();
                foreach (var hs in HSTheoTrangThaiDiemDanh)
                {
                    if (hs.TrangThaiDiemDanh != null)
                    {
                        ViewBag.Operation = "edit";
                    }
                    _hs.Add(new DiemDanhViewModel()
                    {
                        MaHocSinh         = hs.MaHocSinh,
                        TenHocSinh        = hs.TenHocSinh,
                        GioiTinh          = hs.GioiTinh,
                        NamSinh           = hs.NamSinh,
                        TenPhuHuynh       = hs.TenPhuHuynh,
                        DienThoai         = hs.DienThoai,
                        DiaChiLienHe      = hs.DiaChiLienHe,
                        TrangThaiDiemDanh = hs.TrangThaiDiemDanh
                    });
                }
                Session["TongSoHocSinh"] = _hs.Count();
                return(View("LayDanhSachDiemDanh", _hs));
            }
        }
Esempio n. 4
0
        public ActionResult LichSuDiemDanh(string NgayDiemDanh, string MaLop)
        {
            DateTime dt = DateTime.ParseExact(NgayDiemDanh, "dd/MM/yyyy", CultureInfo.InvariantCulture);

            using (HocPhiEntities context = new HocPhiEntities())
            {
                var HsTheoLop = (from hs in context.HocSinhs
                                 join lop in context.Lops on hs.Lop.MaLop equals lop.MaLop
                                 where hs.Lop.MaLop == MaLop
                                 select hs);
                var DsDiemDanh = (from dd in context.DiemDanhs
                                  join hs in HsTheoLop on dd.HocSinh equals hs.MaHocSinh
                                  where dd.NgayDiemDanh.Year == dt.Year && dd.NgayDiemDanh.Month == dt.Month && dd.NgayDiemDanh.Day == dt.Day
                                  select dd
                                  ).ToList();
                var HSTheoTrangThaiDiemDanh = HsTheoLop.FullOuterJoin(DsDiemDanh, a => a.MaHocSinh, b => b.HocSinh, (a, b, MaHocSinh) => new
                {
                    MaHocSinh,
                    a.TenHocSinh,
                    a.GioiTinh,
                    a.NamSinh,
                    a.TenPhuHuynh,
                    a.DienThoai,
                    a.DiaChiLienHe,
                    b?.TrangThaiDiemDanh
                });
                List <DiemDanhViewModel> _hs = new List <DiemDanhViewModel>();
                foreach (var hs in HSTheoTrangThaiDiemDanh)
                {
                    _hs.Add(new DiemDanhViewModel()
                    {
                        MaHocSinh         = hs.MaHocSinh,
                        TenHocSinh        = hs.TenHocSinh,
                        GioiTinh          = hs.GioiTinh,
                        NamSinh           = hs.NamSinh,
                        TenPhuHuynh       = hs.TenPhuHuynh,
                        DienThoai         = hs.DienThoai,
                        DiaChiLienHe      = hs.DiaChiLienHe,
                        TrangThaiDiemDanh = hs.TrangThaiDiemDanh
                    });
                }

                return(PartialView("LichSuDiemDanh", _hs));
            }
        }
        public ActionResult Login(Login lg)
        {
            if (ModelState.IsValid)
            {
                using (HocPhiEntities db = new HocPhiEntities())
                {
                    var log = db.Accounts.Where(a => a.Email.Equals(lg.Email) && a.Password.Equals(lg.MatKhau)).FirstOrDefault();
                    if (log != null)
                    {
                        var getNameAccount = db.GiaoViens.Where(n => n.MaGiaoVien == log.MaGiaoVien).FirstOrDefault();


                        if (getNameAccount != null)
                        {
                            var getClass = db.Lops.Where(n => n.MaGiaoVien == getNameAccount.MaGiaoVien).FirstOrDefault();
                            Session["getClass"] = getClass.MaLop.ToString();

                            Session["Admin"]    = getNameAccount.TenGiaoVien;
                            Session["AdHinh"]   = log.HinhAnh;
                            Session["dangnhap"] = log.Email;
                            Session["ID"]       = log.ID;
                            Session["quyen"]    = log.Quyen;
                            return(RedirectToAction("Admin/Index", "Admin"));
                        }
                        else
                        {
                            Session["Admin"]    = "Admin";
                            Session["AdHinh"]   = log.HinhAnh;
                            Session["dangnhap"] = log.Email;
                            Session["ID"]       = log.ID;
                            Session["quyen"]    = log.Quyen;

                            return(RedirectToAction("Admin/Index", "Admin"));
                        }
                    }
                    else
                    {
                        ViewBag.SuccessMessage = "Sai Email hoặc password !";
                    }
                }
            }
            return(View());
        }
        public ActionResult ChonLopDiemDanh()
        {
            if (Session["quyen"] == null)
            {
                var malop = Session["getClass"].ToString();

                var dsLop = db.Lops.Where(n => n.MaLop == malop).ToList();

                return(View(dsLop));
            }
            else
            {
                using (HocPhiEntities context = new HocPhiEntities())
                {
                    var dsLop = (from lop in context.Lops
                                 select lop).ToList();
                    //var dsLop = db.Lops.Where(n=>n.MaLop == malop).ToList();

                    return(View(dsLop));
                }
            }
        }