fix:获取所有用户数据调整

This commit is contained in:
2026-04-01 16:59:11 +08:00
parent 96a6484201
commit 7ac9eb30a3
10 changed files with 100 additions and 67 deletions

View File

@@ -28,6 +28,7 @@ import com.sdm.common.feign.impl.system.MessageFeignClientImpl;
import com.sdm.common.feign.impl.system.SysDeptFeignClientImpl;
import com.sdm.common.feign.impl.system.SysUserFeignClientImpl;
import com.sdm.common.log.CoreLogger;
import com.sdm.common.service.UserNameCacheService;
import com.sdm.common.utils.FilesUtil;
import com.sdm.common.utils.MdcUtil;
import com.sdm.common.utils.PageUtils;
@@ -214,6 +215,9 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
@Autowired
private SimulationTaskExtraMapper simulationTaskExtraMapper;
@Autowired
private UserNameCacheService userNameCacheService;
// 每批次处理的任务数量,可根据实际业务调整
@Value("${lyric.syncException.batchSize:100}")
private Integer batchSize;
@@ -466,13 +470,13 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
}
// 构建一个需求todoId到resultFileId的映射
@@ -2636,13 +2640,13 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
// 取项目视图、工位相关视图构建项目树信息(只同步当前阶段)创建任务(不创建任务文件夹,等下发时进行创建)
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
}
if (CollectionUtils.isNotEmpty(noRelatedProjectVTodoEmulationInfoDMList)) {
@@ -4111,13 +4115,13 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
}
@@ -4688,13 +4692,13 @@ public class LyricInternalServiceImpl implements ILyricInternalService {
List<SpdmNodeRelateMemberReq> allNodeManagerList = new ArrayList<>();
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
}
List<LyricVPdtToDM> pdtToDMList = lyricVPdtDmService.lambdaQuery().eq(LyricVPdtToDM::getProjectNum, lyricVProjectToDM.getProjectNum())

View File

@@ -36,6 +36,7 @@ import com.sdm.common.feign.impl.system.SysUserFeignClientImpl;
import com.sdm.common.feign.inter.data.IDataFeignClient;
import com.sdm.common.log.CoreLogger;
import com.sdm.common.service.TagMapService;
import com.sdm.common.service.UserNameCacheService;
import com.sdm.common.utils.DateUtils;
import com.sdm.common.utils.RandomUtil;
import com.sdm.common.utils.SystemOperate;
@@ -152,6 +153,9 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
@Autowired
private ISimulationNodeMemberService simulationNodeMemberService;
@Autowired
private UserNameCacheService userNameCacheService;
/**
* 扩展属性名称常量
*/
@@ -2939,17 +2943,18 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
req.setTenantId(ThreadLocalContext.getTenantId());
Map<Long, String> userId2Nickname;
if (CollectionUtils.isEmpty(req.getUserIds())) {
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(ThreadLocalContext.getTenantId());
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (!pageDataRespSdmResponse.isSuccess()) {
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(ThreadLocalContext.getTenantId());
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (CollectionUtils.isEmpty(userList)) {
return SdmResponse.success();
}
List<Long> userIds = pageDataRespSdmResponse.getData().getData().stream().map(CIDUserResp::getUserId).toList();
List<Long> userIds = userList.stream().map(CIDUserResp::getUserId).toList();
req.setUserIds(userIds);
userId2Nickname = pageDataRespSdmResponse.getData().getData().stream().collect(Collectors.toMap(CIDUserResp::getUserId, CIDUserResp::getNickname));
userId2Nickname = userList.stream().collect(Collectors.toMap(CIDUserResp::getUserId, CIDUserResp::getNickname));
} else {
userId2Nickname = new HashMap<>();
}
@@ -3937,13 +3942,13 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
}

View File

@@ -39,6 +39,7 @@ import com.sdm.common.log.constants.ModuleConstants;
import com.sdm.common.log.constants.OperateTypeConstants;
import com.sdm.common.log.dto.SysLogDTO;
import com.sdm.common.service.TagMapService;
import com.sdm.common.service.UserNameCacheService;
import com.sdm.common.utils.RandomUtil;
import com.sdm.common.utils.SystemOperate;
import com.sdm.common.utils.excel.ExcelUtil;
@@ -171,6 +172,9 @@ public class TaskServiceImpl implements ITaskService {
@Autowired
private TagMapService tagMapService;
@Autowired
private UserNameCacheService userNameCacheService;
// 通过标识判断是否走查询现场视图逻辑0不查询1查询
@Value("${lyricFlag:1}")
private int lyricFlag;
@@ -1225,13 +1229,13 @@ public class TaskServiceImpl implements ITaskService {
// 将利元亨的用户工号与userId映射
Map<String, Long> usernameToUserIdMap = new HashMap<>();
Map<Long, String> userIdToNickNameMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserIdMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, CIDUserResp::getUserId));
userIdToNickNameMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUserId,CIDUserResp::getNickname));
}
@@ -2813,15 +2817,16 @@ public class TaskServiceImpl implements ITaskService {
List<CIDUserResp> userList = new ArrayList<>();
if (CollectionUtils.isEmpty(req.getUserIds()) && StringUtils.isEmpty(req.getUserGroupId())) {
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(ThreadLocalContext.getTenantId());
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (!pageDataRespSdmResponse.isSuccess()) {
return SdmResponse.success();
}
userList.addAll(pageDataRespSdmResponse.getData().getData());
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(ThreadLocalContext.getTenantId());
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
// if (!pageDataRespSdmResponse.isSuccess()) {
// return SdmResponse.success();
// }
List<CIDUserResp> cidUserRespList = userNameCacheService.getAllUsers();
userList.addAll(cidUserRespList);
} else if (CollectionUtils.isEmpty(req.getUserIds()) && StringUtils.isNotEmpty(req.getUserGroupId())) {
// 查询用户组下所有成员
QueryGroupDetailReq groupDetailReq = new QueryGroupDetailReq();
@@ -5326,13 +5331,13 @@ public class TaskServiceImpl implements ITaskService {
Long tenantId = ThreadLocalContext.getTenantId();
// 将利元亨的用户工号与userId映射
Map<String, CIDUserResp> usernameToUserMap = new HashMap<>();
UserListReq userListReq = new UserListReq();
userListReq.setTenantId(tenantId);
userListReq.setCurrent(1);
userListReq.setSize(9999);
SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
if (pageDataRespSdmResponse.isSuccess() && pageDataRespSdmResponse.getData().getData() != null) {
List<CIDUserResp> userList = pageDataRespSdmResponse.getData().getData();
// UserListReq userListReq = new UserListReq();
// userListReq.setTenantId(tenantId);
// userListReq.setCurrent(1);
// userListReq.setSize(9999);
// SdmResponse<PageDataResp<List<CIDUserResp>>> pageDataRespSdmResponse = sysUserFeignClient.listUser(userListReq);
List<CIDUserResp> userList = userNameCacheService.getAllUsers();
if (userList != null) {
usernameToUserMap = userList.stream().collect(Collectors.toMap(CIDUserResp::getUsername, Function.identity()));
}
// 通过脚本解析导入的指标excel文件