diff --git a/modules/core/pom.xml b/modules/core/pom.xml index 096849a93e..5b4b15d1ec 100644 --- a/modules/core/pom.xml +++ b/modules/core/pom.xml @@ -114,6 +114,15 @@ ${protobuf.version} + + + + + com.google.guava + guava + 33.3.1-jre + + diff --git a/modules/core/src/main/java/com/bytedesk/core/base/BaseEntity.java b/modules/core/src/main/java/com/bytedesk/core/base/BaseEntity.java index f275e8b972..8b7c27aa07 100644 --- a/modules/core/src/main/java/com/bytedesk/core/base/BaseEntity.java +++ b/modules/core/src/main/java/com/bytedesk/core/base/BaseEntity.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:21:24 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-20 12:39:40 + * @LastEditTime: 2025-04-09 21:37:11 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesa * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -93,6 +93,7 @@ public abstract class BaseEntity implements Serializable { private LocalDateTime updatedAt; // soft delete + @Builder.Default @Column(name = "is_deleted") private boolean deleted = false; diff --git a/modules/core/src/main/java/com/bytedesk/core/base/BaseEntityNoOrg.java b/modules/core/src/main/java/com/bytedesk/core/base/BaseEntityNoOrg.java index fa245f3dcf..25528ab110 100644 --- a/modules/core/src/main/java/com/bytedesk/core/base/BaseEntityNoOrg.java +++ b/modules/core/src/main/java/com/bytedesk/core/base/BaseEntityNoOrg.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:21:24 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-20 12:39:49 + * @LastEditTime: 2025-04-09 21:37:34 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesa * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -93,6 +93,7 @@ public abstract class BaseEntityNoOrg implements Serializable { /** * soft delete */ + @Builder.Default @Column(name = "is_deleted") private boolean deleted = false; diff --git a/modules/core/src/main/java/com/bytedesk/core/base/BaseRequest.java b/modules/core/src/main/java/com/bytedesk/core/base/BaseRequest.java index 608e549267..02f2afa6e3 100644 --- a/modules/core/src/main/java/com/bytedesk/core/base/BaseRequest.java +++ b/modules/core/src/main/java/com/bytedesk/core/base/BaseRequest.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:21:24 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-21 12:53:56 + * @LastEditTime: 2025-04-09 21:37:46 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -62,6 +62,7 @@ public abstract class BaseRequest implements Serializable { /** * 每页大小,默认10 */ + @Builder.Default protected int pageSize = 10; /** diff --git a/modules/kbase/src/main/java/com/bytedesk/kbase/article/AbstractArticleEntity.java b/modules/kbase/src/main/java/com/bytedesk/kbase/article/AbstractArticleEntity.java index 069ed0b8d4..a29a1ad2e0 100644 --- a/modules/kbase/src/main/java/com/bytedesk/kbase/article/AbstractArticleEntity.java +++ b/modules/kbase/src/main/java/com/bytedesk/kbase/article/AbstractArticleEntity.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-02-22 16:16:42 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-22 10:53:01 + * @LastEditTime: 2025-04-09 21:36:22 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -25,6 +25,7 @@ import jakarta.persistence.Column; import jakarta.persistence.Convert; import jakarta.persistence.MappedSuperclass; import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -60,25 +61,32 @@ public abstract class AbstractArticleEntity extends BaseEntity { @Convert(converter = StringListConverter.class) @Column(columnDefinition = TypeConsts.COLUMN_TYPE_TEXT) + @Builder.Default private List tagList = new ArrayList<>(); @Column(name = "is_top") + @Builder.Default private boolean top = false; @Column(name = "is_published") + @Builder.Default private boolean published = false; @Column(name = "is_markdown") + @Builder.Default private boolean markdown = false; + @Builder.Default private int readCount = 0; + @Builder.Default private int likeCount = 0; // 状态 - 具体枚举值由子类定义 private String status; // 编辑者 + @Builder.Default private String editor = BytedeskConsts.EMPTY_STRING; // 有效开始日期 @@ -89,6 +97,7 @@ public abstract class AbstractArticleEntity extends BaseEntity { // 是否需要审核 @Column(name = "need_audit") + @Builder.Default private boolean needAudit = false; // 审核状态 - 具体枚举值由子类定义 @@ -97,14 +106,17 @@ public abstract class AbstractArticleEntity extends BaseEntity { // 审核意见 @Column(name = "audit_opinion") + @Builder.Default private String auditOpinion = BytedeskConsts.EMPTY_STRING; // 审核人 @Column(name = "audit_user") + @Builder.Default private String auditUser = BytedeskConsts.EMPTY_STRING; // 是否需要密码访问 @Column(name = "is_password_protected") + @Builder.Default private boolean isPasswordProtected = false; private String password; @@ -114,10 +126,11 @@ public abstract class AbstractArticleEntity extends BaseEntity { private String kbUid; // 对应知识库 @Column(name = "create_user", length = 1024) + @Builder.Default private String user = BytedeskConsts.EMPTY_JSON_STRING; // 多个附件,暂时不启用,直接将链接放在contentMarkdown/contentHtml中即可 // @OneToMany // @JoinColumn(name = "article_uid", referencedColumnName = "uuid") // private List attachments = new ArrayList<>(); -} \ No newline at end of file +} \ No newline at end of file