Ejemplo n.º 1
0
        public async Task <PagedResult <DriverLicenseOfferDto> > SearchAsync(DriverLicenseOfferFilters filters)
        {
            if (filters == null)
            {
                return(new PagedResult <DriverLicenseOfferDto>());
            }

            var query = _context.DriverLicenseOffers.AsQueryable();

            //if (filters.keywords.IsNotBlank())
            //    query = query.Where(x => x..Contains(filters.keywords));
            if (filters.MinLeftScore != 0)
            {
                query = query.Where(x => x.ScoreLeft >= filters.MinLeftScore);
            }
            if (filters.MaxLeftScore != 0)
            {
                query = query.Where(x => x.ScoreLeft <= filters.MaxLeftScore);
            }

            var areas = await _areaService.FindAllByParentId(string.Empty);

            return(await query.OrderByDescending(item => item.CreateDateTime)
                   .Select(item => new DriverLicenseOfferDto
            {
                Id = item.Id,
                ScoreLeft = item.ScoreLeft,
                DriverLicenseType = item.DriverLicenseType,
                SourceAreaId = areas == null ? string.Empty : (areas.FirstOrDefault(c => c.id == item.SourceAreaId) == null ? string.Empty : areas.FirstOrDefault(c => c.id == item.SourceAreaId).name),
                SourceTotalPrice = item.SourceTotalPrice,
                //-------------------------------------------
                GoalAreaId = areas == null ? string.Empty : (areas.FirstOrDefault(c => c.id == item.GoalAreaId) == null ? string.Empty : areas.FirstOrDefault(c => c.id == item.GoalAreaId).name),
                GoalAddress = item.GoalAddress,
                GoalTotalPrice = item.GoalTotalPrice,
                Sex = (SexType)item.Sex,
                PhoneNumber = item.PhoneNumber,
                AcquisitionTime = item.AcquisitionTime,
                WeiXinId = item.WeiXinId
            }).PagingAsync(filters.page, filters.rows));
        }
        /// <summary>
        /// 搜索页面
        /// </summary>
        /// <param name="filters">查询参数</param>
        /// <returns></returns>
        public async Task <IActionResult> GetListWithPager(DriverLicenseOfferFilters filters)
        {
            var result = await _driverLicenseOfferService.SearchAsync(filters);

            return(Json(result));
        }