/// <summary> /// 保存角色信息和权限 /// </summary> /// <param name="sessionModel"></param> /// <param name="employee"></param> /// <returns></returns> private IEnumerable <string> GetRoleSession(ref LoginSessionModel sessionModel, Employee employee) { List <string> list = new List <string>(); //部门或角色为空, if (employee.RoleId.IsNullOrEmpty() || employee.DepartmentId.IsNullOrEmpty()) { return(list); } else { var RoleDept = DepartmentRoleDAL.Get(u => u.Enable && u.DepartmentId == employee.DepartmentId && u.RoleId == employee.RoleId); if (RoleDept == null) { return(list); } var Role = RoleDAL.Get(u => u.Enable && u.RoleId == RoleDept.RoleId); if (Role == null) { return(list); } sessionModel.Role = Role; var appList = DepartmentRoleApplicationDAL.GetModels(u => u.Enable && u.DepartmentId == employee.DepartmentId && u.RoleId == employee.RoleId).Select(u => u.ApplicationId); if (appList.IsNullOrEmpty()) { return(list); } else { return(list = appList.ToList()); } } }
private void SaveLoginSession(Login account) { Employee employee = EmployeeDAL.Get(u => u.Enable && u.EmployeeId == account.EmployeeId); if (employee == null) { return; } //Session模型 LoginSessionModel sessionModel = new LoginSessionModel(); //用户的权限id集合 List <string> applist = new List <string>(); //1.获取用户登录信息 applist.AddRange(GetUserSession(ref sessionModel, account, employee)); //2. 获取用户的部门信息 applist.AddRange(GetDepartmentSession(ref sessionModel, employee)); //3. 获取用户的部门岗位信息 applist.AddRange(GetRoleSession(ref sessionModel, employee)); //4. 保存用户的应用权限 if (!applist.IsNullOrEmpty()) { applist = applist.Distinct().ToList(); var applications = ApplicationDAL.GetModels(u => u.Enable && applist.Contains(u.ApplicationId)).ToList(); sessionModel.Applications = applications; } sessionModel.AppIds = applist; SessionHelper.Set(Enumer.Session.LoginInfo, sessionModel); }
public ActionResult Login(LoginModel model) { if (ModelState.IsValid) { var bus = new KhachHangBus(); var result = bus.Login(model.Email, model.Password); if (result == 1) { var userSession = new LoginSessionModel(); userSession.UserName = db.KhachHangs.Where(m => m.Email == model.Email & m.CMND == model.Password).Select(m => m.TenKH).FirstOrDefault(); userSession.Email = model.Email; userSession.CMND = model.Password; int idKH = db.KhachHangs.Where(m => m.Email == model.Email).Select(m => m.KhachHangID).FirstOrDefault(); Session["USER_SESSION"] = null; Session.Add("USER_SESSION", userSession); return(RedirectToAction("Index", "HoaDonTinhCuocThangs")); } else if (result == 0) { ModelState.AddModelError("", "Người dùng bị khóa."); } else if (result == -1) { ModelState.AddModelError("", "Người dùng không tồn tại."); } else if (result == -2) { ModelState.AddModelError("", "Số CMND không đúng."); } } return(View(model)); }
public ActionResult Index(int?thang, int?Sim) { LoginSessionModel userInfo = (LoginSessionModel)Session["USER_SESSION"]; var id = db.KhachHangs.Where(m => m.Email == userInfo.Email & m.CMND == userInfo.CMND).Select(m => m.KhachHangID).FirstOrDefault(); var hoaDonTinhCuocThangs = db.HoaDonTinhCuocThangs.Include(h => h.SIM).Where(m => m.SIM.HoaDonDangKy.KhachHang.KhachHangID == id); ViewBag.Sim = new SelectList(db.SIMs.Where(m => m.HoaDonDangKy.KhachHangID == id), "SimID", "SoSim"); ViewBag.TenKhachHang = userInfo.UserName; var monthNow = System.DateTime.Now.Month; var yearNow = System.DateTime.Now.Year; ViewBag.MonthNow = thang; var getMonthYear = new DateTime(yearNow, monthNow, 1); if (thang == null) { hoaDonTinhCuocThangs = hoaDonTinhCuocThangs.Where(m => m.ThangHD == getMonthYear); ViewBag.MonthNow = monthNow; } else { getMonthYear = new DateTime(yearNow, thang.GetValueOrDefault(monthNow), 1); hoaDonTinhCuocThangs = hoaDonTinhCuocThangs.Where(m => m.ThangHD == getMonthYear); } if (Sim != null) { hoaDonTinhCuocThangs = hoaDonTinhCuocThangs.Where(m => m.SIMID == Sim); } decimal tienThueBao = 0; decimal tienCuocGoi = 0; foreach (var item in hoaDonTinhCuocThangs) { tienThueBao += item.TienThueBao; tienCuocGoi += item.TienCuocSD; } ViewBag.TienThueBao = tienThueBao.ToString("N0"); ViewBag.TienCuocGoi = tienCuocGoi.ToString("N0"); var listID = hoaDonTinhCuocThangs.Select(m => m.HoaDonTinhCuocThangID); var listChiTietHDTC = db.ChiTietHDTCs.Where(m => listID.Contains(m.HoaDonTinhCuocThangID)).ToList(); var listCTHDTCID = listChiTietHDTC.Select(m => m.ChiTietHDTCID).ToList(); var listChiTietCG = db.ChiTietCuocGois.Where(m => listCTHDTCID.Contains(m.ChiTietHDTCID)); ViewBag.ListChiTietHDTC = listChiTietHDTC.OrderBy(m => m.NgayHD); ViewBag.ListChiTietCuocGoi = listChiTietCG; return(View(hoaDonTinhCuocThangs.ToList())); }
/// <summary> /// 保存用户基本信息和登陆信息 /// </summary> /// <param name="sessionModel"></param> /// <param name="account"></param> /// <param name="employee"></param> /// <returns></returns> private IEnumerable <string> GetUserSession(ref LoginSessionModel sessionModel, Login account, Employee employee) { //不保存登陆密码信息 account.LoginPassword = ""; account.Salt = ""; sessionModel.Account = account; List <string> list = new List <string>(); //获取员工基本信息 sessionModel.Employee = employee; //获取员工的应用程序权限 var appids = EmployeeApplicationDAL.GetModels(u => u.Enable && u.EmployeeId == employee.EmployeeId).Select(u => u.ApplicationId); if (!appids.IsNullOrEmpty()) { list = appids.ToList(); } return(list); }
public ActionResult Login(LoginModel login) { if (ModelState.IsValid) { // check login var user = db.NHANVIENs.Find(login.username); if (user != null) { if (user.PASSWORD == login.passwrord) { LoginSessionModel session = new LoginSessionModel(); session.username = user.MA_NHANVIEN; session.name = user.HOTEN_NHANVIEN; Session.Add("session", session); switch (user.BOPHAN) { case "LỄ TÂN": return(RedirectToAction("Index", "LeTan")); case "KẾ TOÁN": return(RedirectToAction("Index", "KeToan")); case "QUẢN LÝ": return(RedirectToAction("ThongKeThuePhong", "QuanLy")); case "VẬT TƯ": return(RedirectToAction("Index", "VatTu")); } } else { ModelState.AddModelError("", "Mật khẩu không đúng"); } } else { ModelState.AddModelError("", "Nhân viên không tồn tại"); } } return(View(login)); }
/// <summary> /// 保存部门信息和角色权限 /// </summary> /// <param name="sessionModel"></param> /// <param name="employee"></param> /// <returns></returns> private IEnumerable <string> GetDepartmentSession(ref LoginSessionModel sessionModel, Employee employee) { List <string> list = new List <string>(); if (employee.DepartmentId.IsNullOrEmpty()) { return(list); } else { var dept = DepartmentDAL.Get(u => u.DepartmentId == employee.DepartmentId); if (dept != null) { sessionModel.Department = dept; var appList = DepartmentApplicationDAL.GetModels(u => u.Enable && u.DepartmentId == employee.DepartmentId).Select(u => u.ApplicationId); if (!appList.IsNullOrEmpty()) { list = appList.ToList(); } } return(list); } }
public override void OnActionExecuting(ActionExecutingContext filterContext) { string arg = filterContext.HttpContext.Request.QueryString[Enumer.Session.LoginInfo.ToString()]; if (string.IsNullOrEmpty(arg)) { filterContext.Result = new ContentResult() { Content = "无权访问" }; } else { string key = Enumer.Session.LoginInfo.ToString(); object obj = filterContext.HttpContext.Session[key]; if (obj == null) { filterContext.Result = new ContentResult() { Content = "无权访问" }; } else { LoginSessionModel sessionModel = obj as LoginSessionModel; List <string> appIds = sessionModel.AppIds; string appId = arg; if (appIds == null || !appIds.Contains(appId)) { filterContext.Result = new ContentResult() { Content = "无权访问" }; } } } }