fuliqi
2023-12-04 40521d51f8c083212ceb1710ab0bea570821d063
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
@@ -298,6 +298,25 @@
        }
        return token;
    }
    @Override
    public String getOAuthToken(String username) {
        String token = null;
        //密码需要客户端加密后传递
        try {
            AdminUserDetails userDetails = (AdminUserDetails) loadUserByUsername(username);
            UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
            SecurityContextHolder.getContext().setAuthentication(authentication);
            //根据用户id,用户姓名
            token = jwtTokenUtil.generateToken(userDetails.getUserId(), userDetails.getUsername());
            redisService.set(RedisKey.PLATFORM_TOKEN_KEY.concat(username), token, LiveTimeMillisecond.s7200.time);
//            updateLoginTimeByUsername(username);
            //insertLoginLog(username);
        } catch (AuthenticationException e) {
            LOGGER.warn("登录异常:{}", e.getMessage());
        }
        return token;
    }
    /**
     * 添加登录记录
@@ -568,10 +587,23 @@
    @Override
    public List<UmsAdmin> getDepartUser(Long departId) {
        //TODO:查询二级部门及所有子级部门
        List<UmsDepart> umsDeparts = umsDepartManageMapper.selectChildrendIds(departId);
        List<Long> parentIds = umsDeparts.stream().map(UmsDepart::getParentId).collect(Collectors.toList());
        List<Long> ids = umsDeparts.stream().map(UmsDepart::getId).collect(Collectors.toList());
        List<Long> departIds = new ArrayList<>();
        for (Long id : ids) {
            if(!parentIds.contains(id)){
                departIds.add(id);
            }
        }
        QueryWrapper<UmsDepartManage> wrapper = new QueryWrapper<>();
        wrapper.lambda().eq(UmsDepartManage::getDepartId, departId);
        List<UmsDepartManage> list = umsDepartManageMapper.selectList(wrapper);
        List<Long> userIds = list.stream().map(UmsDepartManage::getUserId).collect(Collectors.toList());
        wrapper.lambda().in(UmsDepartManage::getDepartId, departIds);
        List<UmsDepartManage> users = umsDepartManageMapper.selectList(wrapper);
        List<Long> userIds = users.stream().map(UmsDepartManage::getUserId).collect(Collectors.toList());
        QueryWrapper<UmsAdmin> wrapperUser = new QueryWrapper<>();
        wrapperUser.in("id", userIds);
        List<UmsAdmin> adminList = baseMapper.selectList(wrapperUser);
@@ -596,5 +628,10 @@
        return str;
    }
    @Override
    public UmsAdmin getByOpenid(String openid) {
        LambdaQueryWrapper<UmsAdmin> wrapper = new LambdaQueryWrapper<UmsAdmin>().eq(UmsAdmin::getOpenid, openid).last("limit 1");
        return baseMapper.selectOne(wrapper);
    }
}