Browse Source

日志查询接口

chengyao 3 years ago
parent
commit
accf7dceec
21 changed files with 411 additions and 135 deletions
  1. 2 27
      common/src/main/java/com/lantone/common/dto/AbnormalLogDTO.java
  2. 4 49
      common/src/main/java/com/lantone/common/dto/LoginLogDTO.java
  3. 2 30
      common/src/main/java/com/lantone/common/dto/OperationLogDTO.java
  4. 27 0
      common/src/main/java/com/lantone/common/vo/GetAbnormalLogVO.java
  5. 28 0
      common/src/main/java/com/lantone/common/vo/GetLoginLogVO.java
  6. 24 0
      common/src/main/java/com/lantone/common/vo/GetOperationLogVO.java
  7. 9 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/AbnormalLogMapper.java
  8. 9 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/LoginLogMapper.java
  9. 4 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/OperationLogMapper.java
  10. 7 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/AbnormalLogService.java
  11. 9 1
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/LoginLogService.java
  12. 6 1
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/OperationLogService.java
  13. 22 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/AbnormalLogServiceImpl.java
  14. 23 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/LoginLogServiceImpl.java
  15. 25 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/OperationLogServiceImpl.java
  16. 44 0
      dblayer-mbg/src/main/resources/mapper/AbnormalLogMapper.xml
  17. 37 0
      dblayer-mbg/src/main/resources/mapper/LoginLogMapper.xml
  18. 25 0
      dblayer-mbg/src/main/resources/mapper/OperationLogMapper.xml
  19. 9 9
      security-center/src/main/java/com/lantone/security/component/MessageReceiver.java
  20. 18 18
      security-center/src/main/java/com/lantone/security/facade/UserManagementFacade.java
  21. 77 0
      security-center/src/main/java/com/lantone/security/web/LogManagementController.java

+ 2 - 27
common/src/main/java/com/lantone/common/dto/AbnormalLogDTO.java

@@ -1,5 +1,6 @@
 
 
 package com.lantone.common.dto;
 package com.lantone.common.dto;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;
 import lombok.Data;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
@@ -14,10 +15,6 @@ public class AbnormalLogDTO implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 
 
-    /**
-     * 主键
-     */
-    private Long id;
 
 
     /**
     /**
      * 操作人用户ID
      * 操作人用户ID
@@ -64,34 +61,12 @@ public class AbnormalLogDTO implements Serializable {
      */
      */
     private String operationErrorInfo;
     private String operationErrorInfo;
 
 
-    /**
-     * 是否删除,N:未删除,Y:删除
-     */
-    private String isDeleted;
-
     /**
     /**
      * 记录创建时间
      * 记录创建时间
      */
      */
+    @JsonIgnore
     private Date gmtCreate;
     private Date gmtCreate;
 
 
-    /**
-     * 记录修改时间,如果时间是1970年则表示纪录未修改
-     */
-    private Date gmtModified;
 
 
-    /**
-     * 创建人,0表示无创建人值
-     */
-    private String creator;
-
-    /**
-     * 修改人,如果为0则表示纪录未修改
-     */
-    private String modifier;
-
-    /**
-     * 备注
-     */
-    private String remark;
 
 
 }
 }

+ 4 - 49
common/src/main/java/com/lantone/common/dto/LoginLogDTO.java

@@ -1,10 +1,7 @@
 
 
 
 
 package com.lantone.common.dto;
 package com.lantone.common.dto;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;
 import lombok.Data;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
@@ -19,82 +16,40 @@ public class LoginLogDTO implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 
 
-    /**
-     * 主键
-     */
-    @TableId(value = "id", type = IdType.AUTO)
-    private Long id;
-
     /**
     /**
      * 登录用户ID
      * 登录用户ID
      */
      */
-    @TableField("login_id")
     private Long loginId;
     private Long loginId;
 
 
     /**
     /**
      * 登录用户名
      * 登录用户名
      */
      */
-    @TableField("login_name")
     private String loginName;
     private String loginName;
 
 
     /**
     /**
      * 登录日期
      * 登录日期
      */
      */
-    @TableField("login_date")
     private Date loginDate;
     private Date loginDate;
 
 
     /**
     /**
      * 登录ip
      * 登录ip
      */
      */
-    @TableField("login_ip")
     private String loginIp;
     private String loginIp;
 
 
     /**
     /**
      * 登录ip地址
      * 登录ip地址
      */
      */
-    @TableField("login_address")
     private String loginAddress;
     private String loginAddress;
 
 
     /**
     /**
      * 浏览器
      * 浏览器
      */
      */
