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
65
66
67
68
69
70
package com.yiboshi.science.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yiboshi.science.base.BaseServiceImpl;
import com.yiboshi.science.base.Pagination;
import com.yiboshi.science.dao.LogsOperationDAO;
import com.yiboshi.science.entity.LogsOperation;
import com.yiboshi.science.enumeration.CommonEnum;
import com.yiboshi.science.param.dto.LogsOperationDTO;
import com.yiboshi.science.param.query.LogsOperationQueryVO;
import com.yiboshi.science.service.LogsOperationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* 操作日志表 Service 实现类
*
* @author lkl
* @version 2021-08-26
*/
@Service
public class LogsOperationServiceImpl extends BaseServiceImpl<LogsOperationDAO, LogsOperationQueryVO, LogsOperationDTO, LogsOperation> implements LogsOperationService {
@Autowired
private LogsOperationDAO logsOperationDAO;
@Override
protected void setCriteriaForQuery(LogsOperationQueryVO vo, QueryWrapper<LogsOperationQueryVO> criteria) {
if(Objects.nonNull(vo.getCustomerId())){
criteria.eq("customer_id", vo.getCustomerId());
}
if(Objects.nonNull(vo.getLogKey())){
criteria.eq("log_key", vo.getLogKey());
}
if(Objects.nonNull(vo.getLogParam())){
criteria.eq("log_param", vo.getLogParam());
}
if(Objects.nonNull(vo.getRequestUrl())){
criteria.eq("request_url", vo.getRequestUrl());
}
if(Objects.nonNull(vo.getBrowser())){
criteria.eq("browser", vo.getBrowser());
}
if(Objects.nonNull(vo.getIpAddress())){
criteria.eq("ip_address", vo.getIpAddress());
}
}
@Override
public Pagination<LogsOperationDTO> getListByPage(LogsOperationQueryVO vo) {
QueryWrapper criteria = new QueryWrapper();
setCriteriaForQuery(vo, criteria);
//long total = this.count(criteria);
Page<LogsOperationQueryVO> page = new Page<>(vo.getPageIndex(), vo.getPageSize());
List<LogsOperationDTO> dtoList = logsOperationDAO.getListByPage(page, criteria).getRecords();
for (LogsOperationDTO p : dtoList) {
for (CommonEnum.logType type : CommonEnum.logType.values()) {
if (type.getKey().equals(p.getLogKey())) {
p.setLogKeyName(type.getDescription());
break;
}
}
}
return new Pagination<>(dtoList, page.getTotal(), vo.getPageSize());
}
}