コード例 #1
0
        public ActionResult SetMP(string a, string m, string p, int uid)
        {
            string[]            ms  = m.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            string[]            ps  = p.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            string[]            fos = a.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
            PermissionScopeType sc  = null;

            NSession.CreateQuery("delete from PermissionScopeType where ResourceCategory='" +
                                 ResourceCategoryEnum.User.ToString() + "' and ResourceId=" + uid).ExecuteUpdate();
            foreach (var item in ms)
            {
                if (string.IsNullOrEmpty(item))
                {
                    continue;
                }
                sc = new PermissionScopeType();
                sc.ResourceCategory = ResourceCategoryEnum.User.ToString();
                sc.ResourceId       = uid;
                sc.TargetCategory   = TargetCategoryEnum.Module.ToString();
                sc.TargetId         = Convert.ToInt32(item);
                NSession.Save(sc);
                NSession.Flush();
            }

            foreach (var item in ps)
            {
                if (string.IsNullOrEmpty(item))
                {
                    continue;
                }
                ;
                sc = new PermissionScopeType();
                sc.ResourceCategory = ResourceCategoryEnum.User.ToString();
                sc.ResourceId       = uid;
                sc.TargetCategory   = TargetCategoryEnum.PermissionItem.ToString();
                sc.TargetId         = Convert.ToInt32(item);
                NSession.Save(sc);
                NSession.Flush();
            }
            foreach (var item in fos)
            {
                if (string.IsNullOrEmpty(item))
                {
                    continue;
                }
                ;
                sc = new PermissionScopeType();
                sc.ResourceCategory = ResourceCategoryEnum.User.ToString();
                sc.ResourceId       = uid;
                sc.TargetCategory   = TargetCategoryEnum.Account.ToString();
                sc.TargetId         = Convert.ToInt32(item);
                NSession.Save(sc);
                NSession.Flush();
            }
            return(Json(new { IsSuccess = true }));
        }
コード例 #2
0
 public PermissionGrantResult(bool isGrant, [NotNull] string scope)
 {
     GrantType = isGrant ? PermissionGrantType.Granted : PermissionGrantType.Prohibited;
     if (Enum.TryParse(scope, out PermissionScopeType scopeType))
     {
         ScopeType = scopeType;
     }
     else
     {
         ScopeType = PermissionScopeType.Prohibited;
     }
 }
コード例 #3
0
 public ActionResult Edit(PermissionScopeType obj)
 {
     try
     {
         NSession.Update(obj);
         NSession.Flush();
     }
     catch (Exception ee)
     {
         return(Json(new { IsSuccess = false, ErrorMsg = "出错了" }));
     }
     return(Json(new { IsSuccess = true }));
 }
コード例 #4
0
        /// <summary>
        /// 根据Id获取
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public PermissionScopeType GetById(int Id)
        {
            PermissionScopeType obj = NSession.Get <PermissionScopeType>(Id);

            if (obj == null)
            {
                throw new Exception("返回实体为空");
            }
            else
            {
                return(obj);
            }
        }
コード例 #5
0
 public JsonResult DeleteConfirmed(int id)
 {
     try
     {
         PermissionScopeType obj = GetById(id);
         NSession.Delete(obj);
         NSession.Flush();
     }
     catch (Exception ee)
     {
         return(Json(new { IsSuccess = false, ErrorMsg = "出错了" }));
     }
     return(Json(new { IsSuccess = true }));
 }
コード例 #6
0
 private static void GetValue(PermissionScopeType item, List <PermissionScopeType> listByModules, List <PermissionScopeType> listByPermissions, List <PermissionScopeType> listByAccount)
 {
     if (item.TargetCategory == TargetCategoryEnum.Module.ToString())
     {
         listByModules.Add(item);
     }
     else if (item.TargetCategory == TargetCategoryEnum.PermissionItem.ToString())
     {
         listByPermissions.Add(item);
     }
     else
     {
         listByAccount.Add(item);
     }
 }
コード例 #7
0
 public PermissionScopeAttribute(PermissionScopeType scopeType)
 {
     this.ScopeType = scopeType;
 }
コード例 #8
0
        public ActionResult Edit(int id)
        {
            PermissionScopeType obj = GetById(id);

            return(View(obj));
        }