Exemple #1
0
        public ApiResult <ListOutput> TopHelpList()
        {
            var parameter = new ArticleInput {
                ChannelId  = ChannelType.Help.GetFieldAttribute().GuidId,
                ClientType = ClientType.WapH5,
                OrderType  = 1,
                TotalCount = 5
            };

            var model     = Resolve <IArticleService>().GetArticleList(parameter);
            var apiOutput = new ListOutput {
                TotalSize = model.Count() / parameter.PageSize
            };

            foreach (var item in model)
            {
                var apiData = new ListItem {
                    Title = $"{item.Title}",
                    Intro = $"{item.SubTitle} {item.CreateTime:yyyy-MM-dd hh:ss}",
                    Extra = $"{item.CreateTime:yyyy-MM-dd hh:ss}",
                    Id    = item.Id,
                    Url   = $"/pages/index?path=articles_show&id={item.Id}"
                };
                apiOutput.ApiDataList.Add(apiData);
            }

            return(ApiResult.Success(apiOutput));
        }
        public IEnumerable <get_Articles> PostFreezedArticles([FromBody] ArticleInput admin)
        {
            List <get_deleted_articles_Result> articleList = new List <get_deleted_articles_Result>();
            List <get_Articles> finalArticleList           = new List <get_Articles>();

            using (var articles = db.get_deleted_articles(admin.email, admin.site_url))
            {
                articleList = articles.ToList <get_deleted_articles_Result>();
            }
            foreach (var item in articleList)
            {
                get_Articles post = new get_Articles();
                post.serial_no     = item.serial_no;
                post.a_id          = item.a_id;
                post.title         = item.title;
                post.site_url      = item.site_url;
                post.site_name     = getSiteName(post.site_url);
                post.status        = false;
                post.photo_url     = "";
                post.modified_date = item.modified_date;
                post.category      = item.category;
                post.url           = item.url;
                post.summary       = item.summary;
                post.custom        = item.custom;
                post.sub_category  = item.sub_category;


                post.shares = 0;

                post.views = "0";

                finalArticleList.Add(post);
            }
            return(finalArticleList);
        }
        public void GetArticleList_ArticleInput_test()
        {
            var articleInput = new ArticleInput();
            var result       = Resolve <IArticleService>().GetArticleList(articleInput);

            Assert.NotNull(result);
        }
Exemple #4
0
        public ApiResult <ListOutput> List(ArticleInput parameter)
        {
            parameter.ChannelId = ChannelType.Help.GetFieldAttribute().GuidId;
            var model     = Resolve <IArticleService>().GetArticleList(parameter);
            var apiOutput = new ListOutput
            {
                TotalSize = model.Count() / parameter.PageSize
            };

            foreach (var item in model)
            {
                var apiData = new ListItem
                {
                    Title = $"{item.Title}",
                    Intro = $"{item.SubTitle} {item.CreateTime:yyyy-MM-dd hh:ss}",
                    Extra = $"{item.CreateTime:yyyy-MM-dd hh:ss}",
                    Id    = item.Id,
                    Url   = $"Api/Transfer/Get?loginUserId={parameter.LoginUserId}&id={item.Id}"
                };
                apiOutput.ApiDataList.Add(apiData);
            }

            return(ApiResult.Success(apiOutput));
        }
    }
