예제 #1
0
        /// <summary>
        /// 添加授权操作组
        /// </summary>
        /// <param name="authorityOperationGroup">授权操作组对象</param>
        /// <returns>执行结果</returns>
        Result <AuthorityOperationGroup> AddAuthorityOperationGroup(AuthorityOperationGroup authorityOperationGroup)
        {
            #region  级

            long parentGroupId = authorityOperationGroup.Parent == null ? 0 : authorityOperationGroup.Parent.SysNo;
            AuthorityOperationGroup parentGroup = null;
            if (parentGroupId > 0)
            {
                IQuery parentQuery = QueryManager.Create <AuthorityOperationGroupQuery>(c => c.SysNo == parentGroupId);
                parentGroup = authorityOperationGroupRepository.Get(parentQuery);
                if (parentGroup == null)
                {
                    return(Result <AuthorityOperationGroup> .FailedResult("请选择正确的上级分组"));
                }
            }
            authorityOperationGroup.SetParentGroup(parentGroup);

            #endregion

            authorityOperationGroup.Save();//保存

            var result = Result <AuthorityOperationGroup> .SuccessResult("添加成功");

            result.Data = authorityOperationGroup;
            return(result);
        }
        /// <summary>
        /// 加载上级分组
        /// </summary>
        AuthorityOperationGroup LoadParentGroup()
        {
            if (!AllowLazyLoad(r => r.Parent))
            {
                return(_parent.CurrentValue);
            }
            if (_level <= 1 || _parent.CurrentValue == null)
            {
                return(_parent.CurrentValue);
            }
            IQuery parentQuery = QueryFactory.Create <AuthorityOperationGroupQuery>(r => r.SysNo == _parent.CurrentValue.SysNo);

            return(authorityOperationGroupRepository.Get(parentQuery));
        }