public ResultJson <GetRestaurantListResponse> GetRestaurantListInfo(GetRestaurantListRequest request) { ResultJson <GetRestaurantListResponse> result = new ResultJson <GetRestaurantListResponse>(); if (!request.GroupBy.IsNullOrEmpty() && request.GroupBy.Trim() == "Type" && (request.TypeValue.IsNullOrEmpty() || request.TypeValue.ParseInt() == null)) { result.HttpCode = 400; result.Message = "由于排序类型为Type,请上传TypeValue"; return(result); } var List_Restaurant = CacheForModelRestaurant.Instance.RestaurantList(); List <GetRestaurantListResponse> List_Response_Option = new List <GetRestaurantListResponse>(); List <GetRestaurantListResponse> List_Response_Result = new List <GetRestaurantListResponse>(); //计算当前位置与目的地的距离 foreach (Restaurant item in List_Restaurant) { GetRestaurantListResponse response = new GetRestaurantListResponse(item, request.CoordX, request.CoordY, SeachRange); if (response.distance != null) { List_Response_Option.Add(response); } } if (request.GroupBy.IsNullOrEmpty() || request.GroupBy.Trim().ToLower() == Enum_SearchType.Distance.Enum_GetString()) { //根据距离排序 List_Response_Option = List_Response_Option.OrderBy(p => p.distance).ToList(); } else if (request.GroupBy.Trim().ToLower() == Enum_SearchType.SalesVolume.Enum_GetString()) { //根据销售量排序 List_Response_Option = List_Response_Option.OrderByDescending(p => p.sales).ToList(); } else if (request.GroupBy.Trim().ToLower() == Enum_SearchType.SuitMe.Enum_GetString()) { //ListRestaurantResponse.Sort((q, p) => q.sales.Value.CompareTo(p.sales)); } else if (request.GroupBy.Trim().ToLower() == Enum_SearchType.Type.Enum_GetString()) { //根据类型进行排序 List_Response_Option = List_Response_Option.Where(p => p.category == request.TypeValue).ToList(); } List_Response_Result = BLL.Function.Paging.Instance.PageData <GetRestaurantListResponse>(List_Response_Option, PageSize, request.PageNo); if (List_Response_Result.Count == 0) { result.HttpCode = 300; result.Message = Enum_Message.NoMoreDataMessage.Enum_GetString(); } else { result.HttpCode = 200; result.ListData = List_Response_Result; } return(result); }
public ResultJson <GetRestaurantListResponse, GetRecipeListByGPSResponse, GetArticleListResponse, GetOrderListResponse> TitlePage(GetTitlePageRequest request) { ResultJson <GetRestaurantListResponse, GetRecipeListByGPSResponse, GetArticleListResponse, GetOrderListResponse> result = new ResultJson <GetRestaurantListResponse, GetRecipeListByGPSResponse, GetArticleListResponse, GetOrderListResponse>(); var user = CacheForModelUser.Instance.GetUserInfo(request.UserId); GetRestaurantListRequest Restaurant_List_Request = new GetRestaurantListRequest { CoordX = request.CoordX, CoordY = request.CoordY, PageNo = 1, }; var result_Restaurant = GetRestaurantListInfo(Restaurant_List_Request); GetRecipeListByGPSRequest Recipe_List_Request = new GetRecipeListByGPSRequest { CoordX = request.CoordX, CoordY = request.CoordY, PageNo = 1, UserId = request.UserId }; RecipeController recipeContro = new RecipeController(); var result_Recipe = recipeContro.RecipeListByGPS(Recipe_List_Request); GetInfoByIdPaggingRequest Article_List_Request = new GetInfoByIdPaggingRequest { PageNo = 1, Id = request.UserId, Token = request.Token }; ArticleController ArticleContro = new ArticleController(); var result_Article = ArticleContro.GetArticleListInfo(Article_List_Request); GetInfoByUserIdPageRequest Order_List_Request = new GetInfoByUserIdPageRequest { PageNo = 1, UserId = request.UserId, Token = request.Token }; var result_Order = OrdersBiz.Instance.OrderList(Order_List_Request); if (result_Recipe.HttpCode == 200 && result_Restaurant.HttpCode == 200 && result_Article.HttpCode == 200) { result.HttpCode = 200; result.ListData = Paging.Instance.PageData(result_Restaurant.ListData, 9, 1); result.ListData2 = Paging.Instance.PageData(result_Recipe.ListData, 5, 1); result.ListData3 = Paging.Instance.PageData(result_Article.ListData, 4, 1); result.ListData4 = Paging.Instance.PageData(result_Order.ListData, 3, 1); } else { result.HttpCode = 500; result.Message = "数据筛选失败"; } return(result); }