From 40521d51f8c083212ceb1710ab0bea570821d063 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期一, 04 十二月 2023 09:25:43 +0800 Subject: [PATCH] 平台端调度部门下拉框 --- ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 40 insertions(+), 3 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java index 868fadd..e151ebd 100644 --- a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java +++ b/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); + } } -- Gitblit v1.8.0