示例#1
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            try
            {
                if (args.PageSize <= 0)
                {
                    args.PageSize = 10;
                }
                if (args.PageIndex <= 0)
                {
                    args.PageIndex = 1;
                }

                var items = _communityService.GetListForBase()
                            .ToPagedList(args.PageIndex, args.PageSize);

                return(Success(new GetPagedListModel()
                {
                    PageIndex = items.PageIndex,
                    PageSize = items.PageSize,
                    TotalCount = items.TotalItemCount,
                    Items = items.ToList()
                }));
            }
            catch (Exception ex)
            {
                return(Error(ex.Message));
            }
        }
示例#2
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <CommercialDistrict>()
                        .Where(m => !m.IsDel);

            if (args.Latitude.HasValue && args.Longitude.HasValue)
            {
                //6 范围在±0.61KM
                if (!args.Precision.HasValue)
                {
                    args.Precision = 6;
                }
                var geohash = Geohash.Encode(args.Latitude.Value, args.Longitude.Value, args.Precision.Value);
                var areas   = GetGeoHashExpand(geohash);
                query = query.Where(m => m.GeoHash.StartsWith(areas[0]) ||
                                    m.GeoHash.StartsWith(areas[1]) ||
                                    m.GeoHash.StartsWith(areas[2]) ||
                                    m.GeoHash.StartsWith(areas[3]) ||
                                    m.GeoHash.StartsWith(areas[4]) ||
                                    m.GeoHash.StartsWith(areas[5]) ||
                                    m.GeoHash.StartsWith(areas[6]) ||
                                    m.GeoHash.StartsWith(areas[7])
                                    );
            }

            var list = query
                       .Select(m => new RowItem()
            {
                AddIp     = m.AddIp,
                AddTime   = m.AddTime,
                AddUser   = m.AddUser,
                Flag      = m.Flag,
                Id        = m.Id,
                Address   = m.Address,
                Detail    = m.Detail,
                IsDel     = m.IsDel,
                Latitude  = m.Latitude,
                Longitude = m.Longitude,
                Name      = m.Name
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#3
0
        public APIResult <GetPagedListModel> GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex <= 0)
            {
                args.PageIndex = 1;
            }

            var query = memberDb.QueryMember()
                        .Where(m => !m.IsDel);

            if (args.Status.HasValue)
            {
                query = query.Where(m => m.Status == args.Status.Value);
            }
            if (!string.IsNullOrEmpty(args.Email))
            {
                query = query.Where(m => m.Email.Contains(args.Email));
            }
            if (!string.IsNullOrEmpty(args.Truename))
            {
                query = query.Where(m => m.Truename.Contains(args.Truename));
            }

            var list = query
                       .OrderByDescending(m => m.Id)
                       .Select(m => new RowItem()
            {
                Id            = m.Id,
                Email         = m.Email,
                EmailIsValid  = m.EmailIsValid,
                LastLoginIP   = m.LastLoginIP,
                LastLoginTime = m.LastLoginTime,
                LoginCount    = m.LoginCount,
                Truename      = m.Truename,
                RegIP         = m.RegIP,
                RegTime       = m.RegTime,
                Status        = m.Status
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#4
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopBrandCommodity>()
                        .Where(m => !m.IsDel);

            if (args.ShopBrandId.HasValue)
            {
                query = query.Where(m => m.ShopBrandId == args.ShopBrandId);
            }
            var list = query
                       .Select(m => new RowItem()
            {
                AddIp         = m.AddIp,
                AddTime       = m.AddTime,
                AddUser       = m.AddUser,
                Flag          = m.Flag,
                Id            = m.Id,
                Detail        = m.Detail,
                IsDel         = m.IsDel,
                Name          = m.Name,
                Cover         = m.Cover,
                IsRecommand   = m.IsRecommand,
                Price         = m.Price,
                SalesForMonth = m.SalesForMonth,
                ShopBrandId   = m.ShopBrandId,
                Summary       = m.Summary,
                Unit          = m.Unit,
                Upvote        = m.Upvote,
                CategoryName  = m.Category.Name,
                CategoryId    = m.CategoryId
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#5
0
        public APIResult <GetPagedListModel> GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex <= 0)
            {
                args.PageIndex = 1;
            }

            var query = wechatCoreDb.QueryRobotMessage()
                        .Where(m => !m.IsDel);

            if (args.Status.HasValue)
            {
                query = query.Where(m => m.Status == args.Status.Value);
            }
            if (!string.IsNullOrEmpty(args.Question))
            {
                query = query.Where(m => m.Question.Contains(args.Question));
            }
            if (args.QuestionType.HasValue)
            {
                query = query.Where(m => m.QuestionType == args.QuestionType.Value);
            }

            var list = query
                       .OrderByDescending(m => m.Id)
                       .Select(m => new RowItem()
            {
                Id           = m.Id,
                Question     = m.Question,
                QuestionType = m.QuestionType,
                Answer       = m.Answer,
                Status       = m.Status
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#6
0
        //[Authorize(AuthenticationSchemes = "jwt")]
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopComment>()
                        .Where(m => !m.IsDel)
                        .Where(m => m.ShopId == args.ShopId);

            var list = query
                       .Select(m => new RowItem()
            {
                Content = m.Content,
                Grade   = m.Grade,
                KeyWord = m.KeyWord,
                AddIp   = m.AddIp,
                ShopId  = m.ShopId,
                AddTime = m.AddTime,
                Id      = m.Id,
                IsDel   = m.IsDel
            })
                       .AsNoTracking()
                       .ToPagedList(args.PageIndex, args.PageSize);

            list.ForEach(item =>
            {
                var picids = db.Query <ShopCommentPicture>()
                             .Where(p => p.ShopCommentId == item.Id)
                             .Select(p => p.Id)
                             .ToList();
                item.PicIds = picids;
            });

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#7
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (!args.ShopBrandId.HasValue)
            {
                throw new ArgumentNullException("ShopBrandId");
            }
            var brandId = args.ShopBrandId.Value;

            CheckShopBrandActor(brandId, ShopBrandActorType.超级管理员);

            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopBrandCommodityParameter>()
                        .Where(m => !m.IsDel)
                        .Where(m => m.ShopBrandId == args.ShopBrandId);

            var list = query
                       .Select(m => new RowItem()
            {
                AddIp       = m.AddIp,
                AddTime     = m.AddTime,
                AddUser     = m.AddUser,
                Id          = m.Id,
                IsDel       = m.IsDel,
                Name        = m.Name,
                Flag        = m.Flag,
                ShopBrandId = m.ShopBrandId
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#8
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (!args.ShopId.HasValue)
            {
                throw new ArgumentNullException("ShopId");
            }
            CheckShopActor(args.ShopId.Value, ShopActorType.超级管理员);

            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }

            var query = db.Query <ShopPart>()
                        .Where(m => !m.IsDel);

            var list = query
                       .Where(m => m.ShopId == args.ShopId.Value)
                       .OrderByDescending(m => m.Id)
                       .Select(m => new RowItem()
            {
                AddIp   = m.AddIp,
                AddTime = m.AddTime,
                AddUser = m.AddUser,
                Detail  = m.Detail,
                Flag    = m.Flag,
                Id      = m.Id,
                IsDel   = m.IsDel,
                ShopId  = m.ShopId,
                Title   = m.Title
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#9
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopBrandActor>()
                        .Where(m => !m.IsDel);

            if (args.ShopBrandId.HasValue)
            {
                query = query.Where(m => m.ShopBrandId == args.ShopBrandId);
            }


            var list = query
                       .Select(m => new RowItem()
            {
                AddIp         = m.AddIp,
                AddTime       = m.AddTime,
                AddUser       = m.AddUser,
                Id            = m.Id,
                ActorType     = m.ActorType,
                MemberId      = m.MemberId,
                ShopBrandId   = m.ShopBrandId,
                ShopBrandName = m.ShopBrand.Name
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#10
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (string.IsNullOrEmpty(args.ShopFlag))
            {
                throw new Exception("ShopFlag不能为空");
            }

            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }

            var query = db.Query <ShopPart>()
                        .Where(m => !m.IsDel)
                        .Where(m => m.Shop.Flag == args.ShopFlag);

            var list = query
                       .OrderByDescending(m => m.Id)
                       .Select(m => new RowItem()
            {
                Detail = m.Detail,
                Flag   = m.Flag,
                Id     = m.Id,
                ShopId = m.ShopId,
                Title  = m.Title
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#11
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <CommercialDistrict>()
                        .Where(m => !m.IsDel);

            var list = query
                       .Select(m => new RowItem()
            {
                AddIp     = m.AddIp,
                AddTime   = m.AddTime,
                AddUser   = m.AddUser,
                Flag      = m.Flag,
                Id        = m.Id,
                Address   = m.Address,
                Detail    = m.Detail,
                IsDel     = m.IsDel,
                Name      = m.Name,
                Status    = m.Status,
                Latitude  = m.Latitude,
                Longitude = m.Longitude
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#12
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            using (var db = dbFactory.Create(_communityService, args.CommunityFlag, args.AppFlag))
            {
                if (args.PageSize <= 0)
                {
                    args.PageSize = 10;
                }
                if (args.PageIndex == 0)
                {
                    args.PageIndex = 1;
                }
                var query = db.Query <SettingBase>()
                            .Where(m => !m.IsDel);

                var list = query
                           .Select(m => new RowItem()
                {
                    Detail      = m.Detail,
                    Flag        = m.Flag,
                    GroupFlag   = m.GroupFlag,
                    Id          = m.Id,
                    IsDel       = m.IsDel,
                    SettingType = m.SettingType,
                    Value       = m.Value
                })
                           .ToPagedList(args.PageIndex, args.PageSize);

                return(Success(new GetPagedListModel()
                {
                    PageIndex = list.PageIndex,
                    PageSize = list.PageSize,
                    TotalCount = list.TotalItemCount,
                    Items = list.ToList()
                }));
            }
        }
示例#13
0
        public APIResult <GetPagedListModel> GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            var memberId = GetMemberId();

            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }

            var query = db.Query <MemberAmountChangeLog>()
                        .Where(m => m.MemberId == memberId);

            var list = query
                       .Select(m => new RowItem()
            {
                AddTime        = m.AddTime,
                Amount         = m.Amount,
                NowAmount      = m.NowAmount,
                OriginalAmount = m.OriginalAmount,
                Title          = m.Title
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#14
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (!args.ShopBrandId.HasValue)
            {
                throw new ArgumentNullException("ShopBrandId");
            }
            var brandId = args.ShopBrandId.Value;

            CheckShopBrandActor(brandId, ShopBrandActorType.超级管理员);

            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopBrandCommodityCategory>()
                        .Where(m => !m.IsDel)
                        .Where(m => m.ShopBrandId == brandId);

            switch (args.OrderName.ToLower())
            {
            case "name":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Name);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Name);
                }
                break;

            case "orderWeight":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.OrderWeight);
                }
                else
                {
                    query = query.OrderByDescending(m => m.OrderWeight);
                }
                break;

            case "detail":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Detail);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Detail);
                }
                break;

            case "pId":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.PId);
                }
                else
                {
                    query = query.OrderByDescending(m => m.PId);
                }
                break;

            case "flag":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Flag);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Flag);
                }
                break;

            case "isDel":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.IsDel);
                }
                else
                {
                    query = query.OrderByDescending(m => m.IsDel);
                }
                break;

            case "keywords":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Keywords);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Keywords);
                }
                break;

            case "description":
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Description);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Description);
                }
                break;

            default:
                if (args.OrderType == "asc")
                {
                    query = query.OrderBy(m => m.Id);
                }
                else
                {
                    query = query.OrderByDescending(m => m.Id);
                }
                break;
            }

            var list = query
                       .Select(m => new RowItem()
            {
                Id          = m.Id,
                Name        = m.Name,
                OrderWeight = m.OrderWeight,
                Detail      = m.Detail,
                ParentName  = m.Parent.Name,
                PId         = m.PId,
                Ico         = m.Ico,
                Flag        = m.Flag,
                IsDel       = m.IsDel,
                Keywords    = m.Keywords,
                Description = m.Description,
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#15
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            if (!args.ShopBrandId.HasValue)
            {
                throw new ArgumentNullException("ShopBrandId");
            }
            var brandId = args.ShopBrandId.Value;

            CheckShopBrandActor(brandId, ShopBrandActorType.超级管理员);

            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <ShopBrandCommodity>()
                        .Where(m => !m.IsDel)
                        .Where(m => m.ShopBrandId == args.ShopBrandId);

            //商品名称搜索
            if (!string.IsNullOrEmpty(args.SearchName))
            {
                query = query.Where(m => m.Name.Contains(args.SearchName));
            }
            if (query.Count() < 10)
            {
                args.PageIndex = 1;
            }
            var list = query
                       .Select(m => new RowItem()
            {
                AddIp          = m.AddIp,
                AddTime        = m.AddTime,
                AddUser        = m.AddUser,
                Flag           = m.Flag,
                Id             = m.Id,
                Detail         = m.Detail,
                IsDel          = m.IsDel,
                Name           = m.Name,
                Cover          = m.Cover,
                IsRecommand    = m.IsRecommand,
                Price          = m.Price,
                SalesForMonth  = m.SalesForMonth,
                ShopBrandId    = m.ShopBrandId,
                Summary        = m.Summary,
                IsScanCode     = m.IsScanCode,
                IsSelfOrder    = m.IsSelfOrder,
                IsTakeout      = m.IsTakeout,
                UseMemberPrice = m.UseMemberPrice,
                Unit           = m.Unit,
                Upvote         = m.Upvote,
                DiningWay      = m.DiningWay,
                CategoryId     = m.CategoryId
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            var resultList = list.ToList();

            foreach (var item in resultList)
            {
                if (item.CategoryId == 0)
                {
                    item.CategoryName = "套餐";
                    item.CommodityIds = db.Query <ShopOrderComboItem>()
                                        .Where(m => !m.IsDel)
                                        .Where(m => m.Pid == item.Id)
                                        .Select(m => m.CommodityId.ToString())
                                        .Distinct()
                                        .ToList();
                }
                else
                {
                    item.CategoryName = db.GetSingle <ShopBrandCommodityCategory>(item.CategoryId)?.Name;
                }
            }

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = resultList
            }));
        }
