Esempio n. 1
0
        public void DeleteSysRelation(string moduleId, string funcPointId)
        {
            SysRelationEntity entity = new SysRelationEntity()
            {
                ModuleId = moduleId, FuncPointId = funcPointId
            };

            EntityExecution.Delete(entity);
            SetSysRelationListCache();
        }
Esempio n. 2
0
        public static SysRelation_CE ToCE(SysRelationEntity item)
        {
            SysRelation_CE target = new SysRelation_CE();

            target.ID      = item.ID;
            target.RoleNum = item.RoleNum;
            target.ResNum  = item.ResNum;
            target.ResType = item.ResType;
            return(target);
        }
Esempio n. 3
0
        /// <summary>
        /// 给某个角色分配权限
        /// </summary>
        /// <param name="roleNum"></param>
        /// <param name="resItems"></param>
        /// <returns></returns>
        public int AllotPower(string roleNum, List <string> resItems)
        {
            using (TransactionScope ts = new TransactionScope())
            {
                int line = 0;
                if (!resItems.IsNullOrEmpty())
                {
                    List <string>            listInfo   = new List <string>();
                    List <SysResourceEntity> ListSource = new SysResourceProvider(this.CompanyID).GetList();
                    ListSource = ListSource.IsNull() ? new List <SysResourceEntity>() : ListSource;

                    resItems.ForEach(a =>
                    {
                        SysResourceEntity res = ListSource.FirstOrDefault(b => b.ResNum == a);
                        if (res != null && res.ParentNum.IsNotEmpty())
                        {
                            SysResourceEntity parent = ListSource.FirstOrDefault(b => b.ResNum == res.ParentNum);
                            listInfo.Add(parent.ResNum);
                        }
                        listInfo.Add(a);
                    });

                    SysRelationEntity entity = new SysRelationEntity();
                    entity.Where(a => a.RoleNum == roleNum);
                    line = this.SysRelation.Delete(entity);

                    SysResourceProvider provider = new SysResourceProvider(this.CompanyID);

                    List <SysRelationEntity> list = new List <SysRelationEntity>();
                    foreach (string resNum in listInfo)
                    {
                        SysResourceEntity resource = provider.GetResource(resNum);
                        short             ResType  = resource != null ? resource.ResType : (short)EResourceType.Page;
                        entity = new SysRelationEntity()
                        {
                            RoleNum = roleNum, ResNum = resNum, ResType = ResType, CompanyID = this.CompanyID
                        };
                        entity.SnNum = entity.SnNum.IsEmpty() ? ConvertHelper.NewGuid() : entity.SnNum;
                        entity.IncludeAll();
                        list.Add(entity);
                    }
                    line += this.SysRelation.Add(list);
                }
                ts.Complete();
                if (line > 0)
                {
                    CacheHelper.Remove(string.Format(CacheKey.JOOSHOW_ROLEPOWER_CACHE, roleNum));
                    CacheHelper.Remove(CacheKey.JOOSHOW_ALLOTPOWER_CACHE);
                }
                return(line);
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 获得所有的已经分配的权限关系列表
        /// </summary>
        /// <returns></returns>
        private List <SysRelationEntity> GetList()
        {
            List <SysRelationEntity> list = CacheHelper.Get(CacheKey.JOOSHOW_ALLOTPOWER_CACHE) as List <SysRelationEntity>;

            if (!list.IsNullOrEmpty())
            {
                return(list);
            }
            SysRelationEntity entity = new SysRelationEntity();

            entity.IncludeAll();
            list = this.SysRelation.GetList(entity);
            if (!list.IsNullOrEmpty())
            {
                CacheHelper.Insert(CacheKey.JOOSHOW_ALLOTPOWER_CACHE, list, null, DateTime.Now.AddDays(1));
            }
            return(list);
        }
Esempio n. 5
0
        private SysRelationEntity PrepareFormData()
        {
            ddlModule.SelectedValue.InitValidation("模块编号").NotEmpty();
            ddlFuncPoint.SelectedValue.InitValidation("功能点编号").NotEmpty();

            var entity = new SysRelationEntity();

            entity.ModuleId    = ddlModule.SelectedValue;
            entity.FuncPointId = ddlFuncPoint.SelectedValue;
            foreach (ListItem li in cblPermission.Items)
            {
                if (li.Selected)
                {
                    entity.Permissions += li.Value + ",";
                }
            }
            if (string.IsNullOrEmpty(entity.Permissions))
            {
                throw new ArgumentException("至少选择一个权限点!");
            }
            entity.Permissions = entity.Permissions.Remove(entity.Permissions.Length - 1);
            return(entity);
        }
Esempio n. 6
0
        /// <summary>
        /// 给某个角色分配权限
        /// </summary>
        /// <param name="roleNum"></param>
        /// <param name="resItems"></param>
        /// <returns></returns>
        public int AllotPower(string roleNum, List <string> resItems)
        {
            using (TransactionScope ts = new TransactionScope())
            {
                int line = 0;
                if (!resItems.IsNullOrEmpty())
                {
                    SysRelationEntity entity = new SysRelationEntity();
                    entity.Where(a => a.RoleNum == roleNum);
                    line = this.SysRelation.Delete(entity);

                    SysResourceProvider provider = new SysResourceProvider();

                    List <SysRelationEntity> list = new List <SysRelationEntity>();
                    foreach (string resNum in resItems)
                    {
                        SysResourceEntity resource = provider.GetResource(resNum);
                        short             ResType  = resource != null ? resource.ResType : (short)EResourceType.Page;
                        entity = new SysRelationEntity()
                        {
                            RoleNum = roleNum, ResNum = resNum, ResType = ResType
                        };
                        entity.IncludeAll();
                        list.Add(entity);
                    }
                    line += this.SysRelation.Add(list);
                }
                ts.Complete();
                if (line > 0)
                {
                    CacheHelper.Remove(string.Format(CacheKey.JOOSHOW_ROLEPOWER_CACHE, roleNum));
                    CacheHelper.Remove(CacheKey.JOOSHOW_ALLOTPOWER_CACHE);
                }
                return(line);
            }
        }
Esempio n. 7
0
 public void UpdateSysRelation(SysRelationEntity entity)
 {
     ;
     entity.Update();
     SetSysRelationListCache();
 }
Esempio n. 8
0
 public void AddNewSysRelation(SysRelationEntity entity)
 {
     entity.Insert();
     SetSysRelationListCache();
 }