package com.aurora.service.impl; import com.aurora.model.dto.OperationLogDTO; import com.aurora.entity.OperationLog; import com.aurora.mapper.OperationLogMapper; import com.aurora.service.OperationLogService; import com.aurora.util.BeanCopyUtil; import com.aurora.util.PageUtil; import com.aurora.model.vo.ConditionVO; import com.aurora.model.dto.PageResultDTO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.List; @Service public class OperationLogServiceImpl extends ServiceImpl implements OperationLogService { @Override public PageResultDTO listOperationLogs(ConditionVO conditionVO) { Page page = new Page<>(PageUtil.getCurrent(), PageUtil.getSize()); Page operationLogPage = this.page(page, new LambdaQueryWrapper() .like(StringUtils.isNotBlank(conditionVO.getKeywords()), OperationLog::getOptModule, conditionVO.getKeywords()) .or() .like(StringUtils.isNotBlank(conditionVO.getKeywords()), OperationLog::getOptDesc, conditionVO.getKeywords()) .orderByDesc(OperationLog::getId)); List operationLogDTOs = BeanCopyUtil.copyList(operationLogPage.getRecords(), OperationLogDTO.class); return new PageResultDTO<>(operationLogDTOs, (int) operationLogPage.getTotal()); } }