diff --git a/pom.xml b/pom.xml
index 9e715075..60e281f5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.3.12.RELEASE
+ 2.7.7
4.0.0
net.mingsoft
@@ -44,24 +44,24 @@
net.mingsoft
ms-base
- 2.1.16
+ 2.1.17
net.mingsoft
ms-basic
- 2.1.16
+ 2.1.17
net.mingsoft
ms-mdiy
- 2.1.16
+ 2.1.17
net.mingsoft
store-client
- 2.1.16.1
+ 17
com.github.oshi
diff --git a/src/main/java/net/mingsoft/cms/action/CategoryAction.java b/src/main/java/net/mingsoft/cms/action/CategoryAction.java
index 32609b96..e4797f8c 100755
--- a/src/main/java/net/mingsoft/cms/action/CategoryAction.java
+++ b/src/main/java/net/mingsoft/cms/action/CategoryAction.java
@@ -152,7 +152,7 @@ public class CategoryAction extends BaseAction {
@RequiresPermissions("cms:category:save")
public ResultData save(@ModelAttribute @ApiIgnore CategoryEntity category) {
//验证缩略图参数值是否合法
- if (!category.getCategoryImg().matches("^\\[.{1,}]$") || category.getCategoryImg() == null) {
+ if (category.getCategoryImg() == null || !category.getCategoryImg().matches("^\\[.{1,}]$")) {
category.setCategoryImg("");
}
//验证栏目管理名称的值是否合法
@@ -172,7 +172,7 @@ public class CategoryAction extends BaseAction {
//判断拼音是否重复
if (StrUtil.isNotBlank(category.getCategoryPinyin())) {
if (!category.getCategoryPinyin().matches("^[a-zA-Z0-9]*$")){
- return ResultData.build().error(this.getResString("err.format"));
+ return ResultData.build().error(this.getResString("err.error",this.getResString("category.pinyin")));
}
CategoryEntity _category = new CategoryEntity();
_category.setCategoryPinyin(category.getCategoryPinyin());
@@ -237,7 +237,7 @@ public class CategoryAction extends BaseAction {
@RequiresPermissions("cms:category:update")
public ResultData update(@ModelAttribute @ApiIgnore CategoryEntity category) {
//验证缩略图参数值是否合法
- if (!category.getCategoryImg().matches("^\\[.{1,}]$") || category.getCategoryImg() == null) {
+ if (category.getCategoryImg() == null || !category.getCategoryImg().matches("^\\[.{1,}]$")) {
category.setCategoryImg("");
}
//验证栏目管理名称的值是否合法
@@ -257,7 +257,7 @@ public class CategoryAction extends BaseAction {
//判断拼音是否重复并且是否和原拼音相同
if (StrUtil.isNotBlank(category.getCategoryPinyin()) && !categoryBiz.getById(category.getId()).getCategoryPinyin().equals(category.getCategoryPinyin())) {
if (!category.getCategoryPinyin().matches("^[a-zA-Z0-9]*$")){
- return ResultData.build().error(this.getResString("err.format"));
+ return ResultData.build().error(this.getResString("err.error",this.getResString("category.pinyin")));
}
CategoryEntity _category = new CategoryEntity();
_category.setCategoryPinyin(category.getCategoryPinyin());
diff --git a/src/main/java/net/mingsoft/cms/action/GeneraterAction.java b/src/main/java/net/mingsoft/cms/action/GeneraterAction.java
index 2173d48c..f0197e3c 100755
--- a/src/main/java/net/mingsoft/cms/action/GeneraterAction.java
+++ b/src/main/java/net/mingsoft/cms/action/GeneraterAction.java
@@ -26,6 +26,8 @@ package net.mingsoft.cms.action;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
+import cn.hutool.core.date.DateException;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import net.mingsoft.base.entity.ResultData;
import net.mingsoft.basic.annotation.LogAnn;
@@ -58,6 +60,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
/**
@@ -131,7 +134,7 @@ public class GeneraterAction extends BaseAction {
// 获取文件所在路径 首先判断用户输入的模版文件是否存在
if (!FileUtil.exist(ParserUtil.buildTemplatePath())) {
- return ResultData.build().error(getResString("templet.file"));
+ return ResultData.build().error(getResString("template.file"));
} else {
CmsParserUtil.generate(tmpFileName, generateFileName, htmlDir);
@@ -208,7 +211,7 @@ public class GeneraterAction extends BaseAction {
BeanUtil.copyProperties(column, columnArticleIdBean, copyOptions);
articleIdList.add(columnArticleIdBean);
}
- CmsParserUtil.generateBasic(articleIdList, htmlDir);
+ CmsParserUtil.generateBasic(articleIdList, htmlDir,null);
break;
}
}
@@ -235,6 +238,14 @@ public class GeneraterAction extends BaseAction {
ContentBean contentBean = new ContentBean();
contentBean.setBeginTime(dateTime);
+ // 时间格式化
+ Date contentUpdateTime = null;
+ try {
+ contentUpdateTime = DateUtil.parse(dateTime);
+ } catch (DateException e) {
+ e.printStackTrace();
+ return ResultData.build().error(getResString("err.error",this.getResString("datetime.format")));
+ }
if ("0".equals(columnId)) {
categoryList = categoryBiz.list();
} else { //选择栏目更新
@@ -252,7 +263,7 @@ public class GeneraterAction extends BaseAction {
contentBean.setCategoryType(category.getCategoryType());
contentBean.setOrderBy("date");
//将文章列表标签中的中的参数
- articleIdList = contentBiz.queryIdsByCategoryIdForParserAndNotCover(contentBean);
+ articleIdList = contentBiz.queryIdsByCategoryIdForParser(contentBean);
// 分类是列表
if (category.getCategoryType().equals(CategoryTypeEnum.LIST.toString())) {
// 判断模板文件是否存在
@@ -265,7 +276,7 @@ public class GeneraterAction extends BaseAction {
}
// 有符合条件的就更新
if (articleIdList.size() > 0) {
- CmsParserUtil.generateBasic(articleIdList, htmlDir);
+ CmsParserUtil.generateBasic(articleIdList, htmlDir,contentUpdateTime);
}
}
diff --git a/src/main/java/net/mingsoft/cms/action/web/MCmsAction.java b/src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
index b2fcd1fc..7ab46dfc 100755
--- a/src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
+++ b/src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
@@ -23,7 +23,7 @@ package net.mingsoft.cms.action.web;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.PageUtil;
-import com.alibaba.fastjson.JSON;
+import cn.hutool.json.JSONUtil;
import freemarker.core.ParseException;
import freemarker.template.MalformedTemplateNameException;
import freemarker.template.TemplateNotFoundException;
@@ -355,7 +355,7 @@ public class MCmsAction extends net.mingsoft.cms.action.BaseAction {
@Override
public String toString() {
- return JSON.toJSONString(this);
+ return JSONUtil.toJsonStr(this);
}
}
diff --git a/src/main/java/net/mingsoft/cms/aop/CategoryAop.java b/src/main/java/net/mingsoft/cms/aop/CategoryAop.java
index ca1578d1..38b15b75 100644
--- a/src/main/java/net/mingsoft/cms/aop/CategoryAop.java
+++ b/src/main/java/net/mingsoft/cms/aop/CategoryAop.java
@@ -7,7 +7,7 @@
package net.mingsoft.cms.aop;
import cn.hutool.core.io.FileUtil;
-import com.alibaba.fastjson.JSONObject;
+import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import net.mingsoft.base.entity.ResultData;
@@ -78,7 +78,7 @@ public class CategoryAop extends net.mingsoft.basic.aop.BaseAop {
// 获取返回值
Object obj = pjp.proceed(pjp.getArgs());
- ResultData resultData = JSONObject.parseObject(JSONObject.toJSON(obj).toString(), ResultData.class);
+ ResultData resultData = JSONUtil.toBean(JSONUtil.toJsonStr(obj), ResultData.class);
CategoryEntity parent = categoryDao.selectById(category.getCategoryId());
if (parent == null) {
return resultData;
@@ -90,7 +90,7 @@ public class CategoryAop extends net.mingsoft.basic.aop.BaseAop {
// 将父栏目的内容模板清空
parent.setCategoryUrl("");
categoryDao.updateById(parent);
- CategoryEntity returnCategory = JSONObject.parseObject(resultData.get(ResultData.DATA_KEY).toString(), CategoryEntity.class);
+ CategoryEntity returnCategory = JSONUtil.toBean(resultData.get(ResultData.DATA_KEY).toString(), CategoryEntity.class);
// 获取父栏目ID集合
String categoryIds = StringUtils.isEmpty(parent.getCategoryParentIds())
? returnCategory.getId() : parent.getCategoryParentIds() + "," + returnCategory.getId();
diff --git a/src/main/java/net/mingsoft/cms/bean/CategoryBean.java b/src/main/java/net/mingsoft/cms/bean/CategoryBean.java
index 35b337d7..f0e8c155 100755
--- a/src/main/java/net/mingsoft/cms/bean/CategoryBean.java
+++ b/src/main/java/net/mingsoft/cms/bean/CategoryBean.java
@@ -22,7 +22,11 @@
package net.mingsoft.cms.bean;
+import com.fasterxml.jackson.annotation.JsonFormat;
import net.mingsoft.cms.entity.CategoryEntity;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
/**
* 文章实体
@@ -37,8 +41,20 @@ public class CategoryBean extends CategoryEntity {
*/
private String articleId;
+ /**
+ * 文章更新时间
+ */
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date contentUpdateDate;
+ public Date getContentUpdateDate() {
+ return contentUpdateDate;
+ }
+ public void setContentUpdateDate(Date contentUpdateDate) {
+ this.contentUpdateDate = contentUpdateDate;
+ }
public String getArticleId() {
return articleId;
diff --git a/src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java b/src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java
index 7d55c7e1..85e15fa5 100755
--- a/src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java
+++ b/src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java
@@ -101,7 +101,7 @@ public class ContentBizImpl extends BaseBizImpl imp
@Override
public List queryIdsByCategoryIdForParserAndNotCover(ContentBean contentBean) {
- return this.contentDao.queryIdsByCategoryIdForParser(contentBean);
+ return this.contentDao.queryIdsByCategoryIdForParserAndNotCover(contentBean);
}
@Override
diff --git a/src/main/java/net/mingsoft/cms/dao/IContentDao.xml b/src/main/java/net/mingsoft/cms/dao/IContentDao.xml
index 55dbd529..05cc6684 100755
--- a/src/main/java/net/mingsoft/cms/dao/IContentDao.xml
+++ b/src/main/java/net/mingsoft/cms/dao/IContentDao.xml
@@ -52,6 +52,7 @@
+
@@ -287,7 +288,7 @@