Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="top">top=0取全部,top>0取top条</param>
        /// <param name="nodecode"></param>
        /// <param name="isAudit"></param>
        /// <param name="isIndex"></param>
        /// <returns></returns>
        public DataTable GetTopZtNews(int top, int ztId, bool isAudit, bool isIndex)
        {
            WhereClipBuilder wcb = new WhereClipBuilder();

            if (ztId > 0)
            {
                wcb.And(cmsNewsTopicRel._.TopicId == ztId);
            }
            if (isAudit)
            {
                wcb.And(cmsNews._.IsAudit == 1);          // 已审核的
            }
            if (isIndex)
            {
                wcb.And(cmsNews._.IsIndex == 1);          // 已推荐的
            }
            FromSection fs = GetFromSection(null, null)
                             .InnerJoin <cmsNewsCatalog>(cmsNewsCatalog._.NodeCode == cmsNews._.NodeCode)
                             .InnerJoin <cmsNewsTopicRel>(cmsNews._.Id == cmsNewsTopicRel._.NewsId)
                             .Select(cmsNews._.All, cmsNewsCatalog._.NodeName)
                             .Where(wcb.ToWhereClip())
                             .OrderBy(cmsNews._.EditTime.Desc);

            if (top > 0)
            {
                fs = fs.Top(top);
            }

            return(fs.ToDataTable());
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="top"></param>
        /// <param name="nodecode"></param>
        /// <param name="isLike"></param>
        /// <param name="isAudit"></param>
        /// <param name="isIndex"></param>
        /// <returns></returns>
        public DataTable GetTopNews(int top, string nodecode, bool isLike, bool isAudit, bool isIndex)
        {
            WhereClipBuilder wcb = new WhereClipBuilder();

            if (!string.IsNullOrEmpty(nodecode))
            {
                if (!isLike)
                {
                    wcb.And(cmsNews._.NodeCode == nodecode);
                }
                else
                {
                    wcb.And(cmsNews._.NodeCode.BeginWith(nodecode));
                }
            }
            if (isAudit)
            {
                wcb.And(cmsNews._.IsAudit == 1);         // 已审核的
            }
            if (isIndex)
            {
                wcb.And(cmsNews._.IsIndex == 1);         // 已推荐的
            }
            FromSection fs = GetFromSection(wcb.ToWhereClip(), null)
                             .InnerJoin <cmsNewsCatalog>(cmsNewsCatalog._.NodeCode == cmsNews._.NodeCode)
                             .Select(cmsNews._.All, cmsNewsCatalog._.NodeName)
                             .OrderBy(cmsNews._.IsTop.Desc && cmsNews._.EditTime.Desc);

            if (top > 0)
            {
                fs = fs.Top(top);
            }

            return(fs.ToDataTable());
        }
Exemplo n.º 3
0
        /// <summary>
        /// 根据栏目编号获取推荐到首页的列表
        /// </summary>
        /// <param name="nodecode"></param>
        /// <param name="top"></param>
        /// <param name="isLike"></param>
        /// <returns></returns>
        public DataTable GetIndexList(long langId, string nodecode, int top, bool isLike)
        {
            if (top <= 0 || top > 10)
            {
                top = 10;
            }
            WhereClipBuilder wcb = new WhereClipBuilder();

            wcb.And(cmsNews._.LangId == langId);
            if (!string.IsNullOrEmpty(nodecode))
            {
                if (!isLike)
                {
                    wcb.And(cmsNews._.NodeCode == nodecode);
                }
                else
                {
                    wcb.And(cmsNews._.NodeCode.BeginWith(nodecode));
                }
            }
            wcb.And(cmsNews._.IsAudit == 1); // 已审核的
            wcb.And(cmsNews._.IsIndex == 1); // 推荐到首页的

            FromSection fs = GetFromSection(wcb.ToWhereClip(), null)
                             .InnerJoin <cmsNewsCatalog>(cmsNewsCatalog._.NodeCode == cmsNews._.NodeCode)
                             .Select(cmsNews._.All, cmsNewsCatalog._.NodeName)
                             .Top(top)
                             .OrderBy(cmsNews._.IsTop.Desc && cmsNews._.EditTime.Desc);

            return(fs.ToDataTable());
        }
Exemplo n.º 4
0
        /// <summary>
        /// 根据栏目类型获取推荐到首页的列表
        /// </summary>
        /// <param name="nodetype"></param>
        /// <param name="top"></param>
        /// <returns></returns>
        public DataTable GetIndexList(long langId, int nodetype, int top)
        {
            if (top <= 0 || top > 10)
            {
                top = 10;
            }
            WhereClipBuilder wcb = new WhereClipBuilder();

            wcb.And(cmsNews._.LangId == langId);
            wcb.And(cmsNewsCatalog._.NodeType == nodetype);
            wcb.And(cmsNews._.IsAudit == 1); // 已审核的
            wcb.And(cmsNews._.IsIndex == 1); // 推荐到首页的

            FromSection fs = GetFromSection(wcb.ToWhereClip(), null)
                             .InnerJoin <cmsNewsCatalog>(cmsNewsCatalog._.NodeCode == cmsNews._.NodeCode)
                             .Select(cmsNews._.All, cmsNewsCatalog._.NodeName)
                             .Top(top)
                             .OrderBy(cmsNews._.IsTop.Desc && cmsNews._.EditTime.Desc);

            return(fs.ToDataTable());
        }