添加账号修改,后台管理

This commit is contained in:
yoyuzh
2026-03-19 17:52:58 +08:00
parent c39fde6b19
commit ff8d47f44f
60 changed files with 4264 additions and 58 deletions

View File

@@ -2,6 +2,8 @@ package com.yoyuzh.auth;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.EnumType;
import jakarta.persistence.Enumerated;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
@@ -41,11 +43,45 @@ public class User {
@Column(name = "last_school_semester", length = 64)
private String lastSchoolSemester;
@Column(name = "display_name", nullable = false, length = 64)
private String displayName;
@Column(length = 280)
private String bio;
@Column(name = "preferred_language", nullable = false, length = 16)
private String preferredLanguage;
@Column(name = "avatar_storage_name", length = 255)
private String avatarStorageName;
@Column(name = "avatar_content_type", length = 128)
private String avatarContentType;
@Column(name = "avatar_updated_at")
private LocalDateTime avatarUpdatedAt;
@Enumerated(EnumType.STRING)
@Column(nullable = false, length = 32)
private UserRole role;
@Column(nullable = false)
private boolean banned;
@PrePersist
public void prePersist() {
if (createdAt == null) {
createdAt = LocalDateTime.now();
}
if (role == null) {
role = UserRole.USER;
}
if (displayName == null || displayName.isBlank()) {
displayName = username;
}
if (preferredLanguage == null || preferredLanguage.isBlank()) {
preferredLanguage = "zh-CN";
}
}
public Long getId() {
@@ -103,4 +139,68 @@ public class User {
public void setLastSchoolSemester(String lastSchoolSemester) {
this.lastSchoolSemester = lastSchoolSemester;
}
public String getDisplayName() {
return displayName;
}
public void setDisplayName(String displayName) {
this.displayName = displayName;
}
public String getBio() {
return bio;
}
public void setBio(String bio) {
this.bio = bio;
}
public String getPreferredLanguage() {
return preferredLanguage;
}
public void setPreferredLanguage(String preferredLanguage) {
this.preferredLanguage = preferredLanguage;
}
public String getAvatarStorageName() {
return avatarStorageName;
}
public void setAvatarStorageName(String avatarStorageName) {
this.avatarStorageName = avatarStorageName;
}
public String getAvatarContentType() {
return avatarContentType;
}
public void setAvatarContentType(String avatarContentType) {
this.avatarContentType = avatarContentType;
}
public LocalDateTime getAvatarUpdatedAt() {
return avatarUpdatedAt;
}
public void setAvatarUpdatedAt(LocalDateTime avatarUpdatedAt) {
this.avatarUpdatedAt = avatarUpdatedAt;
}
public UserRole getRole() {
return role;
}
public void setRole(UserRole role) {
this.role = role;
}
public boolean isBanned() {
return banned;
}
public void setBanned(boolean banned) {
this.banned = banned;
}
}