Esempio n. 1
0
        /// <summary>
        /// 视频项分页列表
        /// </summary>
        /// <param name="requset">查询参数</param>
        public PagedList <VideoItemExt> GetExtPaging(VideoItemQueryRequest requset)
        {
            const string sqlFrom   = "FeVideoItem i INNER JOIN FeVideo v ON i.VideoSysNo = v.SysNo";
            var          dataList  = DBContext.Select <VideoItemExt>("i.*,CONCAT(v.Title,' ',i.`Name`) as NameExt").From(sqlFrom);
            var          dataCount = DBContext.Select <int>("count(0)").From(sqlFrom);

            //条件查询委托
            Action <string, string, object> setWhere = (@where, name, value) =>
            {
                dataList.AndWhere(where).Parameter(name, value);
                dataCount.AndWhere(where).Parameter(name, value);
            };

            if (requset.VideoStatus.HasValue)
            {
                setWhere("v.Status = @VideoStatus", "VideoStatus", requset.VideoStatus);
            }
            if (requset.VideoType.HasValue)
            {
                setWhere("v.Type = @VideoType", "VideoType", requset.VideoType);
            }
            if (requset.VideoItemStatus.HasValue)
            {
                setWhere("i.Status = @VideoItemStatus", "VideoItemStatus", requset.VideoItemStatus);
            }
            if (!string.IsNullOrEmpty(requset.VideoName))
            {
                setWhere("(v.Title like CONCAT('%',@VideoName,'%') or i.`Name` like CONCAT('%',@VideoName,'%'))", "VideoName", requset.VideoName);
            }
            if (requset.VideoSysNo.HasValue)
            {
                setWhere("i.VideoSysNo = @VideoSysNo", "VideoSysNo", requset.VideoSysNo);
            }

            var list = new PagedList <VideoItemExt>
            {
                TData            = dataList.Paging(requset.CurrentPageIndex.GetHashCode(), requset.PageSize.GetHashCode()).OrderBy("v.DisplayOrder,i.DisplayOrder").QueryMany(),
                CurrentPageIndex = requset.CurrentPageIndex.GetHashCode(),
                TotalCount       = dataCount.QuerySingle(),
            };

            return(list);
        }
Esempio n. 2
0
 /// <summary>
 /// 视频项分页列表
 /// </summary>
 /// <param name="requset">查询参数</param>
 public PagedList <VideoItemExt> GetExtPaging(VideoItemQueryRequest requset)
 {
     return(Using <IVideoItem>().GetExtPaging(requset));
 }