diff --git a/README.md b/README.md index e128307..f33b32c 100644 --- a/README.md +++ b/README.md @@ -28,27 +28,27 @@ springboot + springsecurity + mysql + redis + mybatisplus + quartz + rabbitmq + ## 前台截图 -![前台1](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/7232dc518bfed9755c6266fdf5243e0d.png) +![前台1](https://static.linhaojun.top/photos/7232dc518bfed9755c6266fdf5243e0d.png) -![前台2](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/4d5d41fe49c2a42d6d756bde6a09d86c.png) +![前台2](https://static.linhaojun.top/photos/4d5d41fe49c2a42d6d756bde6a09d86c.png) -![前台3](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/5e50616e20e1c9a9ea24bcb9cd25f428.png) +![前台3](https://static.linhaojun.top/photos/5e50616e20e1c9a9ea24bcb9cd25f428.png) -![前台4](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/368d2b5787db9151286e079126e9f0bb.png) +![前台4](https://static.linhaojun.top/photos/368d2b5787db9151286e079126e9f0bb.png) -![前台5](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/a9db098405ead1bef9536a49187eef73.png) +![前台5](https://static.linhaojun.top/photos/a9db098405ead1bef9536a49187eef73.png) ## 后台截图 -![后台1](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/613edc1e2be6d21594add5a7549e1b16.png) +![后台1](https://static.linhaojun.top/photos/613edc1e2be6d21594add5a7549e1b16.png) -![后台2](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/4b81eb41719d80c755e3ba39681aeff6.png) +![后台2](https://static.linhaojun.top/photos/4b81eb41719d80c755e3ba39681aeff6.png) -![后台3](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/d927b064ef199cabc9deb66b912d6e8d.png) +![后台3](https://static.linhaojun.top/photos/d927b064ef199cabc9deb66b912d6e8d.png) -![后台4](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/ea9a83ef3c79ca77587752205af0283a.png) +![后台4](https://static.linhaojun.top/photos/ea9a83ef3c79ca77587752205af0283a.png) -![后台5](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/photos/13ad9fc5299c095841101c9f24a06b9b.png) +![后台5](https://static.linhaojun.top/photos/13ad9fc5299c095841101c9f24a06b9b.png) ## 将来的更新计划 @@ -59,11 +59,11 @@ springboot + springsecurity + mysql + redis + mybatisplus + quartz + rabbitmq + | Wechat 微信支付 | Alipay 支付宝支付 | | :----------------------------------------------------------: | :----------------------------------------------------------: | -| Buy Me A Coffee | Buy Me A Coffee | +| Buy Me A Coffee | Buy Me A Coffee | ## 交流群 -| ![image-20220822102226311](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/img/image-20220822102226311.png) | +| ![image-20220822102226311](https://static.linhaojun.top/photos/6c149c9bd586ee0cb9d3d41df605e40f.png) | | ------------------------------------------------------------ | diff --git a/aurora-springboot/src/main/java/com/aurora/aspect/OperationLogAspect.java b/aurora-springboot/src/main/java/com/aurora/aspect/OperationLogAspect.java index 445a12c..e19d11c 100644 --- a/aurora-springboot/src/main/java/com/aurora/aspect/OperationLogAspect.java +++ b/aurora-springboot/src/main/java/com/aurora/aspect/OperationLogAspect.java @@ -84,9 +84,9 @@ public class OperationLogAspect { // 返回结果 operationLog.setResponseData(JSON.toJSONString(keys)); // 请求用户ID - operationLog.setUserId(UserUtils.getLoginUser().getId()); + operationLog.setUserId(UserUtils.getUserDetailsDTO().getId()); // 请求用户 - operationLog.setNickname(UserUtils.getLoginUser().getNickname()); + operationLog.setNickname(UserUtils.getUserDetailsDTO().getNickname()); // 请求IP String ipAddress = IpUtils.getIpAddress(request); operationLog.setIpAddress(ipAddress); diff --git a/aurora-springboot/src/main/java/com/aurora/config/WebMvcConfig.java b/aurora-springboot/src/main/java/com/aurora/config/WebMvcConfig.java index 2052296..ef174b1 100644 --- a/aurora-springboot/src/main/java/com/aurora/config/WebMvcConfig.java +++ b/aurora-springboot/src/main/java/com/aurora/config/WebMvcConfig.java @@ -1,9 +1,9 @@ package com.aurora.config; -import com.aurora.handler.PageableHandlerInterceptor; -import com.aurora.handler.WebSecurityHandler; -import org.springframework.context.annotation.Bean; +import com.aurora.interceptor.PaginationInterceptor; +import com.aurora.interceptor.AccessLimitInterceptor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; @@ -16,10 +16,11 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class WebMvcConfig implements WebMvcConfigurer { - @Bean - public WebSecurityHandler getWebSecurityHandler() { - return new WebSecurityHandler(); - } + @Autowired + private PaginationInterceptor paginationInterceptor; + + @Autowired + private AccessLimitInterceptor accessLimitInterceptor; @Override public void addCorsMappings(CorsRegistry registry) { @@ -32,8 +33,8 @@ public class WebMvcConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { - registry.addInterceptor(new PageableHandlerInterceptor()); - registry.addInterceptor(getWebSecurityHandler()); + registry.addInterceptor(paginationInterceptor); + registry.addInterceptor(accessLimitInterceptor); } } diff --git a/aurora-springboot/src/main/java/com/aurora/config/MinioProperties.java b/aurora-springboot/src/main/java/com/aurora/config/properties/MinioProperties.java similarity index 65% rename from aurora-springboot/src/main/java/com/aurora/config/MinioProperties.java rename to aurora-springboot/src/main/java/com/aurora/config/properties/MinioProperties.java index 96ff11f..13da6bf 100644 --- a/aurora-springboot/src/main/java/com/aurora/config/MinioProperties.java +++ b/aurora-springboot/src/main/java/com/aurora/config/properties/MinioProperties.java @@ -1,4 +1,4 @@ -package com.aurora.config; +package com.aurora.config.properties; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -8,9 +8,24 @@ import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "upload.minio") public class MinioProperties { + /** + * minio域名 + */ + private String url; + /** + * 终点 + */ private String endpoint; + /** + * accessKey + */ private String accessKey; + /** + * secretKey + */ private String secretKey; + /** + * 桶名称 + */ private String bucketName; - private String url; } diff --git a/aurora-springboot/src/main/java/com/aurora/config/OssConfigProperties.java b/aurora-springboot/src/main/java/com/aurora/config/properties/OssConfigProperties.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/config/OssConfigProperties.java rename to aurora-springboot/src/main/java/com/aurora/config/properties/OssConfigProperties.java index 32f7c85..f081cee 100644 --- a/aurora-springboot/src/main/java/com/aurora/config/OssConfigProperties.java +++ b/aurora-springboot/src/main/java/com/aurora/config/properties/OssConfigProperties.java @@ -1,4 +1,4 @@ -package com.aurora.config; +package com.aurora.config.properties; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; diff --git a/aurora-springboot/src/main/java/com/aurora/config/QQConfigProperties.java b/aurora-springboot/src/main/java/com/aurora/config/properties/QQConfigProperties.java similarity index 93% rename from aurora-springboot/src/main/java/com/aurora/config/QQConfigProperties.java rename to aurora-springboot/src/main/java/com/aurora/config/properties/QQConfigProperties.java index a63225d..3ef2e64 100644 --- a/aurora-springboot/src/main/java/com/aurora/config/QQConfigProperties.java +++ b/aurora-springboot/src/main/java/com/aurora/config/properties/QQConfigProperties.java @@ -1,4 +1,4 @@ -package com.aurora.config; +package com.aurora.config.properties; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; diff --git a/aurora-springboot/src/main/java/com/aurora/constant/CommonConst.java b/aurora-springboot/src/main/java/com/aurora/constant/CommonConst.java index e04d938..7de076c 100644 --- a/aurora-springboot/src/main/java/com/aurora/constant/CommonConst.java +++ b/aurora-springboot/src/main/java/com/aurora/constant/CommonConst.java @@ -104,4 +104,9 @@ public class CommonConst { */ public static final Integer DEFAULT_ABOUT_ID = 1; + /** + * 20分钟 + */ + public final static Integer TWENTY_MINUTES = 20; + } diff --git a/aurora-springboot/src/main/java/com/aurora/constant/RedisPrefixConst.java b/aurora-springboot/src/main/java/com/aurora/constant/RedisPrefixConst.java index fdc3fd8..876f64d 100644 --- a/aurora-springboot/src/main/java/com/aurora/constant/RedisPrefixConst.java +++ b/aurora-springboot/src/main/java/com/aurora/constant/RedisPrefixConst.java @@ -26,36 +26,6 @@ public class RedisPrefixConst { */ public static final String ARTICLE_VIEWS_COUNT = "article_views_count"; - /** - * 文章点赞量 - */ - public static final String ARTICLE_LIKE_COUNT = "article_like_count"; - - /** - * 用户点赞文章 - */ - public static final String ARTICLE_USER_LIKE = "article_user_like:"; - - /** - * 说说点赞量 - */ - public static final String TALK_LIKE_COUNT = "talk_like_count"; - - /** - * 用户点赞说说 - */ - public static final String TALK_USER_LIKE = "talk_user_like:"; - - /** - * 评论点赞量 - */ - public static final String COMMENT_LIKE_COUNT = "comment_like_count"; - - /** - * 用户点赞评论 - */ - public static final String COMMENT_USER_LIKE = "comment_user_like:"; - /** * 网站配置 */ @@ -71,11 +41,6 @@ public class RedisPrefixConst { */ public static final String VISITOR_AREA = "visitor_area"; - /** - * 页面封面 - */ - public static final String PAGE_COVER = "page_cover"; - /** * 关于我信息 */ @@ -88,8 +53,12 @@ public class RedisPrefixConst { /** - * token黑名单 + * 已登录的用户 */ - public static String TOKEN_BLACKLIST = "token_blacklist"; + public static final String LOGIN_USER = "login_user"; + /** + * 文章授权访问名单 + */ + public static final String USER_ARTICLE_ACCESS = "article_access"; } diff --git a/aurora-springboot/src/main/java/com/aurora/consumer/CommentNoticeConsumer.java b/aurora-springboot/src/main/java/com/aurora/consumer/CommentNoticeConsumer.java index e38918b..3a713f9 100644 --- a/aurora-springboot/src/main/java/com/aurora/consumer/CommentNoticeConsumer.java +++ b/aurora-springboot/src/main/java/com/aurora/consumer/CommentNoticeConsumer.java @@ -1,7 +1,7 @@ package com.aurora.consumer; import com.alibaba.fastjson.JSON; -import com.aurora.dto.EmailDTO; +import com.aurora.model.dto.EmailDTO; import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/consumer/MaxWellConsumer.java b/aurora-springboot/src/main/java/com/aurora/consumer/MaxWellConsumer.java index c599290..6f148a1 100644 --- a/aurora-springboot/src/main/java/com/aurora/consumer/MaxWellConsumer.java +++ b/aurora-springboot/src/main/java/com/aurora/consumer/MaxWellConsumer.java @@ -1,12 +1,11 @@ package com.aurora.consumer; import com.alibaba.fastjson.JSON; -import com.aurora.dto.ArticleSearchDTO; -import com.aurora.dto.MaxwellDataDTO; +import com.aurora.model.dto.ArticleSearchDTO; +import com.aurora.model.dto.MaxwellDataDTO; import com.aurora.entity.Article; import com.aurora.mapper.ElasticsearchMapper; import com.aurora.utils.BeanCopyUtils; -import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/consumer/SubscribeConsumer.java b/aurora-springboot/src/main/java/com/aurora/consumer/SubscribeConsumer.java index d8f7577..13a4ac6 100644 --- a/aurora-springboot/src/main/java/com/aurora/consumer/SubscribeConsumer.java +++ b/aurora-springboot/src/main/java/com/aurora/consumer/SubscribeConsumer.java @@ -2,7 +2,6 @@ package com.aurora.consumer; import com.alibaba.fastjson.JSON; -import com.aurora.dto.EmailDTO; import com.aurora.entity.Article; import com.aurora.entity.UserInfo; import com.aurora.service.ArticleService; @@ -18,7 +17,6 @@ import org.springframework.stereotype.Component; import java.util.List; import java.util.stream.Collectors; -import java.util.stream.Stream; import static com.aurora.constant.CommonConst.TRUE; import static com.aurora.constant.MQPrefixConst.SUBSCRIBE_QUEUE; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/ArticleController.java b/aurora-springboot/src/main/java/com/aurora/controller/ArticleController.java index 29ba7d7..5774bbb 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/ArticleController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/ArticleController.java @@ -1,12 +1,12 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.*; +import com.aurora.model.dto.*; import com.aurora.enums.FilePathEnum; import com.aurora.service.ArticleService; import com.aurora.strategy.context.ArticleImportStrategyContext; import com.aurora.strategy.context.UploadStrategyContext; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; @@ -57,6 +57,13 @@ public class ArticleController { return Result.ok(articleService.getArticleById(articleId)); } + @ApiOperation("校验文章访问密码") + @PostMapping("/articles/access") + public Result accessArticle(@Valid @RequestBody ArticlePasswordVO articlePasswordVO) { + articleService.accessArticle(articlePasswordVO); + return Result.ok(); + } + @ApiOperation("根据标签id获取文章") @GetMapping("/articles/tagId") public Result> listArticlesByTagId(@RequestParam Integer tagId) { @@ -139,5 +146,5 @@ public class ArticleController { public Result> listArticlesBySearch(ConditionVO condition) { return Result.ok(articleService.listArticlesBySearch(condition)); } - + } diff --git a/aurora-springboot/src/main/java/com/aurora/controller/AuroraInfoController.java b/aurora-springboot/src/main/java/com/aurora/controller/AuroraInfoController.java index 0e7667b..2a38cc0 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/AuroraInfoController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/AuroraInfoController.java @@ -1,16 +1,16 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.AboutDTO; -import com.aurora.dto.AuroraAdminInfoDTO; -import com.aurora.dto.AuroraHomeInfoDTO; -import com.aurora.dto.WebsiteConfigDTO; +import com.aurora.model.dto.AboutDTO; +import com.aurora.model.dto.AuroraAdminInfoDTO; +import com.aurora.model.dto.AuroraHomeInfoDTO; +import com.aurora.model.dto.WebsiteConfigDTO; import com.aurora.enums.FilePathEnum; import com.aurora.service.AuroraInfoService; import com.aurora.strategy.context.UploadStrategyContext; -import com.aurora.vo.AboutVO; -import com.aurora.vo.Result; -import com.aurora.vo.WebsiteConfigVO; +import com.aurora.model.vo.AboutVO; +import com.aurora.model.vo.Result; +import com.aurora.model.vo.WebsiteConfigVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/CategoryController.java b/aurora-springboot/src/main/java/com/aurora/controller/CategoryController.java index e1bfcad..bb4f05b 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/CategoryController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/CategoryController.java @@ -1,14 +1,14 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.CategoryAdminDTO; -import com.aurora.dto.CategoryDTO; -import com.aurora.dto.CategoryOptionDTO; +import com.aurora.model.dto.CategoryAdminDTO; +import com.aurora.model.dto.CategoryDTO; +import com.aurora.model.dto.CategoryOptionDTO; import com.aurora.service.CategoryService; -import com.aurora.vo.CategoryVO; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; +import com.aurora.model.vo.CategoryVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/CommentController.java b/aurora-springboot/src/main/java/com/aurora/controller/CommentController.java index cee3705..ae35c84 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/CommentController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/CommentController.java @@ -2,11 +2,11 @@ package com.aurora.controller; import com.aurora.annotation.AccessLimit; import com.aurora.annotation.OptLog; -import com.aurora.dto.CommentAdminDTO; -import com.aurora.dto.CommentDTO; -import com.aurora.dto.ReplyDTO; +import com.aurora.model.dto.CommentAdminDTO; +import com.aurora.model.dto.CommentDTO; +import com.aurora.model.dto.ReplyDTO; import com.aurora.service.CommentService; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/ExceptionLogController.java b/aurora-springboot/src/main/java/com/aurora/controller/ExceptionLogController.java index 438cf5c..47cefb3 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/ExceptionLogController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/ExceptionLogController.java @@ -1,10 +1,10 @@ package com.aurora.controller; -import com.aurora.dto.ExceptionLogDTO; +import com.aurora.model.dto.ExceptionLogDTO; import com.aurora.service.ExceptionLogService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/FriendLinkController.java b/aurora-springboot/src/main/java/com/aurora/controller/FriendLinkController.java index 21c8f9d..31d72de 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/FriendLinkController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/FriendLinkController.java @@ -1,13 +1,13 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.FriendLinkAdminDTO; -import com.aurora.dto.FriendLinkDTO; +import com.aurora.model.dto.FriendLinkAdminDTO; +import com.aurora.model.dto.FriendLinkDTO; import com.aurora.service.FriendLinkService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.FriendLinkVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.FriendLinkVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/JobController.java b/aurora-springboot/src/main/java/com/aurora/controller/JobController.java index fe32b0c..f4c6939 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/JobController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/JobController.java @@ -1,9 +1,9 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.JobDTO; +import com.aurora.model.dto.JobDTO; import com.aurora.service.JobService; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/JobLogController.java b/aurora-springboot/src/main/java/com/aurora/controller/JobLogController.java index f9e032e..ae3595c 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/JobLogController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/JobLogController.java @@ -1,11 +1,11 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.JobLogDTO; +import com.aurora.model.dto.JobLogDTO; import com.aurora.service.JobLogService; -import com.aurora.vo.JobLogSearchVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; +import com.aurora.model.vo.JobLogSearchVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/MenuController.java b/aurora-springboot/src/main/java/com/aurora/controller/MenuController.java index 9622491..4b5b2cd 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/MenuController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/MenuController.java @@ -1,14 +1,14 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.MenuDTO; -import com.aurora.dto.UserMenuDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.MenuDTO; +import com.aurora.model.dto.UserMenuDTO; import com.aurora.service.MenuService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.IsHiddenVO; -import com.aurora.vo.MenuVO; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.IsHiddenVO; +import com.aurora.model.vo.MenuVO; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/OperationLogController.java b/aurora-springboot/src/main/java/com/aurora/controller/OperationLogController.java index 0325cb2..b2cbfd5 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/OperationLogController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/OperationLogController.java @@ -1,10 +1,10 @@ package com.aurora.controller; -import com.aurora.dto.OperationLogDTO; +import com.aurora.model.dto.OperationLogDTO; import com.aurora.service.OperationLogService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/PhotoAlbumController.java b/aurora-springboot/src/main/java/com/aurora/controller/PhotoAlbumController.java index 2b29e92..606ab5e 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/PhotoAlbumController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/PhotoAlbumController.java @@ -1,15 +1,15 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.PhotoAlbumAdminDTO; -import com.aurora.dto.PhotoAlbumDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoAlbumDTO; import com.aurora.enums.FilePathEnum; import com.aurora.service.PhotoAlbumService; import com.aurora.strategy.context.UploadStrategyContext; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.PhotoAlbumVO; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.PhotoAlbumVO; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/PhotoController.java b/aurora-springboot/src/main/java/com/aurora/controller/PhotoController.java index d5438dd..542b547 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/PhotoController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/PhotoController.java @@ -1,10 +1,10 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.PhotoAdminDTO; -import com.aurora.dto.PhotoDTO; +import com.aurora.model.dto.PhotoAdminDTO; +import com.aurora.model.dto.PhotoDTO; import com.aurora.service.PhotoService; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/ResourceController.java b/aurora-springboot/src/main/java/com/aurora/controller/ResourceController.java index 6670a5c..aab28a7 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/ResourceController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/ResourceController.java @@ -1,12 +1,12 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.ResourceDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.ResourceDTO; import com.aurora.service.ResourceService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.ResourceVO; -import com.aurora.vo.Result; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.ResourceVO; +import com.aurora.model.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/RoleController.java b/aurora-springboot/src/main/java/com/aurora/controller/RoleController.java index 4baa13a..591447f 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/RoleController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/RoleController.java @@ -1,13 +1,13 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.RoleDTO; -import com.aurora.dto.UserRoleDTO; +import com.aurora.model.dto.RoleDTO; +import com.aurora.model.dto.UserRoleDTO; import com.aurora.service.RoleService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; -import com.aurora.vo.RoleVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; +import com.aurora.model.vo.RoleVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/TagController.java b/aurora-springboot/src/main/java/com/aurora/controller/TagController.java index 0c3a912..bd7f152 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/TagController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/TagController.java @@ -2,13 +2,13 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.TagAdminDTO; -import com.aurora.dto.TagDTO; +import com.aurora.model.dto.TagAdminDTO; +import com.aurora.model.dto.TagDTO; import com.aurora.service.TagService; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; -import com.aurora.vo.TagVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; +import com.aurora.model.vo.TagVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/TalkController.java b/aurora-springboot/src/main/java/com/aurora/controller/TalkController.java index 12d5830..7eb7d03 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/TalkController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/TalkController.java @@ -1,14 +1,14 @@ package com.aurora.controller; -import com.aurora.dto.TalkAdminDTO; -import com.aurora.dto.TalkDTO; +import com.aurora.model.dto.TalkAdminDTO; +import com.aurora.model.dto.TalkDTO; import com.aurora.enums.FilePathEnum; import com.aurora.service.TalkService; import com.aurora.strategy.context.UploadStrategyContext; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.Result; -import com.aurora.vo.TalkVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.Result; +import com.aurora.model.vo.TalkVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/UserAuthController.java b/aurora-springboot/src/main/java/com/aurora/controller/UserAuthController.java index f2f7317..f2a1fc0 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/UserAuthController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/UserAuthController.java @@ -2,12 +2,12 @@ package com.aurora.controller; import com.aurora.annotation.AccessLimit; -import com.aurora.dto.UserAdminDTO; -import com.aurora.dto.UserAreaDTO; -import com.aurora.dto.UserInfoDTO; -import com.aurora.dto.UserLogoutStatusDTO; +import com.aurora.model.dto.UserAdminDTO; +import com.aurora.model.dto.UserAreaDTO; +import com.aurora.model.dto.UserInfoDTO; +import com.aurora.model.dto.UserLogoutStatusDTO; import com.aurora.service.UserAuthService; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; diff --git a/aurora-springboot/src/main/java/com/aurora/controller/UserInfoController.java b/aurora-springboot/src/main/java/com/aurora/controller/UserInfoController.java index 35438cd..7295aa1 100644 --- a/aurora-springboot/src/main/java/com/aurora/controller/UserInfoController.java +++ b/aurora-springboot/src/main/java/com/aurora/controller/UserInfoController.java @@ -1,10 +1,10 @@ package com.aurora.controller; import com.aurora.annotation.OptLog; -import com.aurora.dto.UserInfoDTO; -import com.aurora.dto.UserOnlineDTO; +import com.aurora.model.dto.UserInfoDTO; +import com.aurora.model.dto.UserOnlineDTO; import com.aurora.service.UserInfoService; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; diff --git a/aurora-springboot/src/main/java/com/aurora/entity/Article.java b/aurora-springboot/src/main/java/com/aurora/entity/Article.java index ee3ea6f..ef26872 100644 --- a/aurora-springboot/src/main/java/com/aurora/entity/Article.java +++ b/aurora-springboot/src/main/java/com/aurora/entity/Article.java @@ -30,6 +30,7 @@ public class Article { private Integer isDelete; private Integer status; private Integer type; + private String password; private String originalUrl; @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; diff --git a/aurora-springboot/src/main/java/com/aurora/enums/ArticleStatusEnum.java b/aurora-springboot/src/main/java/com/aurora/enums/ArticleStatusEnum.java index bbf606f..e8d5763 100644 --- a/aurora-springboot/src/main/java/com/aurora/enums/ArticleStatusEnum.java +++ b/aurora-springboot/src/main/java/com/aurora/enums/ArticleStatusEnum.java @@ -15,9 +15,9 @@ public enum ArticleStatusEnum { */ PUBLIC(1, "公开"), /** - * 私密 + * 密码 */ - SECRET(2, "私密"), + SECRET(2, "密码"), /** * 草稿 */ diff --git a/aurora-springboot/src/main/java/com/aurora/enums/StatusCodeEnum.java b/aurora-springboot/src/main/java/com/aurora/enums/StatusCodeEnum.java index 483a869..61c9e22 100644 --- a/aurora-springboot/src/main/java/com/aurora/enums/StatusCodeEnum.java +++ b/aurora-springboot/src/main/java/com/aurora/enums/StatusCodeEnum.java @@ -43,13 +43,13 @@ public enum StatusCodeEnum { */ USERNAME_NOT_EXIST(52002, "用户名不存在"), /** - * qq登录错误 + * 文章密码认证未通过 */ - QQ_LOGIN_ERROR(53001, "qq登录错误"), + ARTICLE_ACCESS_FAIL(52003, "文章密码认证未通过"), /** - * 微博登录错误 + * qq登录错误 */ - WEIBO_LOGIN_ERROR(53002, "微博登录错误"); + QQ_LOGIN_ERROR(53001, "qq登录错误"); /** * 状态码 diff --git a/aurora-springboot/src/main/java/com/aurora/filter/JwtAuthenticationTokenFilter.java b/aurora-springboot/src/main/java/com/aurora/filter/JwtAuthenticationTokenFilter.java index 71142ea..46f9df4 100644 --- a/aurora-springboot/src/main/java/com/aurora/filter/JwtAuthenticationTokenFilter.java +++ b/aurora-springboot/src/main/java/com/aurora/filter/JwtAuthenticationTokenFilter.java @@ -1,18 +1,15 @@ package com.aurora.filter; -import com.aurora.dto.UserDetailDTO; -import com.aurora.exception.BizException; -import com.aurora.service.RedisService; -import com.aurora.utils.JwtUtils; -import io.jsonwebtoken.Claims; +import com.aurora.model.dto.UserDetailsDTO; +import com.aurora.service.TokenService; +import com.aurora.utils.UserUtils; import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.web.AuthenticationEntryPoint; import org.springframework.stereotype.Component; -import org.springframework.util.StringUtils; import org.springframework.web.filter.OncePerRequestFilter; import javax.servlet.FilterChain; @@ -20,52 +17,24 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Objects; -import static com.aurora.constant.RedisPrefixConst.TOKEN_BLACKLIST; - @Component public class JwtAuthenticationTokenFilter extends OncePerRequestFilter { @Autowired - public RedisService redisService; + public TokenService tokenService; @Autowired public AuthenticationEntryPoint authenticationEntryPoint; - @SneakyThrows @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) { - String token = request.getHeader("token"); - if (StringUtils.isEmpty(token) || token.equals("null")) { - filterChain.doFilter(request, response); - return; - } - String userId; - try { - Claims claims = JwtUtils.parseJWT(token); - userId = claims.getSubject(); - } catch (Exception e) { - throwBizException(request, response, "token非法或者超时!"); - return; - } - Boolean isMember = redisService.sIsMember(TOKEN_BLACKLIST, token); - if (isMember.equals(true)) { - throwBizException(request, response, "用户未登录!"); - return; + UserDetailsDTO userDetailsDTO = tokenService.getUserDetailDTO(request); + if (Objects.nonNull(userDetailsDTO) && Objects.isNull(UserUtils.getAuthentication())) { + tokenService.renewToken(userDetailsDTO); + UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(userDetailsDTO, null, userDetailsDTO.getAuthorities()); + SecurityContextHolder.getContext().setAuthentication(authenticationToken); } - UserDetailDTO user = (UserDetailDTO) redisService.hGet("login_user", userId); - if (Objects.isNull(user)) { - throwBizException(request, response, "用户未登录!"); - return; - } - UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(user, null, user.getAuthorities()); - SecurityContextHolder.getContext().setAuthentication(authenticationToken); filterChain.doFilter(request, response); } - - @SneakyThrows - public void throwBizException(HttpServletRequest request, HttpServletResponse response, String message) { - request.setAttribute("bizException", new BizException(message)); - request.getRequestDispatcher("/bizException").forward(request, response); - } } diff --git a/aurora-springboot/src/main/java/com/aurora/handler/AccessDecisionManagerImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/AccessDecisionManagerImpl.java index 730778f..74d8ebb 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/AccessDecisionManagerImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/AccessDecisionManagerImpl.java @@ -7,6 +7,7 @@ import org.springframework.security.authentication.InsufficientAuthenticationExc import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; import org.springframework.stereotype.Component; + import java.util.Collection; import java.util.List; import java.util.stream.Collectors; @@ -29,7 +30,7 @@ public class AccessDecisionManagerImpl implements AccessDecisionManager { return; } } - throw new AccessDeniedException("没有操作权限"); + throw new AccessDeniedException("权限不足"); } @Override diff --git a/aurora-springboot/src/main/java/com/aurora/handler/AccessDeniedHandlerImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/AccessDeniedHandlerImpl.java index 86e5bf3..b83972c 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/AccessDeniedHandlerImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/AccessDeniedHandlerImpl.java @@ -2,7 +2,7 @@ package com.aurora.handler; import com.alibaba.fastjson.JSON; import com.aurora.constant.CommonConst; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import org.springframework.security.access.AccessDeniedException; import org.springframework.security.web.access.AccessDeniedHandler; import org.springframework.stereotype.Component; diff --git a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationEntryPointImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationEntryPointImpl.java index 91ba3b4..008f8cf 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationEntryPointImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationEntryPointImpl.java @@ -2,7 +2,7 @@ package com.aurora.handler; import com.alibaba.fastjson.JSON; import com.aurora.constant.CommonConst; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import org.springframework.security.core.AuthenticationException; import org.springframework.security.web.AuthenticationEntryPoint; import org.springframework.stereotype.Component; diff --git a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationFailHandlerImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationFailHandlerImpl.java index 66ea495..a6ee57c 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationFailHandlerImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationFailHandlerImpl.java @@ -1,7 +1,7 @@ package com.aurora.handler; import com.alibaba.fastjson.JSON; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import org.springframework.security.core.AuthenticationException; import org.springframework.security.web.authentication.AuthenticationFailureHandler; import org.springframework.stereotype.Component; diff --git a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationSuccessHandlerImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationSuccessHandlerImpl.java index 5da7de0..b0ba1bd 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationSuccessHandlerImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/AuthenticationSuccessHandlerImpl.java @@ -2,15 +2,14 @@ package com.aurora.handler; import com.alibaba.fastjson.JSON; import com.aurora.constant.CommonConst; -import com.aurora.dto.UserDetailDTO; -import com.aurora.dto.UserInfoDTO; +import com.aurora.model.dto.UserDetailsDTO; +import com.aurora.model.dto.UserInfoDTO; import com.aurora.entity.UserAuth; import com.aurora.mapper.UserAuthMapper; -import com.aurora.service.RedisService; +import com.aurora.service.TokenService; import com.aurora.utils.BeanCopyUtils; -import com.aurora.utils.JwtUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.security.core.Authentication; @@ -31,17 +30,15 @@ public class AuthenticationSuccessHandlerImpl implements AuthenticationSuccessHa private UserAuthMapper userAuthMapper; @Autowired - private RedisService redisService; + private TokenService tokenService; @Override public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException { - UserInfoDTO userLoginDTO = BeanCopyUtils.copyObject(UserUtils.getLoginUser(), UserInfoDTO.class); + UserInfoDTO userLoginDTO = BeanCopyUtils.copyObject(UserUtils.getUserDetailsDTO(), UserInfoDTO.class); if (Objects.nonNull(authentication)) { - UserDetailDTO user = (UserDetailDTO) authentication.getPrincipal(); - String id = user.getId().toString(); - String jwt = JwtUtils.createJWT(id); - redisService.hSet("login_user", id, user); - userLoginDTO.setToken(jwt); + UserDetailsDTO userDetailsDTO = (UserDetailsDTO) authentication.getPrincipal(); + String token = tokenService.createToken(userDetailsDTO); + userLoginDTO.setToken(token); } response.setContentType(CommonConst.APPLICATION_JSON); response.getWriter().write(JSON.toJSONString(Result.ok(userLoginDTO))); @@ -51,10 +48,10 @@ public class AuthenticationSuccessHandlerImpl implements AuthenticationSuccessHa @Async public void updateUserInfo() { UserAuth userAuth = UserAuth.builder() - .id(UserUtils.getLoginUser().getId()) - .ipAddress(UserUtils.getLoginUser().getIpAddress()) - .ipSource(UserUtils.getLoginUser().getIpSource()) - .lastLoginTime(UserUtils.getLoginUser().getLastLoginTime()) + .id(UserUtils.getUserDetailsDTO().getId()) + .ipAddress(UserUtils.getUserDetailsDTO().getIpAddress()) + .ipSource(UserUtils.getUserDetailsDTO().getIpSource()) + .lastLoginTime(UserUtils.getUserDetailsDTO().getLastLoginTime()) .build(); userAuthMapper.updateById(userAuth); } diff --git a/aurora-springboot/src/main/java/com/aurora/handler/ControllerAdviceHandler.java b/aurora-springboot/src/main/java/com/aurora/handler/ControllerAdviceHandler.java index c19b776..fef41cc 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/ControllerAdviceHandler.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/ControllerAdviceHandler.java @@ -1,6 +1,6 @@ package com.aurora.handler; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import com.aurora.enums.StatusCodeEnum; import com.aurora.exception.BizException; import lombok.extern.log4j.Log4j2; diff --git a/aurora-springboot/src/main/java/com/aurora/handler/FilterInvocationSecurityMetadataSourceImpl.java b/aurora-springboot/src/main/java/com/aurora/handler/FilterInvocationSecurityMetadataSourceImpl.java index e0fbcb6..7cffad4 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/FilterInvocationSecurityMetadataSourceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/handler/FilterInvocationSecurityMetadataSourceImpl.java @@ -1,6 +1,6 @@ package com.aurora.handler; -import com.aurora.dto.ResourceRoleDTO; +import com.aurora.model.dto.ResourceRoleDTO; import com.aurora.mapper.RoleMapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/handler/WebSecurityHandler.java b/aurora-springboot/src/main/java/com/aurora/interceptor/AccessLimitInterceptor.java similarity index 91% rename from aurora-springboot/src/main/java/com/aurora/handler/WebSecurityHandler.java rename to aurora-springboot/src/main/java/com/aurora/interceptor/AccessLimitInterceptor.java index 52af263..6005eca 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/WebSecurityHandler.java +++ b/aurora-springboot/src/main/java/com/aurora/interceptor/AccessLimitInterceptor.java @@ -1,14 +1,15 @@ -package com.aurora.handler; +package com.aurora.interceptor; import com.alibaba.fastjson.JSON; import com.aurora.annotation.AccessLimit; import com.aurora.service.RedisService; import com.aurora.utils.IpUtils; -import com.aurora.vo.Result; +import com.aurora.model.vo.Result; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.RedisConnectionFailureException; +import org.springframework.stereotype.Component; import org.springframework.web.method.HandlerMethod; import org.springframework.web.servlet.HandlerInterceptor; @@ -25,7 +26,8 @@ import static com.aurora.constant.CommonConst.APPLICATION_JSON; * 限流逻辑 */ @Log4j2 -public class WebSecurityHandler implements HandlerInterceptor { +@Component +public class AccessLimitInterceptor implements HandlerInterceptor { @Autowired private RedisService redisService; @@ -47,7 +49,7 @@ public class WebSecurityHandler implements HandlerInterceptor { // 此操作代表获取该key对应的值自增1后的结果 long q = redisService.incrExpire(key, seconds); if (q > maxCount) { - render(httpServletResponse, Result.fail("请求过于频繁,"+seconds+"秒后再试")); + render(httpServletResponse, Result.fail("请求过于频繁," + seconds + "秒后再试")); log.warn(key + "请求次数超过每" + seconds + "秒" + maxCount + "次"); return false; } diff --git a/aurora-springboot/src/main/java/com/aurora/handler/PageableHandlerInterceptor.java b/aurora-springboot/src/main/java/com/aurora/interceptor/PaginationInterceptor.java similarity index 87% rename from aurora-springboot/src/main/java/com/aurora/handler/PageableHandlerInterceptor.java rename to aurora-springboot/src/main/java/com/aurora/interceptor/PaginationInterceptor.java index 6641be1..b12cf44 100644 --- a/aurora-springboot/src/main/java/com/aurora/handler/PageableHandlerInterceptor.java +++ b/aurora-springboot/src/main/java/com/aurora/interceptor/PaginationInterceptor.java @@ -1,7 +1,8 @@ -package com.aurora.handler; +package com.aurora.interceptor; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.aurora.utils.PageUtils; +import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import org.springframework.web.servlet.HandlerInterceptor; @@ -16,7 +17,8 @@ import static com.aurora.constant.CommonConst.*; * @author 花未眠 * 分页拦截器 **/ -public class PageableHandlerInterceptor implements HandlerInterceptor { +@Component +public class PaginationInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/ArticleMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/ArticleMapper.java index c5a9038..1988ae8 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/ArticleMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/ArticleMapper.java @@ -1,11 +1,11 @@ package com.aurora.mapper; -import com.aurora.dto.ArticleAdminDTO; -import com.aurora.dto.ArticleCardDTO; -import com.aurora.dto.ArticleDTO; -import com.aurora.dto.ArticleStatisticsDTO; +import com.aurora.model.dto.ArticleAdminDTO; +import com.aurora.model.dto.ArticleCardDTO; +import com.aurora.model.dto.ArticleDTO; +import com.aurora.model.dto.ArticleStatisticsDTO; import com.aurora.entity.Article; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/CategoryMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/CategoryMapper.java index 6d649d8..b42d923 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/CategoryMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/CategoryMapper.java @@ -1,9 +1,9 @@ package com.aurora.mapper; -import com.aurora.dto.CategoryAdminDTO; -import com.aurora.dto.CategoryDTO; +import com.aurora.model.dto.CategoryAdminDTO; +import com.aurora.model.dto.CategoryDTO; import com.aurora.entity.Category; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java index 0660931..7a5cff6 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/CommentMapper.java @@ -1,12 +1,12 @@ package com.aurora.mapper; -import com.aurora.dto.CommentAdminDTO; -import com.aurora.dto.CommentCountDTO; -import com.aurora.dto.CommentDTO; -import com.aurora.dto.ReplyDTO; +import com.aurora.model.dto.CommentAdminDTO; +import com.aurora.model.dto.CommentCountDTO; +import com.aurora.model.dto.CommentDTO; +import com.aurora.model.dto.ReplyDTO; import com.aurora.entity.Comment; -import com.aurora.vo.CommentVO; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.CommentVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/ElasticsearchMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/ElasticsearchMapper.java index b260aae..c74d259 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/ElasticsearchMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/ElasticsearchMapper.java @@ -1,6 +1,6 @@ package com.aurora.mapper; -import com.aurora.dto.ArticleSearchDTO; +import com.aurora.model.dto.ArticleSearchDTO; import org.springframework.data.elasticsearch.repository.ElasticsearchRepository; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/JobMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/JobMapper.java index 528c699..04fa401 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/JobMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/JobMapper.java @@ -1,8 +1,8 @@ package com.aurora.mapper; -import com.aurora.dto.JobDTO; +import com.aurora.model.dto.JobDTO; import com.aurora.entity.Job; -import com.aurora.vo.JobSearchVO; +import com.aurora.model.vo.JobSearchVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/PhotoAlbumMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/PhotoAlbumMapper.java index 830f2b4..a3f1493 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/PhotoAlbumMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/PhotoAlbumMapper.java @@ -1,8 +1,8 @@ package com.aurora.mapper; -import com.aurora.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; import com.aurora.entity.PhotoAlbum; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/RoleMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/RoleMapper.java index 1c94475..d831c07 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/RoleMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/RoleMapper.java @@ -1,9 +1,9 @@ package com.aurora.mapper; -import com.aurora.dto.ResourceRoleDTO; -import com.aurora.dto.RoleDTO; +import com.aurora.model.dto.ResourceRoleDTO; +import com.aurora.model.dto.RoleDTO; import com.aurora.entity.Role; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/TagMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/TagMapper.java index 6077535..99e217d 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/TagMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/TagMapper.java @@ -1,9 +1,9 @@ package com.aurora.mapper; -import com.aurora.dto.TagAdminDTO; -import com.aurora.dto.TagDTO; +import com.aurora.model.dto.TagAdminDTO; +import com.aurora.model.dto.TagDTO; import com.aurora.entity.Tag; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/TalkMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/TalkMapper.java index 6b03e31..b110f52 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/TalkMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/TalkMapper.java @@ -1,9 +1,9 @@ package com.aurora.mapper; -import com.aurora.dto.TalkAdminDTO; -import com.aurora.dto.TalkDTO; +import com.aurora.model.dto.TalkAdminDTO; +import com.aurora.model.dto.TalkDTO; import com.aurora.entity.Talk; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/UniqueViewMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/UniqueViewMapper.java index be4c5ed..df36ed7 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/UniqueViewMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/UniqueViewMapper.java @@ -1,6 +1,6 @@ package com.aurora.mapper; -import com.aurora.dto.UniqueViewDTO; +import com.aurora.model.dto.UniqueViewDTO; import com.aurora.entity.UniqueView; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; diff --git a/aurora-springboot/src/main/java/com/aurora/mapper/UserAuthMapper.java b/aurora-springboot/src/main/java/com/aurora/mapper/UserAuthMapper.java index 9554cb7..538233b 100644 --- a/aurora-springboot/src/main/java/com/aurora/mapper/UserAuthMapper.java +++ b/aurora-springboot/src/main/java/com/aurora/mapper/UserAuthMapper.java @@ -1,8 +1,8 @@ package com.aurora.mapper; -import com.aurora.dto.UserAdminDTO; +import com.aurora.model.dto.UserAdminDTO; import com.aurora.entity.UserAuth; -import com.aurora.vo.ConditionVO; +import com.aurora.model.vo.ConditionVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/AboutDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/AboutDTO.java similarity index 88% rename from aurora-springboot/src/main/java/com/aurora/dto/AboutDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/AboutDTO.java index 5233d64..16612b9 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/AboutDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/AboutDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArchiveDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArchiveDTO.java similarity index 90% rename from aurora-springboot/src/main/java/com/aurora/dto/ArchiveDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArchiveDTO.java index 5252c82..9419a05 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArchiveDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArchiveDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminDTO.java index 8ccff85..71b4c5b 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminViewDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminViewDTO.java similarity index 91% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminViewDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminViewDTO.java index c17cc68..e7ed0ac 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleAdminViewDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleAdminViewDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import io.swagger.annotations.ApiModel; @@ -28,4 +28,5 @@ public class ArticleAdminViewDTO { private Integer status; private Integer type; private String originalUrl; + private String password; } diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleCardDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleCardDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleCardDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleCardDTO.java index e65bff3..1c6ea8f 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleCardDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleCardDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import com.aurora.entity.Tag; import com.aurora.entity.UserInfo; @@ -24,6 +24,7 @@ public class ArticleCardDTO { private UserInfo author; private String categoryName; private List tags; + private Integer status; private LocalDateTime createTime; private LocalDateTime updateTime; } diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleDTO.java index 276ac26..7ef5827 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import com.aurora.entity.Tag; import com.aurora.entity.UserInfo; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleRankDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleRankDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleRankDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleRankDTO.java index 01addca..f20fb4c 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleRankDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleRankDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleSearchDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleSearchDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleSearchDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleSearchDTO.java index 51c9612..29ac3c3 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleSearchDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleSearchDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ArticleStatisticsDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleStatisticsDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/ArticleStatisticsDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ArticleStatisticsDTO.java index efd86ce..6fe78bb 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ArticleStatisticsDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ArticleStatisticsDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/AuroraAdminInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraAdminInfoDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/AuroraAdminInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/AuroraAdminInfoDTO.java index 84068e1..4db1d9f 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/AuroraAdminInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraAdminInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/AuroraBackInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraBackInfoDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/AuroraBackInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/AuroraBackInfoDTO.java index 4808158..af3b3d9 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/AuroraBackInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraBackInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/AuroraHomeInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraHomeInfoDTO.java similarity index 93% rename from aurora-springboot/src/main/java/com/aurora/dto/AuroraHomeInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/AuroraHomeInfoDTO.java index c1ba75a..82955e1 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/AuroraHomeInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/AuroraHomeInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CategoryAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryAdminDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/CategoryAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CategoryAdminDTO.java index 0946edc..2a8dfb9 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CategoryAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CategoryDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryDTO.java similarity index 90% rename from aurora-springboot/src/main/java/com/aurora/dto/CategoryDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CategoryDTO.java index 82e24b5..61dc2e4 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CategoryDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CategoryOptionDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryOptionDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/CategoryOptionDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CategoryOptionDTO.java index f36bd6b..5f3a4bd 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CategoryOptionDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CategoryOptionDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CommentAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentAdminDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/CommentAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CommentAdminDTO.java index 0589746..731f590 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CommentAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CommentCountDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/CommentCountDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java index c81b44a..dd732c3 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CommentCountDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentCountDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/CommentDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/CommentDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/CommentDTO.java index f0bd68a..5b530fc 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/CommentDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/CommentDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/EmailDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/EmailDTO.java similarity index 93% rename from aurora-springboot/src/main/java/com/aurora/dto/EmailDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/EmailDTO.java index 6175c25..f659ed3 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/EmailDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/EmailDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ExceptionLogDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ExceptionLogDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/ExceptionLogDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ExceptionLogDTO.java index 099c7f9..538f632 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ExceptionLogDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ExceptionLogDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/FriendLinkAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkAdminDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/FriendLinkAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkAdminDTO.java index 47a41e1..3b0896a 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/FriendLinkAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.Builder; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/FriendLinkDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/FriendLinkDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkDTO.java index 7c3e810..0c88072 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/FriendLinkDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/FriendLinkDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/JobDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/JobDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/JobDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/JobDTO.java index 32c4229..2233fe6 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/JobDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/JobDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/JobLogDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/JobLogDTO.java similarity index 66% rename from aurora-springboot/src/main/java/com/aurora/dto/JobLogDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/JobLogDTO.java index 0bd90b9..834f719 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/JobLogDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/JobLogDTO.java @@ -1,10 +1,5 @@ -package com.aurora.dto; +package com.aurora.model.dto; -import com.baomidou.mybatisplus.annotation.FieldFill; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/LabelOptionDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/LabelOptionDTO.java similarity index 93% rename from aurora-springboot/src/main/java/com/aurora/dto/LabelOptionDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/LabelOptionDTO.java index 64f574b..4a82bf4 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/LabelOptionDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/LabelOptionDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/MaxwellDataDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/MaxwellDataDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/MaxwellDataDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/MaxwellDataDTO.java index 004ad81..6671887 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/MaxwellDataDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/MaxwellDataDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/MenuDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/MenuDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/MenuDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/MenuDTO.java index 533bcc5..23b9cdc 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/MenuDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/MenuDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/OperationLogDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/OperationLogDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/OperationLogDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/OperationLogDTO.java index 3822175..e83f512 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/OperationLogDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/OperationLogDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAdminDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/PhotoAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAdminDTO.java index 23c757b..e577830 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumAdminDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumAdminDTO.java index fa640c3..8abdc10 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumDTO.java index c4ca75b..d89096f 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/PhotoAlbumDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoAlbumDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/PhotoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/PhotoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/PhotoDTO.java index f1994f3..dd6fdf6 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/PhotoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/PhotoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/QQTokenDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/QQTokenDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/QQTokenDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/QQTokenDTO.java index 93014da..1d76c87 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/QQTokenDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/QQTokenDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/QQUserInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/QQUserInfoDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/QQUserInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/QQUserInfoDTO.java index f15506a..986a2ac 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/QQUserInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/QQUserInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ReplyDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ReplyDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/ReplyDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ReplyDTO.java index dbf6409..3c2f5e4 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ReplyDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ReplyDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ResourceDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ResourceDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/ResourceDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ResourceDTO.java index 1d3f16e..e5200ff 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ResourceDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ResourceDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/ResourceRoleDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/ResourceRoleDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/ResourceRoleDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/ResourceRoleDTO.java index 13554ca..6deae7c 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/ResourceRoleDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/ResourceRoleDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/RoleDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/RoleDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/RoleDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/RoleDTO.java index 0eb5d54..d6d9714 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/RoleDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/RoleDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/SocialTokenDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/SocialTokenDTO.java similarity index 93% rename from aurora-springboot/src/main/java/com/aurora/dto/SocialTokenDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/SocialTokenDTO.java index 4f3e36a..a583993 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/SocialTokenDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/SocialTokenDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/SocialUserInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/SocialUserInfoDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/SocialUserInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/SocialUserInfoDTO.java index 9c08e35..2c9b9b9 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/SocialUserInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/SocialUserInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/TagAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/TagAdminDTO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/dto/TagAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/TagAdminDTO.java index 63dbccd..4c7a868 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/TagAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/TagAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/TagDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/TagDTO.java similarity index 90% rename from aurora-springboot/src/main/java/com/aurora/dto/TagDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/TagDTO.java index 6e4b37e..9729a56 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/TagDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/TagDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/TalkAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/TalkAdminDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/TalkAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/TalkAdminDTO.java index 27da74e..9113ce7 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/TalkAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/TalkAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/TalkDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/TalkDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/TalkDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/TalkDTO.java index 5914b59..c968c5e 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/TalkDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/TalkDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/TopAndFeaturedArticlesDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/TopAndFeaturedArticlesDTO.java similarity index 88% rename from aurora-springboot/src/main/java/com/aurora/dto/TopAndFeaturedArticlesDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/TopAndFeaturedArticlesDTO.java index bd2d009..94e01fc 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/TopAndFeaturedArticlesDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/TopAndFeaturedArticlesDTO.java @@ -1,6 +1,5 @@ -package com.aurora.dto; +package com.aurora.model.dto; -import com.aurora.entity.Article; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UniqueViewDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UniqueViewDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/UniqueViewDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UniqueViewDTO.java index 72a88c6..3637388 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UniqueViewDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UniqueViewDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserAdminDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserAdminDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/UserAdminDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserAdminDTO.java index d810c0c..81e1277 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserAdminDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserAdminDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserAreaDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserAreaDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/UserAreaDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserAreaDTO.java index 862d0ba..6f3ce94 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserAreaDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserAreaDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserDetailDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserDetailsDTO.java similarity index 89% rename from aurora-springboot/src/main/java/com/aurora/dto/UserDetailDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserDetailsDTO.java index aa8cf3f..58296dd 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserDetailDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserDetailsDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import com.aurora.constant.CommonConst; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; @@ -27,7 +27,7 @@ import java.util.stream.Collectors; @Builder @AllArgsConstructor @NoArgsConstructor -public class UserDetailDTO implements UserDetails { +public class UserDetailsDTO implements UserDetails { /** * 用户账号id @@ -62,7 +62,7 @@ public class UserDetailDTO implements UserDetails { /** * 用户角色 */ - private List roleList; + private List roles; /** * 用户昵称 @@ -114,6 +114,13 @@ public class UserDetailDTO implements UserDetails { */ private String os; + /** + * 过期时间 + */ + @JsonDeserialize(using = LocalDateTimeDeserializer.class) + @JsonSerialize(using = LocalDateTimeSerializer.class) + private LocalDateTime expireTime; + /** * 最后登录时间 */ @@ -125,7 +132,7 @@ public class UserDetailDTO implements UserDetails { @Override @Transient public Collection getAuthorities() { - return roleList.stream() + return roles.stream() .map(SimpleGrantedAuthority::new) .collect(Collectors.toSet()); } diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserInfoDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserInfoDTO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/dto/UserInfoDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserInfoDTO.java index 86d5257..61c8e39 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserInfoDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserInfoDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserLogoutStatusDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserLogoutStatusDTO.java similarity index 90% rename from aurora-springboot/src/main/java/com/aurora/dto/UserLogoutStatusDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserLogoutStatusDTO.java index 05c5b4a..2172401 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserLogoutStatusDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserLogoutStatusDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserMenuDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserMenuDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/UserMenuDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserMenuDTO.java index 6b30bff..814ebee 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserMenuDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserMenuDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserOnlineDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserOnlineDTO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/dto/UserOnlineDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserOnlineDTO.java index 1c74154..1bb76bc 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserOnlineDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserOnlineDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/UserRoleDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/UserRoleDTO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/dto/UserRoleDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/UserRoleDTO.java index 2b605fe..1bb3d3c 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/UserRoleDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/UserRoleDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/dto/WebsiteConfigDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/dto/WebsiteConfigDTO.java rename to aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java index ee9bcaa..dc44200 100644 --- a/aurora-springboot/src/main/java/com/aurora/dto/WebsiteConfigDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java @@ -1,4 +1,4 @@ -package com.aurora.dto; +package com.aurora.model.dto; import lombok.AllArgsConstructor; @@ -6,8 +6,6 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; -import java.util.List; - @Data @Builder @NoArgsConstructor diff --git a/aurora-springboot/src/main/java/com/aurora/vo/AboutVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/AboutVO.java similarity index 92% rename from aurora-springboot/src/main/java/com/aurora/vo/AboutVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/AboutVO.java index 97b4356..f9a7299 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/AboutVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/AboutVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/model/vo/ArticlePasswordVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticlePasswordVO.java new file mode 100644 index 0000000..3da3549 --- /dev/null +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticlePasswordVO.java @@ -0,0 +1,16 @@ +package com.aurora.model.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class ArticlePasswordVO { + private Integer articleId; + private String articlePassword; +} diff --git a/aurora-springboot/src/main/java/com/aurora/vo/ArticleTopFeaturedVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticleTopFeaturedVO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/vo/ArticleTopFeaturedVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/ArticleTopFeaturedVO.java index 9f35776..528f5e9 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/ArticleTopFeaturedVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticleTopFeaturedVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/ArticleVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticleVO.java similarity index 91% rename from aurora-springboot/src/main/java/com/aurora/vo/ArticleVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/ArticleVO.java index 79a671a..6d1ad20 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/ArticleVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ArticleVO.java @@ -1,9 +1,10 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.*; + import javax.validation.constraints.NotBlank; import java.util.List; @@ -86,4 +87,10 @@ public class ArticleVO { */ @ApiModelProperty(name = "originalUrl", value = "原文链接", dataType = "String") private String originalUrl; + + /** + * 文章访问密码 + */ + @ApiModelProperty(name = "password", value = "文章访问密码", dataType = "String") + private String password; } diff --git a/aurora-springboot/src/main/java/com/aurora/vo/CategoryVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/CategoryVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/CategoryVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/CategoryVO.java index ea25b40..f182c21 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/CategoryVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/CategoryVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/CommentVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/CommentVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/CommentVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/CommentVO.java index bd15e67..a279dc3 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/CommentVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/CommentVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/ConditionVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ConditionVO.java similarity index 98% rename from aurora-springboot/src/main/java/com/aurora/vo/ConditionVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/ConditionVO.java index bad923a..1f7352c 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/ConditionVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ConditionVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/DeleteVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/DeleteVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/DeleteVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/DeleteVO.java index 3dddd3c..93d90e9 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/DeleteVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/DeleteVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/EmailVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/EmailVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/EmailVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/EmailVO.java index e37a0be..56f505e 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/EmailVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/EmailVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/FriendLinkVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/FriendLinkVO.java similarity index 98% rename from aurora-springboot/src/main/java/com/aurora/vo/FriendLinkVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/FriendLinkVO.java index 61872ed..8212408 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/FriendLinkVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/FriendLinkVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/IsHiddenVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/IsHiddenVO.java similarity index 90% rename from aurora-springboot/src/main/java/com/aurora/vo/IsHiddenVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/IsHiddenVO.java index ad1375b..2785e6f 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/IsHiddenVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/IsHiddenVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/JobLogSearchVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/JobLogSearchVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/JobLogSearchVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/JobLogSearchVO.java index 1881c9b..5ff038a 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/JobLogSearchVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/JobLogSearchVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/JobRunVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/JobRunVO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/vo/JobRunVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/JobRunVO.java index e134d13..e7705f7 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/JobRunVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/JobRunVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/JobSearchVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/JobSearchVO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/vo/JobSearchVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/JobSearchVO.java index e495574..f72d8ff 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/JobSearchVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/JobSearchVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/JobStatusVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/JobStatusVO.java similarity index 94% rename from aurora-springboot/src/main/java/com/aurora/vo/JobStatusVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/JobStatusVO.java index 953345e..34890a8 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/JobStatusVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/JobStatusVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/JobVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/JobVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/JobVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/JobVO.java index b812d83..e7eb668 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/JobVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/JobVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/MenuVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/MenuVO.java similarity index 98% rename from aurora-springboot/src/main/java/com/aurora/vo/MenuVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/MenuVO.java index 6693e1a..8b6a57c 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/MenuVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/MenuVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/PageResult.java b/aurora-springboot/src/main/java/com/aurora/model/vo/PageResult.java similarity index 86% rename from aurora-springboot/src/main/java/com/aurora/vo/PageResult.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/PageResult.java index a08ec10..045e96b 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/PageResult.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/PageResult.java @@ -1,7 +1,6 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/PasswordVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/PasswordVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/PasswordVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/PasswordVO.java index 0392b5b..8f979b0 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/PasswordVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/PasswordVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/PhotoAlbumVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoAlbumVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/PhotoAlbumVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/PhotoAlbumVO.java index 5a51d46..9ebae89 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/PhotoAlbumVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoAlbumVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/PhotoInfoVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoInfoVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/PhotoInfoVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/PhotoInfoVO.java index 11e8ee6..3c952f2 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/PhotoInfoVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoInfoVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/PhotoVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/PhotoVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/PhotoVO.java index 4524c22..6d92420 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/PhotoVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/PhotoVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/QQLoginVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/QQLoginVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/QQLoginVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/QQLoginVO.java index a782a91..fb6531f 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/QQLoginVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/QQLoginVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/ResourceVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ResourceVO.java similarity index 98% rename from aurora-springboot/src/main/java/com/aurora/vo/ResourceVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/ResourceVO.java index d05e7a9..d82c634 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/ResourceVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ResourceVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/Result.java b/aurora-springboot/src/main/java/com/aurora/model/vo/Result.java similarity index 98% rename from aurora-springboot/src/main/java/com/aurora/vo/Result.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/Result.java index b154803..b2b2c61 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/Result.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/Result.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import com.aurora.enums.StatusCodeEnum; import lombok.Data; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/ReviewVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/ReviewVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/ReviewVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/ReviewVO.java index b59a9ad..a968253 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/ReviewVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/ReviewVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/RoleVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/RoleVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/RoleVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/RoleVO.java index 72b3e27..7da8280 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/RoleVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/RoleVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/SubscribeVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/SubscribeVO.java similarity index 89% rename from aurora-springboot/src/main/java/com/aurora/vo/SubscribeVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/SubscribeVO.java index 801e47f..a51a36b 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/SubscribeVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/SubscribeVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/TagVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/TagVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/TagVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/TagVO.java index f767f02..baf4a74 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/TagVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/TagVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/TalkVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/TalkVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/TalkVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/TalkVO.java index c2f8551..20767ec 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/TalkVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/TalkVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/UserDisableVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/UserDisableVO.java similarity index 95% rename from aurora-springboot/src/main/java/com/aurora/vo/UserDisableVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/UserDisableVO.java index 8fa51b2..022b314 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/UserDisableVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/UserDisableVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import lombok.AllArgsConstructor; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/UserInfoVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/UserInfoVO.java similarity index 96% rename from aurora-springboot/src/main/java/com/aurora/vo/UserInfoVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/UserInfoVO.java index e567e7e..d28d3c8 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/UserInfoVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/UserInfoVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/UserRoleVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/UserRoleVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/UserRoleVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/UserRoleVO.java index 7fe81de..2165065 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/UserRoleVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/UserRoleVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/UserVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/UserVO.java similarity index 97% rename from aurora-springboot/src/main/java/com/aurora/vo/UserVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/UserVO.java index d48fe79..5e70fc5 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/UserVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/UserVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/aurora-springboot/src/main/java/com/aurora/vo/WebsiteConfigVO.java b/aurora-springboot/src/main/java/com/aurora/model/vo/WebsiteConfigVO.java similarity index 99% rename from aurora-springboot/src/main/java/com/aurora/vo/WebsiteConfigVO.java rename to aurora-springboot/src/main/java/com/aurora/model/vo/WebsiteConfigVO.java index 2dbe61b..366440f 100644 --- a/aurora-springboot/src/main/java/com/aurora/vo/WebsiteConfigVO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/vo/WebsiteConfigVO.java @@ -1,4 +1,4 @@ -package com.aurora.vo; +package com.aurora.model.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -7,8 +7,6 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; -import java.util.List; - /** * @author 花未眠 * 网站配置信息 diff --git a/aurora-springboot/src/main/java/com/aurora/quartz/AuroraQuartz.java b/aurora-springboot/src/main/java/com/aurora/quartz/AuroraQuartz.java index 2fdbbdf..cb7c698 100644 --- a/aurora-springboot/src/main/java/com/aurora/quartz/AuroraQuartz.java +++ b/aurora-springboot/src/main/java/com/aurora/quartz/AuroraQuartz.java @@ -2,8 +2,8 @@ package com.aurora.quartz; import cn.hutool.core.date.LocalDateTimeUtil; import com.alibaba.fastjson.JSON; -import com.aurora.dto.ArticleSearchDTO; -import com.aurora.dto.UserAreaDTO; +import com.aurora.model.dto.ArticleSearchDTO; +import com.aurora.model.dto.UserAreaDTO; import com.aurora.entity.*; import com.aurora.mapper.ElasticsearchMapper; import com.aurora.mapper.UniqueViewMapper; @@ -23,10 +23,7 @@ import org.springframework.web.client.RestTemplate; import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Optional; +import java.util.*; import java.util.stream.Collectors; import static com.aurora.constant.CommonConst.UNKNOWN; @@ -90,7 +87,7 @@ public class AuroraQuartz { Map userAreaMap = userAuthMapper.selectList(new LambdaQueryWrapper().select(UserAuth::getIpSource)) .stream() .map(item -> { - if (StringUtils.isNotBlank(item.getIpSource())) { + if (Objects.nonNull(item) && StringUtils.isNotBlank(item.getIpSource())) { return IpUtils.getIpProvince(item.getIpSource()); } return UNKNOWN; diff --git a/aurora-springboot/src/main/java/com/aurora/service/ArticleService.java b/aurora-springboot/src/main/java/com/aurora/service/ArticleService.java index 5b8b745..25af24a 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/ArticleService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/ArticleService.java @@ -1,10 +1,9 @@ package com.aurora.service; -import com.aurora.dto.*; +import com.aurora.model.dto.*; import com.aurora.entity.Article; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.extension.service.IService; -import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -19,6 +18,8 @@ public interface ArticleService extends IService
{ ArticleDTO getArticleById(Integer articleId); + void accessArticle(ArticlePasswordVO articlePasswordVO); + PageResult listArticlesByTagId(Integer tagId); PageResult listArchives(); diff --git a/aurora-springboot/src/main/java/com/aurora/service/AuroraInfoService.java b/aurora-springboot/src/main/java/com/aurora/service/AuroraInfoService.java index 31e8309..9946d00 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/AuroraInfoService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/AuroraInfoService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.AboutDTO; -import com.aurora.dto.AuroraAdminInfoDTO; -import com.aurora.dto.AuroraHomeInfoDTO; -import com.aurora.dto.WebsiteConfigDTO; -import com.aurora.vo.AboutVO; -import com.aurora.vo.WebsiteConfigVO; +import com.aurora.model.dto.AboutDTO; +import com.aurora.model.dto.AuroraAdminInfoDTO; +import com.aurora.model.dto.AuroraHomeInfoDTO; +import com.aurora.model.dto.WebsiteConfigDTO; +import com.aurora.model.vo.AboutVO; +import com.aurora.model.vo.WebsiteConfigVO; public interface AuroraInfoService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/CategoryService.java b/aurora-springboot/src/main/java/com/aurora/service/CategoryService.java index e41606d..29e6a5e 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/CategoryService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/CategoryService.java @@ -1,12 +1,12 @@ package com.aurora.service; -import com.aurora.dto.CategoryAdminDTO; -import com.aurora.dto.CategoryDTO; -import com.aurora.dto.CategoryOptionDTO; +import com.aurora.model.dto.CategoryAdminDTO; +import com.aurora.model.dto.CategoryDTO; +import com.aurora.model.dto.CategoryOptionDTO; import com.aurora.entity.Category; -import com.aurora.vo.CategoryVO; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.CategoryVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/CommentService.java b/aurora-springboot/src/main/java/com/aurora/service/CommentService.java index 3cf1904..1735ded 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/CommentService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/CommentService.java @@ -1,13 +1,13 @@ package com.aurora.service; -import com.aurora.dto.CommentAdminDTO; -import com.aurora.dto.CommentDTO; -import com.aurora.dto.ReplyDTO; +import com.aurora.model.dto.CommentAdminDTO; +import com.aurora.model.dto.CommentDTO; +import com.aurora.model.dto.ReplyDTO; import com.aurora.entity.Comment; -import com.aurora.vo.CommentVO; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.ReviewVO; +import com.aurora.model.vo.CommentVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.ReviewVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/ExceptionLogService.java b/aurora-springboot/src/main/java/com/aurora/service/ExceptionLogService.java index d13acc9..49f9a00 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/ExceptionLogService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/ExceptionLogService.java @@ -1,9 +1,9 @@ package com.aurora.service; -import com.aurora.dto.ExceptionLogDTO; +import com.aurora.model.dto.ExceptionLogDTO; import com.aurora.entity.ExceptionLog; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.extension.service.IService; public interface ExceptionLogService extends IService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/FriendLinkService.java b/aurora-springboot/src/main/java/com/aurora/service/FriendLinkService.java index 5ff09fe..4299f20 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/FriendLinkService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/FriendLinkService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.FriendLinkAdminDTO; -import com.aurora.dto.FriendLinkDTO; +import com.aurora.model.dto.FriendLinkAdminDTO; +import com.aurora.model.dto.FriendLinkDTO; import com.aurora.entity.FriendLink; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.FriendLinkVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.FriendLinkVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/JobLogService.java b/aurora-springboot/src/main/java/com/aurora/service/JobLogService.java index 73644d2..6564659 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/JobLogService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/JobLogService.java @@ -1,10 +1,10 @@ package com.aurora.service; -import com.aurora.dto.JobLogDTO; +import com.aurora.model.dto.JobLogDTO; import com.aurora.entity.JobLog; -import com.aurora.vo.JobLogSearchVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.JobLogSearchVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/JobService.java b/aurora-springboot/src/main/java/com/aurora/service/JobService.java index 825cbad..ee533f4 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/JobService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/JobService.java @@ -1,8 +1,8 @@ package com.aurora.service; -import com.aurora.dto.JobDTO; +import com.aurora.model.dto.JobDTO; import com.aurora.entity.Job; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/MenuService.java b/aurora-springboot/src/main/java/com/aurora/service/MenuService.java index e32225e..6ac8caa 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/MenuService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/MenuService.java @@ -1,12 +1,12 @@ package com.aurora.service; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.MenuDTO; -import com.aurora.dto.UserMenuDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.MenuDTO; +import com.aurora.model.dto.UserMenuDTO; import com.aurora.entity.Menu; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.IsHiddenVO; -import com.aurora.vo.MenuVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.IsHiddenVO; +import com.aurora.model.vo.MenuVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/OperationLogService.java b/aurora-springboot/src/main/java/com/aurora/service/OperationLogService.java index a892d67..b5f65fc 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/OperationLogService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/OperationLogService.java @@ -1,9 +1,9 @@ package com.aurora.service; -import com.aurora.dto.OperationLogDTO; +import com.aurora.model.dto.OperationLogDTO; import com.aurora.entity.OperationLog; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.extension.service.IService; public interface OperationLogService extends IService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/PhotoAlbumService.java b/aurora-springboot/src/main/java/com/aurora/service/PhotoAlbumService.java index da3c065..671d692 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/PhotoAlbumService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/PhotoAlbumService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.PhotoAlbumAdminDTO; -import com.aurora.dto.PhotoAlbumDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoAlbumDTO; import com.aurora.entity.PhotoAlbum; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.PhotoAlbumVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.PhotoAlbumVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/PhotoService.java b/aurora-springboot/src/main/java/com/aurora/service/PhotoService.java index 6504fe0..51e83a4 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/PhotoService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/PhotoService.java @@ -1,10 +1,10 @@ package com.aurora.service; -import com.aurora.dto.PhotoAdminDTO; -import com.aurora.dto.PhotoAlbumAdminDTO; -import com.aurora.dto.PhotoDTO; +import com.aurora.model.dto.PhotoAdminDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoDTO; import com.aurora.entity.Photo; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/ResourceService.java b/aurora-springboot/src/main/java/com/aurora/service/ResourceService.java index 827dded..bd78cb1 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/ResourceService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/ResourceService.java @@ -1,10 +1,10 @@ package com.aurora.service; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.ResourceDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.ResourceDTO; import com.aurora.entity.Resource; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.ResourceVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.ResourceVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/RoleService.java b/aurora-springboot/src/main/java/com/aurora/service/RoleService.java index ab04f62..953b47c 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/RoleService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/RoleService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.RoleDTO; -import com.aurora.dto.UserRoleDTO; +import com.aurora.model.dto.RoleDTO; +import com.aurora.model.dto.UserRoleDTO; import com.aurora.entity.Role; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.RoleVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.RoleVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/TagService.java b/aurora-springboot/src/main/java/com/aurora/service/TagService.java index b58feba..6d14ad6 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/TagService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/TagService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.TagAdminDTO; -import com.aurora.dto.TagDTO; +import com.aurora.model.dto.TagAdminDTO; +import com.aurora.model.dto.TagDTO; import com.aurora.entity.Tag; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.TagVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.TagVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/TalkService.java b/aurora-springboot/src/main/java/com/aurora/service/TalkService.java index 3631c23..47591b8 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/TalkService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/TalkService.java @@ -1,11 +1,11 @@ package com.aurora.service; -import com.aurora.dto.TalkAdminDTO; -import com.aurora.dto.TalkDTO; +import com.aurora.model.dto.TalkAdminDTO; +import com.aurora.model.dto.TalkDTO; import com.aurora.entity.Talk; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.TalkVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.TalkVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/TokenService.java b/aurora-springboot/src/main/java/com/aurora/service/TokenService.java new file mode 100644 index 0000000..74ceaa2 --- /dev/null +++ b/aurora-springboot/src/main/java/com/aurora/service/TokenService.java @@ -0,0 +1,23 @@ +package com.aurora.service; + +import com.aurora.model.dto.UserDetailsDTO; +import io.jsonwebtoken.Claims; + +import javax.servlet.http.HttpServletRequest; + +public interface TokenService { + + String createToken(UserDetailsDTO userDetailsDTO); + + String createToken(String subject); + + void refreshToken(UserDetailsDTO userDetailsDTO); + + void renewToken(UserDetailsDTO userDetailsDTO); + + Claims parseToken(String token); + + UserDetailsDTO getUserDetailDTO(HttpServletRequest request); + + void delLoginUser(Integer userId); +} diff --git a/aurora-springboot/src/main/java/com/aurora/service/UniqueViewService.java b/aurora-springboot/src/main/java/com/aurora/service/UniqueViewService.java index 063edff..9e859e5 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/UniqueViewService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/UniqueViewService.java @@ -1,6 +1,6 @@ package com.aurora.service; -import com.aurora.dto.UniqueViewDTO; +import com.aurora.model.dto.UniqueViewDTO; import com.aurora.entity.UniqueView; import com.baomidou.mybatisplus.extension.service.IService; diff --git a/aurora-springboot/src/main/java/com/aurora/service/UserAuthService.java b/aurora-springboot/src/main/java/com/aurora/service/UserAuthService.java index 7f67b3c..41af617 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/UserAuthService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/UserAuthService.java @@ -1,10 +1,10 @@ package com.aurora.service; -import com.aurora.dto.UserAdminDTO; -import com.aurora.dto.UserAreaDTO; -import com.aurora.dto.UserInfoDTO; -import com.aurora.dto.UserLogoutStatusDTO; -import com.aurora.vo.*; +import com.aurora.model.dto.UserAdminDTO; +import com.aurora.model.dto.UserAreaDTO; +import com.aurora.model.dto.UserInfoDTO; +import com.aurora.model.dto.UserLogoutStatusDTO; +import com.aurora.model.vo.*; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/service/UserInfoService.java b/aurora-springboot/src/main/java/com/aurora/service/UserInfoService.java index 255249c..9e652bc 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/UserInfoService.java +++ b/aurora-springboot/src/main/java/com/aurora/service/UserInfoService.java @@ -1,9 +1,9 @@ package com.aurora.service; -import com.aurora.dto.UserInfoDTO; -import com.aurora.dto.UserOnlineDTO; +import com.aurora.model.dto.UserInfoDTO; +import com.aurora.model.dto.UserOnlineDTO; import com.aurora.entity.UserInfo; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.extension.service.IService; import org.springframework.web.multipart.MultipartFile; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/ArticleServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/ArticleServiceImpl.java index e57e729..640257a 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/ArticleServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/ArticleServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; -import com.aurora.dto.*; +import com.aurora.model.dto.*; import com.aurora.entity.Article; import com.aurora.entity.ArticleTag; import com.aurora.entity.Category; @@ -22,7 +22,7 @@ import com.aurora.strategy.context.UploadStrategyContext; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -42,6 +42,7 @@ import java.util.stream.Collectors; import static com.aurora.constant.MQPrefixConst.SUBSCRIBE_EXCHANGE; import static com.aurora.constant.RedisPrefixConst.*; import static com.aurora.enums.ArticleStatusEnum.*; +import static com.aurora.enums.StatusCodeEnum.ARTICLE_ACCESS_FAIL; @Service public class ArticleServiceImpl extends ServiceImpl implements ArticleService { @@ -115,6 +116,21 @@ public class ArticleServiceImpl extends ServiceImpl impl @SneakyThrows @Override public ArticleDTO getArticleById(Integer articleId) { + Article articleForCheck = articleMapper.selectOne(new LambdaQueryWrapper
().eq(Article::getId, articleId)); + if (Objects.isNull(articleForCheck)) { + return null; + } + if (articleForCheck.getStatus().equals(2)) { + Boolean isAccess; + try { + isAccess = redisService.sIsMember(USER_ARTICLE_ACCESS + ":" + UserUtils.getUserDetailsDTO().getId(), articleId); + } catch (Exception exception) { + throw new BizException(ARTICLE_ACCESS_FAIL); + } + if (isAccess.equals(false)) { + throw new BizException(ARTICLE_ACCESS_FAIL); + } + } updateArticleViewsCount(articleId); CompletableFuture asyncArticle = CompletableFuture.supplyAsync(() -> articleMapper.getArticleById(articleId)); CompletableFuture asyncPreArticle = CompletableFuture.supplyAsync(() -> { @@ -144,6 +160,19 @@ public class ArticleServiceImpl extends ServiceImpl impl return article; } + @Override + public void accessArticle(ArticlePasswordVO articlePasswordVO) { + Article article = articleMapper.selectOne(new LambdaQueryWrapper
().eq(Article::getId, articlePasswordVO.getArticleId())); + if (Objects.isNull(article)) { + throw new BizException("文章不存在"); + } + if (article.getPassword().equals(articlePasswordVO.getArticlePassword())) { + redisService.sAdd(USER_ARTICLE_ACCESS + ":" + UserUtils.getUserDetailsDTO().getId(), articlePasswordVO.getArticleId()); + } else { + throw new BizException("密码错误"); + } + } + @SneakyThrows @Override public PageResult listArticlesByTagId(Integer tagId) { @@ -217,7 +246,7 @@ public class ArticleServiceImpl extends ServiceImpl impl if (Objects.nonNull(category)) { article.setCategoryId(category.getId()); } - article.setUserId(UserUtils.getLoginUser().getUserInfoId()); + article.setUserId(UserUtils.getUserDetailsDTO().getUserInfoId()); this.saveOrUpdate(article); // 保存文章标签 saveArticleTag(articleVO, article.getId()); diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/AuroraInfoServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/AuroraInfoServiceImpl.java index 761ad09..6d2be00 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/AuroraInfoServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/AuroraInfoServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; -import com.aurora.dto.*; +import com.aurora.model.dto.*; import com.aurora.entity.*; import com.aurora.mapper.*; import com.aurora.service.AuroraInfoService; @@ -9,8 +9,8 @@ import com.aurora.service.RedisService; import com.aurora.service.UniqueViewService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.IpUtils; -import com.aurora.vo.AboutVO; -import com.aurora.vo.WebsiteConfigVO; +import com.aurora.model.vo.AboutVO; +import com.aurora.model.vo.WebsiteConfigVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/CategoryServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/CategoryServiceImpl.java index 84824e4..129ac8d 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/CategoryServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/CategoryServiceImpl.java @@ -1,20 +1,19 @@ package com.aurora.service.impl; -import com.aurora.dto.CategoryAdminDTO; -import com.aurora.dto.CategoryDTO; -import com.aurora.dto.CategoryOptionDTO; +import com.aurora.model.dto.CategoryAdminDTO; +import com.aurora.model.dto.CategoryDTO; +import com.aurora.model.dto.CategoryOptionDTO; import com.aurora.entity.Article; import com.aurora.entity.Category; import com.aurora.exception.BizException; import com.aurora.mapper.ArticleMapper; import com.aurora.mapper.CategoryMapper; -import com.aurora.service.ArticleService; import com.aurora.service.CategoryService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.CategoryVO; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.CategoryVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -23,10 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; -import java.util.Map; import java.util.Objects; -import java.util.concurrent.CompletableFuture; -import java.util.stream.Collectors; @Service public class CategoryServiceImpl extends ServiceImpl implements CategoryService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/CommentServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/CommentServiceImpl.java index 9e268bf..ad830a6 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/CommentServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/CommentServiceImpl.java @@ -1,8 +1,11 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; -import com.aurora.dto.*; +import com.aurora.model.dto.*; +import com.aurora.entity.Article; import com.aurora.entity.Comment; +import com.aurora.entity.Talk; +import com.aurora.entity.UserInfo; import com.aurora.enums.CommentTypeEnum; import com.aurora.exception.BizException; import com.aurora.mapper.ArticleMapper; @@ -14,10 +17,10 @@ import com.aurora.service.CommentService; import com.aurora.utils.HTMLUtils; import com.aurora.utils.PageUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.CommentVO; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.ReviewVO; +import com.aurora.model.vo.CommentVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.ReviewVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -37,8 +40,7 @@ import java.util.stream.Collectors; import static com.aurora.constant.CommonConst.*; import static com.aurora.constant.MQPrefixConst.EMAIL_EXCHANGE; -import static com.aurora.enums.CommentTypeEnum.getCommentEnum; -import static com.aurora.enums.CommentTypeEnum.getCommentPath; +import static com.aurora.enums.CommentTypeEnum.*; @Service public class CommentServiceImpl extends ServiceImpl implements CommentService { @@ -76,14 +78,12 @@ public class CommentServiceImpl extends ServiceImpl impl @Override public void saveComment(CommentVO commentVO) { - if (!types.contains(commentVO.getType())) { - throw new BizException("评论类型不存在!"); - } + checkCommentVO(commentVO); WebsiteConfigDTO websiteConfig = auroraInfoService.getWebsiteConfig(); Integer isCommentReview = websiteConfig.getIsCommentReview(); commentVO.setCommentContent(HTMLUtils.filter(commentVO.getCommentContent())); Comment comment = Comment.builder() - .userId(UserUtils.getLoginUser().getUserInfoId()) + .userId(UserUtils.getUserDetailsDTO().getUserInfoId()) .replyUserId(commentVO.getReplyUserId()) .topicId(commentVO.getTopicId()) .commentContent(commentVO.getCommentContent()) @@ -151,6 +151,70 @@ public class CommentServiceImpl extends ServiceImpl impl this.updateBatchById(comments); } + public void checkCommentVO(CommentVO commentVO) { + // 校验评论类型是否存在 + if (!types.contains(commentVO.getType())) { + throw new BizException("参数校验异常"); + } + // 类型为文章和说说时,类型id不能为空,且判断文章或说说是否存在 + if (Objects.requireNonNull(getCommentEnum(commentVO.getType())) == ARTICLE || Objects.requireNonNull(getCommentEnum(commentVO.getType())) == TALK) { + // 类型id为空则报异常 + if (Objects.isNull(commentVO.getTopicId())) { + throw new BizException("参数校验异常"); + } else { + // 类型id不为空判断文章是否存在 + if (Objects.requireNonNull(getCommentEnum(commentVO.getType())) == ARTICLE) { + Article article = articleMapper.selectOne(new LambdaQueryWrapper
().select(Article::getId, Article::getUserId).eq(Article::getId, commentVO.getTopicId())); + if (Objects.isNull(article)) { + throw new BizException("参数校验异常"); + } + } + // 类型id不为空判断说说是否存在 + if (Objects.requireNonNull(getCommentEnum(commentVO.getType())) == TALK) { + Talk talk = talkMapper.selectOne(new LambdaQueryWrapper().select(Talk::getId, Talk::getUserId).eq(Talk::getId, commentVO.getTopicId())); + if (Objects.isNull(talk)) { + throw new BizException("参数校验异常"); + } + } + } + } + // 类型为友链,about,留言时,topicId必须为空 + if (Objects.requireNonNull(getCommentEnum(commentVO.getType())) == LINK + || Objects.requireNonNull(getCommentEnum(commentVO.getType())) == ABOUT + || Objects.requireNonNull(getCommentEnum(commentVO.getType())) == MESSAGE) { + if (Objects.nonNull(commentVO.getTopicId())) { + throw new BizException("参数校验异常"); + } + } + // 父评论时 replyUserId 为空 + if (Objects.isNull(commentVO.getParentId())) { + if (Objects.nonNull(commentVO.getReplyUserId())) { + throw new BizException("参数校验异常"); + } + } + // 子评论时 + if (Objects.nonNull(commentVO.getParentId())) { + Comment parentComment = commentMapper.selectOne(new LambdaQueryWrapper().select(Comment::getId, Comment::getParentId, Comment::getType).eq(Comment::getId, commentVO.getParentId())); + if (Objects.isNull(parentComment)) { + throw new BizException("参数校验异常"); + } + if (Objects.nonNull(parentComment.getParentId())) { + throw new BizException("参数校验异常"); + } + if (!commentVO.getType().equals(parentComment.getType())) { + throw new BizException("参数校验异常"); + } + if (Objects.isNull(commentVO.getReplyUserId())) { + throw new BizException("参数校验异常"); + } else { + UserInfo existUser = userInfoMapper.selectOne(new LambdaQueryWrapper().select(UserInfo::getId).eq(UserInfo::getId, commentVO.getReplyUserId())); + if (Objects.isNull(existUser)) { + throw new BizException("参数校验异常"); + } + } + } + } + public void notice(Comment comment) { // 查询回复用户邮箱号 Integer userId = BLOGGER_ID; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/ExceptionLogServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/ExceptionLogServiceImpl.java index 15688f0..59c2ef3 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/ExceptionLogServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/ExceptionLogServiceImpl.java @@ -1,13 +1,13 @@ package com.aurora.service.impl; -import com.aurora.dto.ExceptionLogDTO; +import com.aurora.model.dto.ExceptionLogDTO; import com.aurora.entity.ExceptionLog; import com.aurora.mapper.ExceptionLogMapper; import com.aurora.service.ExceptionLogService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/FriendLinkServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/FriendLinkServiceImpl.java index d13b09c..d5c19b6 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/FriendLinkServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/FriendLinkServiceImpl.java @@ -1,15 +1,15 @@ package com.aurora.service.impl; -import com.aurora.dto.FriendLinkAdminDTO; -import com.aurora.dto.FriendLinkDTO; +import com.aurora.model.dto.FriendLinkAdminDTO; +import com.aurora.model.dto.FriendLinkDTO; import com.aurora.entity.FriendLink; import com.aurora.mapper.FriendLinkMapper; import com.aurora.service.FriendLinkService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.FriendLinkVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.FriendLinkVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/JobLogServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/JobLogServiceImpl.java index 13180ef..7c6f9bb 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/JobLogServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/JobLogServiceImpl.java @@ -1,13 +1,13 @@ package com.aurora.service.impl; -import com.aurora.dto.JobLogDTO; +import com.aurora.model.dto.JobLogDTO; import com.aurora.entity.JobLog; import com.aurora.mapper.JobLogMapper; import com.aurora.service.JobLogService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.JobLogSearchVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.JobLogSearchVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -18,7 +18,6 @@ import org.springframework.stereotype.Service; import java.util.List; import java.util.Objects; -import java.util.concurrent.CompletableFuture; @Service public class JobLogServiceImpl extends ServiceImpl implements JobLogService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/JobServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/JobServiceImpl.java index 2e94509..a2295b3 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/JobServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/JobServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; import com.aurora.constant.ScheduleConst; -import com.aurora.dto.JobDTO; +import com.aurora.model.dto.JobDTO; import com.aurora.entity.Job; import com.aurora.mapper.JobMapper; import com.aurora.service.JobService; @@ -9,12 +9,11 @@ import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.CronUtils; import com.aurora.utils.PageUtils; import com.aurora.utils.ScheduleUtils; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.SneakyThrows; -import org.quartz.JobDataMap; import org.quartz.JobKey; import org.quartz.Scheduler; import org.quartz.SchedulerException; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/MenuServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/MenuServiceImpl.java index cb1055a..476fdb9 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/MenuServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/MenuServiceImpl.java @@ -1,8 +1,8 @@ package com.aurora.service.impl; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.MenuDTO; -import com.aurora.dto.UserMenuDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.MenuDTO; +import com.aurora.model.dto.UserMenuDTO; import com.aurora.entity.Menu; import com.aurora.entity.RoleMenu; import com.aurora.exception.BizException; @@ -11,9 +11,9 @@ import com.aurora.mapper.RoleMenuMapper; import com.aurora.service.MenuService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.IsHiddenVO; -import com.aurora.vo.MenuVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.IsHiddenVO; +import com.aurora.model.vo.MenuVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -136,7 +136,7 @@ public class MenuServiceImpl extends ServiceImpl implements Me @Override public List listUserMenus() { // 查询用户菜单信息 - List menus = menuMapper.listMenusByUserInfoId(UserUtils.getLoginUser().getUserInfoId()); + List menus = menuMapper.listMenusByUserInfoId(UserUtils.getUserDetailsDTO().getUserInfoId()); // 获取目录列表 List catalogs = listCatalogs(menus); // 获取目录下的子菜单 diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/OperationLogServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/OperationLogServiceImpl.java index 2292677..57a2d2e 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/OperationLogServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/OperationLogServiceImpl.java @@ -1,13 +1,13 @@ package com.aurora.service.impl; -import com.aurora.dto.OperationLogDTO; +import com.aurora.model.dto.OperationLogDTO; import com.aurora.entity.OperationLog; import com.aurora.mapper.OperationLogMapper; import com.aurora.service.OperationLogService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoAlbumServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoAlbumServiceImpl.java index 7a1a8d7..2c4b7c2 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoAlbumServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoAlbumServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; -import com.aurora.dto.PhotoAlbumAdminDTO; -import com.aurora.dto.PhotoAlbumDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoAlbumDTO; import com.aurora.entity.Photo; import com.aurora.entity.PhotoAlbum; import com.aurora.exception.BizException; @@ -10,9 +10,9 @@ import com.aurora.mapper.PhotoMapper; import com.aurora.service.PhotoAlbumService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.PhotoAlbumVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.PhotoAlbumVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoServiceImpl.java index 58383c5..4b7e033 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/PhotoServiceImpl.java @@ -1,9 +1,9 @@ package com.aurora.service.impl; -import com.aurora.dto.PhotoAdminDTO; -import com.aurora.dto.PhotoAlbumAdminDTO; -import com.aurora.dto.PhotoDTO; +import com.aurora.model.dto.PhotoAdminDTO; +import com.aurora.model.dto.PhotoAlbumAdminDTO; +import com.aurora.model.dto.PhotoDTO; import com.aurora.entity.Photo; import com.aurora.entity.PhotoAlbum; import com.aurora.exception.BizException; @@ -13,7 +13,7 @@ import com.aurora.service.PhotoAlbumService; import com.aurora.service.PhotoService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/ResourceServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/ResourceServiceImpl.java index 121a412..5fb9277 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/ResourceServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/ResourceServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; -import com.aurora.dto.LabelOptionDTO; -import com.aurora.dto.ResourceDTO; +import com.aurora.model.dto.LabelOptionDTO; +import com.aurora.model.dto.ResourceDTO; import com.aurora.entity.Resource; import com.aurora.entity.RoleResource; import com.aurora.exception.BizException; @@ -10,8 +10,8 @@ import com.aurora.mapper.ResourceMapper; import com.aurora.mapper.RoleResourceMapper; import com.aurora.service.ResourceService; import com.aurora.utils.BeanCopyUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.ResourceVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.ResourceVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/RoleServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/RoleServiceImpl.java index 465f909..f60d15b 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/RoleServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/RoleServiceImpl.java @@ -1,8 +1,8 @@ package com.aurora.service.impl; import com.aurora.constant.CommonConst; -import com.aurora.dto.RoleDTO; -import com.aurora.dto.UserRoleDTO; +import com.aurora.model.dto.RoleDTO; +import com.aurora.model.dto.UserRoleDTO; import com.aurora.entity.Role; import com.aurora.entity.RoleMenu; import com.aurora.entity.RoleResource; @@ -16,9 +16,9 @@ import com.aurora.service.RoleResourceService; import com.aurora.service.RoleService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.RoleVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.RoleVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.SneakyThrows; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/TagServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/TagServiceImpl.java index 4787a98..8ef138b 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/TagServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/TagServiceImpl.java @@ -1,8 +1,8 @@ package com.aurora.service.impl; -import com.aurora.dto.TagAdminDTO; -import com.aurora.dto.TagDTO; +import com.aurora.model.dto.TagAdminDTO; +import com.aurora.model.dto.TagDTO; import com.aurora.entity.ArticleTag; import com.aurora.entity.Tag; import com.aurora.exception.BizException; @@ -11,9 +11,9 @@ import com.aurora.mapper.TagMapper; import com.aurora.service.TagService; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.PageUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.TagVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.TagVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -23,7 +23,6 @@ import org.springframework.stereotype.Service; import java.util.List; import java.util.Objects; -import java.util.concurrent.CompletableFuture; @Service public class TagServiceImpl extends ServiceImpl implements TagService { diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java index c9ea72a..ecc42ad 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/TalkServiceImpl.java @@ -1,9 +1,9 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; -import com.aurora.dto.CommentCountDTO; -import com.aurora.dto.TalkAdminDTO; -import com.aurora.dto.TalkDTO; +import com.aurora.model.dto.CommentCountDTO; +import com.aurora.model.dto.TalkAdminDTO; +import com.aurora.model.dto.TalkDTO; import com.aurora.entity.Talk; import com.aurora.exception.BizException; import com.aurora.mapper.CommentMapper; @@ -14,9 +14,9 @@ import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.CommonUtils; import com.aurora.utils.PageUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.ConditionVO; -import com.aurora.vo.PageResult; -import com.aurora.vo.TalkVO; +import com.aurora.model.vo.ConditionVO; +import com.aurora.model.vo.PageResult; +import com.aurora.model.vo.TalkVO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; @@ -85,7 +85,7 @@ public class TalkServiceImpl extends ServiceImpl implements Ta @Override public void saveOrUpdateTalk(TalkVO talkVO) { Talk talk = BeanCopyUtils.copyObject(talkVO, Talk.class); - talk.setUserId(UserUtils.getLoginUser().getUserInfoId()); + talk.setUserId(UserUtils.getUserDetailsDTO().getUserInfoId()); this.saveOrUpdate(talk); } diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/TokenServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/TokenServiceImpl.java new file mode 100644 index 0000000..a00aea0 --- /dev/null +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/TokenServiceImpl.java @@ -0,0 +1,101 @@ +package com.aurora.service.impl; + +import com.aurora.model.dto.UserDetailsDTO; +import com.aurora.service.RedisService; +import com.aurora.service.TokenService; +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.SignatureAlgorithm; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; + +import javax.crypto.SecretKey; +import javax.crypto.spec.SecretKeySpec; +import javax.servlet.http.HttpServletRequest; +import java.time.Duration; +import java.time.LocalDateTime; +import java.util.Base64; +import java.util.UUID; + +import static com.aurora.constant.CommonConst.TWENTY_MINUTES; +import static com.aurora.constant.RedisPrefixConst.LOGIN_USER; + + +@Service +public class TokenServiceImpl implements TokenService { + + private final static String header = "token"; + + private final static String secret = "huaweimian"; + + private final static Integer expireTime = 7 * 24 * 60 * 60; + + @Autowired + private RedisService redisService; + + @Override + public String createToken(UserDetailsDTO userDetailsDTO) { + refreshToken(userDetailsDTO); + String userId = userDetailsDTO.getId().toString(); + return createToken(userId); + } + + @Override + public String createToken(String subject) { + SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256; + SecretKey secretKey = generalKey(); + return Jwts.builder().setId(getUuid()).setSubject(subject) + .setIssuer("huaweimian") + .signWith(signatureAlgorithm, secretKey).compact(); + } + + @Override + public void refreshToken(UserDetailsDTO userDetailsDTO) { + LocalDateTime currentTime = LocalDateTime.now(); + userDetailsDTO.setExpireTime(currentTime.plusSeconds(expireTime)); + String userId = userDetailsDTO.getId().toString(); + redisService.hSet(LOGIN_USER, userId, userDetailsDTO, expireTime); + } + + @Override + public void renewToken(UserDetailsDTO userDetailsDTO) { + LocalDateTime expireTime = userDetailsDTO.getExpireTime(); + LocalDateTime currentTime = LocalDateTime.now(); + if (Duration.between(currentTime, expireTime).toMinutes() <= TWENTY_MINUTES) { + refreshToken(userDetailsDTO); + } + } + + @Override + public Claims parseToken(String token) { + SecretKey secretKey = generalKey(); + return Jwts.parser().setSigningKey(secretKey).parseClaimsJws(token).getBody(); + } + + @Override + public UserDetailsDTO getUserDetailDTO(HttpServletRequest request) { + String token = request.getHeader(TokenServiceImpl.header); + if (StringUtils.hasText(token) && !token.equals("null")) { + Claims claims = parseToken(token); + String userId = claims.getSubject(); + return (UserDetailsDTO) redisService.hGet(LOGIN_USER, userId); + } + return null; + } + + @Override + public void delLoginUser(Integer userId) { + redisService.hDel(LOGIN_USER, String.valueOf(userId)); + } + + public String getUuid() { + return UUID.randomUUID().toString().replaceAll("-", ""); + } + + public SecretKey generalKey() { + byte[] encodedKey = Base64.getDecoder().decode(secret); + return new SecretKeySpec(encodedKey, 0, encodedKey.length, "AES"); + } + +} diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/UniqueViewServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/UniqueViewServiceImpl.java index 5cc0ec8..3e721c3 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/UniqueViewServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/UniqueViewServiceImpl.java @@ -2,7 +2,7 @@ package com.aurora.service.impl; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; -import com.aurora.dto.UniqueViewDTO; +import com.aurora.model.dto.UniqueViewDTO; import com.aurora.entity.UniqueView; import com.aurora.mapper.UniqueViewMapper; import com.aurora.service.UniqueViewService; diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/UserAuthServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/UserAuthServiceImpl.java index 1c76d14..f8e7c71 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/UserAuthServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/UserAuthServiceImpl.java @@ -2,7 +2,7 @@ package com.aurora.service.impl; import com.alibaba.fastjson.JSON; import com.aurora.constant.CommonConst; -import com.aurora.dto.*; +import com.aurora.model.dto.*; import com.aurora.entity.UserAuth; import com.aurora.entity.UserInfo; import com.aurora.entity.UserRole; @@ -14,12 +14,12 @@ import com.aurora.mapper.UserInfoMapper; import com.aurora.mapper.UserRoleMapper; import com.aurora.service.AuroraInfoService; import com.aurora.service.RedisService; +import com.aurora.service.TokenService; import com.aurora.service.UserAuthService; import com.aurora.strategy.context.SocialLoginStrategyContext; -import com.aurora.utils.JwtUtils; import com.aurora.utils.PageUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -31,9 +31,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.bcrypt.BCrypt; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.StringUtils; - -import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.List; @@ -67,7 +64,7 @@ public class UserAuthServiceImpl implements UserAuthService { private AuroraInfoService auroraInfoService; @Autowired - private HttpServletRequest request; + private TokenService tokenService; @Autowired private RabbitTemplate rabbitTemplate; @@ -171,11 +168,11 @@ public class UserAuthServiceImpl implements UserAuthService { public void updateAdminPassword(PasswordVO passwordVO) { // 查询旧密码是否正确 UserAuth user = userAuthMapper.selectOne(new LambdaQueryWrapper() - .eq(UserAuth::getId, UserUtils.getLoginUser().getId())); + .eq(UserAuth::getId, UserUtils.getUserDetailsDTO().getId())); // 正确则修改密码,错误则提示不正确 if (Objects.nonNull(user) && BCrypt.checkpw(passwordVO.getOldPassword(), user.getPassword())) { UserAuth userAuth = UserAuth.builder() - .id(UserUtils.getLoginUser().getId()) + .id(UserUtils.getUserDetailsDTO().getId()) .password(BCrypt.hashpw(passwordVO.getNewPassword(), BCrypt.gensalt())) .build(); userAuthMapper.updateById(userAuth); @@ -199,16 +196,7 @@ public class UserAuthServiceImpl implements UserAuthService { @SneakyThrows @Override public UserLogoutStatusDTO logout() { - String token = request.getHeader("token"); - if (StringUtils.isEmpty(token)) { - throw new BizException("用户未登录"); - } - UserDetailDTO user = UserUtils.getLoginUser(); - String userId = user.getId().toString(); - // 将token加入黑名单列表 - redisService.sAddExpire(TOKEN_BLACKLIST, JwtUtils.JWT_TTL, token); - // 删除redis中登录的用户信息 - redisService.hDel("login_user", userId); + tokenService.delLoginUser(UserUtils.getUserDetailsDTO().getId()); return new UserLogoutStatusDTO("注销成功"); } diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/UserDetailServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/UserDetailServiceImpl.java index 8a89f09..eb3c345 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/UserDetailServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/UserDetailServiceImpl.java @@ -1,7 +1,7 @@ package com.aurora.service.impl; -import com.aurora.dto.UserDetailDTO; +import com.aurora.model.dto.UserDetailsDTO; import com.aurora.entity.UserAuth; import com.aurora.entity.UserInfo; import com.aurora.exception.BizException; @@ -55,24 +55,24 @@ public class UserDetailServiceImpl implements UserDetailsService { return convertUserDetail(userAuth, request); } - public UserDetailDTO convertUserDetail(UserAuth user, HttpServletRequest request) { + public UserDetailsDTO convertUserDetail(UserAuth user, HttpServletRequest request) { // 查询账号信息 UserInfo userInfo = userInfoMapper.selectById(user.getUserInfoId()); // 查询账号角色 - List roleList = roleMapper.listRolesByUserInfoId(userInfo.getId()); + List roles = roleMapper.listRolesByUserInfoId(userInfo.getId()); // 获取设备信息 String ipAddress = IpUtils.getIpAddress(request); String ipSource = IpUtils.getIpSource(ipAddress); UserAgent userAgent = IpUtils.getUserAgent(request); // 封装权限集合 - return UserDetailDTO.builder() + return UserDetailsDTO.builder() .id(user.getId()) .loginType(user.getLoginType()) .userInfoId(userInfo.getId()) .username(user.getUsername()) .password(user.getPassword()) .email(userInfo.getEmail()) - .roleList(roleList) + .roles(roles) .nickname(userInfo.getNickname()) .avatar(userInfo.getAvatar()) .intro(userInfo.getIntro()) diff --git a/aurora-springboot/src/main/java/com/aurora/service/impl/UserInfoServiceImpl.java b/aurora-springboot/src/main/java/com/aurora/service/impl/UserInfoServiceImpl.java index 0239d78..12d2ef1 100644 --- a/aurora-springboot/src/main/java/com/aurora/service/impl/UserInfoServiceImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/service/impl/UserInfoServiceImpl.java @@ -1,20 +1,23 @@ package com.aurora.service.impl; -import com.aurora.dto.UserDetailDTO; -import com.aurora.dto.UserInfoDTO; -import com.aurora.dto.UserOnlineDTO; +import com.aurora.model.dto.UserDetailsDTO; +import com.aurora.model.dto.UserInfoDTO; +import com.aurora.model.dto.UserOnlineDTO; +import com.aurora.entity.UserAuth; import com.aurora.entity.UserInfo; import com.aurora.entity.UserRole; import com.aurora.enums.FilePathEnum; import com.aurora.exception.BizException; +import com.aurora.mapper.UserAuthMapper; import com.aurora.mapper.UserInfoMapper; import com.aurora.service.RedisService; +import com.aurora.service.TokenService; import com.aurora.service.UserInfoService; import com.aurora.service.UserRoleService; import com.aurora.strategy.context.UploadStrategyContext; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.UserUtils; -import com.aurora.vo.*; +import com.aurora.model.vo.*; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; @@ -37,6 +40,12 @@ public class UserInfoServiceImpl extends ServiceImpl i @Autowired private UserInfoMapper userInfoMapper; + @Autowired + private UserAuthMapper userAuthMapper; + + @Autowired + private TokenService tokenService; + @Autowired private RedisService redisService; @@ -52,7 +61,7 @@ public class UserInfoServiceImpl extends ServiceImpl i public void updateUserInfo(UserInfoVO userInfoVO) { // 封装用户信息 UserInfo userInfo = UserInfo.builder() - .id(UserUtils.getLoginUser().getUserInfoId()) + .id(UserUtils.getUserDetailsDTO().getUserInfoId()) .nickname(userInfoVO.getNickname()) .intro(userInfoVO.getIntro()) .website(userInfoVO.getWebsite()) @@ -66,7 +75,7 @@ public class UserInfoServiceImpl extends ServiceImpl i String avatar = uploadStrategyContext.executeUploadStrategy(file, FilePathEnum.AVATAR.getPath()); // 更新用户信息 UserInfo userInfo = UserInfo.builder() - .id(UserUtils.getLoginUser().getUserInfoId()) + .id(UserUtils.getUserDetailsDTO().getUserInfoId()) .avatar(avatar) .build(); userInfoMapper.updateById(userInfo); @@ -83,7 +92,7 @@ public class UserInfoServiceImpl extends ServiceImpl i throw new BizException("验证码错误!"); } UserInfo userInfo = UserInfo.builder() - .id(UserUtils.getLoginUser().getUserInfoId()) + .id(UserUtils.getUserDetailsDTO().getUserInfoId()) .email(emailVO.getEmail()) .build(); userInfoMapper.updateById(userInfo); @@ -139,11 +148,11 @@ public class UserInfoServiceImpl extends ServiceImpl i public PageResult listOnlineUsers(ConditionVO conditionVO) { Map userMaps = redisService.hGetAll("login_user"); Collection values = userMaps.values(); - ArrayList userDetailDTOs = new ArrayList<>(); + ArrayList userDetailsDTOs = new ArrayList<>(); for (Object value : values) { - userDetailDTOs.add((UserDetailDTO) value); + userDetailsDTOs.add((UserDetailsDTO) value); } - List userOnlineDTOs = BeanCopyUtils.copyList(userDetailDTOs, UserOnlineDTO.class); + List userOnlineDTOs = BeanCopyUtils.copyList(userDetailsDTOs, UserOnlineDTO.class); List onlineUsers = userOnlineDTOs.stream() .filter(item -> StringUtils.isBlank(conditionVO.getKeywords()) || item.getNickname().contains(conditionVO.getKeywords())) .sorted(Comparator.comparing(UserOnlineDTO::getLastLoginTime).reversed()) @@ -157,7 +166,8 @@ public class UserInfoServiceImpl extends ServiceImpl i @Override public void removeOnlineUser(Integer userInfoId) { - redisService.hDel("login_user", String.valueOf(userInfoId)); + Integer userId = userAuthMapper.selectOne(new LambdaQueryWrapper().eq(UserAuth::getUserInfoId, userInfoId)).getId(); + tokenService.delLoginUser(userId); } @Override diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/SearchStrategy.java b/aurora-springboot/src/main/java/com/aurora/strategy/SearchStrategy.java index f6c3a79..2d9e8b7 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/SearchStrategy.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/SearchStrategy.java @@ -1,6 +1,6 @@ package com.aurora.strategy; -import com.aurora.dto.ArticleSearchDTO; +import com.aurora.model.dto.ArticleSearchDTO; import java.util.List; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/SocialLoginStrategy.java b/aurora-springboot/src/main/java/com/aurora/strategy/SocialLoginStrategy.java index 9bec9ad..9959d96 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/SocialLoginStrategy.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/SocialLoginStrategy.java @@ -1,7 +1,7 @@ package com.aurora.strategy; -import com.aurora.dto.UserInfoDTO; +import com.aurora.model.dto.UserInfoDTO; /** * @author 花未眠 diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/context/SearchStrategyContext.java b/aurora-springboot/src/main/java/com/aurora/strategy/context/SearchStrategyContext.java index 0b3675e..0505b12 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/context/SearchStrategyContext.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/context/SearchStrategyContext.java @@ -1,6 +1,6 @@ package com.aurora.strategy.context; -import com.aurora.dto.ArticleSearchDTO; +import com.aurora.model.dto.ArticleSearchDTO; import com.aurora.strategy.SearchStrategy; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/context/SocialLoginStrategyContext.java b/aurora-springboot/src/main/java/com/aurora/strategy/context/SocialLoginStrategyContext.java index 3791c05..6d85331 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/context/SocialLoginStrategyContext.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/context/SocialLoginStrategyContext.java @@ -1,7 +1,7 @@ package com.aurora.strategy.context; -import com.aurora.dto.UserInfoDTO; +import com.aurora.model.dto.UserInfoDTO; import com.aurora.enums.LoginTypeEnum; import com.aurora.strategy.SocialLoginStrategy; import org.springframework.beans.factory.annotation.Autowired; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/AbstractSocialLoginStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/AbstractSocialLoginStrategyImpl.java index f5ce879..a0a10af 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/AbstractSocialLoginStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/AbstractSocialLoginStrategyImpl.java @@ -1,9 +1,9 @@ package com.aurora.strategy.impl; -import com.aurora.dto.SocialTokenDTO; -import com.aurora.dto.SocialUserInfoDTO; -import com.aurora.dto.UserDetailDTO; -import com.aurora.dto.UserInfoDTO; +import com.aurora.model.dto.SocialTokenDTO; +import com.aurora.model.dto.SocialUserInfoDTO; +import com.aurora.model.dto.UserDetailsDTO; +import com.aurora.model.dto.UserInfoDTO; import com.aurora.entity.UserAuth; import com.aurora.entity.UserInfo; import com.aurora.entity.UserRole; @@ -12,12 +12,11 @@ import com.aurora.exception.BizException; import com.aurora.mapper.UserAuthMapper; import com.aurora.mapper.UserInfoMapper; import com.aurora.mapper.UserRoleMapper; -import com.aurora.service.RedisService; +import com.aurora.service.TokenService; import com.aurora.service.impl.UserDetailServiceImpl; import com.aurora.strategy.SocialLoginStrategy; import com.aurora.utils.BeanCopyUtils; import com.aurora.utils.IpUtils; -import com.aurora.utils.JwtUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.springframework.beans.factory.annotation.Autowired; @@ -53,7 +52,7 @@ public abstract class AbstractSocialLoginStrategyImpl implements SocialLoginStra private UserDetailServiceImpl userDetailService; @Autowired - private RedisService redisService; + private TokenService tokenService; @Resource private HttpServletRequest request; @@ -61,7 +60,7 @@ public abstract class AbstractSocialLoginStrategyImpl implements SocialLoginStra @Override public UserInfoDTO login(String data) { // 创建登录信息 - UserDetailDTO userDetailDTO; + UserDetailsDTO userDetailsDTO; // 获取第三方token信息 SocialTokenDTO socialToken = getSocialToken(data); // 获取用户ip信息 @@ -71,25 +70,23 @@ public abstract class AbstractSocialLoginStrategyImpl implements SocialLoginStra UserAuth user = getUserAuth(socialToken); if (Objects.nonNull(user)) { // 返回数据库用户信息 - userDetailDTO = getUserDetail(user, ipAddress, ipSource); + userDetailsDTO = getUserDetail(user, ipAddress, ipSource); } else { // 获取第三方用户信息,保存到数据库返回 - userDetailDTO = saveUserDetail(socialToken, ipAddress, ipSource); + userDetailsDTO = saveUserDetail(socialToken, ipAddress, ipSource); } // 判断账号是否禁用 - if (userDetailDTO.getIsDisable().equals(TRUE)) { + if (userDetailsDTO.getIsDisable().equals(TRUE)) { throw new BizException("用户帐号已被锁定"); } // 将登录信息放入springSecurity管理 - UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(userDetailDTO, null, userDetailDTO.getAuthorities()); + UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(userDetailsDTO, null, userDetailsDTO.getAuthorities()); SecurityContextHolder.getContext().setAuthentication(auth); // 返回用户信息 - UserInfoDTO userInfoDTO = BeanCopyUtils.copyObject(userDetailDTO, UserInfoDTO.class); - String id = userDetailDTO.getId().toString(); - String jwt = JwtUtils.createJWT(id); - redisService.hSet("login_user", id, userDetailDTO); - userInfoDTO.setToken(jwt); + UserInfoDTO userInfoDTO = BeanCopyUtils.copyObject(userDetailsDTO, UserInfoDTO.class); + String token = tokenService.createToken(userDetailsDTO); + userInfoDTO.setToken(token); return userInfoDTO; } @@ -126,9 +123,9 @@ public abstract class AbstractSocialLoginStrategyImpl implements SocialLoginStra * @param user 用户账号 * @param ipAddress ip地址 * @param ipSource ip源 - * @return {@link UserDetailDTO} 用户信息 + * @return {@link UserDetailsDTO} 用户信息 */ - private UserDetailDTO getUserDetail(UserAuth user, String ipAddress, String ipSource) { + private UserDetailsDTO getUserDetail(UserAuth user, String ipAddress, String ipSource) { // 更新登录信息 userAuthMapper.update(new UserAuth(), new LambdaUpdateWrapper() .set(UserAuth::getLastLoginTime, LocalDateTime.now()) @@ -145,9 +142,9 @@ public abstract class AbstractSocialLoginStrategyImpl implements SocialLoginStra * @param socialToken token信息 * @param ipAddress ip地址 * @param ipSource ip源 - * @return {@link UserDetailDTO} 用户信息 + * @return {@link UserDetailsDTO} 用户信息 */ - private UserDetailDTO saveUserDetail(SocialTokenDTO socialToken, String ipAddress, String ipSource) { + private UserDetailsDTO saveUserDetail(SocialTokenDTO socialToken, String ipAddress, String ipSource) { // 获取第三方用户信息 SocialUserInfoDTO socialUserInfo = getSocialUserInfo(socialToken); // 保存用户信息 diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/EsSearchStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/EsSearchStrategyImpl.java index b81f975..00e7aa9 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/EsSearchStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/EsSearchStrategyImpl.java @@ -1,6 +1,6 @@ package com.aurora.strategy.impl; -import com.aurora.dto.ArticleSearchDTO; +import com.aurora.model.dto.ArticleSearchDTO; import com.aurora.strategy.SearchStrategy; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/MinioUploadStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/MinioUploadStrategyImpl.java index e68dfb3..c486f64 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/MinioUploadStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/MinioUploadStrategyImpl.java @@ -1,6 +1,6 @@ package com.aurora.strategy.impl; -import com.aurora.config.MinioProperties; +import com.aurora.config.properties.MinioProperties; import io.minio.MinioClient; import io.minio.PutObjectArgs; import io.minio.StatObjectArgs; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/NormalArticleImportStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/NormalArticleImportStrategyImpl.java index 96a727e..4f8485b 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/NormalArticleImportStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/NormalArticleImportStrategyImpl.java @@ -5,7 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.aurora.exception.BizException; import com.aurora.service.ArticleService; import com.aurora.strategy.ArticleImportStrategy; -import com.aurora.vo.ArticleVO; +import com.aurora.model.vo.ArticleVO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/OssUploadStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/OssUploadStrategyImpl.java index cc08572..c3b568a 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/OssUploadStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/OssUploadStrategyImpl.java @@ -2,7 +2,7 @@ package com.aurora.strategy.impl; import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; -import com.aurora.config.OssConfigProperties; +import com.aurora.config.properties.OssConfigProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/aurora-springboot/src/main/java/com/aurora/strategy/impl/QQLoginStrategyImpl.java b/aurora-springboot/src/main/java/com/aurora/strategy/impl/QQLoginStrategyImpl.java index 4907202..193bbe8 100644 --- a/aurora-springboot/src/main/java/com/aurora/strategy/impl/QQLoginStrategyImpl.java +++ b/aurora-springboot/src/main/java/com/aurora/strategy/impl/QQLoginStrategyImpl.java @@ -1,16 +1,16 @@ package com.aurora.strategy.impl; import com.alibaba.fastjson.JSON; -import com.aurora.config.QQConfigProperties; +import com.aurora.config.properties.QQConfigProperties; import com.aurora.constant.SocialLoginConst; -import com.aurora.dto.QQTokenDTO; -import com.aurora.dto.QQUserInfoDTO; -import com.aurora.dto.SocialTokenDTO; -import com.aurora.dto.SocialUserInfoDTO; +import com.aurora.model.dto.QQTokenDTO; +import com.aurora.model.dto.QQUserInfoDTO; +import com.aurora.model.dto.SocialTokenDTO; +import com.aurora.model.dto.SocialUserInfoDTO; import com.aurora.enums.LoginTypeEnum; import com.aurora.exception.BizException; import com.aurora.utils.CommonUtils; -import com.aurora.vo.QQLoginVO; +import com.aurora.model.vo.QQLoginVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; diff --git a/aurora-springboot/src/main/java/com/aurora/utils/HTMLUtils.java b/aurora-springboot/src/main/java/com/aurora/utils/HTMLUtils.java index 0a06035..e0521d2 100644 --- a/aurora-springboot/src/main/java/com/aurora/utils/HTMLUtils.java +++ b/aurora-springboot/src/main/java/com/aurora/utils/HTMLUtils.java @@ -8,7 +8,7 @@ import com.github.houbb.sensitive.word.bs.SensitiveWordBs; */ public class HTMLUtils { - private static final SensitiveWordBs WORD_BS = SensitiveWordBs.newInstance() + private static final SensitiveWordBs sensitiveWordBs = SensitiveWordBs.newInstance() .ignoreCase(true) .ignoreWidth(true) .ignoreNumStyle(true) @@ -23,12 +23,13 @@ public class HTMLUtils { /** * 删除标签 + * * @param source 需要进行剔除HTML的文本 * @return 过滤后的内容 */ public static String filter(String source) { // 敏感词过滤 -// source = WORD_BS.replace(source); + source = sensitiveWordBs.replace(source); // 保留图片标签 source = source.replaceAll("(?!<(img).*?>)<.*?>", "") .replaceAll("(onload(.*?)=)", "") @@ -38,6 +39,7 @@ public class HTMLUtils { /** * 删除标签 + * * @param source 文本 * @return 过滤后的文本 */ diff --git a/aurora-springboot/src/main/java/com/aurora/utils/JwtUtils.java b/aurora-springboot/src/main/java/com/aurora/utils/JwtUtils.java deleted file mode 100644 index da54521..0000000 --- a/aurora-springboot/src/main/java/com/aurora/utils/JwtUtils.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.aurora.utils; - -import io.jsonwebtoken.Claims; -import io.jsonwebtoken.JwtBuilder; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.SignatureAlgorithm; - -import javax.crypto.SecretKey; -import javax.crypto.spec.SecretKeySpec; -import java.util.Base64; -import java.util.Date; -import java.util.UUID; - -/** - * @author 花未眠 - * JWT工具类 - */ -public class JwtUtils { - - //有效期为 - public static final Long JWT_TTL = 7 * 24 * 60 * 60 * 1000L;// 1 * 60 * 60 *1000 一个小时 - //设置秘钥明文 - public static final String JWT_KEY = "huaweimian"; - - public static String getUUID() { - return UUID.randomUUID().toString().replaceAll("-", ""); - } - - /** - * 生成jtw - */ - public static String createJWT(String subject) { - JwtBuilder builder = getJwtBuilder(subject, null, getUUID());// 设置过期时间 - return builder.compact(); - } - - /** - * 生成jwt - */ - public static String createJWT(String subject, Long ttlMillis) { - JwtBuilder builder = getJwtBuilder(subject, ttlMillis, getUUID());// 设置过期时间 - return builder.compact(); - } - - private static JwtBuilder getJwtBuilder(String subject, Long ttlMillis, String uuid) { - SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256; - SecretKey secretKey = generalKey(); - long nowMillis = System.currentTimeMillis(); - Date now = new Date(nowMillis); - if (ttlMillis == null) { - ttlMillis = JwtUtils.JWT_TTL; - } - long expMillis = nowMillis + ttlMillis; - Date expDate = new Date(expMillis); - return Jwts.builder() - .setId(uuid) //唯一的ID - .setSubject(subject) // 主题 可以是JSON数据 - .setIssuer("sg") // 签发者 - .setIssuedAt(now) // 签发时间 - .signWith(signatureAlgorithm, secretKey) //使用HS256对称加密算法签名, 第二个参数为秘钥 - .setExpiration(expDate); - } - - /** - * 创建token - */ - public static String createJWT(String id, String subject, Long ttlMillis) { - JwtBuilder builder = getJwtBuilder(subject, ttlMillis, id);// 设置过期时间 - return builder.compact(); - } - - /** - * 生成加密后的秘钥 secretKey - */ - public static SecretKey generalKey() { - byte[] encodedKey = Base64.getDecoder().decode(JwtUtils.JWT_KEY); - return new SecretKeySpec(encodedKey, 0, encodedKey.length, "AES"); - } - - /** - * 解析 - */ - public static Claims parseJWT(String jwt) throws Exception { - SecretKey secretKey = generalKey(); - return Jwts.parser() - .setSigningKey(secretKey) - .parseClaimsJws(jwt) - .getBody(); - } - - -} \ No newline at end of file diff --git a/aurora-springboot/src/main/java/com/aurora/utils/UserUtils.java b/aurora-springboot/src/main/java/com/aurora/utils/UserUtils.java index 7ccdb26..41ba1c8 100644 --- a/aurora-springboot/src/main/java/com/aurora/utils/UserUtils.java +++ b/aurora-springboot/src/main/java/com/aurora/utils/UserUtils.java @@ -1,6 +1,7 @@ package com.aurora.utils; -import com.aurora.dto.UserDetailDTO; +import com.aurora.model.dto.UserDetailsDTO; +import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Component; @@ -12,12 +13,12 @@ import org.springframework.stereotype.Component; @Component public class UserUtils { - /** - * 获取当前登录用户 - * @return 用户登录信息 - */ - public static UserDetailDTO getLoginUser() { - return (UserDetailDTO) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + public static UserDetailsDTO getUserDetailsDTO() { + return (UserDetailsDTO) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + } + + public static Authentication getAuthentication() { + return SecurityContextHolder.getContext().getAuthentication(); } } diff --git a/aurora-springboot/src/main/resources/application.yml b/aurora-springboot/src/main/resources/application.yml index 3316693..ae9fda5 100644 --- a/aurora-springboot/src/main/resources/application.yml +++ b/aurora-springboot/src/main/resources/application.yml @@ -94,11 +94,11 @@ upload: accessKeySecret: OSS配置accessKeySecret bucketName: OSS配置bucketName minio: + url: http://minio的ip:9000/ endpoint: http://minio的ip:9000 accesskey: 用户名 secretKey: 密码 bucketName: 桶的名称 - url: http://minio的ip:9000/ website: url: https://前台域名 diff --git a/aurora-springboot/src/main/resources/mapper/ArticleMapper.xml b/aurora-springboot/src/main/resources/mapper/ArticleMapper.xml index 8232057..36f14f6 100644 --- a/aurora-springboot/src/main/resources/mapper/ArticleMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/ArticleMapper.xml @@ -1,13 +1,14 @@ - + + @@ -20,7 +21,7 @@ - + @@ -41,7 +42,7 @@ - + @@ -52,7 +53,7 @@ - + @@ -65,6 +66,7 @@ SUBSTR(article_content, 1, 500) AS article_content, is_top, is_featured, + status, a.create_time AS create_time, a.update_time AS update_time, u.nickname AS author_nickname, @@ -91,7 +93,7 @@ LEFT JOIN t_category c ON a.category_id = c.id LEFT JOIN t_user_info u ON a.user_id = u.id where a.is_delete = 0 - and a.status = 1 + and a.status in (1, 2) order by is_top desc, is_featured desc - SELECT id, article_title, SUBSTR(article_content, 1, 500) AS article_content, @@ -488,7 +499,7 @@ is_featured DESC, a.id DESC - SELECT DATE_FORMAT(create_time, "%Y-%m-%d") AS date, COUNT(1) AS count FROM t_article diff --git a/aurora-springboot/src/main/resources/mapper/CategoryMapper.xml b/aurora-springboot/src/main/resources/mapper/CategoryMapper.xml index d85ef25..77676ef 100644 --- a/aurora-springboot/src/main/resources/mapper/CategoryMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/CategoryMapper.xml @@ -1,7 +1,7 @@ - SELECT c.id, c.category_name, COUNT(a.id) AS article_count @@ -14,7 +14,7 @@ ) a ON c.id = a.category_id GROUP BY c.id - SELECT c.id, c.category_name, diff --git a/aurora-springboot/src/main/resources/mapper/CommentMapper.xml b/aurora-springboot/src/main/resources/mapper/CommentMapper.xml index 1b5853d..df64dbe 100644 --- a/aurora-springboot/src/main/resources/mapper/CommentMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/CommentMapper.xml @@ -1,7 +1,7 @@ - SELECT u.nickname, u.avatar, @@ -25,7 +25,7 @@ c.id DESC LIMIT #{current},#{size} - SELECT * FROM @@ -59,7 +59,7 @@ order by c.create_time desc ) t - SELECT u.nickname, u.avatar, u.website, @@ -90,7 +90,7 @@ - SELECT c.id, u.avatar, @@ -121,7 +121,7 @@ id DESC LIMIT #{current},#{size} - SELECT topic_id as id, COUNT( 1 ) AS comment_count diff --git a/aurora-springboot/src/main/resources/mapper/JobMapper.xml b/aurora-springboot/src/main/resources/mapper/JobMapper.xml index 853143c..04da717 100644 --- a/aurora-springboot/src/main/resources/mapper/JobMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/JobMapper.xml @@ -16,7 +16,7 @@ - select * from t_job j diff --git a/aurora-springboot/src/main/resources/mapper/PhotoAlbumMapper.xml b/aurora-springboot/src/main/resources/mapper/PhotoAlbumMapper.xml index 070e931..1ba8677 100644 --- a/aurora-springboot/src/main/resources/mapper/PhotoAlbumMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/PhotoAlbumMapper.xml @@ -3,7 +3,7 @@ - SELECT pa.id, album_name, diff --git a/aurora-springboot/src/main/resources/mapper/RoleMapper.xml b/aurora-springboot/src/main/resources/mapper/RoleMapper.xml index 5525afb..4a5b8af 100644 --- a/aurora-springboot/src/main/resources/mapper/RoleMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/RoleMapper.xml @@ -2,7 +2,7 @@ - + @@ -18,7 +18,7 @@ - + diff --git a/aurora-springboot/src/main/resources/mapper/TagMapper.xml b/aurora-springboot/src/main/resources/mapper/TagMapper.xml index ab2b92b..bbfd4ae 100644 --- a/aurora-springboot/src/main/resources/mapper/TagMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/TagMapper.xml @@ -1,7 +1,7 @@ - SELECT t.id, tag_name, COUNT(aat.article_id) AS count @@ -16,7 +16,7 @@ ) aat ON t.id = aat.tag_id GROUP BY t.id - SELECT t.id, tag_name, COUNT(at.article_id) AS count @@ -31,7 +31,7 @@ JOIN t_article_tag at ON t.id = at.tag_id WHERE article_id = #{articleId} - SELECT t.id, tag_name, diff --git a/aurora-springboot/src/main/resources/mapper/TalkMapper.xml b/aurora-springboot/src/main/resources/mapper/TalkMapper.xml index 47bfd68..032f1aa 100644 --- a/aurora-springboot/src/main/resources/mapper/TalkMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/TalkMapper.xml @@ -2,7 +2,7 @@ - SELECT t.id, nickname, avatar, @@ -17,7 +17,7 @@ t.id DESC LIMIT #{current}, #{size} - SELECT t.id, nickname, avatar, @@ -29,7 +29,7 @@ WHERE t.id = #{talkId} AND t.status = 1 - SELECT t.id, nickname, @@ -52,7 +52,7 @@ t.id DESC LIMIT #{current},#{size} - SELECT t.id, nickname, avatar, diff --git a/aurora-springboot/src/main/resources/mapper/UniqueViewMapper.xml b/aurora-springboot/src/main/resources/mapper/UniqueViewMapper.xml index 9fd4997..6fbeec2 100644 --- a/aurora-springboot/src/main/resources/mapper/UniqueViewMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/UniqueViewMapper.xml @@ -3,7 +3,7 @@ - SELECT DATE_FORMAT(create_time, "%Y-%m-%d") as `day`, views_count FROM `t_unique_view` diff --git a/aurora-springboot/src/main/resources/mapper/UserAuthMapper.xml b/aurora-springboot/src/main/resources/mapper/UserAuthMapper.xml index a5362af..60e9873 100644 --- a/aurora-springboot/src/main/resources/mapper/UserAuthMapper.xml +++ b/aurora-springboot/src/main/resources/mapper/UserAuthMapper.xml @@ -1,7 +1,7 @@ - + @@ -12,7 +12,7 @@ - + diff --git a/aurora-vue/aurora-admin/src/views/album/Album.vue b/aurora-vue/aurora-admin/src/views/album/Album.vue index 363ef12..8bab79d 100644 --- a/aurora-vue/aurora-admin/src/views/album/Album.vue +++ b/aurora-vue/aurora-admin/src/views/album/Album.vue @@ -72,7 +72,6 @@ class="upload-cover" drag :headers="headers" - :show-file-list="true" :before-upload="beforeUpload" action="/api/admin/photos/albums/cover" multiple @@ -208,7 +207,6 @@ export default { if (file.size / 1024 < this.config.UPLOAD_SIZE) { resolve(file) } - // 压缩到200KB,这里的200就是要压缩的大小,可自定义 imageConversion.compressAccurately(file, this.config.UPLOAD_SIZE).then((res) => { resolve(res) }) @@ -302,4 +300,4 @@ export default { top: 0.5rem; right: 0.8rem; } - + \ No newline at end of file diff --git a/aurora-vue/aurora-admin/src/views/article/Article.vue b/aurora-vue/aurora-admin/src/views/article/Article.vue index 2644bc0..fd3919a 100644 --- a/aurora-vue/aurora-admin/src/views/article/Article.vue +++ b/aurora-vue/aurora-admin/src/views/article/Article.vue @@ -134,9 +134,12 @@ 公开 - 私密 + 密码 + + +
取 消 @@ -197,7 +200,6 @@ export default { articleCover: '', categoryName: null, tagNames: [], - originalUrl: '', isTop: 0, type: 1, status: 1 @@ -481,4 +483,4 @@ export default { height: 260px; overflow-y: auto; } - + \ No newline at end of file diff --git a/aurora-vue/aurora-admin/src/views/login/Login.vue b/aurora-vue/aurora-admin/src/views/login/Login.vue index b3dba40..2c1d7fc 100644 --- a/aurora-vue/aurora-admin/src/views/login/Login.vue +++ b/aurora-vue/aurora-admin/src/views/login/Login.vue @@ -86,7 +86,7 @@ export default { bottom: 0; right: 0; left: 0; - background: url(https://aurora-static.oss-cn-hangzhou.aliyuncs.com/static/login.png) center center / cover no-repeat; + background: url(https://static.linhaojun.top/photos/765664a8a75211296a9cd89671d6d660.png) center center / cover no-repeat; } .login-card { position: absolute; diff --git a/aurora-vue/aurora-admin/src/views/talk/Talk.vue b/aurora-vue/aurora-admin/src/views/talk/Talk.vue index 6b82f58..300a8fb 100644 --- a/aurora-vue/aurora-admin/src/views/talk/Talk.vue +++ b/aurora-vue/aurora-admin/src/views/talk/Talk.vue @@ -84,7 +84,7 @@ export default { content: '', isTop: 0, status: 1, - images: null + images: '' }, statuses: [ { status: 1, desc: '公开' }, @@ -131,11 +131,14 @@ export default { img.push(item.url) }) this.talk.images = JSON.stringify(img) + } else { + this.talk.images = '' } this.axios.post('/api/admin/talks', this.talk).then(({ data }) => { if (data.flag) { this.$refs.editor.clear() this.uploads = [] + this.$router.push({ path: '/talk-list' }) this.$notify.success({ title: '成功', message: data.message @@ -164,7 +167,7 @@ export default { + \ No newline at end of file diff --git a/aurora-vue/aurora-admin/src/views/website/Website.vue b/aurora-vue/aurora-admin/src/views/website/Website.vue index 6a2dc03..01c3e39 100644 --- a/aurora-vue/aurora-admin/src/views/website/Website.vue +++ b/aurora-vue/aurora-admin/src/views/website/Website.vue @@ -1,6 +1,6 @@ + \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/components/ArticleCard/src/HorizontalArticle.vue b/aurora-vue/aurora-blog/src/components/ArticleCard/src/HorizontalArticle.vue index cc4c1df..80282c7 100644 --- a/aurora-vue/aurora-blog/src/components/ArticleCard/src/HorizontalArticle.vue +++ b/aurora-vue/aurora-blog/src/components/ArticleCard/src/HorizontalArticle.vue @@ -24,7 +24,6 @@ {{ article.categoryName }} -
    + \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/components/Header/src/Controls.vue b/aurora-vue/aurora-blog/src/components/Header/src/Controls.vue index f61d111..f3af913 100644 --- a/aurora-vue/aurora-blog/src/components/Header/src/Controls.vue +++ b/aurora-vue/aurora-blog/src/components/Header/src/Controls.vue @@ -39,7 +39,7 @@
- + @@ -100,24 +100,35 @@ 返回登录 + + + + + + + 校验密码 + + + + \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/icons/svg/lock.svg b/aurora-vue/aurora-blog/src/icons/svg/lock.svg new file mode 100644 index 0000000..a947a21 --- /dev/null +++ b/aurora-vue/aurora-blog/src/icons/svg/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/mock/mock.ts b/aurora-vue/aurora-blog/src/mock/mock.ts deleted file mode 100644 index b26994f..0000000 --- a/aurora-vue/aurora-blog/src/mock/mock.ts +++ /dev/null @@ -1,329 +0,0 @@ -export default { - article: { - id: 3, - top: true, - feature: true, - title: 'mock文章', - cover: 'https://source.unsplash.com/ukzHlkoz1IE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章', - author: { - name: '林皓俊', - avatar: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - articles: [ - { - id: 1, - top: false, - feature: true, - title: 'mock文章一mock文章一mock文章一', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 2, - top: false, - feature: true, - title: 'mock文章二', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - } - ], - Categories: [ - { - id: 1, - name: '标题1', - count: 10 - }, - { - id: 2, - name: '标题2', - count: 10 - } - ], - articleTest: { - id: 3, - top: true, - feature: true, - title: '我要测试响应式', - cover: 'https://source.unsplash.com/ukzHlkoz1IE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - author: { - avatar: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - name: '花未眠', - description: '一个疯狂的coder', - talk_count: '200', - article_count: '10', - category_count: '20', - tag_count: '30' - }, - socials: { - github: 'https://www.linhaojun.top', - twitter: 'https://ww.linhaojun.top' - }, - mockArticles: [ - { - id: 1, - top: false, - feature: true, - title: 'mock文章一mock文章一(1)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 2, - top: false, - feature: true, - title: 'mock文章二(2)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 3, - top: false, - feature: true, - title: 'mock文章一mock文章一(3)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 4, - top: false, - feature: true, - title: 'mock文章二(4)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 5, - top: false, - feature: true, - title: 'mock文章一mock文章一(5)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 6, - top: false, - feature: true, - title: 'mock文章二(6)', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - } - ] -} diff --git a/aurora-vue/aurora-blog/src/mock/mockAbout.ts b/aurora-vue/aurora-blog/src/mock/mockAbout.ts deleted file mode 100644 index 4c4f489..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockAbout.ts +++ /dev/null @@ -1,7 +0,0 @@ -export default { - about:{ - content:'# 1.什么是索引\n索引(在 MySQL 中也叫“键key”)是存储引擎快速找到记录的一种数据结构,通俗来说类似书本的目录,这个比方虽然被用的最多但是也是最恰如其当的,在查询书本中的某个知识点不借助目录的情况下,往往都找的够呛,那么索引相较于数据库的重要性也可见一斑。\n## 2.索引的有哪些种类?\n索引的种类这里只罗列出InnoDB支持的索引:主键索引(PRIMARY),普通索引(INDEX),唯一索引(UNIQUE),组合索引,总体划分为两类,主键索引也被称为聚簇索引(clustered index),其余都称呼为非主键索引也被称为二级索引(secondary index)。\n## 3.InnoDB的不同的索引组织结构是怎样的呢?\n众所周知在InnoDB引用的是B+树索引模型,这里对B+树结构暂时不做过多阐述,很多文章都有描述,在第二问中我们对索引的种类划分为两大类主键索引和非主键索引,那么问题就在于比较两种索引的区别了,我们这里建立一张学生表,其中包含字段id设置主键索引、name设置普通索引、age(无处理),并向数据库中插入4条数据:("小赵", 10)("小王", 11)("小李", 12)("小陈", 13)\n```sql\nCREATE TABLE `student` (\n `id` int(11) NOT NULL AUTO_INCREMENT COMMENT \'自增主键\',\n `name` varchar(32) COLLATE utf8_bin NOT NULL COMMENT \'名称\',\n `age` int(3) unsigned NOT NULL DEFAULT \'1\' COMMENT \'年龄\',\n PRIMARY KEY (`id`),\n KEY `I_name` (`name`)\n) ENGINE=InnoDB;\n\nINSERT INTO student (name, age) VALUES("小赵", 10),("小王", 11),("小李", 12),("小陈", 13);\n```\n这里我们设置了主键为自增,那么此时数据库里数据为\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/9f480278926cf7780795ac1d9a1b19f8.png)\n每一个索引在 InnoDB 里面对应一棵B+树,那么此时就存着两棵B+树。\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/72e270f3bf165ce9f71a2585a43fb0fa.png)\n可以发现区别在与叶子节点中,主键索引存储了整行数据,而非主键索引中存储的值为主键id, 在我们执行如下sql后\n```sql\nSELECT age FROM student WHERE name = \'小李\';\n```\n流程为:\n\n1. 在name索引树上找到名称为小李的节点 id为03\n2. 从id索引树上找到id为03的节点 获取所有数据\n3. 从数据中获取字段命为age的值返回 12\n``在流程中从非主键索引树搜索回到主键索引树搜索的过程称为:回表``,在本次查询中因为查询结果只存在主键索引树中,我们必须回表才能查询到结果,那么如何优化这个过程呢?引入正文覆盖索引\n## 4.什么是覆盖索引\n覆盖索引(covering index ,或称为索引覆盖)即从非主键索引中就能查到的记录,而不需要查询主键索引中的记录,避免了回表的产生减少了树的搜索次数,显著提升性能。\n## 5.如何使用是覆盖索引?\n之前我们已经建立了表student,那么现在出现的业务需求中要求根据名称获取学生的年龄,并且该搜索场景非常频繁,那么先在我们删除掉之前以字段name建立的普通索引,以name和age两个字段建立联合索引,sql命令与建立后的索引树结构如下\n```sql\nALTER TABLE student DROP INDEX I_name;\nALTER TABLE student ADD INDEX I_name_age(name, age);\n```\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/dcb1b7d52b648cf285841868772d1766.png)\n那在我们再次执行如下sql后\n```sql\nSELECT age FROM student WHERE name = \'小李\';\n```\n流程为:\n\n1. 在name,age联合索引树上找到名称为小李的节点\n2. 此时节点索引里包含信息age 直接返回 12\n## 6.如何确定数据库成功使用了覆盖索引呢?\n当发起一个索引覆盖查询时,在explain的extra列可以看到using index的信息\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/9bea8f5a5442b750c0dfef126e29741f.png)\n这里我们很清楚的看到Extra中Using index表明我们成功使用了覆盖索引\n> 总结:覆盖索引避免了回表现象的产生,从而减少树的搜索次数,显著提升查询性能,所以使用覆盖索引是性能优化的一种手段,文章有不当之处,欢迎指正~', - title:'关于我', - cover:'https://source.unsplash.com/VivsxaizzVE/1200x628' - } -} \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/mock/mockArchives.ts b/aurora-vue/aurora-blog/src/mock/mockArchives.ts deleted file mode 100644 index 0f1bc63..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockArchives.ts +++ /dev/null @@ -1,34 +0,0 @@ -export default { - archives:[ - { - year:2020, - month:1, - articles:[ - { - id:1, - date:{ - month:1, - day:12, - year:2020 - }, - title:'mock归档一' - } - ] - }, - { - year:2021, - month:2, - articles:[ - { - id:2, - date:{ - month:2, - day:12, - year:2021 - }, - title:'mock归档二' - } - ] - } - ] -} \ No newline at end of file diff --git a/aurora-vue/aurora-blog/src/mock/mockArticle.ts b/aurora-vue/aurora-blog/src/mock/mockArticle.ts deleted file mode 100644 index 5f64e60..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockArticle.ts +++ /dev/null @@ -1,89 +0,0 @@ -export default { - article: { - cover: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/e2c62b34c96670225464562cc333ffc6.jpg', - categories: [ - { - name: 'Java' - } - ], - tags: [ - { - id: 1, - name: 'Java' - }, - { - id: 2, - name: 'MySQL' - } - ], - title: 'MySQL 覆盖索引详解', - author: { - id: 1, - avatar: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: '2021-05-02T15:19:24.000Z', - content: - '# 1.什么是索引\n索引(在 MySQL 中也叫“键key”)是存储引擎快速找到记录的一种数据结构,通俗来说类似书本的目录,这个比方虽然被用的最多但是也是最恰如其当的,在查询书本中的某个知识点不借助目录的情况下,往往都找的够呛,那么索引相较于数据库的重要性也可见一斑。\n## 2.索引的有哪些种类?\n索引的种类这里只罗列出InnoDB支持的索引:主键索引(PRIMARY),普通索引(INDEX),唯一索引(UNIQUE),组合索引,总体划分为两类,主键索引也被称为聚簇索引(clustered index),其余都称呼为非主键索引也被称为二级索引(secondary index)。\n## 3.InnoDB的不同的索引组织结构是怎样的呢?\n众所周知在InnoDB引用的是B+树索引模型,这里对B+树结构暂时不做过多阐述,很多文章都有描述,在第二问中我们对索引的种类划分为两大类主键索引和非主键索引,那么问题就在于比较两种索引的区别了,我们这里建立一张学生表,其中包含字段id设置主键索引、name设置普通索引、age(无处理),并向数据库中插入4条数据:("小赵", 10)("小王", 11)("小李", 12)("小陈", 13)\n```sql\nCREATE TABLE `student` (\n `id` int(11) NOT NULL AUTO_INCREMENT COMMENT \'自增主键\',\n `name` varchar(32) COLLATE utf8_bin NOT NULL COMMENT \'名称\',\n `age` int(3) unsigned NOT NULL DEFAULT \'1\' COMMENT \'年龄\',\n PRIMARY KEY (`id`),\n KEY `I_name` (`name`)\n) ENGINE=InnoDB;\n\nINSERT INTO student (name, age) VALUES("小赵", 10),("小王", 11),("小李", 12),("小陈", 13);\n```\n这里我们设置了主键为自增,那么此时数据库里数据为\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/9f480278926cf7780795ac1d9a1b19f8.png)\n每一个索引在 InnoDB 里面对应一棵B+树,那么此时就存着两棵B+树。\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/72e270f3bf165ce9f71a2585a43fb0fa.png)\n可以发现区别在与叶子节点中,主键索引存储了整行数据,而非主键索引中存储的值为主键id, 在我们执行如下sql后\n```sql\nSELECT age FROM student WHERE name = \'小李\';\n```\n流程为:\n\n1. 在name索引树上找到名称为小李的节点 id为03\n2. 从id索引树上找到id为03的节点 获取所有数据\n3. 从数据中获取字段命为age的值返回 12\n``在流程中从非主键索引树搜索回到主键索引树搜索的过程称为:回表``,在本次查询中因为查询结果只存在主键索引树中,我们必须回表才能查询到结果,那么如何优化这个过程呢?引入正文覆盖索引\n## 4.什么是覆盖索引\n覆盖索引(covering index ,或称为索引覆盖)即从非主键索引中就能查到的记录,而不需要查询主键索引中的记录,避免了回表的产生减少了树的搜索次数,显著提升性能。\n## 5.如何使用是覆盖索引?\n之前我们已经建立了表student,那么现在出现的业务需求中要求根据名称获取学生的年龄,并且该搜索场景非常频繁,那么先在我们删除掉之前以字段name建立的普通索引,以name和age两个字段建立联合索引,sql命令与建立后的索引树结构如下\n```sql\nALTER TABLE student DROP INDEX I_name;\nALTER TABLE student ADD INDEX I_name_age(name, age);\n```\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/dcb1b7d52b648cf285841868772d1766.png)\n那在我们再次执行如下sql后\n```sql\nSELECT age FROM student WHERE name = \'小李\';\n```\n流程为:\n\n1. 在name,age联合索引树上找到名称为小李的节点\n2. 此时节点索引里包含信息age 直接返回 12\n## 6.如何确定数据库成功使用了覆盖索引呢?\n当发起一个索引覆盖查询时,在explain的extra列可以看到using index的信息\n![image.png](https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/articles/9bea8f5a5442b750c0dfef126e29741f.png)\n这里我们很清楚的看到Extra中Using index表明我们成功使用了覆盖索引\n> 总结:覆盖索引避免了回表现象的产生,从而减少树的搜索次数,显著提升查询性能,所以使用覆盖索引是性能优化的一种手段,文章有不当之处,欢迎指正~', - prev_article: { - id: 1, - top: false, - feature: true, - title: 'mock文章一mock文章一mock文章一', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - next_article: { - id: 2, - top: false, - feature: true, - title: 'mock文章二', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - } - } -} diff --git a/aurora-vue/aurora-blog/src/mock/mockComment.ts b/aurora-vue/aurora-blog/src/mock/mockComment.ts deleted file mode 100644 index 135af4d..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockComment.ts +++ /dev/null @@ -1,43 +0,0 @@ -export default { - recentComments: [ - { - id: 1, - user: { - avatar: 'https://img-blog.csdnimg.cn/20210313122054101.png', - username: '人物1' - }, - is_admin: true, - created_at: 'commented at 2 months ago', - body: 'this is test comment' - } - ], - comments: [ - { - id: 1, - username: '人物1', - content: '我叫人物1,这时mock数据,我叫人物1,这时mock数据,我叫人物1,这时mock数据,我叫人物1,这时mock数据,我叫人物1,这时mock数据,我叫人物1,这时mock数据', - time: '2021-05-02T15:19:24.000Z', - replies: [ - { - id: 3, - username: '人物3', - content: '我叫人物3,这时mock数据', - time: '2021-05-02T15:19:24.000Z' - }, - { - id: 4, - username: '人物4', - content: '我叫人物4,这时mock数据', - time: '2021-05-02T15:19:24.000Z' - } - ] - }, - { - id: 2, - username: '人物2', - content: '我叫人物2,这时mock数据', - time: '2021-05-02T15:19:24.000Z', - replies: [] - } - ] -} diff --git a/aurora-vue/aurora-blog/src/mock/mockRoutes.ts b/aurora-vue/aurora-blog/src/mock/mockRoutes.ts deleted file mode 100644 index 60b6b72..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockRoutes.ts +++ /dev/null @@ -1,58 +0,0 @@ -export default { - routes: [ - { - name: 'Home', - path: '/', - i18n: { - cn: '首页', - en: 'Home' - }, - children: [] - }, - { - name: 'Archives', - path: '/archives', - i18n: { - cn: '归档', - en: 'Archives' - }, - children: [] - }, - { - name: 'About', - path: '/about', - i18n: { - cn: '关于', - en: 'About' - }, - children: [] - }, - { - name: 'Tags', - path: '/tag', - i18n: { - cn: '标签', - en: 'Tags' - }, - children: [] - }, - { - name: 'Message', - path: '/message', - i18n: { - cn: '留言', - en: 'Message' - }, - children: [] - }, - { - name: 'Friends', - path: '/friends', - i18n: { - cn: '友链', - en: 'Friends' - }, - children: [] - } - ] -} diff --git a/aurora-vue/aurora-blog/src/mock/mockTags.ts b/aurora-vue/aurora-blog/src/mock/mockTags.ts deleted file mode 100644 index b6cf0a2..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockTags.ts +++ /dev/null @@ -1,94 +0,0 @@ -export default { - articles: [ - { - id: 1, - top: false, - feature: true, - title: 'mock文章一mock文章一mock文章一', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章.这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 2, - top: false, - feature: true, - title: 'mock文章二', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - }, - { - id: 3, - top: false, - feature: true, - title: 'mock文章三', - cover: 'https://source.unsplash.com/VivsxaizzVE/1200x628', - categories: [ - { - name: 'mock-category' - } - ], - tags: [ - { - id: 1, - name: 'mock-tag' - } - ], - text: '这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章,这是mock的文章.', - author: { - name: '林皓俊', - avatar: - 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - link: 'https://www.linhaojun.top' - }, - date: new Date('2021-05-02T15:19:24.000Z'), - count_time: { - symbolsCount: '2.5k', - symbolsTime: '2 mins.' - } - } - ] -} diff --git a/aurora-vue/aurora-blog/src/mock/mockTest.ts b/aurora-vue/aurora-blog/src/mock/mockTest.ts deleted file mode 100644 index 727f336..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockTest.ts +++ /dev/null @@ -1,54 +0,0 @@ -export default { - tags: [ - { - id: 1, - name: '标签1', - count: 10 - }, - { - id: 2, - name: '标签2', - count: 10 - }, - { - id: 3, - name: '标签3', - count: 10 - }, - { - id: 4, - name: '标签4', - count: 10 - }, - { - id: 5, - name: '标签5', - count: 10 - }, - { - id: 6, - name: '标签6', - count: 10 - }, - { - id: 7, - name: '标签7', - count: 10 - }, - { - id: 8, - name: '标签8', - count: 10 - }, - { - id: 9, - name: '标签9', - count: 10 - }, - { - id: 10, - name: '标签10', - count: 10 - } - ] -} diff --git a/aurora-vue/aurora-blog/src/mock/mockWebsiteConfig.ts b/aurora-vue/aurora-blog/src/mock/mockWebsiteConfig.ts deleted file mode 100644 index 8db38be..0000000 --- a/aurora-vue/aurora-blog/src/mock/mockWebsiteConfig.ts +++ /dev/null @@ -1,25 +0,0 @@ -export default { - author: '花未眠', - nick: 'huaweimian', - description: '一个疯狂的coder', - avatar: 'https://linhaojunblog-resource.oss-cn-hangzhou.aliyuncs.com/config/52a81cd2772167b645569342e81ce312.jpg', - logo: 'https://img-blog.csdnimg.cn/20210313122054101.png', - multi_language: true, - article_count: '10', - talk_count: '200', - category_count: '20', - tag_count: '30', - github: 'https://www.linhaojun.top', - twitter: 'https://www.linhaojun.top', - stackoverflow: 'https://www.linhaojun.top', - wechat: 'https://www.linhaojun.top', - qq: 'https://www.linhaojun.top', - weibo: 'https://www.linhaojun.top', - beian_number:'苏ICP备2022012376号', - website_create_time:'2021-05-30T15:19:24.000Z', - aurora_bot_enable:true -} - - // csdn:"https://www.linhaojun.top", - // zhihu:"https://www.linhaojun.top", - // juejin:"https://www.linhaojun.top", diff --git a/aurora-vue/aurora-blog/src/stores/article.ts b/aurora-vue/aurora-blog/src/stores/article.ts index deaf111..461d7ad 100644 --- a/aurora-vue/aurora-blog/src/stores/article.ts +++ b/aurora-vue/aurora-blog/src/stores/article.ts @@ -5,11 +5,9 @@ export const useArticleStore = defineStore('articleStore', { return { topArticle: '' as any, featuredArticles: [] as any, - articles: '' as any, - categories: '' as any, - archives: '' as any, - articlesByTag: '' as any, - readingArticle: '' as any + articles: [] as any, + categories: [] as any, + archives: [] as any } }, actions: {} diff --git a/aurora-vue/aurora-blog/src/stores/user.ts b/aurora-vue/aurora-blog/src/stores/user.ts index 0e5f32f..ce3a7a1 100644 --- a/aurora-vue/aurora-blog/src/stores/user.ts +++ b/aurora-vue/aurora-blog/src/stores/user.ts @@ -6,7 +6,8 @@ export const useUserStore = defineStore('userStore', { currentUrl: '' as any, userVisible: false, userInfo: '' as any, - token: '' as any + token: '' as any, + accessArticles: [] as any } }, actions: {}, diff --git a/aurora-vue/aurora-blog/src/views/Article.vue b/aurora-vue/aurora-blog/src/views/Article.vue index 37ab869..3690c44 100644 --- a/aurora-vue/aurora-blog/src/views/Article.vue +++ b/aurora-vue/aurora-blog/src/views/Article.vue @@ -143,7 +143,18 @@