示例#16
0
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 100;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <Shop>()
                        .Where(m => !m.IsDel);

            if (args.ShopBrandId.HasValue)
            {
                query = query.Where(m => m.ShopBrandId == args.ShopBrandId);
            }

            var list = query
                       .Select(m => new RowItem()
            {
                AddIp         = m.AddIp,
                AddTime       = m.AddTime,
                AddUser       = m.AddUser,
                Flag          = m.Flag,
                Logo          = m.Logo,
                Id            = m.Id,
                Address       = m.Address,
                AddressGuide  = m.AddressGuide,
                Detail        = m.Detail,
                IsDel         = m.IsDel,
                Latitude      = m.Latitude,
                Longitude     = m.Longitude,
                Name          = m.Name,
                OpenTime      = m.OpenTime,
                ScoreValue    = m.ScoreValue,
                Tel           = m.Tel,
                UsePerUser    = m.UsePerUser,
                ShopBrandId   = m.ShopBrandId,
                IsShowApplets = m.IsShowApplets
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            list.ForEach(r =>
            {
                var model = db.Query <ShopPayInfo>()
                            .Where(m => !m.IsDel)
                            .Where(m => m.ShopId == r.Id)
                            .FirstOrDefault();

                if (model != null)
                {
                    bool HasSecretKey = (model.SecretKey != null && model.SecretKey.Length > 0);
                    r.MchId           = model.MchId;
                    r.PayWay          = ((int)model.PayWay).ToString();
                    r.SecretKey       = HasSecretKey ? "********" : "";
                }
            });

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#17
0
        //[Authorize(AuthenticationSchemes = "jwt")]
        public APIResult GetPagedList([FromBody] GetPagedListArgsModel args)
        {
            args.OrderName = args.OrderName ?? "";
            if (args.PageSize <= 0)
            {
                args.PageSize = 10;
            }
            if (args.PageIndex == 0)
            {
                args.PageIndex = 1;
            }
            var query = db.Query <Shop>()
                        .Where(m => !m.IsDel);

            if (args.Latitude.HasValue && args.Longitude.HasValue)
            {
                //6 范围在±0.61KM
                var geohash = Geohash.Encode(args.Latitude.Value, args.Longitude.Value, 6);
                var areas   = GetGeoHashExpand(geohash);
                query = query.Where(m => m.GeoHash.StartsWith(areas[0]) ||
                                    m.GeoHash.StartsWith(areas[1]) ||
                                    m.GeoHash.StartsWith(areas[2]) ||
                                    m.GeoHash.StartsWith(areas[3]) ||
                                    m.GeoHash.StartsWith(areas[4]) ||
                                    m.GeoHash.StartsWith(areas[5]) ||
                                    m.GeoHash.StartsWith(areas[6]) ||
                                    m.GeoHash.StartsWith(areas[7])
                                    );
            }

            var list = query
                       .Select(m => new RowItem()
            {
                AddIp        = m.AddIp,
                AddTime      = m.AddTime,
                AddUser      = m.AddUser,
                Flag         = m.Flag,
                Id           = m.Id,
                Address      = m.Address,
                AddressGuide = m.AddressGuide,
                Detail       = m.Detail,
                IsDel        = m.IsDel,
                Latitude     = m.Latitude,
                Longitude    = m.Longitude,
                Name         = m.Name,
                OpenTime     = m.OpenTime,
                ScoreValue   = m.ScoreValue,
                Tel          = m.Tel,
                UsePerUser   = m.UsePerUser,
                Cover        = m.Cover,
                Logo         = m.Logo
            })
                       .ToPagedList(args.PageIndex, args.PageSize);

            return(Success(new GetPagedListModel()
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.Where(r => r.IsShowApplets == true).ToList()
            }));
        }