From ba9c6723249f0a843d35eb21b43a00be4b7de3ab Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期四, 29 五月 2025 13:48:50 +0800 Subject: [PATCH] 备件请购 --- lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 48 insertions(+), 6 deletions(-) diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 55e48fa..37f72de 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; @@ -746,16 +747,14 @@ } @Override - public List<UserSelector> selectOperatorList(String equipmentId, String productionId, String positionCode) { + public List<UserSelector> selectOperatorList(String equipmentCode, String productionId, String positionCode) { LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(SysUser::getPost, positionCode); - if(StringUtils.isNotBlank(equipmentId)) { - queryWrapper.isNull(SysUser::getEquipmentIds); - queryWrapper.or().eq(SysUser::getEquipmentIds, ""); - queryWrapper.or().like(SysUser::getEquipmentIds, equipmentId); + if(StringUtils.isNotBlank(equipmentCode)) { + queryWrapper.and(q -> q.isNull(SysUser::getEquipmentIds).or().eq(SysUser::getEquipmentIds, "").or().like(SysUser::getEquipmentIds, equipmentCode)); } if(StringUtils.isNotBlank(productionId)) { - queryWrapper.exists("select 1 from mdc_user_production t where t.user_id=id and t.pro_id={0}", productionId); + queryWrapper.exists("select 1 from mdc_user_production t where t.user_id=sys_user.id and t.pro_id={0}", productionId); } queryWrapper.eq(SysUser::getDelFlag, CommonConstant.DEL_FLAG_0); queryWrapper.eq(SysUser::getStatus, CommonConstant.DEL_FLAG_1); @@ -764,4 +763,47 @@ List<UserSelector> collect = sysUsers.stream().map(user -> new UserSelector(user.getId(), user.getUsername(), user.getRealname())).collect(Collectors.toList()); return collect; } + + @Override + public List<UserSelector> selectOperatorList(String positionCode) { + LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SysUser::getPost, positionCode); + queryWrapper.eq(SysUser::getDelFlag, CommonConstant.DEL_FLAG_0); + queryWrapper.eq(SysUser::getStatus, CommonConstant.DEL_FLAG_1); + queryWrapper.orderByDesc(SysUser::getId); + List<SysUser> sysUsers = userMapper.selectList(queryWrapper); + List<UserSelector> collect = sysUsers.stream().map(user -> new UserSelector(user.getId(), user.getUsername(), user.getRealname())).collect(Collectors.toList()); + return collect; + } + + /** + * 鏍规嵁鐢ㄦ埛鍚嶆壒閲忚幏鍙栫湡瀹炲鍚嶆槧灏� + * @param userNames 鐢ㄦ埛鍚嶅垪琛� + * @return 鐢ㄦ埛鍚�->鐪熷疄濮撳悕鐨勬槧灏勶紙涓嶅瓨鍦ㄦ椂鍊间负null锛� + */ + @Override + public Map<String, String> getUserRealNamesByUserNames(List<String> userNames) { + if (CollectionUtils.isEmpty(userNames)) { + return Collections.emptyMap(); + } + + // 鍘婚噸骞惰繃婊ょ┖鍊� + Set<String> uniqueNames = userNames.stream() + .filter(StringUtils::isNotBlank) + .collect(Collectors.toSet()); + if (uniqueNames.isEmpty()) { + return Collections.emptyMap(); + } + + // 鎵归噺鏌ヨ锛堣嚜鍔ㄥ鐞咺N璇彞鍒嗙墖锛� + List<SysUser> users = userMapper.selectUsersByNames(new ArrayList<>(uniqueNames)); + + // 鏋勫缓鏄犲皠鍏崇郴 + return users.stream() + .collect(Collectors.toMap( + SysUser::getUsername, + SysUser::getRealname, + (existing, replacement) -> existing // 閲嶅閿鐞� + )); + } } -- Gitblit v1.9.3