From 2c8f43c09bacd97a9876f9af543ae4766fd467ff Mon Sep 17 00:00:00 2001 From: ruibaby Date: Sat, 21 Jul 2018 00:51:16 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 14 +++++++----- .../cc/ryanc/halo/config/StartupConfig.java | 16 -------------- .../cc/ryanc/halo/model/domain/Comment.java | 1 + .../java/cc/ryanc/halo/model/domain/Post.java | 1 - .../cc/ryanc/halo/model/dto/HaloConst.java | 7 ------ .../halo/model/enums/BlogProperties.java | 22 ++++++++++++++++++- .../web/controller/admin/AdminController.java | 20 ++++++++--------- .../admin/AttachmentController.java | 14 ------------ .../resources/templates/admin/admin_index.ftl | 2 +- 9 files changed, 40 insertions(+), 57 deletions(-) diff --git a/pom.xml b/pom.xml index c3f494e8f..8ebae1bdd 100755 --- a/pom.xml +++ b/pom.xml @@ -41,16 +41,11 @@ 4.0.1 7.2.14 0.4.8 + 2.3.0 - - - javax.xml.bind - jaxb-api - 2.3.0 - org.springframework.boot spring-boot-starter-web @@ -176,6 +171,13 @@ ${thumbnailator.version} + + + javax.xml.bind + jaxb-api + ${jaxb-api.version} + + diff --git a/src/main/java/cc/ryanc/halo/config/StartupConfig.java b/src/main/java/cc/ryanc/halo/config/StartupConfig.java index 869b9a174..45420ce41 100755 --- a/src/main/java/cc/ryanc/halo/config/StartupConfig.java +++ b/src/main/java/cc/ryanc/halo/config/StartupConfig.java @@ -1,10 +1,8 @@ package cc.ryanc.halo.config; -import cc.ryanc.halo.model.domain.Attachment; import cc.ryanc.halo.model.dto.HaloConst; import cc.ryanc.halo.model.dto.Theme; import cc.ryanc.halo.model.enums.BlogProperties; -import cc.ryanc.halo.service.AttachmentService; import cc.ryanc.halo.service.OptionsService; import cc.ryanc.halo.utils.HaloUtils; import cc.ryanc.halo.web.controller.core.BaseController; @@ -35,14 +33,10 @@ public class StartupConfig implements ApplicationListener attachments = attachmentService.findAllAttachments(); - if (null != attachments) { - HaloConst.ATTACHMENTS = attachments; - } - } - /** * 加载所有主题 */ diff --git a/src/main/java/cc/ryanc/halo/model/domain/Comment.java b/src/main/java/cc/ryanc/halo/model/domain/Comment.java index ff18080c5..a8ed3d69e 100644 --- a/src/main/java/cc/ryanc/halo/model/domain/Comment.java +++ b/src/main/java/cc/ryanc/halo/model/domain/Comment.java @@ -35,6 +35,7 @@ public class Comment implements Serializable { */ @ManyToOne(targetEntity = Post.class, fetch = FetchType.EAGER) @JoinColumn(name = "post_id") + @JsonIgnore private Post post; /** diff --git a/src/main/java/cc/ryanc/halo/model/domain/Post.java b/src/main/java/cc/ryanc/halo/model/domain/Post.java index bd82374c6..5710c6f04 100755 --- a/src/main/java/cc/ryanc/halo/model/domain/Post.java +++ b/src/main/java/cc/ryanc/halo/model/domain/Post.java @@ -96,7 +96,6 @@ public class Post implements Serializable { * 文章的评论 */ @OneToMany(mappedBy = "post", cascade = {CascadeType.REMOVE}, fetch = FetchType.EAGER) - @JsonIgnore private List comments = new ArrayList<>(); /** diff --git a/src/main/java/cc/ryanc/halo/model/dto/HaloConst.java b/src/main/java/cc/ryanc/halo/model/dto/HaloConst.java index 4f68678e1..c9f1df8ab 100644 --- a/src/main/java/cc/ryanc/halo/model/dto/HaloConst.java +++ b/src/main/java/cc/ryanc/halo/model/dto/HaloConst.java @@ -1,7 +1,5 @@ package cc.ryanc.halo.model.dto; -import cc.ryanc.halo.model.domain.Attachment; - import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -27,11 +25,6 @@ public class HaloConst { */ public static Map OWO = new HashMap<>(); - /** - * 所有文件 - */ - public static List ATTACHMENTS = new ArrayList<>(); - /** * 所有主题 */ diff --git a/src/main/java/cc/ryanc/halo/model/enums/BlogProperties.java b/src/main/java/cc/ryanc/halo/model/enums/BlogProperties.java index 7f9e713ef..845710312 100644 --- a/src/main/java/cc/ryanc/halo/model/enums/BlogProperties.java +++ b/src/main/java/cc/ryanc/halo/model/enums/BlogProperties.java @@ -99,7 +99,27 @@ public enum BlogProperties { /** * 博客评论系统 */ - COMMENT_SYSTEM("comment_system"); + COMMENT_SYSTEM("comment_system"), + + /** + * 仪表盘部件 文章总数 + */ + WIDGET_POSTCOUNT("widget_postcount"), + + /** + * 仪表盘部件 评论总数 + */ + WIDGET_COMMENTCOUNT("widget_commentcount"), + + /** + * 仪表盘部件 附件总数 + */ + WIDGET_ATTACHMENTCOUNT("widget_attachmentcount"), + + /** + * 仪表盘部件 成立天数 + */ + WIDGET_DAYCOUNT("widget_daycount"); private String prop; diff --git a/src/main/java/cc/ryanc/halo/web/controller/admin/AdminController.java b/src/main/java/cc/ryanc/halo/web/controller/admin/AdminController.java index c0600fa98..3d5f5254c 100755 --- a/src/main/java/cc/ryanc/halo/web/controller/admin/AdminController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/admin/AdminController.java @@ -7,13 +7,9 @@ import cc.ryanc.halo.model.domain.User; import cc.ryanc.halo.model.dto.HaloConst; import cc.ryanc.halo.model.dto.JsonResult; import cc.ryanc.halo.model.dto.LogsRecord; -import cc.ryanc.halo.model.enums.PostType; import cc.ryanc.halo.model.enums.ResultCode; import cc.ryanc.halo.model.enums.TrueFalse; -import cc.ryanc.halo.service.CommentService; -import cc.ryanc.halo.service.LogsService; -import cc.ryanc.halo.service.PostService; -import cc.ryanc.halo.service.UserService; +import cc.ryanc.halo.service.*; import cc.ryanc.halo.web.controller.core.BaseController; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; @@ -62,6 +58,9 @@ public class AdminController extends BaseController { @Autowired private CommentService commentService; + @Autowired + private AttachmentService attachmentService; + /** * 请求后台页面 * @@ -70,10 +69,7 @@ public class AdminController extends BaseController { * @return 模板路径admin/admin_index */ @GetMapping(value = {"", "/index"}) - public String index(Model model, HttpSession session) { - //查询文章条数 - Integer postCount = postService.findAllPosts(PostType.POST_TYPE_POST.getDesc()).size(); - model.addAttribute("postCount", postCount); + public String index(Model model) { //查询评论的条数 Integer commentCount = commentService.findAllComments().size(); @@ -91,8 +87,10 @@ public class AdminController extends BaseController { List comments = commentService.findCommentsLatest(); model.addAttribute("comments", comments); - model.addAttribute("mediaCount", HaloConst.ATTACHMENTS.size()); + //附件数量 + model.addAttribute("mediaCount", attachmentService.findAllAttachments().size()); + //文章阅读总数 Long postViewsSum = postService.getPostViews(); model.addAttribute("postViewsSum", postViewsSum); return "admin/admin_index"; @@ -120,7 +118,7 @@ public class AdminController extends BaseController { * @param loginName 登录名:邮箱/用户名 * @param loginPwd loginPwd 密码 * @param session session session - * @return String 登录状态 + * @return JsonResult JsonResult */ @PostMapping(value = "/getLogin") @ResponseBody diff --git a/src/main/java/cc/ryanc/halo/web/controller/admin/AttachmentController.java b/src/main/java/cc/ryanc/halo/web/controller/admin/AttachmentController.java index 52fb7e4ee..e517da395 100755 --- a/src/main/java/cc/ryanc/halo/web/controller/admin/AttachmentController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/admin/AttachmentController.java @@ -2,7 +2,6 @@ package cc.ryanc.halo.web.controller.admin; import cc.ryanc.halo.model.domain.Attachment; import cc.ryanc.halo.model.domain.Logs; -import cc.ryanc.halo.model.dto.HaloConst; import cc.ryanc.halo.model.dto.JsonResult; import cc.ryanc.halo.model.dto.LogsRecord; import cc.ryanc.halo.model.enums.PostType; @@ -50,14 +49,6 @@ public class AttachmentController { @Autowired private LogsService logsService; - /** - * 刷新HaloConst - */ - private void updateConst() { - HaloConst.ATTACHMENTS.clear(); - HaloConst.ATTACHMENTS = attachmentService.findAllAttachments(); - } - /** * 获取upload的所有图片资源并渲染页面 * @@ -168,7 +159,6 @@ public class AttachmentController { attachment.setAttachSize(HaloUtils.parseSize(new File(mediaPath, fileName).length())); attachment.setAttachWh(HaloUtils.getImageWh(new File(mediaPath, fileName))); attachmentService.saveByAttachment(attachment); - updateConst(); log.info("上传文件[{}]到[{}]成功", fileName, mediaPath.getAbsolutePath()); logsService.saveByLogs( new Logs(LogsRecord.UPLOAD_FILE, fileName, ServletUtil.getClientIP(request), DateUtil.date()) @@ -179,7 +169,6 @@ public class AttachmentController { result.put("url", attachment.getAttachPath()); } catch (Exception e) { log.error("上传文件失败:{}", e.getMessage()); - e.printStackTrace(); result.put("success", 0); result.put("message", "上传失败!"); } @@ -220,8 +209,6 @@ public class AttachmentController { try { //删除数据库中的内容 attachmentService.removeByAttachId(attachId); - //刷新HaloConst变量 - updateConst(); //删除文件 File basePath = new File(ResourceUtils.getURL("classpath:").getPath()); File mediaPath = new File(basePath.getAbsolutePath(), attachment.get().getAttachPath().substring(0, attachment.get().getAttachPath().lastIndexOf('/'))); @@ -229,7 +216,6 @@ public class AttachmentController { File delSmallFile = new File(new StringBuffer(mediaPath.getAbsolutePath()).append("/").append(delSmallFileName).toString()); if (delFile.exists() && delFile.isFile()) { if (delFile.delete() && delSmallFile.delete()) { - updateConst(); log.info("删除文件[{}]成功!", delFileName); logsService.saveByLogs( new Logs(LogsRecord.REMOVE_FILE, delFileName, ServletUtil.getClientIP(request), DateUtil.date()) diff --git a/src/main/resources/templates/admin/admin_index.ftl b/src/main/resources/templates/admin/admin_index.ftl index c42880235..f3b4697e4 100755 --- a/src/main/resources/templates/admin/admin_index.ftl +++ b/src/main/resources/templates/admin/admin_index.ftl @@ -127,7 +127,7 @@ <#if options.widget_postcount?default("true")=="true">
-

${postCount?default(0)}

文章

+

<@articleTag method="postsCount">${postsCount?default(0)}

文章

查看所有