You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dsl3/service/impl/OperationLogServiceImpl.java

35 lines
1.6 KiB

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<OperationLogMapper, OperationLog> implements OperationLogService {
@Override
public PageResultDTO<OperationLogDTO> listOperationLogs(ConditionVO conditionVO) {
Page<OperationLog> page = new Page<>(PageUtil.getCurrent(), PageUtil.getSize());
Page<OperationLog> operationLogPage = this.page(page, new LambdaQueryWrapper<OperationLog>()
.like(StringUtils.isNotBlank(conditionVO.getKeywords()), OperationLog::getOptModule, conditionVO.getKeywords())
.or()
.like(StringUtils.isNotBlank(conditionVO.getKeywords()), OperationLog::getOptDesc, conditionVO.getKeywords())
.orderByDesc(OperationLog::getId));
List<OperationLogDTO> operationLogDTOs = BeanCopyUtil.copyList(operationLogPage.getRecords(), OperationLogDTO.class);
return new PageResultDTO<>(operationLogDTOs, (int) operationLogPage.getTotal());
}
}