Exemple #5
0
 public JsonResult InsertOrUpdate(ArticleInput input)
 {
     using (ArticlesService Article = new ArticlesService())
     {
         Mapper.Initialize(x => x.CreateMap <Articles, ArticleInput>());
         var entity = Mapper.Map <Articles>(input);
         var result = Article.Reposity.InsertOrUpdate(entity);
         return(Json(result));
     }
 }
        public ActionResult AddArticle(ArticleInput input, string CatName)
        {
            CheckPermission(GetLoginInfo().User.Id, CurrentUrl);
            ViewBag.PageTitle = "新增文章";
            if (CheckInputWhenReturnActionResult() == false)
            {
                return(View(input));
            }

            var parameters = ModelHelper.GetPropertyDictionary <ArticleInput>(input);

            var responseResult = PostStandardWithSameControllerAction <object>(this, parameters);

            if (responseResult.IsSuccess)
            {
                TempData["Message"] = "添加成功!";

                //静态化处理
                string content         = System.IO.File.ReadAllText(Server.MapPath("~/Templates/ArticleDetail.html"));
                var    articleHtmlPath = Server.MapPath("~/Articles/");
                if (!Directory.Exists(articleHtmlPath))
                {
                    Directory.CreateDirectory(articleHtmlPath);
                }

                string htmlResult = content.Replace("@PageTitle", input.Title)
                                    .Replace("@Title", input.Title)
                                    .Replace("@CatName", CatName)
                                    .Replace("@CreateTime", DateTime.Now.ToString("yyyy.MM.dd"))
                                    .Replace("@UpdateTime", DateTime.Now.ToString("yyyy.MM.dd"))
                                    .Replace("@Content", input.Content);

                System.IO.File.WriteAllText(articleHtmlPath + "article_" + responseResult.Entity + ".html", htmlResult, Encoding.UTF8);

                //.Replace("@Click",input)

                return(RedirectToAction("ArticleList"));
            }
            else
            {
                TempData["Error"] = responseResult.Message;
                return(View(input));
            }
        }
        public JsonResult CreateOrUpdate(ArticleInput model)
        {
            ResultDto <long> result = new ResultDto <long>();

            try
            {
                ArticlesService   ArticleRead = new ArticlesService();
                ArticlesService   Article     = new ArticlesService();
                CategoriesService Category    = new CategoriesService();
                var input = Mapper.Map <Articles>(model);
                if (input.Id == 0)
                {
                    input.CreationTime = DateTime.Now;
                }
                else
                {
                    input.Category = Category.Reposity.Get(input.CategoryId);
                    //input.UpdateTime = DateTime.Now;
                    input.CreationTime = ArticleRead.Reposity.Get(input.Id).CreationTime;
                }
                input.Contents = HttpUtility.HtmlDecode(input.Contents);
                input.TenantId = TenantId;

                Article.Reposity.InsertOrUpdate(input);
                result.code    = 100;
                result.datas   = input.Id;
                result.message = "ok";
                Category.Dispose();
                Article.Dispose();
                ArticleRead.Dispose();
            }
            catch (Exception ex)
            {
                result.code    = 500;
                result.message = ex.Message;
            }
            return(Json(result));
        }
        public JsonResult AddArticle(ArticleInput input)
        {
            CheckPermission();
            using (var result = new ResponseResult <object>())
            {
                var articleModel = Mapper.Map <T_ARTICLE>(input);
                articleModel.CreateTime = DateTime.Now;
                articleModel.UpdateTime = articleModel.CreateTime;
                articleModel.Content    = HttpUtility.HtmlDecode(articleModel.Content);//接收后解码

                //是否同时推送到轮播图
                if (input.AddToCarousel)
                {
                    articleModel.IsPutOnCarousel = true;
                }
                _articleService.Insert(articleModel);
                articleModel.Url = "/Articles/article_" + articleModel.Id + ".html";
                _articleService.Update(articleModel);

                //添加到推送
                if (input.AddToPushNotification)
                {
                    var content = "学习园地中有新东西发布,快去看看吧……";
                    _notificationService.Insert(new T_NOTIFICATION
                    {
                        MsgContent           = content.Substring(0, content.Length > 250 ? 250 : content.Length),
                        IsPublic             = true,
                        NotificationType     = 1,
                        NotificationSource   = articleModel.Url,
                        NotificationSourceId = articleModel.Id,
                    });
                }

                result.Entity = articleModel.Id;
                return(new JsonResultEx(result));
            }
        }
