package com.ruoyi.user.domain;
|
|
import java.util.Date;
|
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.Size;
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.ruoyi.common.core.annotation.Excel;
|
import com.ruoyi.common.core.annotation.Excel.ColumnType;
|
import com.ruoyi.common.core.web.domain.BaseEntity;
|
|
/**
|
* C端会员用户表 account_user
|
*
|
* @author ruoyi
|
*/
|
public class AccountUser extends BaseEntity
|
{
|
private static final long serialVersionUID = 1L;
|
|
/** 会员ID */
|
@Excel(name = "会员ID", cellType = ColumnType.NUMERIC)
|
private Long userId;
|
|
/**
|
* 用户名
|
*
|
* 注意:属性名刻意用驼峰 userName,与上游 SysUser.userName 一致。网关的 AuthFilter 会
|
* 给每个转发请求加上请求头 username=<登录名>(SecurityConstants.DETAILS_USERNAME),
|
* 而 Spring 6+ 的 @ModelAttribute 会把请求头一并绑定到命令对象——若此处叫 username,
|
* 列表/导出接口在未显式传参时会被注入当前登录名,导致查询结果被静默过滤(实测列表恒为空)。
|
*/
|
@Excel(name = "用户名")
|
private String userName;
|
|
/** 手机号 */
|
@Excel(name = "手机号")
|
private String phone;
|
|
/** 密码(BCrypt 存储)。只入不出,避免密码随响应回传 */
|
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
private String password;
|
|
/** 昵称 */
|
@Excel(name = "昵称")
|
private String nickname;
|
|
/** 头像地址 */
|
private String avatar;
|
|
/** 性别(0男 1女 2未知,对齐 sys_user_sex 字典) */
|
@Excel(name = "性别", readConverterExp = "0=男,1=女,2=未知")
|
private String gender;
|
|
/** 生日 */
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
@Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
|
private Date birthday;
|
|
/** 状态(0正常 1停用) */
|
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
private String status;
|
|
/** 删除标志(0存在 2删除) */
|
private String delFlag;
|
|
public Long getUserId()
|
{
|
return userId;
|
}
|
|
public void setUserId(Long userId)
|
{
|
this.userId = userId;
|
}
|
|
@NotBlank(message = "用户名不能为空")
|
@Size(min = 0, max = 64, message = "用户名长度不能超过64个字符")
|
public String getUserName()
|
{
|
return userName;
|
}
|
|
public void setUserName(String userName)
|
{
|
this.userName = userName;
|
}
|
|
@Size(min = 0, max = 20, message = "手机号长度不能超过20个字符")
|
public String getPhone()
|
{
|
return phone;
|
}
|
|
public void setPhone(String phone)
|
{
|
this.phone = phone;
|
}
|
|
@Size(min = 0, max = 20, message = "密码长度必须在5到20个字符之间")
|
public String getPassword()
|
{
|
return password;
|
}
|
|
public void setPassword(String password)
|
{
|
this.password = password;
|
}
|
|
@Size(min = 0, max = 64, message = "昵称长度不能超过64个字符")
|
public String getNickname()
|
{
|
return nickname;
|
}
|
|
public void setNickname(String nickname)
|
{
|
this.nickname = nickname;
|
}
|
|
public String getAvatar()
|
{
|
return avatar;
|
}
|
|
public void setAvatar(String avatar)
|
{
|
this.avatar = avatar;
|
}
|
|
public String getGender()
|
{
|
return gender;
|
}
|
|
public void setGender(String gender)
|
{
|
this.gender = gender;
|
}
|
|
public Date getBirthday()
|
{
|
return birthday;
|
}
|
|
public void setBirthday(Date birthday)
|
{
|
this.birthday = birthday;
|
}
|
|
public String getStatus()
|
{
|
return status;
|
}
|
|
public void setStatus(String status)
|
{
|
this.status = status;
|
}
|
|
public String getDelFlag()
|
{
|
return delFlag;
|
}
|
|
public void setDelFlag(String delFlag)
|
{
|
this.delFlag = delFlag;
|
}
|
|
@Override
|
public String toString() {
|
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
|
.append("userId", getUserId())
|
.append("userName", getUserName())
|
.append("phone", getPhone())
|
.append("nickname", getNickname())
|
.append("avatar", getAvatar())
|
.append("gender", getGender())
|
.append("birthday", getBirthday())
|
.append("status", getStatus())
|
.append("delFlag", getDelFlag())
|
.append("createBy", getCreateBy())
|
.append("createTime", getCreateTime())
|
.append("updateBy", getUpdateBy())
|
.append("updateTime", getUpdateTime())
|
.append("remark", getRemark())
|
.toString();
|
}
|
}
|