From 1a61f6f395e30eb8584ce0e710c988ae1fed7a94 Mon Sep 17 00:00:00 2001 From: pepsi Date: Fri, 14 Oct 2022 14:41:36 +0800 Subject: [PATCH] add new field for operate log --- axzo-log-server/pom.xml | 4 +-- .../controller/api/OperateLogController.java | 1 + .../service/impl/OperateLogServiceImpl.java | 28 +++++++++++++------ .../server/api/LogPlatClientTest.java | 4 +-- 4 files changed, 25 insertions(+), 12 deletions(-) diff --git a/axzo-log-server/pom.xml b/axzo-log-server/pom.xml index b1b8ceb..ae37910 100644 --- a/axzo-log-server/pom.xml +++ b/axzo-log-server/pom.xml @@ -128,14 +128,14 @@ basics-profiles-api - + diff --git a/axzo-log-server/src/main/java/cn/axzo/log/platform/server/controller/api/OperateLogController.java b/axzo-log-server/src/main/java/cn/axzo/log/platform/server/controller/api/OperateLogController.java index c317bc7..85d5e0c 100644 --- a/axzo-log-server/src/main/java/cn/axzo/log/platform/server/controller/api/OperateLogController.java +++ b/axzo-log-server/src/main/java/cn/axzo/log/platform/server/controller/api/OperateLogController.java @@ -41,6 +41,7 @@ public class OperateLogController { BindingResult bindingResult) { //参数缺失等返回 if (bindingResult.hasErrors()) { + logger.warn("illegal param for create operate log."); return CommonResponse.fail(bindingResult.getAllErrors().get(0).getDefaultMessage()); } try { diff --git a/axzo-log-server/src/main/java/cn/axzo/log/platform/server/service/impl/OperateLogServiceImpl.java b/axzo-log-server/src/main/java/cn/axzo/log/platform/server/service/impl/OperateLogServiceImpl.java index 6eac024..859f370 100644 --- a/axzo-log-server/src/main/java/cn/axzo/log/platform/server/service/impl/OperateLogServiceImpl.java +++ b/axzo-log-server/src/main/java/cn/axzo/log/platform/server/service/impl/OperateLogServiceImpl.java @@ -221,7 +221,7 @@ public class OperateLogServiceImpl extends BaseEsService implements OperateLogSe OperateLogRecordEntity unifiedLogRecord = operateLogConverter.toEntity(req); //判断是否已经传手机和姓名存在,如果不存在则(通过接口调用,获取用户手机姓名) if (!StringUtils.hasText(unifiedLogRecord.getIdentityUserPhone()) - || StringUtils.hasText(unifiedLogRecord.getIdentityUserName())) { + || !StringUtils.hasText(unifiedLogRecord.getIdentityUserName())) { IdentityProfileDto identityProfile = qryIdentityProfile(req.getIdentityId(), req.getIdentityType()); if (identityProfile != null && identityProfile.getPersonProfile() != null) { unifiedLogRecord.setIdentityUserName(identityProfile.getPersonProfile().getRealName()); @@ -229,10 +229,16 @@ public class OperateLogServiceImpl extends BaseEsService implements OperateLogSe } } // 通过接口方式调用 workspaceApi单位等信息, - GetDetailRes workspaceInf = qryWorkspaceInfo(req.getWorkspaceId()); - unifiedLogRecord.setWorkspaceName(null != workspaceInf ? workspaceInf.getName() : null); - OrganizationalUnitVO ouInf = qryOrgUnitInf(req.getOuId()); - unifiedLogRecord.setOuName(ouInf != null ? ouInf.getName() : null); + if (unifiedLogRecord.getWorkspaceId() != null + && unifiedLogRecord.getWorkspaceId() > 0) { + GetDetailRes workspaceInf = qryWorkspaceInfo(req.getWorkspaceId()); + unifiedLogRecord.setWorkspaceName(null != workspaceInf ? workspaceInf.getName() : null); + } + if (unifiedLogRecord.getOuId() != null + && unifiedLogRecord.getOuId() > 0) { + OrganizationalUnitVO ouInf = qryOrgUnitInf(req.getOuId()); + unifiedLogRecord.setOuName(ouInf != null ? ouInf.getName() : null); + } return unifiedLogRecord; } @@ -361,12 +367,18 @@ public class OperateLogServiceImpl extends BaseEsService implements OperateLogSe } /** + * 通过 identityId & identityType 获取用户信息 + * * @param identityId * @param identityType * @return */ private IdentityProfileDto qryIdentityProfile(Long identityId, Integer identityType) { - //todo 需要根据类型判断用那个接口查询 + //todo 需要根据类型判断用那个接口查询,先写死 + if (identityType == 5) { + + } + List ids = new ArrayList<>(); ids.add(identityId); CommonResponse> response = profileServiceApi.getIdentitiesByIdSet(ids, identityType); @@ -374,8 +386,8 @@ public class OperateLogServiceImpl extends BaseEsService implements OperateLogSe throw new ServiceException(response.getMsg()); } List profileList = response.getData(); - if (profileList.size() != 1) { - return null; + if (profileList == null || profileList.isEmpty()) { + throw new ServiceException(String.format("can not get identity profile,identityId=%s,identityType=%s", identityId, identityType)); } return profileList.get(0); } diff --git a/axzo-log-server/src/test/java/cn/axzo/log/platform/server/api/LogPlatClientTest.java b/axzo-log-server/src/test/java/cn/axzo/log/platform/server/api/LogPlatClientTest.java index a0f59d5..0de4d6a 100644 --- a/axzo-log-server/src/test/java/cn/axzo/log/platform/server/api/LogPlatClientTest.java +++ b/axzo-log-server/src/test/java/cn/axzo/log/platform/server/api/LogPlatClientTest.java @@ -31,8 +31,8 @@ public class LogPlatClientTest extends LogPlatApplicationTestBase { req.setFeatureName("FeatureName"); req.setLogGrade(4); req.setOperateTime(new Date()); - req.setIdentityId(1L); - req.setIdentityType(1); + req.setIdentityId(81L); + req.setIdentityType(5); req.setWorkspaceId(1L); req.setOuId(1L); req.setTerminal("macos");