Exemple #9
0
        public ApiResult <ListOutput> TopLineList(ArticleInput parameter)
        {
            parameter.ChannelId = ChannelType.TopLine.GetFieldAttribute().GuidId;
            var webSite     = Resolve <IAutoConfigService>().GetValue <WebSiteConfig>();
            var model       = Resolve <IArticleService>().GetArticleList(parameter);
            var articleList = new List <ArticleItem>();

            if (!parameter.RelationIds.IsNullOrEmpty())
            {
                var relationList = Resolve <IRelationIndexService>()
                                   .GetList(u => u.RelationId.ToString() == parameter.RelationIds);
                relationList.Foreach(u => {
                    var temp = model.FirstOrDefault(z => z.RelationId == u.EntityId);
                    articleList.Add(temp);
                });
                model = articleList;
            }

            var apiOutput = new ListOutput {
                TotalSize = model.Count() / parameter.PageSize
            };

            foreach (var item in model)
            {
                var apiData = new ListItem {
                    Title = $"{item.Title}",
                    Intro = $"{item.SubTitle} {item.CreateTime:yyyy-MM-dd hh:ss}",
                    Extra = $"{item}",
                    Id    = item.Id,
                    Url   = $"/pages/index?path=articles_topline_show&id={item.Id}".ToClientUrl(parameter.ClientType),
                    Image = Resolve <IApiService>().ApiImageUrl(item.ImageUrl)
                };
                apiOutput.ApiDataList.Add(apiData);
            }

            return(ApiResult.Success(apiOutput));
        }
Exemple #10
0
        public ApiResult <ListOutput> ArticleList(ArticleInput parameter)
        {
            parameter.ChannelId = ChannelType.Article.GetFieldAttribute().GuidId;
            var model = Resolve <IArticleService>().GetArticleList(parameter);

            var articleList = new List <ArticleItem>();

            if (!parameter.RelationIds.IsNullOrEmpty())
            {
                var relationList = Resolve <IRelationIndexService>()
                                   .GetList(u => u.RelationId.ToString() == parameter.RelationIds);
                relationList.Foreach(u => {
                    var temp = model.FirstOrDefault(z => z.RelationId == u.EntityId);
                    articleList.Add(temp);
                });
                model = articleList;
            }

            var apiOutput = new ListOutput {
                TotalSize = model.Count() / parameter.PageSize
            };

            foreach (var item in model)
            {
                var apiData = new ListItem {
                    Title = $"{item.Title}",
                    Intro = $"{item.SubTitle} {item.CreateTime:yyyy-MM-dd hh:ss}",
                    Extra = $"{item.CreateTime:yyyy-MM-dd hh:ss}",
                    Id    = item.Id,
                    Url   = $"Api/Transfer/Get?loginUserId={parameter.LoginUserId}&id={item.Id}"
                };
                apiOutput.ApiDataList.Add(apiData);
            }

            return(ApiResult.Success(apiOutput));
        }
Exemple #11
0
        public List <ArticleItem> GetArticleList(ArticleInput articleInput)
        {
            var query = new ExpressionQuery <Article>();

            query.OrderByAscending(e => e.CreateTime);
            if (!articleInput.ChannelId.IsNullOrEmpty())
            {
                query.And(r => r.ChannelId == articleInput.ChannelId.ToObjectId());
            }

            if (articleInput.OrderType == 0)
            {
                query.OrderByAscending(a => a.ViewCount);
            }
            else
            {
                query.OrderByDescending(a => a.ViewCount);
            }

            var list   = GetList(query);
            var result = new List <ArticleItem>();

            foreach (var item in list)
            {
                if (articleInput.TotalCount > 0 && result.Count >= articleInput.TotalCount)
                {
                    break;
                }

                var articleItem = AutoMapping.SetValue <ArticleItem>(item);
                articleItem.RelationId = item.RelationId;
                result.Add(articleItem);
            }

            return(result);
        }
 public ActionResult EditArticle(ArticleInput input)
 {
     CheckPermission(GetLoginInfo().User.Id, CurrentUrl);
     return(View());
 }