예제 #1
0
        public ActionResult GetAllPagedNews(int skip, int?take)
        {
            PagedNews newsModel = new PagedNews();

            if (take == null)
            {
                newsModel = Mapper.Map <PagedNews>(_NewsService.GetAllPagedNews(skip, GlobalConst.Records.Take, HCRGCLIENT.OrganizationID));
            }
            else
            {
                newsModel = Mapper.Map <PagedNews>(_NewsService.GetAllPagedNews(skip, take.Value, HCRGCLIENT.OrganizationID));
            }
            newsModel.PagedRecords = GlobalConst.Records.Take;
            foreach (News viewmodel in newsModel.NewsRecords)
            {
                Regex regex = new Regex("\\<[^\\>]*\\>");
                viewmodel.NewsDescriptionShort = regex.Replace(HttpUtility.HtmlDecode(viewmodel.NewsDescription), String.Empty);
                viewmodel.NewsDescriptionShort = viewmodel.NewsDescriptionShort.Replace("&nbsp;", "");
                if (viewmodel.NewsDescriptionShort.Length > 1000)
                {
                    viewmodel.NewsDescriptionShort = viewmodel.NewsDescriptionShort.Substring(0, 1000);
                }
            }
            return(Json(newsModel, GlobalConst.Message.text_html));
        }
예제 #2
0
        public PagedNews GetProjectNewsDetail(int PID, int?page, int?status, int?pageSize, DateTime?start, DateTime?end)
        {
            PagedNews newsDetail = new PagedNews()
            {
                CurrentPage = page.HasValue ? (int)page : 1,
                PageSize    = pageSize.HasValue ? pageSize.Value : NewsConsts.DefaultNewsPageSize,
                Status      = status.HasValue ? (int)status : NewsConsts.NewsStatusAll,
            };

            if (start.HasValue || end.HasValue)
            {
                //最低查询10年前新闻 (筛选出来的都是2010年之后的)
                newsDetail.Min        = (start.HasValue ? start.Value : DateTime.Now.AddYears(-10));
                newsDetail.Max        = (end.HasValue ? end.Value : DateTime.Now);
                newsDetail.TotalCount = CountNewsByProjectAndStatusAndTime(PID, NewsConsts.NewsStatusAll, newsDetail.Min, newsDetail.Max);
                newsDetail.ReadCount  = CountNewsByProjectAndStatusAndTime(PID, NewsConsts.NewsStatusRead, newsDetail.Min, newsDetail.Max);
                newsDetail.News       = GetNewsByProjectIDAndTime(PID, newsDetail.CurrentPage, newsDetail.PageSize, newsDetail.Min, newsDetail.Max);
            }
            else
            {
                newsDetail.TotalCount = CountNewsByProjectAndStatus(PID, NewsConsts.NewsStatusAll);
                newsDetail.ReadCount  = CountNewsByProjectAndStatus(PID, NewsConsts.NewsStatusRead);
                newsDetail.News       = GetNewsByProjectIDAndStatus(PID, newsDetail.CurrentPage, newsDetail.PageSize, newsDetail.Status);
            }
            newsDetail.UnreadCount = newsDetail.TotalCount - newsDetail.ReadCount;
            newsDetail.TotalPage   = newsDetail.TotalCount / newsDetail.PageSize + (newsDetail.TotalCount % newsDetail.PageSize == 0 ? 0 : 1);
            if (newsDetail.TotalPage == 0)
            {
                newsDetail.TotalPage = 1;
            }
            return(newsDetail);
        }
예제 #3
0
        public ActionResult GetNewsByNewsTitle(string newsTitle, int?skip)
        {
            PagedNews pagedNews = new PagedNews();

            if (skip == null)
            {
                pagedNews = Mapper.Map <PagedNews>(_NewsService.GetNewsByNewsTitlePaged(newsTitle, HCRGCLIENT.OrganizationID, GlobalConst.Records.Skip, GlobalConst.Records.Take));
            }
            else
            {
                pagedNews = Mapper.Map <PagedNews>(_NewsService.GetNewsByNewsTitlePaged(newsTitle, HCRGCLIENT.OrganizationID, skip.Value, GlobalConst.Records.Take));
            }

            return(Json(pagedNews, GlobalConst.Message.text_html));
        }
예제 #4
0
 public MonitorViewModel()
 {
     NewsDetail  = new PagedNews();
     Agencys     = new Agencies();
     Projectinfo = new ProjectInfo();
 }