コード例 #1
0
ファイル: BLLPermission.cs プロジェクト: uvbs/mmp
 /// <summary>
 /// 添加权限组
 /// </summary>
 /// <param name="groupInfo"></param>
 /// <param name="relations"></param>
 /// <returns></returns>
 public long AddGroupInfo(PermissionGroupInfo groupInfo, List <long> pmsIds, BLLTransaction tran)
 {
     if (Get <PermissionGroupInfo>(string.Format(" GroupName='{0}' AND WebsiteOwner='{1}' "
                                                 , groupInfo.GroupName, groupInfo.WebsiteOwner)) != null)
     {
         throw new Exception("权限组名称已被使用");
     }
     groupInfo.GroupID = Convert.ToInt64(GetGUID(TransacType.PermissionGroupAdd));
     if (!Add(groupInfo, tran))
     {
         throw new Exception("添加权限组失败");
     }
     foreach (long pmsId in pmsIds)
     {
         PermissionRelationInfo relation = new PermissionRelationInfo();
         relation.RelationID   = groupInfo.GroupID.ToString();
         relation.PermissionID = pmsId;
         relation.RelationType = 0;
         if (!Add(relation, tran))
         {
             throw new Exception("添加权限关系失败");
         }
     }
     return(groupInfo.GroupID);
 }
コード例 #2
0
ファイル: BLLPermission.cs プロジェクト: uvbs/mmp
        /// <summary>
        /// 添加权限组
        /// </summary>
        /// <param name="groupInfo"></param>
        /// <param name="relations"></param>
        /// <returns></returns>
        public void UpdateGroupInfo(PermissionGroupInfo groupInfo, List <long> pmsIds, BLLTransaction tran)
        {
            PermissionGroupInfo tempOld = Get <PermissionGroupInfo>(string.Format(" GroupName='{0}' AND WebsiteOwner='{1}' "
                                                                                  , groupInfo.GroupName, groupInfo.WebsiteOwner));

            if (tempOld != null && tempOld.GroupID != groupInfo.GroupID)
            {
                throw new Exception("权限组名称已被使用");
            }
            if (!Update(groupInfo, tran))
            {
                throw new Exception("编辑权限组失败");
            }
            List <PermissionRelationInfo> oldList = GetList <PermissionRelationInfo>(
                string.Format(" RelationType=0 AND RelationID='{0}' ", groupInfo.GroupID));

            foreach (PermissionRelationInfo item in oldList)
            {
                if (!pmsIds.Exists(p => p == item.PermissionID))
                {
                    if (Delete(item, tran) == -1)
                    {
                        throw new Exception("删除旧权限关系失败失败");
                    }
                }
            }
            foreach (long pmsId in pmsIds)
            {
                if (!oldList.Exists(p => p.PermissionID == pmsId))
                {
                    PermissionRelationInfo relation = new PermissionRelationInfo();
                    relation.RelationID   = groupInfo.GroupID.ToString();
                    relation.PermissionID = pmsId;
                    relation.RelationType = 0;
                    if (!Add(relation, tran))
                    {
                        throw new Exception("添加新权限关系失败");
                    }
                }
            }
        }