Exemple #1
0
        //
        // 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);
            }
            }
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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
            });
        }