admin
2025-02-11 8cc47cfe4c6d6b48e62cf00f6cbd0951ec57c264
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
package com.everyday.word.service.inter.user;
 
import com.everyday.word.dto.QQUserInfo;
import com.everyday.word.entity.SystemEnum;
import com.everyday.word.entity.user.IdentityType;
import com.everyday.word.entity.user.User;
import com.everyday.word.entity.user.UserAuth;
import com.everyday.word.exception.user.UserException;
import org.yeshi.utils.entity.wx.WeiXinUser;
 
import java.util.List;
 
/**
 * @author hxh
 * @title: UserService
 * @description: 用户服务
 * @date 2025/2/11 11:13
 */
public interface UserService {
 
 
    /**
     * @return void
     * @author hxh
     * @description 微信登录
     * @date 11:21 2025/2/11
     * @param: user
     **/
    public User loginByWX(WeiXinUser user, SystemEnum system);
 
    /**
     * @return void
     * @author hxh
     * @description QQ登录
     * @date 11:22 2025/2/11
     * @param: openId
     **/
    public User loginByQQ(String openId, SystemEnum system);
 
 
    /**
     * @return void
     * @author hxh
     * @description 电话号码登录
     * @date 11:23 2025/2/11
     * @param: phone
     **/
    public User loginByPhone(String phone, SystemEnum system);
 
 
    /**
     * @return void
     * @author hxh
     * @description 用户注册
     * @date 13:06 2025/2/11
     * @param: authInfo
     **/
    public void register(UserAuth authInfo) throws UserException;
 
    /**
     * @return com.everyday.word.entity.user.UserAuth
     * @author hxh
     * @description 授权查询
     * @date 13:27 2025/2/11
     * @param: type
     * @param: identifier
     **/
    public UserAuth selectUserAuth(IdentityType type, String identifier, SystemEnum system);
 
 
    /**
     * @return com.everyday.word.entity.user.UserAuth
     * @author hxh
     * @description 根据用户ID查询
     * @date 13:48 2025/2/11
     * @param: uid
     * @param: type
     **/
    public UserAuth selectUserAuth(Long uid, IdentityType type);
 
    /**
     * @return java.util.List<com.everyday.word.entity.user.UserAuth>
     * @author hxh
     * @description 获取用户所有授权信息
     * @date 13:33 2025/2/11
     * @param: uid
     **/
    public List<UserAuth> listUserAuth(Long uid);
 
 
    /**
     * @return com.everyday.word.entity.user.User
     * @author hxh
     * @description 查询用户基本信息
     * @date 13:34 2025/2/11
     * @param: id
     **/
    public User selectUser(Long id);
 
 
    /**
     * @author hxh 
     * @description 绑定微信
     * @date 14:04 2025/2/11
     * @param: userId
     * @param: weiXinUser
     * @return void
     **/
    public void bindWechat(Long userId, WeiXinUser weiXinUser) throws UserException;
 
    /**
     * @author hxh 
     * @description 绑定QQ
     * @date 14:04 2025/2/11
     * @param: userId
     * @param: qqUserInfo
     * @return void
     **/
    public void bindQQ(Long userId, QQUserInfo qqUserInfo) throws UserException;
 
    /**
     * @author hxh 
     * @description 绑定电话
     * @date 14:04 2025/2/11
     * @param: userId
     * @param: phone
     * @return void
     **/
    public void bindPhone(Long userId, String phone) throws UserException;
 
 
}