package com.xuqm.push.entity; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.EnumType; import jakarta.persistence.Enumerated; import jakarta.persistence.Id; import jakarta.persistence.Table; import jakarta.persistence.UniqueConstraint; import java.time.LocalDateTime; @Entity @Table(name = "push_user", uniqueConstraints = @UniqueConstraint(columnNames = {"appKey", "userId"})) public class PushUserEntity { public enum Gender { UNKNOWN, MALE, FEMALE } public enum Status { ACTIVE, BANNED } @Id private String id; @Column(nullable = false, length = 64) private String appKey; @Column(nullable = false, length = 128) private String userId; @Column(length = 64) private String nickname; @Enumerated(EnumType.STRING) @Column(length = 16) private Gender gender; @Column(length = 512) private String avatar; @Enumerated(EnumType.STRING) @Column(nullable = false, length = 16) private Status status; @Column(nullable = false) private LocalDateTime createdAt; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getAppKey() { return appKey; } public void setAppKey(String appKey) { this.appKey = appKey; } public String getUserId() { return userId; } public void setUserId(String userId) { this.userId = userId; } public String getNickname() { return nickname; } public void setNickname(String nickname) { this.nickname = nickname; } public Gender getGender() { return gender; } public void setGender(Gender gender) { this.gender = gender; } public String getAvatar() { return avatar; } public void setAvatar(String avatar) { this.avatar = avatar; } public Status getStatus() { return status; } public void setStatus(Status status) { this.status = status; } public LocalDateTime getCreatedAt() { return createdAt; } public void setCreatedAt(LocalDateTime createdAt) { this.createdAt = createdAt; } }