xiongzhu 4 лет назад
Родитель
Сommit
b408fd86d5

+ 1 - 1
src/main/java/com/izouma/nineth/domain/Asset.java

@@ -33,7 +33,7 @@ import java.util.List;
 @NoArgsConstructor
 @Builder
 @ApiModel("资产")
-public class Asset extends BaseEntity {
+public class Asset extends CollectionBaseEntity {
 
     @ApiModelProperty("用户ID")
     private Long userId;

+ 2 - 3
src/main/java/com/izouma/nineth/domain/BaseEntity.java

@@ -21,12 +21,11 @@ import java.time.LocalDateTime;
 @EntityListeners(AuditingEntityListener.class)
 @JsonInclude(JsonInclude.Include.NON_NULL)
 @JsonIgnoreProperties(value = {"hibernateLazyInitializer"}, ignoreUnknown = true)
+@SequenceGenerator(name = "hibernate_sequence", sequenceName = "hibernate_sequence", allocationSize = 100)
 public abstract class BaseEntity {
     @ExcelProperty("ID")
     @Id
-    @GeneratedValue(strategy = GenerationType.AUTO)
-//    @GeneratedValue(generator = "snowFlakeId")
-//    @GenericGenerator(name = "snowFlakeId", strategy = "com.izouma.nineth.utils.SnowflakeIdGenerator")
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "hibernate_sequence")
     private Long id;
 
     @ExcelIgnore

+ 1 - 6
src/main/java/com/izouma/nineth/domain/Collection.java

@@ -48,12 +48,7 @@ import java.util.List;
 @NoArgsConstructor
 @Builder
 @ApiModel("藏品")
-public class Collection extends BaseEntityNoID {
-
-    @Id
-    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "collection_seq")
-    @SequenceGenerator(name = "collection_seq", sequenceName = "collection_seq", allocationSize = 100, initialValue = 8000000)
-    private Long id;
+public class Collection extends CollectionBaseEntity {
 
     @ApiModelProperty("名称")
     @Searchable

+ 102 - 0
src/main/java/com/izouma/nineth/domain/CollectionBaseEntity.java

@@ -0,0 +1,102 @@
+package com.izouma.nineth.domain;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import org.hibernate.envers.Audited;
+import org.springframework.data.annotation.CreatedBy;
+import org.springframework.data.annotation.CreatedDate;
+import org.springframework.data.annotation.LastModifiedBy;
+import org.springframework.data.annotation.LastModifiedDate;
+import org.springframework.data.jpa.domain.support.AuditingEntityListener;
+
+import javax.persistence.*;
+import java.time.LocalDateTime;
+
+@MappedSuperclass
+@Audited
+@EntityListeners(AuditingEntityListener.class)
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonIgnoreProperties(value = {"hibernateLazyInitializer"}, ignoreUnknown = true)
+@SequenceGenerator(name = "collection_seq", sequenceName = "collection_seq", allocationSize = 100)
+public abstract class CollectionBaseEntity {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "collection_seq")
+    private Long id;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @CreatedBy
+    private String createdBy;
+
+    @ExcelProperty("创建时间")
+    @JsonIgnore
+    @CreatedDate
+    private LocalDateTime createdAt;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @LastModifiedBy
+    private String modifiedBy;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @LastModifiedDate
+    private LocalDateTime modifiedAt;
+
+    @ExcelIgnore
+    private boolean del;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getCreatedBy() {
+        return createdBy;
+    }
+
+    public void setCreatedBy(String createdBy) {
+        this.createdBy = createdBy;
+    }
+
+    @JsonProperty("createdAt")
+    public LocalDateTime getCreatedAt() {
+        return createdAt;
+    }
+
+    public void setCreatedAt(LocalDateTime createdAt) {
+        this.createdAt = createdAt;
+    }
+
+    public String getModifiedBy() {
+        return modifiedBy;
+    }
+
+    public void setModifiedBy(String modifiedBy) {
+        this.modifiedBy = modifiedBy;
+    }
+
+    public LocalDateTime getModifiedAt() {
+        return modifiedAt;
+    }
+
+    public void setModifiedAt(LocalDateTime modifiedAt) {
+        this.modifiedAt = modifiedAt;
+    }
+
+    public boolean isDel() {
+        return del;
+    }
+
+    public void setDel(boolean del) {
+        this.del = del;
+    }
+}

+ 1 - 1
src/main/java/com/izouma/nineth/domain/IdentityAuth.java

@@ -17,7 +17,7 @@ import javax.persistence.*;
 @NoArgsConstructor
 @Builder
 @ApiModel("身份认证")
-public class IdentityAuth extends BaseEntity {
+public class IdentityAuth extends UserBaseEntity {
 
     @Searchable
     private Long userId;

+ 5 - 4
src/main/java/com/izouma/nineth/domain/SmsRecord.java

@@ -7,9 +7,7 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import javax.persistence.Entity;
-import javax.persistence.Index;
-import javax.persistence.Table;
+import javax.persistence.*;
 import java.time.LocalDateTime;
 
 @Data
@@ -22,7 +20,10 @@ import java.time.LocalDateTime;
 @NoArgsConstructor
 @Builder
 @ApiModel(value = "短信验证码记录", description = "短信验证码记录")
-public class SmsRecord extends BaseEntity {
+public class SmsRecord extends BaseEntityNoID {
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Long          id;
     @ApiModelProperty(value = "会话ID", name = "sessionId")
     private String        sessionId;
     @ApiModelProperty(value = "手机号", name = "phone;")

+ 2 - 6
src/main/java/com/izouma/nineth/domain/User.java

@@ -16,6 +16,7 @@ import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import net.bytebuddy.implementation.bind.annotation.SuperCall;
 import org.hibernate.annotations.BatchSize;
 
 import javax.persistence.*;
@@ -43,12 +44,7 @@ import java.util.Set;
 @NoArgsConstructor
 @Builder
 @ApiModel(value = "用户", description = "用户")
-public class User extends BaseEntityNoID implements Serializable {
-
-    @Id
-    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "user_seq")
-    @SequenceGenerator(name = "user_seq", sequenceName = "user_seq", allocationSize = 100, initialValue = 5464708)
-    private Long id;
+public class User extends UserBaseEntity implements Serializable {
 
     //    @Pattern(regexp = Constants.Regex.USERNAME)
     @Size(min = 1, max = 50)

+ 102 - 0
src/main/java/com/izouma/nineth/domain/UserBaseEntity.java

@@ -0,0 +1,102 @@
+package com.izouma.nineth.domain;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import org.hibernate.envers.Audited;
+import org.springframework.data.annotation.CreatedBy;
+import org.springframework.data.annotation.CreatedDate;
+import org.springframework.data.annotation.LastModifiedBy;
+import org.springframework.data.annotation.LastModifiedDate;
+import org.springframework.data.jpa.domain.support.AuditingEntityListener;
+
+import javax.persistence.*;
+import java.time.LocalDateTime;
+
+@MappedSuperclass
+@Audited
+@EntityListeners(AuditingEntityListener.class)
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonIgnoreProperties(value = {"hibernateLazyInitializer"}, ignoreUnknown = true)
+@SequenceGenerator(name = "user_seq", sequenceName = "user_seq", allocationSize = 100)
+public abstract class UserBaseEntity {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "user_seq")
+    private Long id;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @CreatedBy
+    private String createdBy;
+
+    @ExcelProperty("创建时间")
+    @JsonIgnore
+    @CreatedDate
+    private LocalDateTime createdAt;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @LastModifiedBy
+    private String modifiedBy;
+
+    @ExcelIgnore
+    @JsonIgnore
+    @LastModifiedDate
+    private LocalDateTime modifiedAt;
+
+    @ExcelIgnore
+    private boolean del;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getCreatedBy() {
+        return createdBy;
+    }
+
+    public void setCreatedBy(String createdBy) {
+        this.createdBy = createdBy;
+    }
+
+    @JsonProperty("createdAt")
+    public LocalDateTime getCreatedAt() {
+        return createdAt;
+    }
+
+    public void setCreatedAt(LocalDateTime createdAt) {
+        this.createdAt = createdAt;
+    }
+
+    public String getModifiedBy() {
+        return modifiedBy;
+    }
+
+    public void setModifiedBy(String modifiedBy) {
+        this.modifiedBy = modifiedBy;
+    }
+
+    public LocalDateTime getModifiedAt() {
+        return modifiedAt;
+    }
+
+    public void setModifiedAt(LocalDateTime modifiedAt) {
+        this.modifiedAt = modifiedAt;
+    }
+
+    public boolean isDel() {
+        return del;
+    }
+
+    public void setDel(boolean del) {
+        this.del = del;
+    }
+}

+ 2 - 2
src/main/java/com/izouma/nineth/dto/UserBankCard.java

@@ -1,6 +1,6 @@
 package com.izouma.nineth.dto;
 
-import com.izouma.nineth.domain.BaseEntity;
+import com.izouma.nineth.domain.UserBaseEntity;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
@@ -18,7 +18,7 @@ import javax.persistence.Table;
 @AllArgsConstructor
 @NoArgsConstructor
 @Builder
-public class UserBankCard extends BaseEntity {
+public class UserBankCard extends UserBaseEntity {
 
     private Long userId;