CCN.Modules.Car.DataAccess.CarDataAccess.SearchCarPageListTopFill C# (CSharp) Method

SearchCarPageListTopFill() public method

全城搜车(官网页面)(置顶车辆补齐)
public SearchCarPageListTopFill ( CarTopFillQueryModel query ) : BasePageList
query CCN.Modules.Car.BusinessEntity.CarTopFillQueryModel 查询条件
return BasePageList
        public BasePageList<CarInfoListViewModel> SearchCarPageListTopFill(CarTopFillQueryModel query)
        {
            const string spName = "sp_common_pager";
            const string tableName = @"car_info as a
                                    left join base_carbrand as c1 on a.brand_id=c1.innerid
                                    left join base_carseries as c2 on a.series_id=c2.innerid
                                    left join base_carmodel as c3 on a.model_id=c3.innerid
                                    left join base_city as ct on a.cityid=ct.innerid";
            const string fields = "a.innerid,a.custid,a.pic_url,a.price,a.buyprice,a.dealprice,a.buytime,a.status,a.mileage,a.register_date,a.seller_type as type,c1.brandname as brand_name,c2.seriesname as series_name,c3.modelname as model_name,ct.cityname,(select count(1) from car_tipoff where carid=a.innerid and status=1) as toNum";
            var orderField = string.IsNullOrWhiteSpace(query.Order) ? "a.istop desc,a.refreshtime desc" : query.Order;  //排序以后调整为 支付时间
            var sqlWhere = new StringBuilder("a.seller_type<>3 and a.status=1 and a.istop>0");

            if (!string.IsNullOrWhiteSpace(query.where))
            {
                query.where = "a.status=1 and a.istop=1 " + query.where;
                query.where =
                    query.where
                        .Replace("a.", "ia.")
                        .Replace("c1.", "ic1.")
                        .Replace("c2.", "ic2.")
                        .Replace("c3.", "ic3.");

                sqlWhere.Append(
                    $@" and a.innerid not in (select ia.innerid from car_info as ia
                                    left join base_carbrand as ic1 on ia.brand_id = ic1.innerid
                                    left join base_carseries as ic2 on ia.series_id = ic2.innerid
                                    left join base_carmodel as ic3 on ia.model_id = ic3.innerid where {
                        query.where})");
            }
            var model = new PagingModel(spName, tableName, fields, orderField, sqlWhere.ToString(), query.PageSize, query.PageIndex);
            var list = Helper.ExecutePaging<CarInfoListViewModel>(model, query.Echo);
            return list;
        }
CarDataAccess