diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/UserAccessLogServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/UserAccessLogServiceImpl.java index afbb7e7..6f2381b 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/UserAccessLogServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/UserAccessLogServiceImpl.java @@ -27,10 +27,7 @@ import com.electromagnetic.industry.software.manage.service.UserAccessLogService import jakarta.annotation.Resource; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @Service @@ -75,14 +72,22 @@ public class UserAccessLogServiceImpl extends ServiceImpl operationObjSet = new HashSet<>(); + Set userIdSet = userMapper.selectList(Wrappers.lambdaQuery().select(User::getId).like(User::getUserName, pars.getKeyWord())).stream().map(User::getId).collect(Collectors.toSet()); + for (UserOperationModuleEnum e : UserOperationModuleEnum.values()) { + if (e.desc.contains(pars.getKeyWord())){ + operationObjSet.add(e.key); + } + } + queryWrapper.and(qr -> qr.like(UserAccessLog::getAction, pars.getKeyWord()) -// .or() -// .like(UserAccessLog::getRequestUrl, pars.getKeyWord()) + .or() + .in(CollUtil.isNotEmpty(operationObjSet), UserAccessLog::getOperationModule, operationObjSet) + .or() + .in(CollUtil.isNotEmpty(userIdSet), UserAccessLog::getUserId, userIdSet) .or() .like(UserAccessLog::getRequestIp, pars.getKeyWord()) .or() - .like(UserAccessLog::getRemoteAddr, pars.getKeyWord()) - .or() .like(UserAccessLog::getOperationMsg, pars.getKeyWord())); }