181 lines
4.0 KiB
Java
181 lines
4.0 KiB
Java
package com.rjlresaka.model;
|
|
|
|
import java.io.Serializable;
|
|
import java.sql.Timestamp;
|
|
|
|
public class User implements Serializable {
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
private int id;
|
|
private String fullName;
|
|
private String username;
|
|
private String email;
|
|
private String passwordHash;
|
|
private String avatarColor;
|
|
private String bio;
|
|
private Timestamp createdAt;
|
|
private Timestamp updatedAt;
|
|
|
|
private Integer conversationId;
|
|
private String lastMessagePreview;
|
|
private Timestamp lastMessageAt;
|
|
private int unreadCount;
|
|
private boolean active;
|
|
private boolean friend;
|
|
private boolean requestSent;
|
|
private boolean requestReceived;
|
|
|
|
public int getId() {
|
|
return id;
|
|
}
|
|
|
|
public void setId(int id) {
|
|
this.id = id;
|
|
}
|
|
|
|
public String getFullName() {
|
|
return fullName;
|
|
}
|
|
|
|
public void setFullName(String fullName) {
|
|
this.fullName = fullName;
|
|
}
|
|
|
|
public String getUsername() {
|
|
return username;
|
|
}
|
|
|
|
public void setUsername(String username) {
|
|
this.username = username;
|
|
}
|
|
|
|
public String getEmail() {
|
|
return email;
|
|
}
|
|
|
|
public void setEmail(String email) {
|
|
this.email = email;
|
|
}
|
|
|
|
public String getPasswordHash() {
|
|
return passwordHash;
|
|
}
|
|
|
|
public void setPasswordHash(String passwordHash) {
|
|
this.passwordHash = passwordHash;
|
|
}
|
|
|
|
public String getAvatarColor() {
|
|
return avatarColor;
|
|
}
|
|
|
|
public void setAvatarColor(String avatarColor) {
|
|
this.avatarColor = avatarColor;
|
|
}
|
|
|
|
public String getBio() {
|
|
return bio;
|
|
}
|
|
|
|
public void setBio(String bio) {
|
|
this.bio = bio;
|
|
}
|
|
|
|
public Timestamp getCreatedAt() {
|
|
return createdAt;
|
|
}
|
|
|
|
public void setCreatedAt(Timestamp createdAt) {
|
|
this.createdAt = createdAt;
|
|
}
|
|
|
|
public Timestamp getUpdatedAt() {
|
|
return updatedAt;
|
|
}
|
|
|
|
public void setUpdatedAt(Timestamp updatedAt) {
|
|
this.updatedAt = updatedAt;
|
|
}
|
|
|
|
public Integer getConversationId() {
|
|
return conversationId;
|
|
}
|
|
|
|
public void setConversationId(Integer conversationId) {
|
|
this.conversationId = conversationId;
|
|
}
|
|
|
|
public String getLastMessagePreview() {
|
|
return lastMessagePreview;
|
|
}
|
|
|
|
public void setLastMessagePreview(String lastMessagePreview) {
|
|
this.lastMessagePreview = lastMessagePreview;
|
|
}
|
|
|
|
public Timestamp getLastMessageAt() {
|
|
return lastMessageAt;
|
|
}
|
|
|
|
public void setLastMessageAt(Timestamp lastMessageAt) {
|
|
this.lastMessageAt = lastMessageAt;
|
|
}
|
|
|
|
public int getUnreadCount() {
|
|
return unreadCount;
|
|
}
|
|
|
|
public void setUnreadCount(int unreadCount) {
|
|
this.unreadCount = unreadCount;
|
|
}
|
|
|
|
public boolean isActive() {
|
|
return active;
|
|
}
|
|
|
|
public void setActive(boolean active) {
|
|
this.active = active;
|
|
}
|
|
|
|
public boolean isFriend() {
|
|
return friend;
|
|
}
|
|
|
|
public void setFriend(boolean friend) {
|
|
this.friend = friend;
|
|
}
|
|
|
|
public boolean isRequestSent() {
|
|
return requestSent;
|
|
}
|
|
|
|
public void setRequestSent(boolean requestSent) {
|
|
this.requestSent = requestSent;
|
|
}
|
|
|
|
public boolean isRequestReceived() {
|
|
return requestReceived;
|
|
}
|
|
|
|
public void setRequestReceived(boolean requestReceived) {
|
|
this.requestReceived = requestReceived;
|
|
}
|
|
|
|
public String getInitials() {
|
|
if (fullName == null || fullName.trim().isEmpty()) {
|
|
return "RR";
|
|
}
|
|
String[] parts = fullName.trim().split("\\s+");
|
|
StringBuilder initials = new StringBuilder();
|
|
for (String part : parts) {
|
|
if (!part.isEmpty()) {
|
|
initials.append(Character.toUpperCase(part.charAt(0)));
|
|
}
|
|
if (initials.length() == 2) {
|
|
break;
|
|
}
|
|
}
|
|
return initials.length() == 0 ? "RR" : initials.toString();
|
|
}
|
|
}
|