package com.ruoyi.system.api.domain; import java.io.Serializable; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; /** * C端会员用户跨服务契约对象 * * 仅承载认证服务(ruoyi-auth)在 C 端登录/注册流程中所需的会员信息, * 避免直接依赖 ruoyi-user 内部实体 AccountUser。 * * @author hugray */ public class AccountMember implements Serializable { private static final long serialVersionUID = 1L; /** 会员ID(关联 account_user.user_id) */ private Long userId; /** 会员账号(C端固定为手机号) */ private String userName; /** 手机号 */ private String phone; /** 昵称 */ private String nickname; /** 头像地址 */ private String avatar; /** 本人推荐码(全局唯一) */ private String myReferralCode; /** 推荐人会员ID(关联 account_user.user_id) */ private Long referrerId; /** 状态(0正常 1停用) */ private String status; /** 服务商标识(0非服务商 1服务商,对应 account_user.provider_flag) */ private String providerFlag; /** * 登录密码(BCrypt 密文,对应 account_user.password) * * 仅用于认证服务(ruoyi-auth)核对密码,本契约对象全程不下发到 C 端, * 故不存在密文外泄风险。 */ private String password; public Long getUserId() { return userId; } public void setUserId(Long userId) { this.userId = userId; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } 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 getMyReferralCode() { return myReferralCode; } public void setMyReferralCode(String myReferralCode) { this.myReferralCode = myReferralCode; } public Long getReferrerId() { return referrerId; } public void setReferrerId(Long referrerId) { this.referrerId = referrerId; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getProviderFlag() { return providerFlag; } public void setProviderFlag(String providerFlag) { this.providerFlag = providerFlag; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } @Override public String toString() { // password 不参与打印,避免密文进入日志 return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) .append("userId", getUserId()) .append("userName", getUserName()) .append("phone", getPhone()) .append("nickname", getNickname()) .append("avatar", getAvatar()) .append("myReferralCode", getMyReferralCode()) .append("referrerId", getReferrerId()) .append("status", getStatus()) .append("providerFlag", getProviderFlag()) .toString(); } }