diff --git a/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/member/service/impl/PgMemberLogServiceImpl.java b/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/member/service/impl/PgMemberLogServiceImpl.java index baa2dcf..3c8b06c 100644 --- a/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/member/service/impl/PgMemberLogServiceImpl.java +++ b/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/member/service/impl/PgMemberLogServiceImpl.java @@ -26,20 +26,29 @@ public class PgMemberLogServiceImpl implements IPgMemberLogService { private final PgMemberLogMapper memberLogMapper; @Override - @Async public void log(Long memberId, String operType, String operTitle, String operDesc) { + // 在当前线程(HTTP请求线程)中获取IP,然后异步写入日志 String operIp = null; try { operIp = ServletUtils.getClientIP(); } catch (Exception e) { // 获取IP失败时忽略 } - log(memberId, operType, operTitle, operDesc, operIp); + // 调用异步方法写入日志 + asyncLog(memberId, operType, operTitle, operDesc, operIp); } @Override - @Async public void log(Long memberId, String operType, String operTitle, String operDesc, String operIp) { + // 调用异步方法写入日志 + asyncLog(memberId, operType, operTitle, operDesc, operIp); + } + + /** + * 异步写入日志 + */ + @Async + public void asyncLog(Long memberId, String operType, String operTitle, String operDesc, String operIp) { try { PgMemberLog logEntity = new PgMemberLog(); logEntity.setMemberId(memberId); diff --git a/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/school/service/impl/PgSchoolServiceImpl.java b/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/school/service/impl/PgSchoolServiceImpl.java index 1715bb4..c5b13ec 100644 --- a/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/school/service/impl/PgSchoolServiceImpl.java +++ b/backend/pangu-modules/pangu-business/src/main/java/org/dromara/pangu/school/service/impl/PgSchoolServiceImpl.java @@ -51,7 +51,8 @@ public class PgSchoolServiceImpl implements IPgSchoolService { @Override public TableDataInfo selectPageList(PgSchool school, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(school); - Page page = baseMapper.selectPage(pageQuery.build(), lqw); + // 使用带数据权限的查询方法 + Page page = baseMapper.selectPageSchoolList(pageQuery.build(), lqw); // 填充区域名称 fillRegionName(page.getRecords()); return TableDataInfo.build(page); @@ -59,7 +60,8 @@ public class PgSchoolServiceImpl implements IPgSchoolService { @Override public List selectList(PgSchool school) { - List list = baseMapper.selectList(buildQueryWrapper(school)); + // 使用带数据权限的查询方法 + List list = baseMapper.selectSchoolList(buildQueryWrapper(school)); fillRegionName(list); return list; } @@ -300,8 +302,8 @@ public class PgSchoolServiceImpl implements IPgSchoolService { @Override public List selectSchoolTree(PgSchool school) { - // 查询学校列表 - List schools = baseMapper.selectList(buildQueryWrapper(school)); + // 查询学校列表(使用带数据权限的查询方法) + List schools = baseMapper.selectSchoolList(buildQueryWrapper(school)); fillRegionName(schools); if (schools.isEmpty()) {