Merge pull request 'dev' (#3) from dev into master
Reviewed-on: #3 删除不用的model 调整model结构,拆分出数据库实体和Java邮件实体
This commit is contained in:
commit
9825b856f3
|
@ -20,7 +20,7 @@
|
|||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.bunny</groupId>
|
||||
<artifactId>model</artifactId>
|
||||
<artifactId>dao</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
|
|
@ -1,51 +0,0 @@
|
|||
package cn.bunny.common.utils;
|
||||
|
||||
import cn.bunny.vo.system.comment.CommentVo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class CommentUtil {
|
||||
/**
|
||||
* 构建树型结构
|
||||
*
|
||||
* @param commentList 评论列表
|
||||
* @return 结构列表
|
||||
*/
|
||||
public static List<CommentVo> buildTree(List<CommentVo> commentList) {
|
||||
// 构建树形结构
|
||||
List<CommentVo> tree = new ArrayList<>();
|
||||
// 遍历评论列表
|
||||
for (CommentVo comment : commentList) {
|
||||
// 找到顶级评论(没有父评论)
|
||||
if (comment.getPCommentId() == 0) {
|
||||
// 递归构建子评论
|
||||
comment.setChildren(getChildren(comment.getId(), commentList));
|
||||
tree.add(comment);
|
||||
}
|
||||
}
|
||||
return tree;
|
||||
}
|
||||
|
||||
/**
|
||||
* 递归获取子评论
|
||||
*
|
||||
* @param commentId 当前评论ID
|
||||
* @param commentList 评论列表
|
||||
* @return 子评论列表
|
||||
*/
|
||||
private static List<CommentVo> getChildren(Long commentId, List<CommentVo> commentList) {
|
||||
List<CommentVo> children = new ArrayList<>();
|
||||
|
||||
// 遍历评论列表
|
||||
for (CommentVo comment : commentList) {
|
||||
// 找到当前评论的子评论
|
||||
if (Long.valueOf(comment.getPCommentId()).equals(commentId)) {
|
||||
// 递归构建子评论的子评论
|
||||
comment.setChildren(getChildren(comment.getId(), commentList));
|
||||
children.add(comment);
|
||||
}
|
||||
}
|
||||
return children;
|
||||
}
|
||||
}
|
|
@ -19,7 +19,7 @@
|
|||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.bunny</groupId>
|
||||
<artifactId>model</artifactId>
|
||||
<artifactId>dao</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<!-- httpclient -->
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.common.service.exception;
|
||||
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
package cn.bunny.common.service.exception;
|
||||
|
||||
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.result.constant.ExceptionConstant;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.constant.ExceptionConstant;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.common.service.utils;
|
||||
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>model</artifactId>
|
||||
<artifactId>dao</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>model</name>
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.entity.system.email;
|
||||
package cn.bunny.pojo.email;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.entity.system.email;
|
||||
package cn.bunny.pojo.email;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.enums;
|
||||
package cn.bunny.pojo.enums;
|
||||
|
||||
/**
|
||||
* 数据库操作类型
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result;
|
||||
package cn.bunny.pojo.result;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result;
|
||||
package cn.bunny.pojo.result;
|
||||
|
||||
import lombok.Getter;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.result.constant;
|
||||
package cn.bunny.pojo.result.constant;
|
||||
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.tree;
|
||||
package cn.bunny.pojo.tree;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package cn.bunny.tree;
|
||||
package cn.bunny.pojo.tree;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.vo.system.login;
|
||||
|
||||
import cn.bunny.result.constant.LocalDateTimeConstant;
|
||||
import cn.bunny.pojo.result.constant.LocalDateTimeConstant;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.vo.system.user;
|
||||
|
||||
import cn.bunny.result.constant.LocalDateTimeConstant;
|
||||
import cn.bunny.pojo.result.constant.LocalDateTimeConstant;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
|
@ -1,22 +0,0 @@
|
|||
package cn.bunny.dto.article;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class LoadArticleListDto {
|
||||
private Integer pBoardId;
|
||||
private Integer boardId;
|
||||
private Integer orderType = 1;
|
||||
|
||||
public void getOrderType(Integer orderType) {
|
||||
this.orderType = Objects.requireNonNullElse(orderType, 1);
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package cn.bunny.dto.article;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class LoadUserArticleDto {
|
||||
private Long userId;
|
||||
private Integer type;
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
package cn.bunny.dto.common;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class CommentPostDto {
|
||||
private String articleId;
|
||||
private Integer pCommentId;
|
||||
private String content;
|
||||
private MultipartFile image;
|
||||
private Long replyUserId;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
package cn.bunny.dto.common;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class CommentQueryDto {
|
||||
private String articleId;
|
||||
// time 时间查询、goods 点赞数量
|
||||
private String orderType;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package cn.bunny.dto.common;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class QueryTopTypeDto {
|
||||
private Long commentId;
|
||||
private Integer topType;
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
package cn.bunny.dto.user;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* 修改用户信息
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserInfoDto {
|
||||
private String nickName;
|
||||
private String password;
|
||||
private MultipartFile avatar;
|
||||
private Integer sex;
|
||||
private String personDescription;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
package cn.bunny.dto.user;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserIntegralRecordDto {
|
||||
private String startDate;
|
||||
private String endDate;
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
package cn.bunny.dto.user;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserMessageDto {
|
||||
private String type;
|
||||
}
|
|
@ -1,83 +0,0 @@
|
|||
package cn.bunny.entity.system.article;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 文章信息
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@ApiModel(value = "Article对象", description = "文章信息")
|
||||
public class Article extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("板块ID")
|
||||
private Integer boardId;
|
||||
|
||||
@ApiModelProperty("板块名称")
|
||||
private String boardName;
|
||||
|
||||
@ApiModelProperty("父级板块ID")
|
||||
private Integer pBoardId;
|
||||
|
||||
@ApiModelProperty("父板块名称")
|
||||
private String pBoardName;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("昵称")
|
||||
private String nickName;
|
||||
|
||||
@ApiModelProperty("最后登录ip地址")
|
||||
private String userIpAddress;
|
||||
|
||||
@ApiModelProperty("标题")
|
||||
private String title;
|
||||
|
||||
@ApiModelProperty("封面")
|
||||
private String cover;
|
||||
|
||||
@ApiModelProperty("内容")
|
||||
private String content;
|
||||
|
||||
@ApiModelProperty("0:富文本编辑器 1:markdown编辑器")
|
||||
private Byte editorType;
|
||||
|
||||
@ApiModelProperty("摘要")
|
||||
private String summary;
|
||||
|
||||
@ApiModelProperty("阅读数量")
|
||||
private Integer readCount;
|
||||
|
||||
@ApiModelProperty("点赞数")
|
||||
private Integer goodCount;
|
||||
|
||||
@ApiModelProperty("评论数")
|
||||
private Integer commentCount;
|
||||
|
||||
@ApiModelProperty("0未置顶 1:已置顶")
|
||||
private Byte topType;
|
||||
|
||||
@ApiModelProperty("0:没有附件 1:有附件")
|
||||
private Byte attachmentType;
|
||||
|
||||
@ApiModelProperty("-1已删除 0:待审核 1:已审核 ")
|
||||
private Byte status;
|
||||
}
|
|
@ -1,67 +0,0 @@
|
|||
package cn.bunny.entity.system.article;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 评论
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("forum_comment")
|
||||
@ApiModel(value = "ForumComment对象", description = "评论")
|
||||
public class ForumComment extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("父级评论ID")
|
||||
private Long pCommentId;
|
||||
|
||||
@ApiModelProperty("文章ID")
|
||||
private String articleId;
|
||||
|
||||
@ApiModelProperty("回复内容")
|
||||
private String content;
|
||||
|
||||
@ApiModelProperty("图片")
|
||||
private String imgPath;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("昵称")
|
||||
private String nickName;
|
||||
|
||||
@ApiModelProperty("用户ip地址")
|
||||
private String userIpAddress;
|
||||
|
||||
@ApiModelProperty("回复人ID")
|
||||
private Long replyUserId;
|
||||
|
||||
@ApiModelProperty("回复人昵称")
|
||||
private String replyNickName;
|
||||
|
||||
@ApiModelProperty("0:未置顶 1:置顶")
|
||||
private Integer topType;
|
||||
|
||||
@ApiModelProperty("good数量")
|
||||
private Integer goodCount;
|
||||
|
||||
@ApiModelProperty("0:待审核 1:已审核")
|
||||
private Integer status;
|
||||
}
|
|
@ -1,40 +0,0 @@
|
|||
package cn.bunny.entity.system.article;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户积分记录表
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("integral_record")
|
||||
@ApiModel(value = "IntegralRecord对象", description = "用户积分记录表")
|
||||
public class IntegralRecord extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("操作类型")
|
||||
private Byte operType;
|
||||
|
||||
@ApiModelProperty("积分")
|
||||
private Integer integral;
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
package cn.bunny.entity.system.article;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 点赞记录
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("like_record")
|
||||
@ApiModel(value = "LikeRecord对象", description = "点赞记录")
|
||||
public class LikeRecord extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("操作类型0:文章点赞 1:评论点赞")
|
||||
private Byte opType;
|
||||
|
||||
@ApiModelProperty("主体ID")
|
||||
private String objectId;
|
||||
|
||||
@ApiModelProperty("用户ID")
|
||||
private Long userId;
|
||||
|
||||
@ApiModelProperty("主体作者ID")
|
||||
private Long authorUserId;
|
||||
}
|
|
@ -1,49 +0,0 @@
|
|||
package cn.bunny.entity.system.board;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 文章板块信息
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-19
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("forum_board")
|
||||
@ApiModel(value = "ForumBoard对象", description = "文章板块信息")
|
||||
public class ForumBoard extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("父级板块ID")
|
||||
private Long parentId;
|
||||
|
||||
@ApiModelProperty("板块名")
|
||||
private String boardName;
|
||||
|
||||
@ApiModelProperty("封面")
|
||||
private String cover;
|
||||
|
||||
@ApiModelProperty("描述")
|
||||
private String boardDesc;
|
||||
|
||||
@ApiModelProperty("排序")
|
||||
private Integer sort;
|
||||
|
||||
@ApiModelProperty("0:只允许管理员发帖 1:任何人可以发帖")
|
||||
private Boolean postType;
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
package cn.bunny.entity.system.file;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用于存储文件信息的数据表
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@ApiModel(value = "Files对象", description = "用于存储文件信息的数据表")
|
||||
public class Files extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("文章ID")
|
||||
private Long articleId;
|
||||
|
||||
@ApiModelProperty("文件的名称")
|
||||
private String filename;
|
||||
|
||||
@ApiModelProperty("文件在服务器上的存储路径")
|
||||
private String filepath;
|
||||
|
||||
@ApiModelProperty("文件的大小,以字节为单位")
|
||||
private Long fileSize;
|
||||
|
||||
@ApiModelProperty("文件的MIME类型")
|
||||
private String fileType;
|
||||
|
||||
@ApiModelProperty("创建用户")
|
||||
private Long createUser;
|
||||
|
||||
@ApiModelProperty("下载次数")
|
||||
private Integer downloadCount;
|
||||
}
|
|
@ -1,58 +0,0 @@
|
|||
package cn.bunny.entity.system.user;
|
||||
|
||||
import cn.bunny.entity.base.BaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户消息
|
||||
* </p>
|
||||
*
|
||||
* @author Bunny
|
||||
* @since 2024-05-17
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Accessors(chain = true)
|
||||
@TableName("user_message")
|
||||
@ApiModel(value = "UserMessage对象", description = "用户消息")
|
||||
public class UserMessage extends BaseEntity implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@ApiModelProperty("接收人用户ID")
|
||||
private Long receivedUserId;
|
||||
|
||||
@ApiModelProperty("文章ID")
|
||||
private String articleId;
|
||||
|
||||
@ApiModelProperty("文章标题")
|
||||
private String articleTitle;
|
||||
|
||||
@ApiModelProperty("评论ID")
|
||||
private Integer commentId;
|
||||
|
||||
@ApiModelProperty("发送人用户ID")
|
||||
private Long sendUserId;
|
||||
|
||||
@ApiModelProperty("发送人昵称")
|
||||
private String sendNickName;
|
||||
|
||||
@ApiModelProperty("sys:系统消息 reply:评论 likePost:文章点赞 likeComment:评论点赞 attachment:附件下载")
|
||||
private String messageType;
|
||||
|
||||
@ApiModelProperty("消息内容")
|
||||
private String messageContent;
|
||||
|
||||
@ApiModelProperty("1:未读 2:已读")
|
||||
private Byte status;
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
package cn.bunny.vo.file;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 返回文件信息
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class FileInfoVo {
|
||||
private Long id;
|
||||
// 文章Id
|
||||
private Long articleId;
|
||||
// 文件的名称
|
||||
private String filename;
|
||||
// 文件在服务器上的存储路径
|
||||
private String filepath;
|
||||
// 文件的大小,以字节为单位
|
||||
private Long fileSize;
|
||||
// 文件大小
|
||||
private String size;
|
||||
// 文件的MIME类型
|
||||
private String fileType;
|
||||
// 上传人昵称
|
||||
private String uploadNickname;
|
||||
private Integer downloadCount;
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
package cn.bunny.vo.system.article;
|
||||
|
||||
import cn.bunny.vo.file.FileInfoVo;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class ForumArticleVo {
|
||||
// 文章ID
|
||||
private Long id;
|
||||
// 板块ID
|
||||
private Integer boardId;
|
||||
// 父级板块ID
|
||||
private Integer pBoardId;
|
||||
// 板块名称
|
||||
private String boardName;
|
||||
// 父板块名称
|
||||
private String pBoardName;
|
||||
// 用户ID
|
||||
private String userId;
|
||||
// 昵称
|
||||
private String nickName;
|
||||
// 最后登录ip地址
|
||||
private String userIpAddress;
|
||||
// 标题
|
||||
private String title;
|
||||
// 封面
|
||||
private String cover;
|
||||
// 内容
|
||||
private String content;
|
||||
// 0:富文本编辑器 1:markdown编辑器
|
||||
private Byte editorType;
|
||||
// 摘要
|
||||
private String summary;
|
||||
// 发布时间
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private String createTime;
|
||||
// 最后更新时间
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private String updateTime;
|
||||
// 阅读数量
|
||||
private Integer readCount;
|
||||
// 点赞数
|
||||
private Integer goodCount;
|
||||
// 评论数
|
||||
private Integer commentCount;
|
||||
// 0未置顶 1:已置顶
|
||||
private Byte topType;
|
||||
// 0:没有附件 1:有附件
|
||||
private Byte attachmentType;
|
||||
// -1已删除 0:待审核 1:已审核
|
||||
private Byte status;
|
||||
private List<FileInfoVo> fileInfo;
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
package cn.bunny.vo.system.board;
|
||||
|
||||
import cn.bunny.tree.AbstractTreeNode;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class ForumBoardVo implements AbstractTreeNode {
|
||||
private Long id;
|
||||
// 父级板块ID
|
||||
private Long parentId;
|
||||
// 板块名
|
||||
private String boardName;
|
||||
// 封面
|
||||
private String cover;
|
||||
// 描述
|
||||
private String boardDesc;
|
||||
// 排序
|
||||
private Integer sort;
|
||||
// 0:只允许管理员发帖 1:任何人可以发帖
|
||||
private Boolean postType;
|
||||
private List<ForumBoardVo> children;
|
||||
|
||||
@Override
|
||||
public void setChildren(List<? extends AbstractTreeNode> children) {
|
||||
this.children = (List<ForumBoardVo>) children;
|
||||
}
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
package cn.bunny.vo.system.comment;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class CommentVo {
|
||||
// 评论ID
|
||||
private Long id;
|
||||
// 父级评论ID
|
||||
private Integer pCommentId;
|
||||
// 文章ID
|
||||
private String articleId;
|
||||
// 回复内容
|
||||
private String content;
|
||||
// 图片
|
||||
private String imgPath;
|
||||
// 用户ID
|
||||
private Long userId;
|
||||
// 昵称
|
||||
private String nickName;
|
||||
// 用户ip地址
|
||||
private String userIpAddress;
|
||||
// 回复人ID
|
||||
private Long replyUserId;
|
||||
// 回复人昵称
|
||||
private String replyNickName;
|
||||
// 0:未置顶 1:置顶
|
||||
private Byte topType;
|
||||
// 发布时间
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private LocalDateTime postTime;
|
||||
// good数量
|
||||
private Integer goodCount;
|
||||
// 0:待审核 1:已审核
|
||||
private Byte status;
|
||||
private List<CommentVo> children;
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
package cn.bunny.vo.system.user;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserIntegralRecordVo {
|
||||
// 记录ID
|
||||
private Integer recordId;
|
||||
// 用户ID
|
||||
private String userId;
|
||||
// 操作类型
|
||||
private Byte operType;
|
||||
// 积分
|
||||
private Integer integral;
|
||||
// 创建时间
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private LocalDateTime createTime;
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
package cn.bunny.vo.system.user;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserMessageCountVo {
|
||||
private Integer total;
|
||||
private Integer sys;
|
||||
private Integer reply;
|
||||
private Integer likePost;
|
||||
private Integer likeComment;
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
package cn.bunny.vo.system.user;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class UserMessageVo {
|
||||
// 自增ID
|
||||
private Integer messageId;
|
||||
// 接收人用户ID
|
||||
private String receivedUserId;
|
||||
// 文章ID
|
||||
private String articleId;
|
||||
// 文章标题
|
||||
private String articleTitle;
|
||||
// 评论ID
|
||||
private Integer commentId;
|
||||
// 发送人用户ID
|
||||
private String sendUserId;
|
||||
// 发送人昵称
|
||||
private String sendNickName;
|
||||
// sys:系统消息 reply:评论 likePost:文章点赞 likeComment:评论点赞 attachment:附件下载
|
||||
private String messageType;
|
||||
// 消息内容
|
||||
private String messageContent;
|
||||
// 创建时间
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private LocalDateTime createTime;
|
||||
}
|
|
@ -1,8 +1,8 @@
|
|||
package cn.bunny.module.mail.utils;
|
||||
|
||||
import cn.bunny.common.service.utils.EmptyUtil;
|
||||
import cn.bunny.entity.system.email.EmailSend;
|
||||
import cn.bunny.result.constant.MailMessageConstant;
|
||||
import cn.bunny.pojo.email.EmailSend;
|
||||
import cn.bunny.pojo.result.constant.MailMessageConstant;
|
||||
|
||||
public class MailSendCheckUtil {
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package cn.bunny.module.mail.utils;
|
||||
|
||||
import cn.bunny.entity.system.email.EmailSend;
|
||||
import cn.bunny.entity.system.email.EmailSendInit;
|
||||
import cn.bunny.pojo.email.EmailSend;
|
||||
import cn.bunny.pojo.email.EmailSendInit;
|
||||
import jakarta.mail.MessagingException;
|
||||
import jakarta.mail.internet.MimeMessage;
|
||||
import org.springframework.mail.SimpleMailMessage;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.module.minio.utils;
|
||||
|
||||
import cn.bunny.result.constant.FileMessageConstant;
|
||||
import cn.bunny.pojo.result.constant.FileMessageConstant;
|
||||
import cn.bunny.common.service.exception.BunnyException;
|
||||
import io.minio.*;
|
||||
import io.minio.messages.*;
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
<module>module-mail</module>
|
||||
<module>module-rabbitMQ</module>
|
||||
<module>module-websocket</module>
|
||||
<module>spring-security</module>
|
||||
<module>module-task</module>
|
||||
</modules>
|
||||
|
||||
|
|
|
@ -4,9 +4,9 @@ import cn.bunny.common.service.context.BaseContext;
|
|||
import cn.bunny.common.service.exception.BunnyException;
|
||||
import cn.bunny.common.service.utils.JwtHelper;
|
||||
import cn.bunny.common.service.utils.ResponseUtil;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.vo.system.login.LoginVo;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import jakarta.servlet.FilterChain;
|
||||
|
|
|
@ -3,9 +3,9 @@ package cn.bunny.security.filter;
|
|||
|
||||
import cn.bunny.common.service.utils.ResponseUtil;
|
||||
import cn.bunny.dto.user.LoginDto;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.security.handelr.SecurityAuthenticationFailureHandler;
|
||||
import cn.bunny.security.handelr.SecurityAuthenticationSuccessHandler;
|
||||
import cn.bunny.security.service.CustomUserDetailsService;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package cn.bunny.security.handelr;
|
||||
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
package cn.bunny.security.handelr;
|
||||
|
||||
import cn.bunny.common.service.utils.ResponseUtil;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.security.handelr;
|
||||
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import jakarta.servlet.ServletException;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.security.handelr;
|
||||
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
|
|
2
pom.xml
2
pom.xml
|
@ -19,7 +19,7 @@
|
|||
|
||||
<modules>
|
||||
<module>common</module>
|
||||
<module>model</module>
|
||||
<module>dao</module>
|
||||
<module>service</module>
|
||||
<module>module</module>
|
||||
<module>server-gateway</module>
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.bunny</groupId>
|
||||
<artifactId>model</artifactId>
|
||||
<artifactId>dao</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<!-- openfeign依赖 -->
|
||||
|
|
|
@ -2,7 +2,7 @@ package cn.bunny.service.admin.controller;
|
|||
|
||||
|
||||
import cn.bunny.dto.user.LoginDto;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.service.admin.service.UserService;
|
||||
import cn.bunny.vo.system.login.LoginVo;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
|
|
@ -5,14 +5,14 @@ import cn.bunny.common.service.utils.JwtHelper;
|
|||
import cn.bunny.dto.user.LoginDto;
|
||||
import cn.bunny.entity.system.admin.AdminPower;
|
||||
import cn.bunny.entity.system.admin.auth.AuthUserRole;
|
||||
import cn.bunny.entity.system.email.EmailSend;
|
||||
import cn.bunny.entity.system.email.EmailSendInit;
|
||||
import cn.bunny.pojo.email.EmailSend;
|
||||
import cn.bunny.pojo.email.EmailSendInit;
|
||||
import cn.bunny.entity.system.email.EmailUsers;
|
||||
import cn.bunny.entity.system.user.User;
|
||||
import cn.bunny.module.mail.utils.MailSenderUtil;
|
||||
import cn.bunny.result.constant.ExceptionConstant;
|
||||
import cn.bunny.result.constant.MailMessageConstant;
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.constant.ExceptionConstant;
|
||||
import cn.bunny.pojo.result.constant.MailMessageConstant;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.service.admin.mapper.AdminPowerMapper;
|
||||
import cn.bunny.service.admin.mapper.AdminRoleMapper;
|
||||
import cn.bunny.service.admin.mapper.EmailUsersMapper;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package cn.bunny.service.aop.annotation;
|
||||
|
||||
import cn.bunny.enums.OperationType;
|
||||
import cn.bunny.pojo.enums.OperationType;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
|
|
|
@ -2,7 +2,7 @@ package cn.bunny.service.web.controller;
|
|||
|
||||
import cn.bunny.dto.user.LoginDto;
|
||||
import cn.bunny.dto.user.RegisterDto;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.service.web.service.LoginService;
|
||||
import cn.bunny.vo.system.login.LoginVo;
|
||||
import cn.bunny.vo.system.login.ValidateCodeVo;
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
package cn.bunny.service.web.interceptor;
|
||||
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.result.ResultCodeEnum;
|
||||
import cn.bunny.result.Result;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.ResultCodeEnum;
|
||||
import cn.bunny.pojo.result.Result;
|
||||
import cn.bunny.common.service.context.BaseContext;
|
||||
import cn.bunny.common.service.utils.JwtHelper;
|
||||
import cn.bunny.common.service.utils.ResponseUtil;
|
||||
|
|
|
@ -6,16 +6,16 @@ import cn.bunny.common.service.utils.EmptyUtil;
|
|||
import cn.bunny.common.service.utils.JwtHelper;
|
||||
import cn.bunny.dto.user.LoginDto;
|
||||
import cn.bunny.dto.user.RegisterDto;
|
||||
import cn.bunny.entity.system.email.EmailSend;
|
||||
import cn.bunny.entity.system.email.EmailSendInit;
|
||||
import cn.bunny.pojo.email.EmailSend;
|
||||
import cn.bunny.pojo.email.EmailSendInit;
|
||||
import cn.bunny.entity.system.email.EmailTemplate;
|
||||
import cn.bunny.entity.system.email.EmailUsers;
|
||||
import cn.bunny.entity.system.user.User;
|
||||
import cn.bunny.module.mail.utils.MailSenderUtil;
|
||||
import cn.bunny.result.constant.ExceptionConstant;
|
||||
import cn.bunny.result.constant.MailMessageConstant;
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.result.constant.UserConstant;
|
||||
import cn.bunny.pojo.result.constant.ExceptionConstant;
|
||||
import cn.bunny.pojo.result.constant.MailMessageConstant;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.constant.UserConstant;
|
||||
import cn.bunny.service.web.mapper.EmailTemplateMapper;
|
||||
import cn.bunny.service.web.mapper.EmailUsersMapper;
|
||||
import cn.bunny.service.web.mapper.UserMapper;
|
||||
|
|
|
@ -5,8 +5,8 @@ import cn.bunny.common.service.exception.BunnyException;
|
|||
import cn.bunny.common.service.utils.EmptyUtil;
|
||||
import cn.bunny.dto.user.ResetPwdDto;
|
||||
import cn.bunny.entity.system.user.User;
|
||||
import cn.bunny.result.constant.ExceptionConstant;
|
||||
import cn.bunny.result.constant.RedisUserConstant;
|
||||
import cn.bunny.pojo.result.constant.ExceptionConstant;
|
||||
import cn.bunny.pojo.result.constant.RedisUserConstant;
|
||||
import cn.bunny.service.web.mapper.UserMapper;
|
||||
import cn.bunny.service.web.service.UserService;
|
||||
import cn.bunny.vo.system.user.UserInfoVo;
|
||||
|
|
|
@ -1,45 +0,0 @@
|
|||
package cn.bunny.service.web.service.impl;
|
||||
|
||||
import cn.bunny.common.utils.CommentUtil;
|
||||
import cn.bunny.dto.common.CommentQueryDto;
|
||||
import cn.bunny.entity.system.article.ForumComment;
|
||||
import cn.bunny.vo.system.comment.CommentVo;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@SpringBootTest
|
||||
class CommentServiceImplTest {
|
||||
@Autowired
|
||||
private CommentMapper commentMapper;
|
||||
|
||||
/**
|
||||
* 获取文章评论
|
||||
*/
|
||||
@Test
|
||||
public void loadComment() {
|
||||
CommentQueryDto dto = new CommentQueryDto();
|
||||
dto.setArticleId("RtiXj832TFL4nhW");
|
||||
// 返回参数
|
||||
ArrayList<CommentVo> list = new ArrayList<>();
|
||||
// 查询
|
||||
Page<ForumComment> page = new Page<>(1, 6);
|
||||
IPage<ForumComment> commentList = commentMapper.loadComment(page, dto);
|
||||
|
||||
// 准备返回值
|
||||
commentList.getRecords().forEach(forumComments -> {
|
||||
CommentVo commentVo = new CommentVo();
|
||||
BeanUtils.copyProperties(forumComments, commentVo);
|
||||
list.add(commentVo);
|
||||
});
|
||||
|
||||
List<CommentVo> buildTree = CommentUtil.buildTree(list);
|
||||
System.out.println(buildTree);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue