/// <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()); }
/// <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()); }
/// <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()); }
/// <summary> /// 标签列表 /// </summary> /// <param name="TagName"></param> /// <returns></returns> public ActionResult TagList(string TagName, int PageNo = 1) { var articles = Article.GetArticleListByTag(TagName); Pages p = new Pages(articles.Count, 50) { CurrentPageNo = PageNo }; ViewBag.TagArticleCnt = articles.Count; ViewBag.Pages = p; var articlebodys = ArticleListManager.GetArticleItemBodyListByArticleList(p.GetList(articles)); ViewBag.MostAuthorByTag = ASideColumnManager.GetMostAuthorByTag(TagName, 10); ViewData.Model = articlebodys; ViewBag.TagStockCnt = articlebodys.Sum((x) => { return(x.StockCnt); }); ViewBag.Title = TagName; return(View()); }
/// <summary> /// 收藏页 /// </summary> /// <param name="accountid"></param> /// <param name="PageNo"></param> /// <returns></returns> public ActionResult StockPage(int PageNo = 1) { if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/")); } var accountid = Session[ConstHelper.Session_USERID].ToString(); var StockList = Stock.GetStockByAccount(accountid); Pages p = new Pages(StockList.Count, 50); p.CurrentPageNo = PageNo; ViewBag.Pages = p; ViewData.Model = p.GetList(StockList); ViewBag.Title = "收藏页"; var rankContain = TagUtility.Statistics((StockList.Select((x) => { return(x.ArticleInfo); }).ToList())); ViewBag.PersonalStockAside = ASideColumnManager.CreateTagRankAside(rankContain, 10); return(View()); }
/// <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()); }
/// <summary> /// 作者页 /// </summary> /// <param name="accountid"></param> /// <returns></returns> public ActionResult Index(string CollectionId, string accountid) { if (accountid == null) { return(Redirect("/")); } var user = UserInfo.GetUserInfoBySn(accountid); if (user == null) { return(Redirect("/")); } var collectionlist = Collection.GetCollectionListByOwnerId(accountid); if (CollectionId == "0") { if (collectionlist.Count > 0) { CollectionId = collectionlist[0].Sn; } } ViewBag.CollectionId = CollectionId; ViewBag.CollectionList = collectionlist; if (collectionlist.Count == 0) { //如果没有文集,则什么都不显示 ViewBag.CollectionArticles = new List <Article>(); } else { //显示第一个或者指定文集 var CurrentCollectionId = string.IsNullOrEmpty(CollectionId) ? collectionlist[0].Sn : CollectionId; ArticleListManager.ArticleQueryFilter aqf = new ArticleListManager.ArticleQueryFilter() { collectionid = CurrentCollectionId, isPrivate = false, statuslist = new ApproveStatus[] { ApproveStatus.Accept, ApproveStatus.NotNeed } }; if (Session[ConstHelper.Session_USERID] != null && Session[ConstHelper.Session_USERID].ToString().Equals(accountid)) { //自己看自己 aqf.isPrivate = null; aqf.statuslist = null; } var ArticleList = ArticleListManager.GetArticleItemBodyListByArticleList(ArticleListManager.GetArticles(aqf)); ViewBag.CollectionArticles = ArticleList; } var userbody = UserManager.GetUserBody(accountid); ViewData.Model = userbody; ViewBag.Title = user.NickName; ArticleListManager.ArticleQueryFilter publicAQF = new ArticleListManager.ArticleQueryFilter() { ownid = accountid, isPrivate = false, statuslist = new ApproveStatus[] { ApproveStatus.Accept, ApproveStatus.NotNeed } }; var articles = ArticleListManager.GetArticles(publicAQF); var rankContain = TagUtility.Statistics(articles); ViewBag.PersonalTagAside = ASideColumnManager.CreateTagRankAside(rankContain, 10); ViewBag.PersonalHobbyAside = ASideColumnManager.TagHobby(accountid, 10); ViewBag.RankTagDic = rankContain.RankKeyDic; return(View()); }