forked from kidgrow-microservices-platform

zhaoxiaohao
2020-08-13 8a0af6adb095fca6d13712786255000caff76e62
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserController.java
@@ -75,7 +75,10 @@
     */
    @ApiOperation(value = "根据access_token当前登录用户")
    @GetMapping("/users/current")
    public ResultBody<LoginAppUser> getLoginAppUser(@LoginUser(isFull = true) SysUser user) {
    public ResultBody<LoginAppUser> getLoginAppUser(@LoginUser(isFull = true) SysUser user,HttpServletRequest request) {
        if(user!=null){
            loginLogs(user, request);
        }
        return ResultBody.ok().data(appUserService.getLoginAppUser(user));
    }
@@ -86,7 +89,6 @@
    @ApiOperation(value = "根据用户名查询用户实体")
    @Cacheable(value = "user", key = "#username")
    public SysUser selectByUsername(@PathVariable String username) {
        return appUserService.selectByUsername(username);
    }
@@ -95,12 +97,8 @@
     */
    @GetMapping(value = "/users-anon/login", params = "username")
    @ApiOperation(value = "根据用户名查询用户")
    public LoginAppUser findByUsername(String username, HttpServletRequest request) {
    public LoginAppUser findByUsername(String username) {
        LoginAppUser loginAppUser = appUserService.findByUsername(username);
        if (loginAppUser != null) {
            loginLogs(loginAppUser, request);
        }
        return loginAppUser;
    }
@@ -110,12 +108,13 @@
     * @param sysUser
     * @return
     */
    private int loginLogs(LoginAppUser sysUser, HttpServletRequest request) {
    private int loginLogs(SysUser sysUser, HttpServletRequest request) {
        SysUserLogs sysUserLogs = new SysUserLogs();
        sysUserLogs.setClientId(ClientContextHolder.getClient());
        sysUserLogs.setLoginAgentSystem(request.getHeader(CommonConstant.USER_AGENT_SYSTEM));
        sysUserLogs.setLoginAgentBrowser(request.getHeader(CommonConstant.USER_AGENT_BROWSER));
        sysUserLogs.setLoginIp(request.getHeader(CommonConstant.USER_AGENT_IP));
        sysUserLogs.setLoginSystemScreen(request.getHeader(CommonConstant.USER_AGENT_SYSTEM_SCREEN));
        sysUserLogs.setLoginTime(new Date());
        sysUserLogs.setUserid(sysUser.getId());
        sysUserLogs.setUsername(sysUser.getUsername());
@@ -212,9 +211,9 @@
     */
    @ApiOperation(value = "用户查询列表")
    @GetMapping("/users/HDoctorusers")
    public ResultBody hospitalDoctorList(@RequestParam Long hospitalId, Long departmentId) {
    public ResultBody hospitalDoctorList(@RequestParam Long hospitalId, Long departmentId,boolean isIncluddel) {
        if (StringUtils.isNotBlank(hospitalId.toString()) && StringUtils.isNotBlank(departmentId.toString())) {
            return appUserService.hospitalDoctorList(hospitalId, departmentId);
            return appUserService.hospitalDoctorList(hospitalId, departmentId,isIncluddel);
        } else {
            return ResultBody.failed("查询参数有误");
        }
@@ -248,7 +247,7 @@
     */
    @PutMapping(value = "/users/{id}/password")
    @AuditLog(operation = "'重置用户密码:' + #id")
    public ResultBody resetPassword(@PathVariable Long id) {
    public ResultBody resetPassword(@PathVariable Long id) throws Exception{
        if (checkAdmin(id)) {
            return ResultBody.failed(ADMIN_CHANGE_MSG);
        }
@@ -256,22 +255,34 @@
    }
    /**
     * 返回给Python加密密码
     */
    @GetMapping(value = "/users/python")
    public ResultBody jiaMipython(@RequestBody String password)  {
        if (password==null||"".equals(password)) {
            return ResultBody.failed().msg("请输入密码");
        }
        ResultBody resultBody = appUserService.jiaMipython(password);
        return resultBody;
    }
    /**
     * 用户自己修改密码
     */
    @PutMapping(value = "/users/password")
    public ResultBody resetPassword(@RequestBody SysUser sysUser) {
    public ResultBody resetPassword(@RequestBody SysUser sysUser) throws Exception {
        if (checkAdmin(sysUser.getId())) {
            return ResultBody.failed().msg(ADMIN_CHANGE_MSG);
        }
        appUserService.updatePassword(sysUser.getId(), sysUser.getOldPassword(), sysUser.getNewPassword(), false);
        return ResultBody.ok().data(true).msg("密码重置成功");
        ResultBody resultBody = appUserService.updatePassword(sysUser.getId(), sysUser.getOldPassword(), sysUser.getNewPassword(), false);
        return resultBody;
    }
    /**
     * 用户自己修改密码-后端以外
     */
    @PutMapping(value = "/users/resetpassword")
    public ResultBody resetClientPassword(@RequestParam Map<String, Object> params) {
    public ResultBody resetClientPassword(@RequestParam Map<String, Object> params) throws Exception {
        Long id = MapUtils.getLong(params, "id");
        String oldPassword = MapUtils.getString(params, "oldPassword");
        String newPassword = MapUtils.getString(params, "newPassword");
@@ -294,7 +305,14 @@
     * @return
     */
    @PutMapping(value = "/users/updateusertel")
    public ResultBody updateUserTel(@RequestParam Map<String, Object> params) {
    public ResultBody updateUserTel(@RequestParam Map<String, Object> params,@LoginUser SysUser sysUser) throws Exception  {
        String oldTel = MapUtils.getString(params, "oldTel");
        if (oldTel==null){
            return ResultBody.failed("请输入原账号");
        }
        if(!sysUser.getUsername().equals(oldTel)){
            return ResultBody.failed("请输入正确的原账号");
        }
        return appUserService.updateUserTel(params);
    }
@@ -312,7 +330,20 @@
        boolean v = appUserService.delUser(id);
        return ResultBody.ok().msg("删除成功").data(v);
    }
    /**
     * 删除用户  不删除关系表 ,role_user 表  和 用户组织
     *
     * @param id
     */
    @DeleteMapping(value = "/users/deleteNoContact/{id}")
    //@AuditLog(operation = "'删除用户:' + #id")
    public ResultBody deleteNoContact(@PathVariable Long id) {
        if (checkAdmin(id)) {
            return ResultBody.failed(ADMIN_CHANGE_MSG);
        }
        boolean v = appUserService.deleteNoContact(id);
        return ResultBody.ok().msg("删除成功").data(v);
    }
    /**
     * 新增or更新
@@ -335,7 +366,7 @@
     */
    @PostMapping("/users/doctorUserReg")
    @AuditLog(operation = "'注册/添加用户:' + #userRegVo.mobile")
    public ResultBody doctorUserReg(@RequestBody UserRegVo userRegVo,SysUser sysUser) {
    public ResultBody doctorUserReg(@RequestBody UserRegVo userRegVo,SysUser sysUser) throws Exception {
        return appUserService.doctorUserReg(userRegVo,sysUser);
    }
@@ -423,7 +454,7 @@
     * 通过手机修改密码
     */
    @PutMapping(value = "/users/passwordByPhone")
    public ResultBody passwordByPhone(@RequestBody Map<String, Object> map) {
    public ResultBody passwordByPhone(@RequestBody Map<String, Object> map) throws Exception {
        return appUserService.passwordByPhone(map);
    }
@@ -452,4 +483,16 @@
        return appUserService.findAppointUsers(Integer.parseInt(type));
    }
    /**
     * 检查该手机号是否注册 false 未注册  true已经注册
     */
    @GetMapping("users/isRegUser")
    public ResultBody isRegUser(String userTel) {
        if(appUserService.phoneIsUsed(userTel))
        {
            return ResultBody.ok().data(true);
        }
        return ResultBody.failed().data(false);
    }
}