liding
3 天以前 7f9e375391e30fd3c367cb5a080a609a6e25e524
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package com.zbkj.service.service.impl;
 
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zbkj.common.model.log.SystemLog;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SystemLogRequest;
import com.zbkj.common.response.SystemLogResponse;
import com.zbkj.service.dao.SystemLogDao;
import com.zbkj.service.service.SystemLogService;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.List;
 
@Slf4j
@Service
public class SystemLogServiceImpl extends ServiceImpl<SystemLogDao, SystemLog> implements SystemLogService {
 
    /**
     * @Description:系统日志分页列表
     * @author:chenbing
     * @date 2025/7/4 10:35
     */
    @Override
    public PageInfo<SystemLogResponse> getList(SystemLogRequest request, PageParamRequest pageParamRequest) {
        final Page<SystemLogResponse> startPage = PageHelper.startPage(pageParamRequest.getPage(), pageParamRequest.getLimit());
        LambdaQueryWrapper<SystemLog> lqw = new LambdaQueryWrapper<>();
        if (ObjectUtil.isNotNull(request.getUsername())) {
            lqw.like(SystemLog::getUsername, request.getUsername());
        }
        if (ObjectUtil.isNotNull(request.getIp())) {
            lqw.like(SystemLog::getIp, request.getIp());
        }
        if (ObjectUtil.isNotNull(request.getOperationType())) {
            lqw.eq(SystemLog::getOperationType, request.getOperationType());
        }
        if (ObjectUtil.isNotNull(request.getOperationStartTime()) && ObjectUtil.isNotNull(request.getOperationEndTime())) {
            lqw.between(SystemLog::getOperationTime, request.getOperationStartTime() + " 00:00:00", request.getOperationEndTime() + " 23:59:59");
        }
        lqw.orderByDesc(SystemLog::getOperationTime);
        final List<SystemLog> systemLogs = baseMapper.selectList(lqw);
        if (ObjectUtil.isEmpty(systemLogs)) {
            return new PageInfo<>();
        }
        final List<SystemLogResponse> systemLogResponses = new ArrayList<>();
        systemLogs.forEach(systemLog -> {
            SystemLogResponse systemLogResponse = new SystemLogResponse();
            BeanUtils.copyProperties(systemLog, systemLogResponse);
            systemLogResponse.setOperationTime(DateUtil.format(systemLog.getOperationTime(), "yyyy-MM-dd HH:mm:ss"));
            systemLogResponses.add(systemLogResponse);
        });
        return CommonPage.copyPageInfo(startPage, systemLogResponses);
    }
}