From fe17f43f3a092dd9643b9dbf7819cf6813811fa5 Mon Sep 17 00:00:00 2001 From: thinkgem Date: Mon, 6 Mar 2023 11:26:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jeesite/modules/cms/dao/ArticleDao.java | 4 +- .../jeesite/modules/cms/entity/Article.java | 52 +++++++++---------- .../modules/cms/service/ArticleService.java | 28 +++++----- .../cms/service/FileTempleteService.java | 10 ++-- .../jeesite/modules/cms/utils/CmsUtils.java | 16 +++--- .../modules/cms/web/ArticleController.java | 30 +++++------ .../modules/cms/web/CategoryController.java | 30 +++++------ .../modules/cmsfront/web/FrontController.java | 34 +++++------- .../mappings/modules/cms/ArticleDao.xml | 14 +++-- .../views/modules/cms/articleForm.html | 10 ++-- .../views/modules/cms/articleList.html | 2 +- .../views/modules/cms/categoryList.html | 2 +- .../views/modules/cms/commentList.html | 6 +-- .../views/modules/cms/reportList.html | 2 +- .../resources/views/modules/cms/siteList.html | 2 +- .../views/modules/cms/visitLogList.html | 2 +- .../cmsfront/themes/default/include/head.html | 4 +- 17 files changed, 121 insertions(+), 127 deletions(-) diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/dao/ArticleDao.java b/modules/cms/src/main/java/com/jeesite/modules/cms/dao/ArticleDao.java index ad45b4f3..a9b8b5f4 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/dao/ArticleDao.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/dao/ArticleDao.java @@ -16,8 +16,8 @@ import com.jeesite.modules.cms.entity.Article; @MyBatisDao public interface ArticleDao extends CrudDao
{ - public long updateExpiredWeight(Article article); + long updateExpiredWeight(Article article); - public long updateHitsAddOne(String id); + long updateHitsAddOne(String id); } \ No newline at end of file diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/entity/Article.java b/modules/cms/src/main/java/com/jeesite/modules/cms/entity/Article.java index 0bc6bc06..24bf8ef2 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/entity/Article.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/entity/Article.java @@ -4,13 +4,6 @@ */ package com.jeesite.modules.cms.entity; -import java.util.Date; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - -import javax.validation.constraints.Size; - import com.fasterxml.jackson.annotation.JsonFormat; import com.jeesite.common.entity.BaseEntity; import com.jeesite.common.entity.DataEntity; @@ -20,6 +13,11 @@ import com.jeesite.common.mybatis.annotation.Table; import com.jeesite.common.mybatis.mapper.query.QueryType; import com.jeesite.modules.cms.utils.CmsUtils; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; +import java.util.Date; + /** * 文章表Entity * @author 长春叭哥、ThinkGem @@ -45,7 +43,12 @@ import com.jeesite.modules.cms.utils.CmsUtils; @Column(name = "word_count", attrName = "wordCount", label = "字数", comment = "字数(不包含html)"), @Column(name = "custom_content_view", attrName = "customContentView", label = "自定义内容视图"), @Column(name = "view_config", attrName = "viewConfig", label = "视图配置"), - @Column(includeEntity = DataEntity.class), + @Column(name="status", attrName="status", label="状态", isUpdate=false), + @Column(name="create_by", attrName="createBy", label="创建者", isUpdate=true), + @Column(name="create_date", attrName="createDate", label="创建时间", isUpdate=false, isQuery=false), + @Column(name="update_by", attrName="updateBy", label="更新者", isUpdate=true), + @Column(name="update_date", attrName="updateDate", label="更新时间", isUpdate=true, isQuery=false), + @Column(name="remarks", attrName="remarks", label="备注信息", queryType=QueryType.LIKE), @Column(includeEntity = BaseEntity.class), }, joinTable = { @JoinTable(entity = Category.class, alias = "c", @@ -83,12 +86,13 @@ public class Article extends DataEntity
{ private Integer wordCount; // 字数(不包含html) private String customContentView; // 自定义内容视图 private String viewConfig; // 视图配置 + private ArticleData articleData; //文章副表 + private Boolean isQueryArticleData; // 是否查询文章内容 + private Date beginDate; // 开始时间 private Date endDate; // 结束时间 - private Boolean isQueryArticleData; // 是否查询文章内容 - public Article() { super(); //this.weight = 0; @@ -223,8 +227,6 @@ public class Article extends DataEntity
{ this.hits = hits; } - - public Integer getHitsPlus() { return hitsPlus; } @@ -275,6 +277,18 @@ public class Article extends DataEntity
{ this.articleData = articleData; } + /** + * 是否查询文章内容 + * @return + */ + public Boolean getIsQueryArticleData() { + return isQueryArticleData; + } + + public void setIsQueryArticleData(Boolean isQueryArticleData) { + this.isQueryArticleData = isQueryArticleData; + } + public Date getBeginDate() { return beginDate; } @@ -291,20 +305,6 @@ public class Article extends DataEntity
{ this.endDate = endDate; } - /** - * 是否查询文章内容 - * @return - */ - public Boolean getIsQueryArticleData() { - return isQueryArticleData; - } - - public void setIsQueryArticleData(Boolean isQueryArticleData) { - this.isQueryArticleData = isQueryArticleData; - } - - - public String getUrl() { return CmsUtils.getUrlDynamic(this); } diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java b/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java index c0f5a00d..989743b1 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/service/ArticleService.java @@ -4,19 +4,6 @@ */ package com.jeesite.modules.cms.service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - import com.jeesite.common.collect.ListUtils; import com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; @@ -31,8 +18,19 @@ import com.jeesite.modules.cms.entity.Category; import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.file.utils.FileUploadUtils; import com.jeesite.modules.sys.utils.UserUtils; - import io.netty.util.concurrent.DefaultThreadFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; /** * 文章表Service @@ -81,7 +79,7 @@ public class ArticleService extends CrudService { /** * 查询分页数据 * @param article 查询条件 - * @param article.page 分页对象 + * @param article page 分页对象 * @return */ @Override diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/service/FileTempleteService.java b/modules/cms/src/main/java/com/jeesite/modules/cms/service/FileTempleteService.java index cb5cc0ec..aadbc2e8 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/service/FileTempleteService.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/service/FileTempleteService.java @@ -4,16 +4,18 @@ */ package com.jeesite.modules.cms.service; +import java.io.IOException; +import java.util.List; + +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import com.beust.jcommander.internal.Lists; import com.jeesite.modules.cms.entity.FileTemplete; import com.jeesite.modules.cms.entity.Site; import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.cms.utils.FileTempleteUtils; import com.jeesite.modules.sys.entity.DictData; -import org.springframework.stereotype.Service; - -import java.io.IOException; -import java.util.List; /** * 模版文件Service diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java b/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java index 73c36b6b..e646b90a 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java @@ -4,14 +4,6 @@ */ package com.jeesite.modules.cms.utils; -import java.util.Collections; -import java.util.List; -import java.util.Map; - -import javax.servlet.ServletContext; - -import org.springframework.ui.Model; - import com.jeesite.common.cache.CacheUtils; import com.jeesite.common.collect.ListUtils; import com.jeesite.common.config.Global; @@ -26,6 +18,12 @@ import com.jeesite.modules.cms.entity.Site; import com.jeesite.modules.cms.service.ArticleService; import com.jeesite.modules.cms.service.CategoryService; import com.jeesite.modules.cms.service.SiteService; +import org.springframework.ui.Model; + +import javax.servlet.ServletContext; +import java.util.Collections; +import java.util.List; +import java.util.Map; /** * CmsUtils @@ -191,7 +189,7 @@ public class CmsUtils { * @param siteCode 站点编号 * @param categoryCode 分类编号 * @param number 获取数目 - * @param param 预留参数,例: key1:'value1', key2:'value2' ...
+ * @param params 预留参数,例: key1:'value1', key2:'value2' ...
* posid : 推荐位(1:首页焦点图;2:栏目页文章推荐;)
* image : 文章图片(1:有图片的文章)
* isQueryArticleData : 是否查询文章详情信息,查询会影响效率
diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/web/ArticleController.java b/modules/cms/src/main/java/com/jeesite/modules/cms/web/ArticleController.java index eadefbb8..e4366a6d 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/web/ArticleController.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/web/ArticleController.java @@ -4,22 +4,6 @@ */ package com.jeesite.modules.cms.web; -import java.io.IOException; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; - import com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; import com.jeesite.common.lang.StringUtils; @@ -33,6 +17,20 @@ import com.jeesite.modules.cms.service.CategoryService; import com.jeesite.modules.cms.service.FileTempleteService; import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.sys.utils.UserUtils; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.List; /** * 文章表Controller diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/web/CategoryController.java b/modules/cms/src/main/java/com/jeesite/modules/cms/web/CategoryController.java index badf6188..8c821c43 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/web/CategoryController.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/web/CategoryController.java @@ -4,20 +4,6 @@ */ package com.jeesite.modules.cms.web; -import java.io.IOException; -import java.util.List; -import java.util.Map; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; - import com.jeesite.common.collect.ListUtils; import com.jeesite.common.collect.MapUtils; import com.jeesite.common.config.Global; @@ -33,6 +19,20 @@ import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.sys.entity.Office; import com.jeesite.modules.sys.utils.DictUtils; import com.jeesite.modules.sys.utils.UserUtils; +import org.apache.shiro.authz.annotation.Logical; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.io.IOException; +import java.util.List; +import java.util.Map; /** * 栏目表Controller @@ -252,7 +252,7 @@ public class CategoryController extends BaseController { * @param isShowCode 是否显示编码(true or 1:显示在左侧;2:显示在右侧;false or null:不显示) * @return */ - @RequiresPermissions("cms:category:view") + @RequiresPermissions(value = {"cms:category:view", "cms:article:view"}, logical = Logical.OR) @RequestMapping(value = "treeData") @ResponseBody public List> treeData(String siteCode, String module, String excludeCode, Boolean isAll, String isShowCode) { diff --git a/modules/cms/src/main/java/com/jeesite/modules/cmsfront/web/FrontController.java b/modules/cms/src/main/java/com/jeesite/modules/cmsfront/web/FrontController.java index 0b9c2833..03927d3f 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cmsfront/web/FrontController.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cmsfront/web/FrontController.java @@ -4,37 +4,27 @@ */ package com.jeesite.modules.cmsfront.web; -import java.util.Date; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.ResponseBody; - import com.jeesite.common.collect.ListUtils; import com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; import com.jeesite.common.lang.ObjectUtils; import com.jeesite.common.lang.StringUtils; import com.jeesite.common.web.BaseController; -import com.jeesite.modules.cms.entity.Article; -import com.jeesite.modules.cms.entity.ArticleData; -import com.jeesite.modules.cms.entity.Category; -import com.jeesite.modules.cms.entity.Comment; -import com.jeesite.modules.cms.entity.Site; +import com.jeesite.modules.cms.entity.*; import com.jeesite.modules.cms.service.ArticleService; import com.jeesite.modules.cms.service.CategoryService; import com.jeesite.modules.cms.service.CommentService; import com.jeesite.modules.cms.utils.CmsUtils; import com.jeesite.modules.sys.utils.ValidCodeUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.Date; +import java.util.List; /** * 网站Controller @@ -310,8 +300,8 @@ public class FrontController extends BaseController { /** * 内容评论 */ - @RequestMapping(value = "comment", method = RequestMethod.GET) - public String comment(Comment comment, String theme, HttpServletRequest request, HttpServletResponse response, + @RequestMapping(value = "comment-{theme}", method = RequestMethod.GET) + public String comment(Comment comment, @PathVariable String theme, HttpServletRequest request, HttpServletResponse response, Model model) { Page page = new Page(request, response); Comment c = new Comment(); diff --git a/modules/cms/src/main/resources/mappings/modules/cms/ArticleDao.xml b/modules/cms/src/main/resources/mappings/modules/cms/ArticleDao.xml index 1c2c1821..5630e137 100644 --- a/modules/cms/src/main/resources/mappings/modules/cms/ArticleDao.xml +++ b/modules/cms/src/main/resources/mappings/modules/cms/ArticleDao.xml @@ -2,15 +2,23 @@ - + --> + update ${_prefix}cms_article SET weight = 0 diff --git a/modules/cms/src/main/resources/views/modules/cms/articleForm.html b/modules/cms/src/main/resources/views/modules/cms/articleForm.html index 76b045ab..c1e345b0 100644 --- a/modules/cms/src/main/resources/views/modules/cms/articleForm.html +++ b/modules/cms/src/main/resources/views/modules/cms/articleForm.html @@ -143,7 +143,7 @@ -
+
- <#form:input path="createDate" readonly="true" maxlength="20" class="form-control Wdate" - dataFormat="datetime" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm',isShowClear:false});"/> + <#form:input path="createDate" readonly="true" maxlength="20" class="form-control laydate" + dataFormat="datetime" data-type="datetime" data-format="yyyy-MM-dd HH:mm"/>
@@ -208,7 +208,7 @@
- <#form:extend collapsed="true" /> + <#form:extend collapsed="true" pathPrefix="articleData"/>
- +
@@ -129,7 +129,7 @@ $('#dataGrid').dataGrid({ }}, {header:'${text('操作')}', name:'actions', width:120, formatter: function(val, obj, row, act){ var actions = []; - //<% if(hasPermi('cms:comment:edit')){ %> + <% if(hasPermi('cms:comment:edit')){ %> actions.push(' '); if (row.status == Global.STATUS_NORMAL){ actions.push(' '); @@ -138,7 +138,7 @@ $('#dataGrid').dataGrid({ actions.push(' '); } actions.push(' '); - //<% } %> + <% } %> return actions.join(''); }} ], diff --git a/modules/cms/src/main/resources/views/modules/cms/reportList.html b/modules/cms/src/main/resources/views/modules/cms/reportList.html index f2672eac..c00b3b3d 100644 --- a/modules/cms/src/main/resources/views/modules/cms/reportList.html +++ b/modules/cms/src/main/resources/views/modules/cms/reportList.html @@ -47,7 +47,7 @@
- +
diff --git a/modules/cms/src/main/resources/views/modules/cms/siteList.html b/modules/cms/src/main/resources/views/modules/cms/siteList.html index 1271ff32..608d4f80 100644 --- a/modules/cms/src/main/resources/views/modules/cms/siteList.html +++ b/modules/cms/src/main/resources/views/modules/cms/siteList.html @@ -41,7 +41,7 @@
- +
diff --git a/modules/cms/src/main/resources/views/modules/cms/visitLogList.html b/modules/cms/src/main/resources/views/modules/cms/visitLogList.html index 0bf549e8..1a9f1b6f 100644 --- a/modules/cms/src/main/resources/views/modules/cms/visitLogList.html +++ b/modules/cms/src/main/resources/views/modules/cms/visitLogList.html @@ -54,7 +54,7 @@
- +
diff --git a/modules/cms/src/main/resources/views/modules/cmsfront/themes/default/include/head.html b/modules/cms/src/main/resources/views/modules/cmsfront/themes/default/include/head.html index b8bbf272..18eae6de 100644 --- a/modules/cms/src/main/resources/views/modules/cmsfront/themes/default/include/head.html +++ b/modules/cms/src/main/resources/views/modules/cmsfront/themes/default/include/head.html @@ -11,5 +11,5 @@ ${(isNotBlank(title!) ? title! + ' - ' : '') + @Global.getConfig('productName')} - - + +