inleft
2022-02-27 2782f3e576b56a9ca078055026394646d57440f8
commit | author | age
9bcb19 1 /*
I 2 Copyright [2020] [https://www.xiaonuo.vip]
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8   http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16 Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
17
18 1.请不要删除和修改根目录下的LICENSE文件。
19 2.请不要删除和修改Snowy源码头部的版权声明。
20 3.请保留源码和相关描述文件的项目出处,作者声明等。
21 4.分发源码时候,请注明软件出处 https://gitee.com/xiaonuobase/snowy
22 5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/xiaonuobase/snowy
23 6.若您的项目无法满足以上几点,可申请商业授权,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
24  */
25 package vip.xiaonuo.sys.modular.user.service;
26
27 import cn.hutool.core.lang.Dict;
28 import com.baomidou.mybatisplus.extension.service.IService;
29 import me.zhyd.oauth.model.AuthUser;
30 import vip.xiaonuo.core.pojo.page.PageResult;
31 import vip.xiaonuo.sys.modular.user.entity.SysUser;
32 import vip.xiaonuo.sys.modular.user.param.SysUserParam;
33 import vip.xiaonuo.sys.modular.user.result.SysUserResult;
34
35 import java.util.List;
36 import java.util.Set;
37
38 /**
39  * 系统用户service接口
40  *
41  * @author xuyuxiang
42  * @date 2020/3/11 17:49
43  */
44 public interface SysUserService extends IService<SysUser> {
45
46     /**
47      * 根据账号获取用户
48      *
49      * @param account 账号
50      * @return 用户
51      * @author xuyuxiang
52      * @date 2020/3/11 17:51
53      */
54     SysUser getUserByCount(String account);
55
56     /**
57      * 查询系统用户
58      *
59      * @param sysUserParam 查询参数
60      * @return 查询分页结果
61      * @author xuyuxiang
62      * @date 2020/3/23 9:23
63      */
64     PageResult<SysUserResult> page(SysUserParam sysUserParam);
65
66     /**
67      * 根据用户账号模糊搜索系统用户列表
68      *
69      * @param sysUserParam 查询参数
70      * @return 增强版hashMap 格式:[{"id:":123, "firstName":"张三"}]
71      * @author xuyuxiang
72      * @date 2020/4/14 9:21
73      */
74     List<Dict> list(SysUserParam sysUserParam);
75
76     /**
77      * 增加系统用户
78      *
79      * @param sysUserParam 添加参数
80      * @author xuyuxiang
81      * @date 2020/3/23 9:26
82      */
83     void add(SysUserParam sysUserParam);
84
85     /**
86      * 删除系统用户
87      *
88      * @param sysUserParamList 删除集合
89      * @author xuyuxiang yubaosahn
90      * @date 2020/3/23 9:26
91      */
92     void delete(List<SysUserParam> sysUserParamList);
93
94     /**
95      * 编辑系统用户
96      *
97      * @param sysUserParam 编辑参数
98      * @author xuyuxiang
99      * @date 2020/3/23 9:26
100      */
101     void edit(SysUserParam sysUserParam);
102
103     /**
104      * 查看系统用户
105      *
106      * @param sysUserParam 查看参数
107      * @return 用户结果集
108      * @author xuyuxiang
109      * @date 2020/3/26 9:52
110      */
111     SysUserResult detail(SysUserParam sysUserParam);
112
113     /**
114      * 修改状态
115      *
116      * @param sysUserParam 修改参数
117      * @author xuyuxiang
118      * @date 2020/5/25 14:34
119      */
120     void changeStatus(SysUserParam sysUserParam);
121
122     /**
123      * 授权角色
124      *
125      * @param sysUserParam 授权参数
126      * @author xuyuxiang
127      * @date 2020/3/28 16:54
128      */
129     void grantRole(SysUserParam sysUserParam);
130
131     /**
132      * 授权数据
133      *
134      * @param sysUserParam 授权参数
135      * @author xuyuxiang
136      * @date 2020/3/28 16:54
137      */
138     void grantData(SysUserParam sysUserParam);
139
140     /**
141      * 更新信息
142      *
143      * @param sysUserParam 更新参数
144      * @author xuyuxiang
145      * @date 2020/4/1 14:43
146      */
147     void updateInfo(SysUserParam sysUserParam);
148
149     /**
150      * 修改密码
151      *
152      * @param sysUserParam 修改密码参数
153      * @author xuyuxiang
154      * @date 2020/4/1 14:44
155      */
156     void updatePwd(SysUserParam sysUserParam);
157
158     /**
159      * 获取用户的数据范围(组织机构id集合)
160      *
161      * @param userId 用户id
162      * @param orgId  组织机构id
163      * @return 数据范围id集合(组织机构id集合)
164      * @author xuyuxiang
165      * @date 2020/4/5 17:23
166      */
167     List<Long> getUserDataScopeIdList(Long userId, Long orgId);
168
169     /**
170      * 根据用户id获取姓名
171      *
172      * @param userId 用户id
173      * @return 用户姓名
174      * @author xuyuxiang
175      * @date 2020/5/6 15:02
176      */
177     String getNameByUserId(Long userId);
178
179     /**
180      * 拥有角色
181      *
182      * @param sysUserParam 查询参数
183      * @return 角色id集合
184      * @author xuyuxiang
185      * @date 2020/5/29 14:10
186      */
187     List<Long> ownRole(SysUserParam sysUserParam);
188
189     /**
190      * 拥有数据
191      *
192      * @param sysUserParam 查询参数
193      * @return 数据范围id集合
194      * @author xuyuxiang
195      * @date 2020/5/29 14:10
196      */
197     List<Long> ownData(SysUserParam sysUserParam);
198
199     /**
200      * 重置密码
201      *
202      * @param sysUserParam 重置参数
203      * @author xuyuxiang
204      * @date 2020/5/29 14:57
205      */
206     void resetPwd(SysUserParam sysUserParam);
207
208     /**
209      * 修改头像
210      *
211      * @param sysUserParam 修改头像参数
212      * @author xuyuxiang
213      * @date 2020/6/28 15:21
214      */
215     void updateAvatar(SysUserParam sysUserParam);
216
217     /**
218      * 导出用户
219      *
220      * @param sysUserParam 导出参数
221      * @author xuyuxiang
222      * @date 2020/6/30 16:08
223      */
224     void export(SysUserParam sysUserParam);
225
226     /**
227      * 用户选择器
228      *
229      * @param sysUserParam 查询参数
230      * @return 用户列表集合,格式[{"id":123,"name":"张三"},{"id":456,"name":"李四"}]
231      * @author xuyuxiang
232      * @date 2020/7/3 13:17
233      */
234     List<Dict> selector(SysUserParam sysUserParam);
235
236     /**
237      * 根据用户id获取用户
238      *
239      * @param userId 用户id
240      * @return 用户实体
241      * @author xuyuxiang
242      * @date 2020/7/29 10:07
243      **/
244     SysUser getUserById(Long userId);
245
246     /**
247      * 将授权的用户信息保存到用户表
248      *
249      * @param authUser 授权的用户信息
250      * @param sysUser  用户表信息
251      * @return void
252      * @author xuyuxiang
253      * @date 2020/7/29 10:26
254      **/
255     void saveAuthUserToUser(AuthUser authUser, SysUser sysUser);
256
257     /**
258      * 获取用户id集合
259      *
260      * @return 用户id集合
261      * @author xuyuxiang
262      * @date 2020/9/11 17:54
263      **/
264     List<Long> getAllUserIdList();
265
266     /**
267      * 判断集合内用户是否均已删除
268      *
269      * @author xuyuxiang
270      * @date 2021/9/3 13:26
271      * @param userIdSet 用户id集合
272      * @return boolean
273      **/
274     boolean hasAllDeletedUser(Set<Long> userIdSet);
275 }