-    @TableField("login_browser")
     private String loginBrowser;
     private String loginBrowser;
 
 
     /**
     /**
-     * 是否删除,N:未删除,Y:删除
-     */
-    @TableField("is_deleted")
-    private String isDeleted;
-
-    /**
-     * 记录创建时间
-     */
-    @TableField("gmt_create")
-    private Date gmtCreate;
-
-    /**
-     * 记录修改时间,如果时间是1970年则表示纪录未修改
-     */
-    @TableField("gmt_modified")
-    private Date gmtModified;
-
-    /**
-     * 创建人,0表示无创建人值
-     */
-    @TableField("creator")
-    private String creator;
-
-    /**
-     * 修改人,如果为0则表示纪录未修改
-     */
-    @TableField("modifier")
-    private String modifier;
-
-    /**
-     * 备注
+     * 创建日期
      */
      */
-    @TableField("remark")
-    private String remark;
+    @JsonIgnore
+    private Date GmtCreate;
 
 
 }
 }

+ 2 - 30
common/src/main/java/com/lantone/common/dto/OperationLogDTO.java

@@ -1,4 +1,5 @@
 package com.lantone.common.dto;
 package com.lantone.common.dto;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;
 import lombok.Data;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
@@ -14,11 +15,6 @@ public class OperationLogDTO implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
 
 
-    /**
-     * 主键
-     */
-    private Long id;
-
     /**
     /**
      * 操作人用户ID
      * 操作人用户ID
      */
      */
@@ -74,34 +70,10 @@ public class OperationLogDTO implements Serializable {
      */
      */
     private String jsonResult;
     private String jsonResult;
 
 
-    /**
-     * 是否删除,N:未删除,Y:删除
-     */
-    private String isDeleted;
-
     /**
     /**
      * 记录创建时间
      * 记录创建时间
      */
      */
+    @JsonIgnore
     private Date gmtCreate;
     private Date gmtCreate;
 
 
-    /**
-     * 记录修改时间,如果时间是1970年则表示纪录未修改
-     */
-    private Date gmtModified;
-
-    /**
-     * 创建人,0表示无创建人值
-     */
-    private String creator;
-
-    /**
-     * 修改人,如果为0则表示纪录未修改
-     */
-    private String modifier;
-
-    /**
-     * 备注
-     */
-    private String remark;
-
 }
 }

+ 27 - 0
common/src/main/java/com/lantone/common/vo/GetAbnormalLogVO.java

@@ -0,0 +1,27 @@
+package com.lantone.common.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Data;
+
+
+/**
+ * @Description:
+ * @Author: cy
+ * @time: 2021/9/6 15:24
+ */
+@Data
+public class GetAbnormalLogVO extends Page {
+    /**
+     * 操作方式
+     */
+    String operationWay;
+    /**
+     * 操作ip
+     */
+    String operationIp;
+
+    /**
+     * 标记(0-操作方式 1-操作ip)
+     */
+    Integer mark;
+}

+ 28 - 0
common/src/main/java/com/lantone/common/vo/GetLoginLogVO.java

@@ -0,0 +1,28 @@
+package com.lantone.common.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Data;
+
+
+
+/**
+ * @Description:
+ * @Author: cy
+ * @time: 2021/9/6 15:24
+ */
+@Data
+public class GetLoginLogVO extends Page {
+    /**
+     * 登录用户
+     */
+    String loginName;
+    /**
+     * 登录ip
+     */
+    String loginIp;
+
+    /**
+     * 标记(0-登录用户 1-登录ip)
+     */
+    Integer mark;
+}

+ 24 - 0
common/src/main/java/com/lantone/common/vo/GetOperationLogVO.java

