public IActionResult Login([Bind("ID,username,password")] tb_WMS_DangNhap tb_WMS_DangNhap)
        {
            if (ModelState.IsValid)
            {
                var pass = WareHouseSystem.Controllers.NhanVienController.ConvertStringtoMD5(tb_WMS_DangNhap.password);
                var user = (from N in _context.tb_WMS_DangNhap
                            where N.username == tb_WMS_DangNhap.username && N.password == pass
                            select N);
                var check = user.Count();

                if (check > 0)
                {
                    var user_id       = user.FirstOrDefault().IDNV;
                    var nhanvien_info = (from N in _context.tb_WMS_NhanVien
                                         where N.ID == user_id
                                         select N).FirstOrDefault();

                    var trangthai = nhanvien_info.TrangThai;
                    if (trangthai == true)
                    {
                        var kho    = nhanvien_info.Kho.ToString();
                        var tenkho = (from N in _context.tb_WMS_NhaKho
                                      where N.ID == int.Parse(kho)
                                      select N.TenNhaKho).FirstOrDefault();
                        var quyen    = nhanvien_info.Quyen.ToString();
                        var tenquyen = (from N in _context.tb_WMS_Quyen
                                        where N.ID == int.Parse(quyen)
                                        select N.Quyen).FirstOrDefault();
                        var ten  = nhanvien_info.TenNhanVien.ToString();
                        var hinh = nhanvien_info.HinhAnh.ToString();

                        var claims = new List <Claim>
                        {
                            new Claim("Ten", ten),
                            new Claim("Quyen", quyen),
                            new Claim("TenQuyen", tenquyen),
                            new Claim("Kho", kho),
                            new Claim("TenKho", tenkho),
                            new Claim("Hinh", hinh),
                            new Claim("IdNV", user_id.ToString()),
                        };
                        ClaimsIdentity  userIdentity = new ClaimsIdentity(claims, "login");
                        ClaimsPrincipal principal    = new ClaimsPrincipal(userIdentity);
                        HttpContext.SignInAsync(principal);
                        return(RedirectToAction("Dashboard", "Home"));
                    }
                }
                else
                {
                    ViewData["Loi"] = "Đăng nhập không thành công !!! Vui lòng thử lại";
                    return(View());
                }
            }
            ViewData["Loi"] = "Đăng nhập không thành công !!! Vui lòng thử lại";
            return(View());
        }
コード例 #2
0
        public async Task <IActionResult> Create([Bind("ID,MaNhanVien,TenNhanVien,GioiTinh,NgaySinh,Email,SoDienthoai,HinhAnh,Kho,Quyen,TrangThai")] tb_WMS_NhanVien tb_WMS_NhanVien, IFormFile HinhAnh, tb_WMS_DangNhap DangNhap)
        {
            if (ModelState.IsValid)
            {
                var a = ConvertStringtoMD5(tb_WMS_NhanVien.SoDienthoai);
                if (HinhAnh != null)
                {
                    var filePath = Path.Combine("wwwroot\\img\\User", HinhAnh.FileName);
                    using (var stream = new FileStream(filePath, FileMode.Create))
                    {
                        await HinhAnh.CopyToAsync(stream);
                    }
                    tb_WMS_NhanVien.HinhAnh = HinhAnh.FileName;
                }
                var idend = (from u in _context.tb_WMS_NhanVien
                             orderby u.ID descending
                             select u.ID).Take(1).FirstOrDefault();
                if (tb_WMS_NhanVien.HinhAnh == null)
                {
                    tb_WMS_NhanVien.HinhAnh = "User.png";
                }
                var check = (from N in _context.tb_WMS_NhanVien
                             where N.Email == tb_WMS_NhanVien.Email
                             select N).Count();
                if (check == 0)
                {
                    tb_WMS_NhanVien.ID         = idend + 1;
                    tb_WMS_NhanVien.MaNhanVien = "UC" + (idend + 1);
                    tb_WMS_NhanVien.TrangThai  = true;
                    _context.Add(tb_WMS_NhanVien);

                    var idend_dn = (from u in _context.tb_WMS_DangNhap
                                    orderby u.ID descending
                                    select u.ID).Take(1).FirstOrDefault();
                    DangNhap.ID       = idend_dn + 1;
                    DangNhap.username = tb_WMS_NhanVien.Email;
                    DangNhap.password = a;
                    DangNhap.IDNV     = idend + 1;
                    _context.Add(DangNhap);
                    TempData["success"] = "success";
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ViewData["Kho"]        = new SelectList(_context.tb_WMS_NhaKho.Where(s => s.TrangThai == true).Where(s => s.ID != 0), "ID", "TenNhaKho");
                    ViewData["Quyen"]      = new SelectList(_context.tb_WMS_Quyen, "ID", "Quyen");
                    ViewData["EmailTrung"] = "Email Đã Tồn Tại Vui Lòng Nhập Email Khác";
                    return(View(tb_WMS_NhanVien));
                }
            }
            ViewData["Kho"]   = new SelectList(_context.tb_WMS_NhaKho.Where(s => s.TrangThai == true).Where(s => s.ID != 0), "ID", "TenNhaKho");
            ViewData["Quyen"] = new SelectList(_context.tb_WMS_Quyen, "ID", "Quyen");
            return(View(tb_WMS_NhanVien));
        }