Example #1
0
        /// <summary>
        /// 创建查询对象
        /// </summary>
        /// <returns>返回查询对象</returns>
        public override IQuery CreateQuery()
        {
            IQuery query = base.CreateQuery() ?? QueryManager.Create <PermissionGroupEntity>(this);

            if (LevelOne)
            {
                query.And <PermissionGroupEntity>(c => c.Parent <= 0);
            }
            if (!Ids.IsNullOrEmpty())
            {
                query.And <PermissionGroupEntity>(c => Ids.Contains(c.Id));
            }
            if (!ExcludeIds.IsNullOrEmpty())
            {
                query.And <PermissionGroupEntity>(c => !ExcludeIds.Contains(c.Id));
            }
            if (!string.IsNullOrWhiteSpace(Name))
            {
                query.And <PermissionGroupEntity>(c => c.Name == Name);
            }
            if (Sort.HasValue)
            {
                query.And <PermissionGroupEntity>(c => c.Sort == Sort.Value);
            }
            if (Parent.HasValue)
            {
                query.And <PermissionGroupEntity>(c => c.Parent == Parent.Value);
            }
            if (!string.IsNullOrWhiteSpace(Remark))
            {
                query.And <PermissionGroupEntity>(c => c.Remark == Remark);
            }
            return(query);
        }