OperLogServiceImpl.java 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package com.fdkankan.manage.service.impl;
  2. import cn.hutool.core.collection.CollUtil;
  3. import cn.hutool.core.util.StrUtil;
  4. import com.fdkankan.manage.entity.OperLog;
  5. import com.fdkankan.manage.service.OperLogService;
  6. import com.fdkankan.manage.vo.OperLogPageParamVO;
  7. import com.fdkankan.mongodb.base.MongoPageResult;
  8. import com.fdkankan.mongodb.service.impl.MongodbBaseServiceImpl;
  9. import java.util.ArrayList;
  10. import java.util.List;
  11. import java.util.Objects;
  12. import org.springframework.data.mongodb.core.query.Criteria;
  13. import org.springframework.data.mongodb.core.query.Query;
  14. import org.springframework.stereotype.Service;
  15. /**
  16. * <p>
  17. * TODO
  18. * </p>
  19. *
  20. * @author dengsixing
  21. * @since 2022/5/30
  22. **/
  23. @Service
  24. public class OperLogServiceImpl extends MongodbBaseServiceImpl<OperLog> implements OperLogService {
  25. @Override
  26. public MongoPageResult pageOperLog(OperLogPageParamVO param) {
  27. Query query = new Query();
  28. if(StrUtil.isNotEmpty(param.getNickName())){
  29. query.addCriteria(Criteria.where("nickName").regex(param.getNickName()));
  30. }
  31. if(StrUtil.isNotEmpty(param.getUserName())){
  32. query.addCriteria(Criteria.where("userName").regex(param.getUserName()));
  33. }
  34. if(Objects.nonNull(param.getStartTime()) || Objects.nonNull(param.getEndTime())){
  35. query.addCriteria ( Criteria.where("createTime").gte(param.getStartTime()+".000"));
  36. query.addCriteria ( Criteria.where("createTime").lte(param.getEndTime()+".999"));
  37. }
  38. //默认按操作时间降序排序
  39. param.setOrderBy("createTime");
  40. MongoPageResult<OperLog> operLogMongoPageResult = this.pageQuery(param, query);
  41. return operLogMongoPageResult;
  42. }
  43. }