forked from kidgrow-microservices-platform

houruijun
2020-08-20 e04727cd391a4c5953dfde7bfaab355b48897567
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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
package com.kidgrow.usercenter.service;
 
import com.kidgrow.common.model.*;
import com.kidgrow.common.service.ISuperService;
import com.kidgrow.usercenter.model.SysUserExcel;
import com.kidgrow.usercenter.vo.UserRegVo;
 
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
import java.util.Set;
 
/**
 * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
 *
 * @Description: <br>
 * @Project: <br>
 * @CreateDate: Created in 2020/2/13 16:33 <br>
 * @Author: <a href="4345453@kidgrow.com">liuke</a>
 */
public interface ISysUserService extends ISuperService<SysUser> {
    /**
     * 获取UserDetails对象
     * @param username
     * @return
     */
    LoginAppUser findByUsername(String username);
 
    LoginAppUser findByOpenId(String username);
 
    LoginAppUser findByMobile(String username);
 
    /**
     * 通过SysUser 转换为 LoginAppUser,把roles和permissions也查询出来
     * @param sysUser
     * @return
     */
    LoginAppUser getLoginAppUser(SysUser sysUser);
 
    /**
     * 根据用户名查询用户
     * @param username
     * @return
     */
    SysUser selectByUsername(String username);
    /**
     * 根据手机号查询用户
     * @param mobile
     * @return
     */
    SysUser selectByMobile(String mobile);
    /**
     * 根据openId查询用户
     * @param openId
     * @return
     */
    SysUser selectByOpenId(String openId);
 
    /**
     * 用户分配角色
     * @param id
     * @param roleIds
     */
    void setRoleToUser(Long id, Set<Long> roleIds);
 
    /**
     * 更新密码
     * @param id
     * @param oldPassword
     * @param newPassword
     * @return
     */
    ResultBody updatePassword(Long id, String oldPassword, String newPassword,Boolean isdefault) throws Exception;
    /**
     * 更新手机号
     * @param params
     * @return
     */
    ResultBody updateUserTel(Map<String,Object> params) throws Exception ;
    /**
     * 用户列表
     * @param params
     * @return
     */
    PageResult<SysUser> findUsers(Map<String, Object> params);
 
 
    /**
     * 用户角色列表
     * @param userId
     * @return
     */
    List<SysRole> findRolesByUserId(Long userId);
 
    /**
     * 状态变更
     * @param params
     * @return
     */
    ResultBody updateEnabled(Map<String, Object> params);
 
    /**
     * 查询全部用户
     * @param params
     * @return
     */
    List<SysUserExcel> findAllUsers(Map<String, Object> params);
 
    ResultBody saveOrUpdateUser(SysUser sysUser);
 
    /**
     * 删除用户
     */
    boolean delUser(Long id);
 
    ResultBody findAll(Map<String, Object> map);
 
    ResultBody getThisUserOrganizationUser(HttpServletRequest request);
 
    ResultBody findCountByMap(Map<String, Object> map);
 
    ResultBody passwordByPhone(Map<String, Object> map) throws Exception;
 
    ResultBody registerByPhone(Map<String, Object> map);
 
    ResultBody updatePhone(Map<String, Object> map,SysUser sysUser);
 
    /**
     * 查询指定角色用户
     * @param type:0销售,1运维
     * @return
     */
    ResultBody findAppointUsers(Integer type);
    /**
     * 获取登录用户的其它信息
     * @param userId
     * @return
     */
    ResultBody findDoctorUserAllData(Long userId);
 
    /**
     * H端用户注册  管理员添加用户
     * @param userRegVo
     * @return
     */
    ResultBody doctorUserReg(UserRegVo userRegVo,SysUser sysUser) throws Exception;
    /**
     * 获取医院科室下的所有有效的医生
     * @param hospitalId
     * @param departmentId
     * @return
     */
    ResultBody hospitalDoctorList(Long hospitalId, Long departmentId,Boolean isdel);
    /**
     * 获取医院科室下的所有有效的医生
     * @param userTel
     * @return
     */
    ResultBody isRegUser(String userTel);
 
    /**
     * 检查手机号是否已经注册 true存在  false不存在
     * @param phone
     * @return
     */
    boolean phoneIsUsed(String phone);
 
    ResultBody jiaMipython(String password);
 
    /**
     * 根据科室id反查医院id
     * @param departmentId  科室id
     * @return
     */
    Long HospitalIdByDepartmentId(Long departmentId);
 
    /**
     * 删除用户  不删除关系表 ,role_user 表  和 用户组织
     *
     * @param id
     */
    boolean deleteNoContact(Long id);
}