// // GET: /Base/ public bool CheckPermission(string FunctionName, int ActionType) { SYS_ROLEPERMISSION item = new SYS_ROLEPERMISSION { View = false, Add = false, Edit = false, Delete = false, Print = false, Import = false, Export = false, Accept = false, Cancel = false }; if (Session["RoleID"] != null) { int RoleID = int.Parse(Session["RoleID"].ToString()); bool IsAdmin = false; bool.TryParse(Session["IsAdmin"].ToString(), out IsAdmin); item = DA_RolePermission.Instance.GetPermissionByFunction(RoleID, FunctionName, IsAdmin); } ViewBag.View = item.View; ViewBag.Add = item.Add; ViewBag.Edit = item.Edit; ViewBag.Delete = item.Delete; ViewBag.Print = item.Print; switch (ActionType) { case 1: // view { return(item.View); } case 2: // add { return(item.Add); } case 3: // edit { return(item.Edit); } default: { return(item.View); } } }
public List <RolePermissionExt> GetListRolePermission(int RoleID) { List <RolePermissionExt> lst = new List <RolePermissionExt>(); using (var context = (HRM_ROHTOEntities)Activator.CreateInstance(typeof(HRM_ROHTOEntities), _connectionStr)) { var ds = from b in context.SYS_FUNCTION //join c in context.SYS_ROLEPERMISSION on b.FunctionName equals c.FunctionName into ad //from c in ad.DefaultIfEmpty() //join d in context.SYS_ROLE on c.RoleID equals d.RoleID //where d.RoleID == RoleID orderby b.Description select new { b.Description, b.FunctionName }; if (ds.Any()) { foreach (var item in ds) { SYS_ROLEPERMISSION rolePer = DA_RolePermission.Instance.GetPermissionByFunction(RoleID, item.FunctionName); RolePermissionExt ext = new RolePermissionExt { FunctionName = item.FunctionName, Add = rolePer.Add, Delete = rolePer.Delete, Edit = rolePer.Edit, View = rolePer.View, Print = rolePer.Print, RoleID = rolePer.RoleID, Description = item.Description, Export = rolePer.Export, Import = rolePer.Import }; lst.Add(ext); } } } return(lst); }
public JsonResult SaveData(string _Json) { string flag = ""; try { dynamic json = JArray.Parse(_Json); foreach (var item in json) { int _id = 0; int.TryParse(item["RoleID"].ToString(), out _id); SYS_ROLE obj = new SYS_ROLE { RoleID = _id, RoleName = item["RoleName"].ToString(), Note = item["Note"].ToString() }; string listDetail = item["ListDetail"].ToString(); dynamic jsonDetail = JArray.Parse(listDetail); List <SYS_ROLEPERMISSION> lstModule = new List <SYS_ROLEPERMISSION>(); foreach (var iDetail in jsonDetail) { if (iDetail["FunctionName"] != null) { bool ischeck = false; ischeck = bool.Parse(iDetail["View"].ToString()); SYS_ROLEPERMISSION dObj = new SYS_ROLEPERMISSION { FunctionName = iDetail["FunctionName"].ToString(), View = bool.Parse(iDetail["View"].ToString()), Add = bool.Parse(iDetail["Add"].ToString()), Edit = bool.Parse(iDetail["Edit"].ToString()), Delete = bool.Parse(iDetail["Delete"].ToString()), Print = bool.Parse(iDetail["Print"].ToString()) }; lstModule.Add(dObj); } } if (obj.RoleID == 0) { DA_Role.Instance.Insert(obj); // Ghi log WriteLog("Role", "Create", null, obj); obj.RoleID = DA_Role.Instance.GetMaxRoleID(); } else { DA_Role.Instance.Update(obj); // Ghi log SYS_ROLE oldRole = DA_Role.Instance.GetById(obj.RoleID); WriteLog("Role", "Edit", oldRole, obj); } DA_RolePermission.Instance.UpdateListRolePermission(lstModule, obj.RoleID); } } catch (Exception ex) { flag = "-1"; } return(new JsonResult() { Data = flag, JsonRequestBehavior = JsonRequestBehavior.AllowGet }); }