Ejemplo n.º 1
0
        /// <summary>
        /// 获取跨库查询所需的表达式
        /// </summary>
        /// <returns></returns>
        protected override DisPageEntity <GlobalVariable> GetDisPageEntity(GlobalVariableParams paramz)
        {
            DisPageEntity <GlobalVariable> disPageEntity = new DisPageEntity <GlobalVariable>();

            disPageEntity.InCondition = (entities) =>
            {
                List <long?> keys = entities.Select(a => a.Id).ToList();
                return(a => keys.Contains(a.Id));
            };
            GlobalVariableOrderBy orderBy = paramz.orderByAsc;

            if (orderBy != null)
            {
                disPageEntity.OrderType = true;
                if (orderBy.Id)
                {
                    disPageEntity.OrderCol           = a => a.Id;
                    disPageEntity.OrderColLazy       = a => a.Id;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.Id) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.Id) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.Id) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.Id) >= 0;
                    return(disPageEntity);
                }
                if (orderBy.VarSortIndex)
                {
                    disPageEntity.OrderCol           = a => a.VarSortIndex;
                    disPageEntity.OrderColLazy       = a => a.VarSortIndex;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarSortIndex = a.VarSortIndex
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarSortIndex) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarSortIndex) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarSortIndex) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarSortIndex) >= 0;
                    return(disPageEntity);
                }
                if (orderBy.VarRemark)
                {
                    disPageEntity.OrderCol           = a => a.VarRemark;
                    disPageEntity.OrderColLazy       = a => a.VarRemark;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarRemark = a.VarRemark
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarRemark) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarRemark) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarRemark) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarRemark) >= 0;
                    return(disPageEntity);
                }
                if (orderBy.VarName)
                {
                    disPageEntity.OrderCol           = a => a.VarName;
                    disPageEntity.OrderColLazy       = a => a.VarName;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarName = a.VarName
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarName) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarName) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarName) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarName) >= 0;
                    return(disPageEntity);
                }
                if (orderBy.VarValue)
                {
                    disPageEntity.OrderCol           = a => a.VarValue;
                    disPageEntity.OrderColLazy       = a => a.VarValue;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarValue = a.VarValue
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarValue) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarValue) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarValue) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarValue) >= 0;
                    return(disPageEntity);
                }
            }
            disPageEntity.OrderType = false;
            orderBy = paramz.orderByDesc;
            if (orderBy != null)
            {
                if (orderBy.Id)
                {
                    disPageEntity.OrderCol           = a => a.Id;
                    disPageEntity.OrderColLazy       = a => a.Id;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.Id) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.Id) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.Id) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.Id) >= 0;
                    return(disPageEntity);
                }
                else
                if (orderBy.VarSortIndex)
                {
                    disPageEntity.OrderCol           = a => a.VarSortIndex;
                    disPageEntity.OrderColLazy       = a => a.VarSortIndex;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarSortIndex = a.VarSortIndex
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarSortIndex) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarSortIndex) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarSortIndex) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarSortIndex) >= 0;
                    return(disPageEntity);
                }
                else
                if (orderBy.VarRemark)
                {
                    disPageEntity.OrderCol           = a => a.VarRemark;
                    disPageEntity.OrderColLazy       = a => a.VarRemark;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarRemark = a.VarRemark
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarRemark) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarRemark) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarRemark) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarRemark) >= 0;
                    return(disPageEntity);
                }
                else
                if (orderBy.VarName)
                {
                    disPageEntity.OrderCol           = a => a.VarName;
                    disPageEntity.OrderColLazy       = a => a.VarName;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarName = a.VarName
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarName) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarName) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarName) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarName) >= 0;
                    return(disPageEntity);
                }
                else
                if (orderBy.VarValue)
                {
                    disPageEntity.OrderCol           = a => a.VarValue;
                    disPageEntity.OrderColLazy       = a => a.VarValue;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id, VarValue = a.VarValue
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.VarValue) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.VarValue) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.VarValue) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.VarValue) >= 0;
                    return(disPageEntity);
                }
                else
                {
                    disPageEntity.OrderCol           = a => a.Id;
                    disPageEntity.OrderColLazy       = a => a.Id;
                    disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                        Id = a.Id
                    };
                    disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.Id) < 0;
                    disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.Id) <= 0;
                    disPageEntity.LessThan    = (val) => a => val.CompareTo(a.Id) > 0;
                    disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.Id) >= 0;
                    return(disPageEntity);
                }
            }
            else
            {
                disPageEntity.OrderCol           = a => a.Id;
                disPageEntity.OrderColLazy       = a => a.Id;
                disPageEntity.OrderColAndKeyLazy = a => new GlobalVariable {
                    Id = a.Id
                };
                disPageEntity.GreatThan   = (val) => a => val.CompareTo(a.Id) < 0;
                disPageEntity.GreatEqThan = (val) => a => val.CompareTo(a.Id) <= 0;
                disPageEntity.LessThan    = (val) => a => val.CompareTo(a.Id) > 0;
                disPageEntity.LessEqThan  = (val) => a => val.CompareTo(a.Id) >= 0;
                return(disPageEntity);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 升序、降序排序的查询参数设置,当对应字段的升序设置为true时才会对
        /// 该字段降序。
        /// </summary>
        /// <param name="query">待设置降序参数的query对象</param>
        /// <param name="orderBy">装载降序参数的实体类</param>
        /// <returns>返回设置好降序参数的query对象</returns>
        IQueryable <GlobalVariable> OrderBy(IQueryable <GlobalVariable> query, GlobalVariableParams eqArgs)
        {
            GlobalVariableOrderBy orderBy = eqArgs.orderByAsc;

            if (orderBy != null)
            {
                if (orderBy.Id)
                {
                    return(query = query.OrderBy(a => a.Id));
                }
                else
                if (orderBy.VarSortIndex)
                {
                    return(query = query.OrderBy(a => a.VarSortIndex));
                }
                else
                if (orderBy.VarRemark)
                {
                    return(query = query.OrderBy(a => a.VarRemark));
                }
                else
                if (orderBy.VarName)
                {
                    return(query = query.OrderBy(a => a.VarName));
                }
                else
                if (orderBy.VarValue)
                {
                    return(query = query.OrderBy(a => a.VarValue));
                }
            }
            orderBy = eqArgs.orderByDesc;
            if (orderBy != null)
            {
                if (orderBy.Id)
                {
                    return(query = query.OrderByDescending(a => a.Id));
                }
                else
                if (orderBy.VarSortIndex)
                {
                    return(query = query.OrderByDescending(a => a.VarSortIndex));
                }
                else
                if (orderBy.VarRemark)
                {
                    return(query = query.OrderByDescending(a => a.VarRemark));
                }
                else
                if (orderBy.VarName)
                {
                    return(query = query.OrderByDescending(a => a.VarName));
                }
                else
                if (orderBy.VarValue)
                {
                    return(query = query.OrderByDescending(a => a.VarValue));
                }
                else
                {
                    return(query = query.OrderByDescending(a => a.Id));
                }
            }
            else
            {
                return(query = query.OrderByDescending(a => a.Id));
            }
        }