예제 #1
0
        public void OnGet(int id)
        {
            //获得站点信息
            if (_cacheService.Exists(CacheKey.WEBCMSSITE))
            {
                Site = _cacheService.GetCache <CmsSite>(CacheKey.WEBCMSSITE);
            }
            else
            {
                Site = _siteService.GetModelAsync(m => m.Guid == "78756a6c-50c8-47a5-b898-5d6d24a20327").Result.data;
                //加入到缓存
                _cacheService.SetCache(CacheKey.WEBCMSSITE, Site, DateTimeOffset.Now.AddDays(30));
            }
            //获得栏目信息
            if (_cacheService.Exists(CacheKey.WEBCMSCOLUMN))
            {
                Column = _cacheService.GetCache <List <CmsColumn> >(CacheKey.WEBCMSCOLUMN);
            }
            else
            {
                Column = _columnService.GetListAsync(m => true, m => m.Sort, DbOrderEnum.Asc).Result.data;
                //加入到缓存
                _cacheService.SetCache(CacheKey.WEBCMSCOLUMN, Column, DateTimeOffset.Now.AddDays(30));
            }
            Article      = _articleService.GetModelAsync(m => m.Id == id).Result.data;
            ParentColumn = Column.Find(m => m.Id == Article.ColumnId);
            #region 增加点击量
            //判断是否为当前天
            if (Convert.ToDateTime(Article.LastHitDate).Day == DateTime.Now.Day)
            {
                Article.DayHits += 1;
            }
            //判断是否为当前星期
            if (Convert.ToDateTime(Article.LastHitDate).DayOfWeek == DateTime.Now.DayOfWeek)
            {
                Article.WeedHits += 1;
            }
            //判断是否为当前天月份
            if (Convert.ToDateTime(Article.LastHitDate).Month == DateTime.Now.Month)
            {
                Article.MonthHits += 1;
            }
            Article.Hits       += 1;
            Article.LastHitDate = DateTime.Now;
            _articleService.UpdateAsync(Article);
            #endregion

            #region 查询相关的案例
            ArticleList = _articleService.GetPagesAsync(new Service.DtoModel.PageParm()
            {
                limit = 6
            },
                                                        m => m.Audit && !m.IsRecyc && m.ColumnId == Article.ColumnId && m.Id != Article.Id,
                                                        m => m.Sort, DbOrderEnum.Desc).Result.data.Items;
            #endregion
        }
예제 #2
0
        public JsonResult GetDetail(int id = 0)
        {
            var model = _articleService.GetModelAsync(m => m.Id == id).Result.data;

            if (model == null)
            {
                model = new CmsArticle();
            }
            return(Json(new { model.Title, model.Summary, model.Content }));
        }
예제 #3
0
        public void OnGet(int id = 0, int column = 0)
        {
            Article = _articleervice.GetModelAsync(m => m.Id == id).Result.data;
            if (Article.Id == 0 && column != 0)
            {
                Article.ColumnId = column;
            }
            var list = _columnService.RecursiveModule(_columnService.GetListAsync().Result.data);

            foreach (var item in list)
            {
                item.Title = Utils.LevelName(item.Title, item.ClassLayer);
            }
            ColumnList = list;
        }
예제 #4
0
        public void OnGet(int id = 0, int column = 0)
        {
            Article = _articleervice.GetModelAsync(m => m.Id == id).Result.data;
            if (Article.Id == 0 && column != 0)
            {
                Article.ColumnId = column;
            }
            var siteGuid = SiteTool.CurrentSite?.Guid;
            var list     = _columnService.RecursiveModule(_columnService.GetListAsync(m => m.SiteGuid == siteGuid, m => m.Sort, DbOrderEnum.Asc).Result.data);

            foreach (var item in list)
            {
                item.Title = Utils.LevelName(item.Title, item.ClassLayer);
            }
            ColumnList = list;
        }
예제 #5
0
        public async Task OnGetAsync(int id = 0, int column = 0)
        {
            Article = (await _articleervice.GetModelAsync(m => m.Id == id)).data;
            if (Article.Id == 0 && column != 0)
            {
                Article.ColumnId = column;
            }

            var siteGuid = await _cache.SiteGuidAsync();

            var columns = (await _columnService.GetListAsync(m => m.SiteGuid == siteGuid, m => m.Sort, DbOrderEnum.Asc)).data;

            var list = _columnService.RecursiveModule(columns);

            foreach (var item in list)
            {
                item.Title = Utils.LevelName(item.Title, item.ClassLayer);
            }

            ColumnList = list;
        }