liujie
昨天 384bce80449b17651937429038c4370dbce60e7b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package com.ruoyi.user.domain.vo;
 
import com.fasterxml.jackson.annotation.JsonProperty;
import com.ruoyi.user.domain.AccountProvider;
 
/**
 * 服务商新增/修改的请求体
 *
 * = 服务商配置(AccountProvider)+ 服务商账号设置(登录账号 / 登录密码 / 重复登录密码)。
 * 后者是 account_user 的列,不属于 account_provider,故不能挂到实体上:
 * 实体的 insert/update 用 <if> 动态拼列,非本表列的属性有被误捕成 SQL 列名(Unknown column)的风险。
 * 详情读取用 AccountProviderVo(它不含密码),两个类职责分开,读写不共用一副壳子。
 *
 * 明文密码只在本类的生命周期内存在:服务层校验完立刻交给 IAccountUserService 加密,
 * 落库前已变成 BCrypt 密文。两个密码列标 WRITE_ONLY(同 AccountUser.password):
 * 只许反序列化进来、永不序列化出去。不能用 @JsonIgnore——挂在 getter 上会让 Jackson
 * 把整个属性当成「忽略」,连请求体里的密码都收不到,表单会静默变成「密码为空」。
 *
 * @author ruoyi
 */
public class AccountProviderForm extends AccountProvider
{
    private static final long serialVersionUID = 1L;
 
    /** 登录账号(account_user.username),新增必填 */
    private String userName;
 
    /** 登录密码明文(新增必填;修改留空即不改密码) */
    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    private String password;
 
    /** 重复登录密码明文,必须与 password 一致 */
    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    private String confirmPassword;
 
    public String getUserName()
    {
        return userName;
    }
 
    public void setUserName(String userName)
    {
        this.userName = userName;
    }
 
    public String getPassword()
    {
        return password;
    }
 
    public void setPassword(String password)
    {
        this.password = password;
    }
 
    public String getConfirmPassword()
    {
        return confirmPassword;
    }
 
    public void setConfirmPassword(String confirmPassword)
    {
        this.confirmPassword = confirmPassword;
    }
}