wf网站前台各类统计
前台Ajax统计文章发布总数和各类访问统计数据,名称自定义【网站数据统计.cshtml】
@Power.VisualizationPartialView(new
{
Description = "访问量数据统计"
})
<div class="tongji"></div>
<script type="text/javascript">
$.ajax({
url: '@Url.AjaxPartialUrl()',
type: 'post',
data: {
partialViewName: "访问量数据统计"
},
success: function (response) {
$(".tongji").html(response.html);
}
});
</script>详细统计参数标签【访问量数据统计.cshtml】
@inject SiteTrafficService SiteTrafficService
@inject ArticleService ArticleService
@inject SiteUniqueVisitorRecordService SiteUniqueVisitorRecordService
@inject IPowerCache PowerCache
@{
Dictionary<string, int> statistics = new Dictionary<string, int>();
var key = "PowerMainSiteFrontSiteInfoStatistics";
int sitePageView = 0;
int siteAllPageView = 0;
int siteArticleCount = 0;
int siteAllArticleCount = 0;
var online = SiteUniqueVisitorRecordService.OnlineCount();
if (!PowerCache.Contains(key))
{
var currentDate = DateTime.Now.Date.ToLocalTime();
sitePageView = SiteTrafficService.GetMany(pi => pi.SiteId == SystemConstant.DefaultSiteId && pi.RecordDate == currentDate).Sum(pi => pi.PvCount);
siteAllPageView = SiteTrafficService.GetMany(pi => pi.SiteId == SystemConstant.DefaultSiteId).Sum(pi => pi.PvCount);
siteArticleCount = ArticleService.Count(n => n.Status == Status.Approve && n.BelongSiteId == SystemConstant.DefaultSiteId && n.PublishTime > currentDate);
siteAllArticleCount = ArticleService.Count(n => n.Status == Status.Approve && n.BelongSiteId == SystemConstant.DefaultSiteId);
statistics.Add("sitePageView", sitePageView);
statistics.Add("siteAllPageView", siteAllPageView);
statistics.Add("siteArticleCount", siteArticleCount);
statistics.Add("siteAllArticleCount", siteAllArticleCount);
}else{
statistics = PowerCache.GetOrCreateWithRedis(key, () => statistics, 10);
}
}
<span>在线人数:@online</span>
<span>今日访问量:@statistics["sitePageView"]人次</span>
<span>网站访问总量:@statistics["siteAllPageView"]人次</span>
<span>全天信息发布:@statistics["siteArticleCount"]条</span>
<span>信息总量:@statistics["siteAllArticleCount"]条</span>前台使用方法:@Power.Partial("网站数据统计")
标签下载:
