예제 #1
0
        /// <summary>
        /// 个人首页
        /// </summary>
        /// <returns></returns>
        public ActionResult PersonIndex(int PageNo = 1)
        {
            if (Session[ConstHelper.Session_USERID] == null)
            {
                return(Redirect("/Home/Index"));
            }
            var u = UserInfo.GetUserInfoBySn(Session[ConstHelper.Session_USERID].ToString());

            ArticleListManager.ArticleQueryFilter filter = ArticleListManager.FirstPageArticleQueryFileter;
            //难度和分类
            filter.Levelist    = u.Level.Count == 0 ? null : u.Level.ToArray();
            filter.Cataloglist = u.Catalog.Count == 0 ? null : u.Catalog.ToArray();
            filter.ContainTag  = string.IsNullOrEmpty(u.ContainTag) ? null : u.ContainTag.Split(";".ToArray());
            filter.AntiTag     = string.IsNullOrEmpty(u.AntiTag) ? null : u.AntiTag.Split(";".ToArray());
            //TODO:标签
            Pages p = new Pages(ArticleListManager.GetArticleCnt(filter), 20)
            {
                CurrentPageNo = PageNo
            };
            var currentpageList = ArticleListManager.GetPublicListForArticleByPage(p, filter);

            ViewData.Model      = currentpageList;
            ViewBag.TopArticle  = ArticleListManager.GetTopArticle();
            ViewBag.Pages       = p;
            ViewBag.TopArticle  = ArticleListManager.GetTopArticle();
            ViewBag.AsideFirst  = ASideColumnManager.MostArticleAuthor(10);
            ViewBag.AsideSecond = ASideColumnManager.MostHotTag(10);
            ViewBag.AsideThird  = ASideColumnManager.HotArticle(10, 72);
            return(View());
        }
예제 #2
0
 /// <summary>
 /// 系列教程一览
 /// </summary>
 /// <returns></returns>
 public ActionResult SerialList()
 {
     ViewData.Model      = Collection.getAllSerial();
     ViewBag.TopArticle  = ArticleListManager.GetTopArticle();
     ViewBag.AsideFirst  = ASideColumnManager.MostArticleAuthor(10);
     ViewBag.AsideSecond = ASideColumnManager.MostHotTag(10);
     ViewBag.AsideThird  = ASideColumnManager.HotArticle(10, 72);
     return(View());
 }
예제 #3
0
        /// <summary>
        /// 首页文章加载
        /// </summary>
        /// <param name="PageNo"></param>
        /// <returns></returns>
        public ActionResult Index(int PageNo = 1)
        {
            Pages p = new Pages(ArticleListManager.GetArticleCnt(ArticleListManager.FirstPageArticleQueryFileter), 20)
            {
                CurrentPageNo = PageNo
            };
            var currentpageList = ArticleListManager.GetPublicListForArticleByPage(p, ArticleListManager.FirstPageArticleQueryFileter);

            ViewData.Model      = currentpageList;
            ViewBag.TopArticle  = ArticleListManager.GetTopArticle();
            ViewBag.Pages       = p;
            ViewBag.AsideFirst  = ASideColumnManager.MostArticleAuthor(10);
            ViewBag.AsideSecond = ASideColumnManager.MostHotTag(10);
            ViewBag.AsideThird  = ASideColumnManager.HotArticle(10, 72);
            return(View());
        }
예제 #4
0
        /// <summary>
        /// 统计
        /// </summary>
        /// <returns></returns>
        public ActionResult Statistics()
        {
            //标签
            ViewBag.TagChartName = "/Temp/" + DateTime.Now.ToString("yyyyMMdd") + "_Tag.jpeg";
            string tagFilename = Server.MapPath(ViewBag.TagChartName);

            if (!System.IO.File.Exists(tagFilename))
            {
                var tagDictionary = new Dictionary <string, int>();
                for (int i = 0; i < Math.Min(10, TagUtility.TagRankContain.RankList.Count); i++)
                {
                    tagDictionary.Add(TagUtility.TagRankContain.RankList[i].Key, TagUtility.TagRankContain.RankList[i].Count);
                }
                InfraStructure.Chart.ChartHelper.GetColumnChart(tagFilename, "标签数量TOP10", tagDictionary, InfraStructure.Chart.ChartType.Column, 800, 600);
            }

            //作者
            ViewBag.AuthorChartName = "/Temp/" + DateTime.Now.ToString("yyyyMMdd") + "_Author.jpeg";
            string authorFilename = Server.MapPath(ViewBag.AuthorChartName);
            var    userRank       = new RankContain(UserManager.UserGroupCntResult());

            ViewBag.UserRank = userRank;
            if (!System.IO.File.Exists(authorFilename))
            {
                var userDictionary = new Dictionary <string, int>();
                for (int i = 0; i < Math.Min(10, userRank.RankList.Count); i++)
                {
                    userDictionary.Add(UserInfo.GetUserNickNameByAccountId(userRank.RankList[i].Key), userRank.RankList[i].Count);
                }
                InfraStructure.Chart.ChartHelper.GetColumnChart(authorFilename, "作者TOP10", userDictionary, InfraStructure.Chart.ChartType.Column, 800, 600);
            }


            ViewBag.AsideFirst  = ASideColumnManager.MostArticleAuthor(10);
            ViewBag.AsideSecond = ASideColumnManager.MostHotTag(10);
            ViewBag.AsideThird  = ASideColumnManager.HotArticle(10, 72);
            return(View());
        }