@@ -0,0 +1,24 @@
+package com.lantone.common.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+
+/**
+ * @Description:
+ * @Author: cy
+ * @time: 2021/9/6 15:24
+ */
+@Data
+public class GetOperationLogVO extends Page {
+    /**
+     * 操作用户
+     */
+    String operationName;
+    /**
+     * 操作日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    String operationDate;
+}

+ 9 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/AbnormalLogMapper.java

@@ -1,10 +1,15 @@
 package com.lantone.dblayermbg.mapper;
 package com.lantone.dblayermbg.mapper;
 
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.lantone.common.dto.AbnormalLogDTO;
 import com.lantone.common.dto.AbnormalLogDTO;
+import com.lantone.common.vo.GetAbnormalLogVO;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
+import java.util.List;
+
+
 /**
 /**
  * <p>
  * <p>
  * 表名:sys_abnormal_log Mapper接口
  * 表名:sys_abnormal_log Mapper接口
@@ -13,4 +18,8 @@ import org.springframework.stereotype.Repository;
 @Repository
 @Repository
 public interface AbnormalLogMapper extends BaseMapper<AbnormalLog> {
 public interface AbnormalLogMapper extends BaseMapper<AbnormalLog> {
     void addOperErrorLog(AbnormalLogDTO abnormalLogDTO);
     void addOperErrorLog(AbnormalLogDTO abnormalLogDTO);
+
+    IPage<AbnormalLogDTO> getAbnormalLog(GetAbnormalLogVO getAbnormalLogVO);
+
+    List<String> getAbnormalLogWayAndIp(GetAbnormalLogVO getAbnormalLogVO);
 }
 }

+ 9 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/LoginLogMapper.java

@@ -1,10 +1,15 @@
 package com.lantone.dblayermbg.mapper;
 package com.lantone.dblayermbg.mapper;
 
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.lantone.common.dto.LoginLogDTO;
 import com.lantone.common.dto.LoginLogDTO;
+import com.lantone.common.vo.GetLoginLogVO;
 import com.lantone.dblayermbg.entity.LoginLog;
 import com.lantone.dblayermbg.entity.LoginLog;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
+import java.util.List;
+
+
 /**
 /**
  * <p>
  * <p>
  * 表名:sys_login_log Mapper接口
  * 表名:sys_login_log Mapper接口
@@ -13,4 +18,8 @@ import org.springframework.stereotype.Repository;
 @Repository
 @Repository
 public interface LoginLogMapper extends BaseMapper<LoginLog> {
 public interface LoginLogMapper extends BaseMapper<LoginLog> {
     void addLoginLog(LoginLogDTO loginLogDTO);
     void addLoginLog(LoginLogDTO loginLogDTO);
+
+    IPage<LoginLogDTO> getLoginLog(GetLoginLogVO getLoginLogVO);
+
+    List<String> getLoginLogNameAndIp(GetLoginLogVO getLoginLogVO);
 }
 }

+ 4 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/OperationLogMapper.java

@@ -1,7 +1,9 @@
 package com.lantone.dblayermbg.mapper;
 package com.lantone.dblayermbg.mapper;
 
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.lantone.common.dto.OperationLogDTO;
 import com.lantone.common.dto.OperationLogDTO;
+import com.lantone.common.vo.GetOperationLogVO;
 import com.lantone.dblayermbg.entity.OperationLog;
 import com.lantone.dblayermbg.entity.OperationLog;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
@@ -13,4 +15,6 @@ import org.springframework.stereotype.Repository;
 @Repository
 @Repository
 public interface OperationLogMapper extends BaseMapper<OperationLog> {
 public interface OperationLogMapper extends BaseMapper<OperationLog> {
     void addOperLog(OperationLogDTO operationLog);
     void addOperLog(OperationLogDTO operationLog);
+
+    IPage<OperationLogDTO> getOperationLog(GetOperationLogVO getOperationLogVO);
 }
 }

+ 7 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/AbnormalLogService.java

@@ -1,13 +1,20 @@
 package com.lantone.dblayermbg.service;
 package com.lantone.dblayermbg.service;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.common.dto.AbnormalLogDTO;
+import com.lantone.common.vo.GetAbnormalLogVO;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 
 
+
 /**
 /**
  * <p>
  * <p>
  * 系统异常日志表 Service类
  * 系统异常日志表 Service类
  * </p>
  * </p>
  */
  */
 public interface AbnormalLogService extends IService<AbnormalLog> {
 public interface AbnormalLogService extends IService<AbnormalLog> {
+    void addOperErrorLog(AbnormalLogDTO abnormalLogDTO);
+
+    IPage<AbnormalLogDTO> getAbnormalLog(GetAbnormalLogVO getAbnormalLogVO);
 
 
 }
 }

+ 9 - 1
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/LoginLogService.java

@@ -1,13 +1,21 @@
 package com.lantone.dblayermbg.service;
 package com.lantone.dblayermbg.service;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.common.dto.LoginLogDTO;
+import com.lantone.common.vo.GetLoginLogVO;
 import com.lantone.dblayermbg.entity.LoginLog;
 import com.lantone.dblayermbg.entity.LoginLog;
 
 
+import java.util.List;
+
+
 /**
 /**
  * <p>
  * <p>
  * 系统登录日志表 Service类
  * 系统登录日志表 Service类
  * </p>
  * </p>
  */
  */
 public interface LoginLogService extends IService<LoginLog> {
 public interface LoginLogService extends IService<LoginLog> {
-
+    void addLoginLog(LoginLogDTO loginLogDTO);
+    IPage<LoginLogDTO> getLoginLog(GetLoginLogVO getLoginLogVO);
+    List<String> getLoginLogNameAndIp(GetLoginLogVO getLoginLogVO);
 }
 }

+ 6 - 1
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/OperationLogService.java

@@ -1,13 +1,18 @@
 package com.lantone.dblayermbg.service;
 package com.lantone.dblayermbg.service;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.common.dto.OperationLogDTO;
+import com.lantone.common.vo.GetOperationLogVO;
 import com.lantone.dblayermbg.entity.OperationLog;
 import com.lantone.dblayermbg.entity.OperationLog;
 
 
+
 /**
 /**
  * <p>
  * <p>
  * 系统操作日志表 Service类
  * 系统操作日志表 Service类
  * </p>
  * </p>
  */
  */
 public interface OperationLogService extends IService<OperationLog> {
 public interface OperationLogService extends IService<OperationLog> {
-
+    void addOperLog(OperationLogDTO operationLog);
+    IPage<OperationLogDTO> getOperationLog(GetOperationLogVO getOperationLogVO);
 }
 }

+ 22 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/AbnormalLogServiceImpl.java

@@ -1,11 +1,18 @@
 package com.lantone.dblayermbg.service.impl;
 package com.lantone.dblayermbg.service.impl;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.common.dto.AbnormalLogDTO;
+import com.lantone.common.vo.GetAbnormalLogVO;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 import com.lantone.dblayermbg.entity.AbnormalLog;
 import com.lantone.dblayermbg.mapper.AbnormalLogMapper;
 import com.lantone.dblayermbg.mapper.AbnormalLogMapper;
 import com.lantone.dblayermbg.service.AbnormalLogService;
 import com.lantone.dblayermbg.service.AbnormalLogService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.List;
+
+
 /**
 /**
  * <p>
  * <p>
  * 系统异常日志表 Service实现类
  * 系统异常日志表 Service实现类
@@ -13,5 +20,20 @@ import org.springframework.stereotype.Service;
  */
  */
 @Service
 @Service
 public class AbnormalLogServiceImpl extends ServiceImpl<AbnormalLogMapper, AbnormalLog> implements AbnormalLogService {
 public class AbnormalLogServiceImpl extends ServiceImpl<AbnormalLogMapper, AbnormalLog> implements AbnormalLogService {
+    @Autowired
+    private AbnormalLogMapper abnormalLogMapper;
+
+    @Override
+    public void addOperErrorLog(AbnormalLogDTO abnormalLogDTO) {
+        abnormalLogMapper.addOperErrorLog(abnormalLogDTO);
+    }
+
+    @Override
+    public IPage<AbnormalLogDTO> getAbnormalLog(GetAbnormalLogVO getAbnormalLogVO) {
+        return  abnormalLogMapper.getAbnormalLog(getAbnormalLogVO);
+    }
 
 
+    public List<String> getAbnormalLogWayAndIp(GetAbnormalLogVO getAbnormalLogVO) {
+        return  abnormalLogMapper.getAbnormalLogWayAndIp(getAbnormalLogVO);
+    }
 }
 }

+ 23 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/LoginLogServiceImpl.java

@@ -1,11 +1,18 @@
 package com.lantone.dblayermbg.service.impl;
 package com.lantone.dblayermbg.service.impl;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.common.dto.LoginLogDTO;
+import com.lantone.common.vo.GetLoginLogVO;
 import com.lantone.dblayermbg.entity.LoginLog;
 import com.lantone.dblayermbg.entity.LoginLog;
 import com.lantone.dblayermbg.mapper.LoginLogMapper;
 import com.lantone.dblayermbg.mapper.LoginLogMapper;
 import com.lantone.dblayermbg.service.LoginLogService;
 import com.lantone.dblayermbg.service.LoginLogService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.List;
+
+
 /**
 /**
  * <p>
  * <p>
  * 系统登录日志表 Service实现类
  * 系统登录日志表 Service实现类
@@ -13,5 +20,21 @@ import org.springframework.stereotype.Service;
  */
  */
 @Service
 @Service
 public class LoginLogServiceImpl extends ServiceImpl<LoginLogMapper, LoginLog> implements LoginLogService {
 public class LoginLogServiceImpl extends ServiceImpl<LoginLogMapper, LoginLog> implements LoginLogService {
+    @Autowired
+    private LoginLogMapper loginLogMapper;
+
+    @Override
+    public void addLoginLog(LoginLogDTO loginLogDTO) {
+        loginLogMapper.addLoginLog(loginLogDTO);
+    }
+
+    @Override
+    public IPage<LoginLogDTO> getLoginLog(GetLoginLogVO getLoginLogVO) {
+        return loginLogMapper.getLoginLog(getLoginLogVO);
+    }
 
 
+    @Override
+    public List<String> getLoginLogNameAndIp(GetLoginLogVO getLoginLogVO) {
+        return loginLogMapper.getLoginLogNameAndIp(getLoginLogVO);
+    }
 }
 }

+ 25 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/OperationLogServiceImpl.java

@@ -1,10 +1,17 @@
 package com.lantone.dblayermbg.service.impl;
 package com.lantone.dblayermbg.service.impl;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.common.dto.OperationLogDTO;
+import com.lantone.common.vo.GetOperationLogVO;
 import com.lantone.dblayermbg.entity.OperationLog;
 import com.lantone.dblayermbg.entity.OperationLog;
 import com.lantone.dblayermbg.mapper.OperationLogMapper;
 import com.lantone.dblayermbg.mapper.OperationLogMapper;
 import com.lantone.dblayermbg.service.OperationLogService;
 import com.lantone.dblayermbg.service.OperationLogService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import java.util.List;
+import java.util.stream.Collectors;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -13,5 +20,23 @@ import org.springframework.stereotype.Service;
  */
  */
 @Service
 @Service
 public class OperationLogServiceImpl extends ServiceImpl<OperationLogMapper, OperationLog> implements OperationLogService {
 public class OperationLogServiceImpl extends ServiceImpl<OperationLogMapper, OperationLog> implements OperationLogService {
+    @Autowired
+    private OperationLogMapper operationLogMapper;
 
 
+    @Override
+    public void addOperLog(OperationLogDTO operationLog) {
+        operationLogMapper.addOperLog(operationLog);
+    }
+
+    @Override
+    public IPage<OperationLogDTO> getOperationLog(GetOperationLogVO getOperationLogVO) {
+        return operationLogMapper.getOperationLog(getOperationLogVO);
+    }
+
+    public List<String> getOperationLogName(String operationName) {
+        return this.lambdaQuery()
+                .like(StringUtils.isNotBlank(operationName), OperationLog::getOperationName, operationName)
+                .select(OperationLog::getOperationName)
+                .list().stream().map(OperationLog::getOperationName).collect(Collectors.toList());
+    }
 }
 }

+ 44 - 0
dblayer-mbg/src/main/resources/mapper/AbnormalLogMapper.xml

@@ -5,4 +5,48 @@
     insert into sys_abnormal_log(operation_id,operation_name,operation_ip,operation_agent,operation_error_info,operation_method,operation_way,operation_url,operation_param,gmt_create)
     insert into sys_abnormal_log(operation_id,operation_name,operation_ip,operation_agent,operation_error_info,operation_method,operation_way,operation_url,operation_param,gmt_create)
     values (#{operationId},#{operationName},INET_ATON(#{operationIp}),#{operationAgent},#{operationErrorInfo},#{operationMethod},#{operationWay},#{operationUrl},#{operationParam},#{gmtCreate})
     values (#{operationId},#{operationName},INET_ATON(#{operationIp}),#{operationAgent},#{operationErrorInfo},#{operationMethod},#{operationWay},#{operationUrl},#{operationParam},#{gmtCreate})
     </insert>
     </insert>
+
+    <select id="getAbnormalLog" resultType="com.lantone.common.dto.AbnormalLogDTO">
+        SELECT
+        a.operation_id AS operationId,
+        a.operation_name AS operationName,
+        a.gmt_create AS gmtCreate,
+        a.operation_method AS operationMethod,
+        a.operation_way AS operationWay,
+        a.operation_url AS operationUrl,
+        a.operation_param AS operationParam,
+        a.operation_agent AS operationAgent,
+        a.operation_error_info AS operationErrorInfo,
+        INET_NTOA(a.operation_ip) AS operationIp
+        FROM
+        sys_abnormal_log a
+        where
+        1 = 1
+        <if test="operationWay != null and operationWay != ''">
+            AND a.operation_way like CONCAT('%',#{operationWay},'%')
+        </if>
+        <if test="operationIp != null and operationIp != ''">
+            AND INET_NTOA(a.operation_ip) like CONCAT('%',#{operationIp},'%')
+        </if>
+    </select>
+
+    <select id="getAbnormalLogWayAndIp" resultType="java.lang.String">
+        SELECT
+        <if test="mark == 0">
+            a.operation_way AS operationWay
+        </if>
+        <if test="mark == 1">
+            INET_NTOA(a.operation_ip) AS operationIp
+        </if>
+        FROM
+        sys_abnormal_log a
+        where
+        1 = 1
+        <if test="operationWay != null and operationWay != ''">
+            AND a.operation_way like CONCAT('%',#{operationWay},'%')
+        </if>
+        <if test="operationIp != null and operationIp != ''">
+            AND INET_NTOA(a.operation_ip) like CONCAT('%',#{operationIp},'%')
+        </if>
+    </select>
 </mapper>
 </mapper>

+ 37 - 0
dblayer-mbg/src/main/resources/mapper/LoginLogMapper.xml

@@ -5,4 +5,41 @@
     insert into sys_login_log(login_id,login_name,login_date,login_ip,login_address,login_browser,gmt_create)
     insert into sys_login_log(login_id,login_name,login_date,login_ip,login_address,login_browser,gmt_create)
     values (#{loginId},#{loginName},#{loginDate},INET_ATON(#{loginIp}),#{loginAddress},#{loginBrowser},#{gmtCreate})
     values (#{loginId},#{loginName},#{loginDate},INET_ATON(#{loginIp}),#{loginAddress},#{loginBrowser},#{gmtCreate})
     </insert>
     </insert>
+
+    <select id="getLoginLog" resultType="com.lantone.common.dto.LoginLogDTO">
+        select a.login_id as loginId,
+        a.login_name as loginName,
+        a.login_date as loginDate,
+        INET_NTOA(a.login_ip) as loginIp,
+        a.login_address as loginAddress,
+        a.login_browser as loginBrowser
+        from sys_login_log a
+        where
+        1 = 1
+        <if test="loginName != null and loginName != ''">
+            AND a.login_name like CONCAT('%',#{loginName},'%')
+        </if>
+        <if test="loginIp != null and loginIp != ''">
+            AND INET_NTOA(a.login_ip) like CONCAT('%',#{loginIp},'%')
+        </if>
+    </select>
+
+    <select id="getLoginLogNameAndIp" resultType="java.lang.String">
+        select
+        <if test="mark == 0">
+            a.login_name as loginName
+        </if>
+        <if test="mark == 1">
+            INET_NTOA(a.login_ip) as loginIp
+        </if>
+        from sys_login_log a
+        where
+        1 = 1
+        <if test="loginName != null and loginName != ''">
+            AND a.login_name like CONCAT('%',#{loginName},'%')
+        </if>
+        <if test="loginIp != null and loginIp != ''">
+            AND INET_NTOA(a.login_ip) like CONCAT('%',#{loginIp},'%')
+        </if>
+    </select>
 </mapper>
 </mapper>

+ 25 - 0
dblayer-mbg/src/main/resources/mapper/OperationLogMapper.xml

@@ -5,4 +5,29 @@
     insert into sys_operation_log(operation_id,operation_name,operation_date,operation_ip,operation_address,operation_method,operation_way,operation_url,operation_param,json_result,gmt_create)
     insert into sys_operation_log(operation_id,operation_name,operation_date,operation_ip,operation_address,operation_method,operation_way,operation_url,operation_param,json_result,gmt_create)
     values (#{operationId},#{operationName},#{operationDate},INET_ATON(#{operationIp}),#{operationAddress},#{operationMethod},#{operationWay},#{operationUrl},#{operationParam},#{jsonResult},#{gmtCreate})
     values (#{operationId},#{operationName},#{operationDate},INET_ATON(#{operationIp}),#{operationAddress},#{operationMethod},#{operationWay},#{operationUrl},#{operationParam},#{jsonResult},#{gmtCreate})
     </insert>
     </insert>
+
+    <select id="getOperationLog" resultType="com.lantone.common.dto.OperationLogDTO">
+
+        SELECT
+        a.operation_id AS operationId,
+        a.operation_name AS operationName,
+        a.operation_date AS operationDate,
+        a.operation_method AS operationMethod,
+        a.operation_way AS operationWay,
+        a.operation_url AS operationUrl,
+        a.operation_param AS operationParam,
+        INET_NTOA(a.operation_ip) AS operationIp,
+        a.operation_address AS operationAddress,
+        a.json_result AS jsonResult
+        FROM
+        sys_operation_log a
+        where
+        1 = 1
+        <if test="operationName != null and operationName != ''">
+            AND a.operation_name like CONCAT('%',#{operationName},'%')
+        </if>
+        <if test="operationDate != null and operationDate != '' ">
+            <![CDATA[ and DATE_FORMAT(a.operation_date,'%Y-%m-%d') = #{operationDate}]]>
+        </if>
+    </select>
 </mapper>
 </mapper>

+ 9 - 9
security-center/src/main/java/com/lantone/security/component/MessageReceiver.java

@@ -3,9 +3,9 @@ package com.lantone.security.component;
 import com.lantone.common.dto.AbnormalLogDTO;
 import com.lantone.common.dto.AbnormalLogDTO;
 import com.lantone.common.dto.OperationLogDTO;
 import com.lantone.common.dto.OperationLogDTO;
 import com.lantone.dblayermbg.facade.DataAuthFacade;
 import com.lantone.dblayermbg.facade.DataAuthFacade;
-import com.lantone.dblayermbg.mapper.AbnormalLogMapper;
-import com.lantone.dblayermbg.mapper.LoginLogMapper;
-import com.lantone.dblayermbg.mapper.OperationLogMapper;
+import com.lantone.dblayermbg.facade.AbnormalLogFacade;
+import com.lantone.dblayermbg.facade.LoginLogFacade;
+import com.lantone.dblayermbg.facade.OperationLogFacade;
 import com.lantone.common.dto.LoginLogDTO;
 import com.lantone.common.dto.LoginLogDTO;
 import com.lantone.common.util.AddressUtils;
 import com.lantone.common.util.AddressUtils;
 import com.lantone.dblayermbg.facade.DictionaryInfoFacade;
 import com.lantone.dblayermbg.facade.DictionaryInfoFacade;
@@ -38,11 +38,11 @@ public class MessageReceiver {
     @Autowired
     @Autowired
     private ResourceFacade resourceFacade;
     private ResourceFacade resourceFacade;
     @Autowired
     @Autowired
-    private LoginLogMapper loginLogMapper;
+    private LoginLogFacade loginLogFacade;
     @Autowired
     @Autowired
-    private OperationLogMapper operationLogMapper;
+    private OperationLogFacade operationLogFacade;
     @Autowired
     @Autowired
-    private AbnormalLogMapper abnormalLogMapper;
+    private AbnormalLogFacade abnormalLogFacade;
     @Autowired
     @Autowired
     private DataAuthFacade dataAuthFacade;
     private DataAuthFacade dataAuthFacade;
 
 
@@ -64,7 +64,7 @@ public class MessageReceiver {
     @RabbitListener(queues = "emrais.login.success.record.queue", ackMode = "MANUAL")
     @RabbitListener(queues = "emrais.login.success.record.queue", ackMode = "MANUAL")
     public void sendLogSuccessMessageHandle(LoginLogDTO loginLog, Message message, Channel channel) throws Exception {
     public void sendLogSuccessMessageHandle(LoginLogDTO loginLog, Message message, Channel channel) throws Exception {
         loginLog.setLoginAddress(AddressUtils.getRealAddressByIP(loginLog.getLoginIp()));
         loginLog.setLoginAddress(AddressUtils.getRealAddressByIP(loginLog.getLoginIp()));
-        loginLogMapper.addLoginLog(loginLog);
+        loginLogFacade.addLoginLog(loginLog);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
     }
     }
 
 
@@ -72,13 +72,13 @@ public class MessageReceiver {
     @RabbitListener(queues = "emrais.oper.log.record.queue", ackMode = "MANUAL")
     @RabbitListener(queues = "emrais.oper.log.record.queue", ackMode = "MANUAL")
     public void sendOperLogRecordMessage(OperationLogDTO operationLog, Message message, Channel channel) throws Exception {
     public void sendOperLogRecordMessage(OperationLogDTO operationLog, Message message, Channel channel) throws Exception {
         operationLog.setOperationAddress(AddressUtils.getRealAddressByIP(operationLog.getOperationIp()));
         operationLog.setOperationAddress(AddressUtils.getRealAddressByIP(operationLog.getOperationIp()));
-        operationLogMapper.addOperLog(operationLog);
+        operationLogFacade.addOperLog(operationLog);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
     }
     }
 
 
     @RabbitListener(queues = "emrais.oper.error.record.queue", ackMode = "MANUAL")
     @RabbitListener(queues = "emrais.oper.error.record.queue", ackMode = "MANUAL")
     public void sendOperErrorRecordMessage(AbnormalLogDTO abnormalLogDTO, Message message, Channel channel) throws Exception {
     public void sendOperErrorRecordMessage(AbnormalLogDTO abnormalLogDTO, Message message, Channel channel) throws Exception {
-        abnormalLogMapper.addOperErrorLog(abnormalLogDTO);
+        abnormalLogFacade.addOperErrorLog(abnormalLogDTO);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
     }
     }
 
 

+ 18 - 18
security-center/src/main/java/com/lantone/security/facade/UserManagementFacade.java

@@ -792,24 +792,24 @@ public class UserManagementFacade {
      */
      */
     public void sendLogRecordMessage(CommonResult commonResult) {
     public void sendLogRecordMessage(CommonResult commonResult) {
         Object data = commonResult.getData();
         Object data = commonResult.getData();
-        Map<String, Object> map = JSONObject.parseObject(JSON.toJSONString(data));
-        if (map.containsKey("token") && null != map.get("token")) {
-            LoginLogDTO loginLog = new LoginLogDTO();
-            Date date = new Date();
-            loginLog.setLoginDate(date);
-            loginLog.setGmtCreate(date);
-            String token = map.get("token").toString();
-            UserDto userByToken = SysUserUtils.getUserByToken(token);
-            loginLog.setLoginId(userByToken.getId());
-            loginLog.setLoginName(userByToken.getUserName());
-            loginLog.setLoginIp(HttpUtils.getIpAddress());
-            UserAgent userAgent = UserAgent.parseUserAgentString(HttpUtils.getHttpServletRequest().getHeader("User-Agent"));
-            // 获取客户端浏览器
-            String browser = userAgent.getBrowser().getName();
-            loginLog.setLoginBrowser(browser);
-            messageSender.sendLogSuccessRecordMessage(loginLog);
+        if(null != data){
+            Map<String, Object> map = JSONObject.parseObject(JSON.toJSONString(data));
+            if (map.containsKey("token") && null != map.get("token")) {
+                LoginLogDTO loginLog = new LoginLogDTO();
+                Date date = new Date();
+                loginLog.setLoginDate(date);
+                loginLog.setGmtCreate(date);
+                String token = map.get("token").toString();
+                UserDto userByToken = SysUserUtils.getUserByToken(token);
+                loginLog.setLoginId(userByToken.getId());
+                loginLog.setLoginName(userByToken.getUserName());
+                loginLog.setLoginIp(HttpUtils.getIpAddress());
+                UserAgent userAgent = UserAgent.parseUserAgentString(HttpUtils.getHttpServletRequest().getHeader("User-Agent"));
+                // 获取客户端浏览器
+                String browser = userAgent.getBrowser().getName();
+                loginLog.setLoginBrowser(browser);
+                messageSender.sendLogSuccessRecordMessage(loginLog);
+            }
         }
         }
     }
     }
-
-    ;
 }
 }

+ 77 - 0
security-center/src/main/java/com/lantone/security/web/LogManagementController.java

@@ -0,0 +1,77 @@
+package com.lantone.security.web;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.lantone.common.api.CommonResult;
+import com.lantone.common.dto.AbnormalLogDTO;
+import com.lantone.common.dto.LoginLogDTO;
+import com.lantone.common.dto.OperationLogDTO;
+import com.lantone.common.vo.GetAbnormalLogVO;
+import com.lantone.common.vo.GetLoginLogVO;
+import com.lantone.common.vo.GetOperationLogVO;
+import com.lantone.dblayermbg.facade.AbnormalLogFacade;
+import com.lantone.dblayermbg.facade.LoginLogFacade;
+import com.lantone.dblayermbg.facade.OperationLogFacade;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @Description: 日志管理API
+ * @author: cy
+ * @time: 2021/9/06 13:51
+ */
+@RestController
+@Api(value = "日志管理API", tags = { "日志管理API" })
+@RequestMapping("/logManage")
+public class LogManagementController {
+    @Autowired
+    private LoginLogFacade loginLogFacade;
+    @Autowired
+    private OperationLogFacade operationLogFacade;
+    @Autowired
+    private AbnormalLogFacade abnormalLogFacade;
+
+    @ApiOperation(value = "查看登录日志[by:cy]")
+    @PostMapping("/getLoginLog")
+    public CommonResult<IPage<LoginLogDTO>> getLoginLog(@RequestBody GetLoginLogVO getLoginLogVO) {
+        return CommonResult.success(loginLogFacade.getLoginLog(getLoginLogVO));
+    }
+
+    @ApiOperation(value = "查看登录日志登录用户|登录ip地址[by:cy]")
+    @PostMapping("/getLoginLogNameAndIp")
+    public CommonResult<List<String>> getLoginLogNameAndIp(@RequestBody GetLoginLogVO getLoginLogVO) {
+        return CommonResult.success(loginLogFacade.getLoginLogNameAndIp(getLoginLogVO));
+    }
+
+    @ApiOperation(value = "查看操作日志[by:cy]")
+    @PostMapping("/getOperationLog")
+    public CommonResult<IPage<OperationLogDTO>> getOperationLog(@RequestBody GetOperationLogVO getOperationLogVO) {
+        return CommonResult.success(operationLogFacade.getOperationLog(getOperationLogVO));
+    }
+
+    @ApiOperation(value = "查看操作日志操作用户[by:cy]")
+    @PostMapping("/getOperationLogName")
+    public CommonResult<List<String>> getOperationLogName(@RequestParam String operationName) {
+        return CommonResult.success(operationLogFacade.getOperationLogName(operationName));
+    }
+
+    @ApiOperation(value = "查看异常日志[by:cy]")
+    @PostMapping("/getAbnormalLog")
+    public CommonResult<IPage<AbnormalLogDTO>> getAbnormalLog(@RequestBody GetAbnormalLogVO getAbnormalLogVO) {
+        return CommonResult.success(abnormalLogFacade.getAbnormalLog(getAbnormalLogVO));
+    }
+
+    @ApiOperation(value = "查看异常日志请求方式|ip地址[by:cy]")
+    @PostMapping("/getAbnormalLogWayAndIp")
+    public CommonResult<List<String>> getAbnormalLogWayAndIp(@RequestBody GetAbnormalLogVO getAbnormalLogVO) {
+        return CommonResult.success(abnormalLogFacade.getAbnormalLogWayAndIp(getAbnormalLogVO));
+    }
+
+}