Exemplo n.º 1
0
        public ActionResult Index(int page = 1)
        {
            if (db.CatCurrency.Count() != 0)
            {
                if (DateTime.Now.Subtract(db.CatCurrency.First().DateLoad) > new TimeSpan(1, 0, 0, 0))
                {
                    CurrencyUpdate();
                }
            }
            else
            {
                CurrencyUpdate();
            }

            ViewArticle model = new ViewArticle();

            model.Articles    = db.Articles.Include(o => o.Category).Include(o => o.Type).Where(o => o.CategoryId < 8).OrderByDescending(o => o.DateOrd);
            model.AllCurrency = db.CatCurrency.Where(c => c.curVisible == true);
            model.PolezArt    = db.Articles.Where(a => a.CategoryId == 13);
            model.PagingInfo  = new PagingInfo
            {
                CurrentPage  = page,
                ItemsPerPage = pageSize,
                TotalItems   = model.Articles.Count()
            };
            model.Articles = model.Articles.Skip((page - 1) * pageSize).Take(pageSize);
            return(View(model));
        }
Exemplo n.º 2
0
        public JsonResult SaveTree()
        {
            string result = "";

            try
            {
                string data    = Request["data"];
                string delNode = Request["delNode"];

                ViewArticle <ViewNode> nodes = DataJsonSerializer <ViewArticle <ViewNode> > .JsonToEntity(data);

                result = SaveAllNode(nodes.detailList, delNode);
            }
            catch (Exception ex)
            {
                result = ex.Message;
            }
            return(Json(new { Data = result }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        public ActionResult MoveMenu(int?categ, int?type, int page = 1)
        {
            ViewArticle model = new ViewArticle();

            model.Articles    = db.Articles.Include(o => o.Category).Include(o => o.Type).Where(a => a.CategoryId == categ).Where(a => a.TypeId == type).OrderByDescending(o => o.DateOrd);
            model.AllCurrency = db.CatCurrency.Where(c => c.curVisible == true);
            model.PolezArt    = db.Articles.Where(a => a.CategoryId == 13);
            model.PagingInfo  = new PagingInfo
            {
                CurrentPage  = page,
                ItemsPerPage = pageSize,
                TotalItems   = model.Articles.Count()
            };
            model.Articles = model.Articles.Skip((page - 1) * pageSize).Take(pageSize);

            if (model.Articles.Count() == 0)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(model));
            }
        }
Exemplo n.º 4
0
        //文章列表
        public ActionResult Article(string commandName, int?page)
        {
            try
            {
                System.Linq.IQueryable <PersonalWebsite.Models.Article> article;

                int    year = 0, month = 0;
                string type = null;
                if (Request["year"] != null && Request["year"] != "")
                {
                    year = Convert.ToInt32(Request["year"]);
                }
                if (Request["yearMonth"] != null && Request["yearMonth"] != "")
                {
                    year  = Convert.ToInt32(Request["yearMonth"].Split('-')[0]);
                    month = Convert.ToInt32(Request["yearMonth"].Split('-')[1]);
                }
                if (Request["type"] != null && Request["type"] != "")
                {
                    type = Request["type"];
                }

                //进行查询
                if (year != 0 && month == 0)
                {
                    //使用LINQ进行查询
                    article = from n in db7.Article
                              where n.ArticleDate.Year == year
                              select n;
                }
                else if (year != 0 && month != 0)
                {
                    //使用LINQ进行查询
                    article = from n in db7.Article
                              where n.ArticleDate.Year == year && n.ArticleDate.Month == month
                              select n;
                }
                else if (type != null)
                {
                    //使用LINQ进行查询
                    article = from n in db7.Article
                              where n.ArticleType == type
                              select n;
                }
                else
                {
                    article = from n in db7.Article
                              select n;
                }

                //进行分页
                article = article.OrderByDescending(n => n.ArticleID);
                const int            pageItems   = 10;
                int                  currentPage = (page ?? 1);
                IPagedList <Article> pageArticle = article.ToPagedList(currentPage, pageItems);
                ViewArticle          varticle    = new ViewArticle();
                varticle.ArticleList = pageArticle;
                varticle.year        = year;
                varticle.month       = month;
                varticle.type        = type;

                return(View("Article", varticle));
            }
            catch (Exception ex)
            {
                return(Content("<script>alert('Wrong arguments!');location.href='/Home/Article';</script>"));
            }
        }
Exemplo n.º 5
0
        public JsonResult SaveArticle()
        {
            bool   result = false;
            string msg    = "";

            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    string data     = Request["data"];
                    string deleteId = Request["deleteId"];

                    int nodeId  = 0;
                    int _orders = 1;

                    ViewArticle <ViewModifyArticle> article = DataJsonSerializer <ViewArticle <ViewModifyArticle> > .JsonToEntity(data);

                    List <string> decodeList = new List <string>();

                    var imageList = article.detailList.Where(p => p.Type == "image");
                    var videoList = article.detailList.Where(p => p.Type == "video");
                    foreach (ViewModifyArticle detail in article.detailList)
                    {
                        string detailId      = detail.detailId;
                        string detailType    = detail.Type;
                        string detailContent = HttpUtility.UrlDecode(detail.Content);

                        //添加主标题
                        if (detailType == "title")
                        {
                            Node dbNode = db.Nodes.Find(int.Parse(detail.detailId));

                            nodeId          = int.Parse(detailId);
                            dbNode.nodeName = detailContent;
                            if (imageList.Count() > 0)
                            {
                                dbNode.url = HttpUtility.UrlDecode(imageList.ToList()[0].Content);
                            }
                            else
                            {
                                dbNode.url = "";//默认图片
                            }
                            if (videoList.Count() > 0)
                            {
                                dbNode.isVideo = 1;
                            }
                            else
                            {
                                dbNode.isVideo = 0;
                            }
                            if (article.detailList.Count > 1)
                            {
                                dbNode.isUsable = 1;
                            }
                            else
                            {
                                dbNode.isUsable = 0;
                            }

                            db.SaveChanges();
                        }
                        else
                        {
                            if (detail.detailId == "")
                            {
                                ArticleDetail details = new ArticleDetail();

                                details.nodeId         = nodeId;
                                details.detailType     = detailType;
                                details.detailContent  = detailContent;
                                details.souceFileName  = HttpUtility.UrlDecode(detail.sourceFileName);
                                details.orders         = _orders;
                                details.lastUpdateDate = DateTime.Now;

                                db.ArticleDetail.Add(details);
                            }
                            else
                            {
                                ArticleDetail details = db.ArticleDetail.Find(int.Parse(detail.detailId));

                                if ((details.detailType == "image" || details.detailType == "video") && details.detailContent != detailContent)
                                {
                                    Util.DeleteBlog(details.detailContent);//新文件与原文件不是同一文件,则删除旧文件
                                }

                                details.detailContent  = detailContent;
                                details.souceFileName  = HttpUtility.UrlDecode(detail.sourceFileName);
                                details.orders         = _orders;
                                details.lastUpdateDate = DateTime.Now;
                            }
                            db.SaveChanges();

                            _orders++;
                        }
                    }

                    if (deleteId != "")
                    {
                        string[] delIdAry = deleteId.TrimEnd('|').Split('|');
                        foreach (string detailId in delIdAry)
                        {
                            ArticleDetail detail = db.ArticleDetail.Find(int.Parse(detailId));

                            if (detail.detailType == "image" || detail.detailType == "video")
                            {
                                Util.DeleteBlog(detail.detailContent);//删除文件
                            }

                            db.ArticleDetail.Remove(detail);
                            db.SaveChanges();
                        }
                    }

                    scope.Complete();

                    result = true;
                    msg    = "保存成功";
                }
                catch (Exception ex)
                {
                    msg = ex.Message;
                }
                finally
                {
                    scope.Dispose();
                }
            }

            return(Json(new { Result = result, Msg = msg }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 6
0
        public JsonResult AddNewArticle()
        {
            bool   result = false;
            string msg    = "";
            int    nodeId = 0;

            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    string parentId  = Request["parentId"];
                    string data      = Request["data"];
                    int    _parentId = int.Parse(parentId);
                    int    _orders   = 1;

                    ViewArticle <ViewArticleDetail> article = DataJsonSerializer <ViewArticle <ViewArticleDetail> > .JsonToEntity(data);

                    List <string> decodeList = new List <string>();

                    var imageList = article.detailList.Where(p => p.Type == "image");
                    var videoList = article.detailList.Where(p => p.Type == "video");
                    foreach (ViewArticleDetail detail in article.detailList)
                    {
                        string detailType    = detail.Type;
                        string detailContent = HttpUtility.UrlDecode(detail.Content);

                        //添加主标题
                        if (detailType == "title")
                        {
                            Node dbNode = new Node();

                            dbNode.parentId = _parentId;
                            dbNode.nodeName = detailContent;
                            if (imageList.Count() > 0)
                            {
                                dbNode.url = HttpUtility.UrlDecode(imageList.ToList()[0].Content);
                            }
                            else
                            {
                                dbNode.url = "";//默认图片
                            }
                            dbNode.isArticle = 1;
                            if (videoList.Count() > 0)
                            {
                                dbNode.isVideo = 1;
                            }
                            if (article.detailList.Count > 1)
                            {
                                dbNode.isUsable = 1;
                            }
                            else
                            {
                                dbNode.isUsable = 0;
                            }
                            dbNode.createPerson = t_userName;
                            dbNode.createDate   = DateTime.Now;

                            db.Nodes.Add(dbNode);
                            db.SaveChanges();

                            nodeId = dbNode.nodeId; //数据库生成的Id
                        }
                        else
                        {
                            ArticleDetail details = new ArticleDetail();

                            details.nodeId         = nodeId;
                            details.detailType     = detailType;
                            details.detailContent  = detailContent;
                            details.souceFileName  = HttpUtility.UrlDecode(detail.sourceFileName);
                            details.orders         = _orders;
                            details.lastUpdateDate = DateTime.Now;

                            db.ArticleDetail.Add(details);
                            db.SaveChanges();

                            _orders++;
                        }
                    }
                    scope.Complete();

                    result = true;
                    msg    = "保存成功";
                }
                catch (Exception ex)
                {
                    msg = ex.Message;
                }
                finally
                {
                    scope.Dispose();
                }
            }

            return(Json(new { Result = result, Msg = msg, nodeId = nodeId }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 7
0
        /// <summary>
        /// method to add an article
        /// </summary>
        /// <param name="viewArticle">article</param>
        public void AddArticle(ViewArticle viewArticle)
        {
            var article = new Article(viewArticle.name, viewArticle.date, viewArticle.content);

            articleContext.AddArticle(article);
        }