Commit cbb11986b4922e817af7a96a59af59d147764b7f
1 parent
e330bf0f
调整登陆日志表结构,开始迁移
Showing
26 changed files
with
222 additions
and
251 deletions
ruoyi-admin/pom.xml deleted
| 1 | -<?xml version="1.0" encoding="UTF-8"?> | |
| 2 | -<project xmlns="http://maven.apache.org/POM/4.0.0" | |
| 3 | - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| 4 | - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | |
| 5 | - <parent> | |
| 6 | - <artifactId>ruoyi</artifactId> | |
| 7 | - <groupId>com.ruoyi</groupId> | |
| 8 | - <version>3.3.0</version> | |
| 9 | - </parent> | |
| 10 | - <modelVersion>4.0.0</modelVersion> | |
| 11 | - <packaging>jar</packaging> | |
| 12 | - <artifactId>ruoyi-admin</artifactId> | |
| 13 | - | |
| 14 | - <description> | |
| 15 | - web服务入口 | |
| 16 | - </description> | |
| 17 | - | |
| 18 | - <dependencies> | |
| 19 | - | |
| 20 | - <!-- spring-boot-devtools --> | |
| 21 | - <dependency> | |
| 22 | - <groupId>org.springframework.boot</groupId> | |
| 23 | - <artifactId>spring-boot-devtools</artifactId> | |
| 24 | - <optional>true</optional> <!-- 表示依赖不会传递 --> | |
| 25 | - </dependency> | |
| 26 | - | |
| 27 | - <!-- swagger2--> | |
| 28 | - <dependency> | |
| 29 | - <groupId>io.springfox</groupId> | |
| 30 | - <artifactId>springfox-swagger2</artifactId> | |
| 31 | - </dependency> | |
| 32 | - | |
| 33 | - <!--防止进入swagger页面报类型转换错误,排除2.9.2中的引用,手动增加1.5.21版本--> | |
| 34 | - <dependency> | |
| 35 | - <groupId>io.swagger</groupId> | |
| 36 | - <artifactId>swagger-annotations</artifactId> | |
| 37 | - <version>1.5.21</version> | |
| 38 | - </dependency> | |
| 39 | - | |
| 40 | - <dependency> | |
| 41 | - <groupId>io.swagger</groupId> | |
| 42 | - <artifactId>swagger-models</artifactId> | |
| 43 | - <version>1.5.21</version> | |
| 44 | - </dependency> | |
| 45 | - | |
| 46 | - <!-- swagger2-UI--> | |
| 47 | - <dependency> | |
| 48 | - <groupId>io.springfox</groupId> | |
| 49 | - <artifactId>springfox-swagger-ui</artifactId> | |
| 50 | - </dependency> | |
| 51 | - | |
| 52 | - <!-- Mysql驱动包 --> | |
| 53 | - <dependency> | |
| 54 | - <groupId>mysql</groupId> | |
| 55 | - <artifactId>mysql-connector-java</artifactId> | |
| 56 | - </dependency> | |
| 57 | - | |
| 58 | - <!-- 核心模块--> | |
| 59 | - <dependency> | |
| 60 | - <groupId>com.ruoyi</groupId> | |
| 61 | - <artifactId>ruoyi-framework</artifactId> | |
| 62 | - </dependency> | |
| 63 | - | |
| 64 | - <!-- 定时任务--> | |
| 65 | - <dependency> | |
| 66 | - <groupId>com.ruoyi</groupId> | |
| 67 | - <artifactId>ruoyi-quartz</artifactId> | |
| 68 | - </dependency> | |
| 69 | - | |
| 70 | - <!-- 代码生成--> | |
| 71 | - <dependency> | |
| 72 | - <groupId>com.ruoyi</groupId> | |
| 73 | - <artifactId>ruoyi-generator</artifactId> | |
| 74 | - </dependency> | |
| 75 | - | |
| 76 | - </dependencies> | |
| 77 | - | |
| 78 | - <build> | |
| 79 | - <plugins> | |
| 80 | - <plugin> | |
| 81 | - <groupId>org.springframework.boot</groupId> | |
| 82 | - <artifactId>spring-boot-maven-plugin</artifactId> | |
| 83 | - <version>2.1.1.RELEASE</version> | |
| 84 | - <configuration> | |
| 85 | - <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 --> | |
| 86 | - </configuration> | |
| 87 | - <executions> | |
| 88 | - <execution> | |
| 89 | - <goals> | |
| 90 | - <goal>repackage</goal> | |
| 91 | - </goals> | |
| 92 | - </execution> | |
| 93 | - </executions> | |
| 94 | - </plugin> | |
| 95 | - <plugin> | |
| 96 | - <groupId>org.apache.maven.plugins</groupId> | |
| 97 | - <artifactId>maven-war-plugin</artifactId> | |
| 98 | - <version>3.1.0</version> | |
| 99 | - <configuration> | |
| 100 | - <failOnMissingWebXml>false</failOnMissingWebXml> | |
| 101 | - <warName>${project.artifactId}</warName> | |
| 102 | - </configuration> | |
| 103 | - </plugin> | |
| 104 | - </plugins> | |
| 105 | - <finalName>${project.artifactId}</finalName> | |
| 106 | - </build> | |
| 107 | - | |
| 108 | -</project> | |
| 109 | 0 | \ No newline at end of file |
ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysLogininforController.java
| ... | ... | @@ -19,7 +19,7 @@ import com.ruoyi.system.service.ISysLogininforService; |
| 19 | 19 | |
| 20 | 20 | /** |
| 21 | 21 | * 系统访问记录 |
| 22 | - * | |
| 22 | + * | |
| 23 | 23 | * @author ruoyi |
| 24 | 24 | */ |
| 25 | 25 | @RestController |
| ... | ... | @@ -48,20 +48,4 @@ public class SysLogininforController extends BaseController |
| 48 | 48 | return util.exportExcel(list, "登录日志"); |
| 49 | 49 | } |
| 50 | 50 | |
| 51 | - @PreAuthorize("@ss.hasPermi('monitor:logininfor:remove')") | |
| 52 | - @Log(title = "登录日志", businessType = BusinessType.DELETE) | |
| 53 | - @DeleteMapping("/{infoIds}") | |
| 54 | - public AjaxResult remove(@PathVariable Long[] infoIds) | |
| 55 | - { | |
| 56 | - return toAjax(logininforService.deleteLogininforByIds(infoIds)); | |
| 57 | - } | |
| 58 | - | |
| 59 | - @PreAuthorize("@ss.hasPermi('monitor:logininfor:remove')") | |
| 60 | - @Log(title = "登录日志", businessType = BusinessType.CLEAN) | |
| 61 | - @DeleteMapping("/clean") | |
| 62 | - public AjaxResult clean() | |
| 63 | - { | |
| 64 | - logininforService.cleanLogininfor(); | |
| 65 | - return AjaxResult.success(); | |
| 66 | - } | |
| 67 | 51 | } | ... | ... |
ruoyi-admin/src/main/java/com/ruoyi/web/controller/monitor/SysOperlogController.java deleted
| 1 | -package com.ruoyi.web.controller.monitor; | |
| 2 | - | |
| 3 | -import java.util.List; | |
| 4 | - | |
| 5 | -import org.springframework.beans.factory.annotation.Autowired; | |
| 6 | -import org.springframework.security.access.prepost.PreAuthorize; | |
| 7 | -import org.springframework.web.bind.annotation.DeleteMapping; | |
| 8 | -import org.springframework.web.bind.annotation.GetMapping; | |
| 9 | -import org.springframework.web.bind.annotation.PathVariable; | |
| 10 | -import org.springframework.web.bind.annotation.RequestMapping; | |
| 11 | -import org.springframework.web.bind.annotation.RestController; | |
| 12 | -import com.ruoyi.common.annotation.Log; | |
| 13 | -import com.ruoyi.common.core.controller.BaseController; | |
| 14 | -import com.ruoyi.common.core.domain.AjaxResult; | |
| 15 | -import com.ruoyi.common.core.page.TableDataInfo; | |
| 16 | -import com.ruoyi.common.enums.BusinessType; | |
| 17 | -import com.ruoyi.common.utils.poi.ExcelUtil; | |
| 18 | -import com.ruoyi.system.domain.SysOperLog; | |
| 19 | -import com.ruoyi.system.service.ISysOperLogService; | |
| 20 | - | |
| 21 | -/** | |
| 22 | - * 操作日志记录 | |
| 23 | - * | |
| 24 | - * @author ruoyi | |
| 25 | - */ | |
| 26 | - | |
| 27 | -public class SysOperlogController extends BaseController { | |
| 28 | - | |
| 29 | - @Autowired | |
| 30 | - private ISysOperLogService operLogService; | |
| 31 | - | |
| 32 | - | |
| 33 | - | |
| 34 | -} |
ruoyi-admin/src/main/resources/application.yml
| ... | ... | @@ -42,13 +42,6 @@ spring: |
| 42 | 42 | basename: i18n/messages |
| 43 | 43 | profiles: |
| 44 | 44 | active: druid |
| 45 | - # 文件上传 | |
| 46 | - servlet: | |
| 47 | - multipart: | |
| 48 | - # 单个文件大小 | |
| 49 | - max-file-size: 10MB | |
| 50 | - # 设置总上传的文件大小 | |
| 51 | - max-request-size: 20MB | |
| 52 | 45 | # 服务模块 |
| 53 | 46 | devtools: |
| 54 | 47 | restart: |
| ... | ... | @@ -77,13 +70,6 @@ spring: |
| 77 | 70 | # #连接池最大阻塞等待时间(使用负值表示没有限制) |
| 78 | 71 | max-wait: -1ms |
| 79 | 72 | |
| 80 | -# Swagger配置 | |
| 81 | -swagger: | |
| 82 | - # 是否开启swagger | |
| 83 | - enabled: true | |
| 84 | - # 请求前缀 | |
| 85 | - pathMapping: /dev-api | |
| 86 | - | |
| 87 | 73 | # 防止XSS攻击 |
| 88 | 74 | xss: |
| 89 | 75 | # 过滤开关 | ... | ... |
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysLogininfor.java deleted
| 1 | -package com.ruoyi.system.domain; | |
| 2 | - | |
| 3 | -import java.util.Date; | |
| 4 | -import com.fasterxml.jackson.annotation.JsonFormat; | |
| 5 | -import com.ruoyi.common.annotation.Excel; | |
| 6 | -import com.ruoyi.common.annotation.Excel.ColumnType; | |
| 7 | -import com.ruoyi.common.core.domain.BaseEntity; | |
| 8 | - | |
| 9 | -/** | |
| 10 | - * 系统访问记录表 sys_logininfor | |
| 11 | - * | |
| 12 | - * @author ruoyi | |
| 13 | - */ | |
| 14 | -public class SysLogininfor extends BaseEntity | |
| 15 | -{ | |
| 16 | - private static final long serialVersionUID = 1L; | |
| 17 | - | |
| 18 | - /** ID */ | |
| 19 | - @Excel(name = "序号", cellType = ColumnType.NUMERIC) | |
| 20 | - private Long infoId; | |
| 21 | - | |
| 22 | - /** 用户账号 */ | |
| 23 | - @Excel(name = "用户账号") | |
| 24 | - private String userName; | |
| 25 | - | |
| 26 | - /** 登录状态 0成功 1失败 */ | |
| 27 | - @Excel(name = "登录状态", readConverterExp = "0=成功,1=失败") | |
| 28 | - private String status; | |
| 29 | - | |
| 30 | - /** 登录IP地址 */ | |
| 31 | - @Excel(name = "登录地址") | |
| 32 | - private String ipaddr; | |
| 33 | - | |
| 34 | - /** 登录地点 */ | |
| 35 | - @Excel(name = "登录地点") | |
| 36 | - private String loginLocation; | |
| 37 | - | |
| 38 | - /** 浏览器类型 */ | |
| 39 | - @Excel(name = "浏览器") | |
| 40 | - private String browser; | |
| 41 | - | |
| 42 | - /** 操作系统 */ | |
| 43 | - @Excel(name = "操作系统") | |
| 44 | - private String os; | |
| 45 | - | |
| 46 | - /** 提示消息 */ | |
| 47 | - @Excel(name = "提示消息") | |
| 48 | - private String msg; | |
| 49 | - | |
| 50 | - /** 访问时间 */ | |
| 51 | - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | |
| 52 | - @Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | |
| 53 | - private Date loginTime; | |
| 54 | - | |
| 55 | -} |
src/main/java/cn/iocoder/dashboard/framework/logger/operatelog/core/aop/OperateLogAspect.java
| ... | ... | @@ -10,7 +10,7 @@ import cn.iocoder.dashboard.framework.logger.operatelog.core.enums.OperateTypeEn |
| 10 | 10 | import cn.iocoder.dashboard.framework.logger.operatelog.core.service.OperateLogFrameworkService; |
| 11 | 11 | import cn.iocoder.dashboard.framework.security.core.util.SecurityUtils; |
| 12 | 12 | import cn.iocoder.dashboard.framework.tracer.core.util.TracerUtils; |
| 13 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogCreateReqVO; | |
| 13 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogCreateReqVO; | |
| 14 | 14 | import cn.iocoder.dashboard.util.servlet.ServletUtils; |
| 15 | 15 | import com.alibaba.fastjson.JSON; |
| 16 | 16 | import com.google.common.collect.Maps; | ... | ... |
src/main/java/cn/iocoder/dashboard/framework/logger/operatelog/core/service/OperateLogFrameworkService.java
| 1 | 1 | package cn.iocoder.dashboard.framework.logger.operatelog.core.service; |
| 2 | 2 | |
| 3 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogCreateReqVO; | |
| 3 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogCreateReqVO; | |
| 4 | 4 | |
| 5 | 5 | public interface OperateLogFrameworkService { |
| 6 | 6 | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/SysOperateLogController.java
| ... | ... | @@ -6,10 +6,10 @@ import cn.iocoder.dashboard.framework.excel.core.util.ExcelUtils; |
| 6 | 6 | import cn.iocoder.dashboard.framework.logger.operatelog.core.annotations.OperateLog; |
| 7 | 7 | import cn.iocoder.dashboard.framework.logger.operatelog.core.enums.OperateTypeEnum; |
| 8 | 8 | import cn.iocoder.dashboard.framework.logger.operatelog.core.util.OperateLogUtils; |
| 9 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExcelVO; | |
| 10 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExportReqVO; | |
| 11 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogPageReqVO; | |
| 12 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogRespVO; | |
| 9 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExcelVO; | |
| 10 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExportReqVO; | |
| 11 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogPageReqVO; | |
| 12 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogRespVO; | |
| 13 | 13 | import cn.iocoder.dashboard.modules.system.convert.logger.SysOperateLogConvert; |
| 14 | 14 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger.SysOperateLogDO; |
| 15 | 15 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO; | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/loginlog/SysLoginLogBaseVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.logger.vo.loginlog; | |
| 2 | + | |
| 3 | +import io.swagger.annotations.ApiModelProperty; | |
| 4 | +import lombok.Data; | |
| 5 | + | |
| 6 | +import javax.validation.constraints.NotBlank; | |
| 7 | +import javax.validation.constraints.NotEmpty; | |
| 8 | +import javax.validation.constraints.NotNull; | |
| 9 | +import javax.validation.constraints.Size; | |
| 10 | + | |
| 11 | +/** | |
| 12 | + * 登陆日志 Base VO,提供给添加、修改、详细的子 VO 使用 | |
| 13 | + * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | |
| 14 | + */ | |
| 15 | +@Data | |
| 16 | +public class SysLoginLogBaseVO { | |
| 17 | + | |
| 18 | + @ApiModelProperty(value = "链路追踪编号", required = true, example = "89aca178-a370-411c-ae02-3f0d672be4ab") | |
| 19 | + @NotEmpty(message = "链路追踪编号不能为空") | |
| 20 | + private String traceId; | |
| 21 | + | |
| 22 | + @ApiModelProperty(value = "用户编号", required = true, example = "1024") | |
| 23 | + @NotNull(message = "用户编号不能为空") | |
| 24 | + private Long userId; | |
| 25 | + | |
| 26 | + @ApiModelProperty(value = "用户账号", required = true, example = "yudao") | |
| 27 | + @NotBlank(message = "用户账号不能为空") | |
| 28 | + @Size(max = 30, message = "用户账号长度不能超过30个字符") | |
| 29 | + private String username; | |
| 30 | + | |
| 31 | + | |
| 32 | + @ApiModelProperty(value = "登陆结果", required = true, example = "1", notes = "参见 SysLoginResultEnum 枚举类") | |
| 33 | + @NotNull(message = "登陆结果不能为空") | |
| 34 | + private Integer result; | |
| 35 | + | |
| 36 | + @ApiModelProperty(value = "操作明细", example = "修改编号为 1 的用户信息,将性别从男改成女,将姓名从芋道改成源码。") | |
| 37 | + private String content; | |
| 38 | + | |
| 39 | + @ApiModelProperty(value = "用户 IP", required = true, example = "127.0.0.1") | |
| 40 | + @NotEmpty(message = "用户 IP 不能为空") | |
| 41 | + private String userIp; | |
| 42 | + | |
| 43 | + @ApiModelProperty(value = "浏览器 UserAgent", required = true, example = "Mozilla/5.0") | |
| 44 | + @NotEmpty(message = "浏览器 UserAgent 不能为空") | |
| 45 | + private String userAgent; | |
| 46 | + | |
| 47 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/loginlog/SysLoginLogCreateReqVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.logger.vo.loginlog; | |
| 2 | + | |
| 3 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogCreateReqVO; | |
| 4 | +import io.swagger.annotations.ApiModel; | |
| 5 | +import lombok.Data; | |
| 6 | +import lombok.EqualsAndHashCode; | |
| 7 | +import lombok.ToString; | |
| 8 | + | |
| 9 | +@ApiModel(value = "登陆日志创建 Request VO", | |
| 10 | + description = "暂时提供给前端,仅仅后端记录登陆日志时,进行使用") | |
| 11 | +@Data | |
| 12 | +@EqualsAndHashCode(callSuper = true) | |
| 13 | +@ToString(callSuper = true) | |
| 14 | +public class SysLoginLogCreateReqVO extends SysOperateLogCreateReqVO { | |
| 15 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/loginlog/SysLoginLogExcelVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.logger.vo.loginlog; | |
| 2 | + | |
| 3 | +import cn.iocoder.dashboard.framework.excel.core.annotations.DictFormat; | |
| 4 | +import cn.iocoder.dashboard.framework.excel.core.convert.DictConvert; | |
| 5 | +import cn.iocoder.dashboard.modules.system.enums.dict.DictTypeEnum; | |
| 6 | +import com.alibaba.excel.annotation.ExcelProperty; | |
| 7 | +import lombok.Data; | |
| 8 | + | |
| 9 | +import java.util.Date; | |
| 10 | + | |
| 11 | +/** | |
| 12 | + * 登陆日志 Excel 导出响应 VO | |
| 13 | + */ | |
| 14 | +@Data | |
| 15 | +public class SysLoginLogExcelVO { | |
| 16 | + | |
| 17 | + @ExcelProperty("日志主键") | |
| 18 | + private Long id; | |
| 19 | + | |
| 20 | + @ExcelProperty("用户编号") | |
| 21 | + private Long userId; | |
| 22 | + | |
| 23 | + @ExcelProperty("用户账号") | |
| 24 | + private String username; | |
| 25 | + | |
| 26 | + @ExcelProperty(value = "登陆结果", converter = DictConvert.class) | |
| 27 | + @DictFormat(DictTypeEnum.SYS_LOGIN_RESULT) | |
| 28 | + private Integer result; | |
| 29 | + | |
| 30 | + @ExcelProperty("登陆 IP") | |
| 31 | + private String userIp; | |
| 32 | + | |
| 33 | + @ExcelProperty("浏览器 UA") | |
| 34 | + private String userAgent; | |
| 35 | + | |
| 36 | + @ExcelProperty("登陆时间") | |
| 37 | + private Date createTime; | |
| 38 | + | |
| 39 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/loginlog/SysLoginLogRespVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.logger.vo.loginlog; | |
| 2 | + | |
| 3 | +import io.swagger.annotations.ApiModel; | |
| 4 | +import io.swagger.annotations.ApiModelProperty; | |
| 5 | +import lombok.Data; | |
| 6 | +import lombok.EqualsAndHashCode; | |
| 7 | +import lombok.ToString; | |
| 8 | + | |
| 9 | +import java.util.Date; | |
| 10 | + | |
| 11 | +@ApiModel("操作日志 Response VO") | |
| 12 | +@Data | |
| 13 | +@EqualsAndHashCode(callSuper = true) | |
| 14 | +@ToString(callSuper = true) | |
| 15 | +public class SysLoginLogRespVO extends SysLoginLogBaseVO { | |
| 16 | + | |
| 17 | + @ApiModelProperty(value = "日志编号", required = true, example = "1024") | |
| 18 | + private Long id; | |
| 19 | + | |
| 20 | + @ApiModelProperty(value = "登陆时间", required = true) | |
| 21 | + private Date createTime; | |
| 22 | + | |
| 23 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogBaseVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogBaseVO.java
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogCreateReqVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogCreateReqVO.java
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogExcelVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogExcelVO.java
| 1 | -package cn.iocoder.dashboard.modules.system.controller.logger.vo; | |
| 1 | +package cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog; | |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.dashboard.framework.excel.core.annotations.DictFormat; |
| 4 | 4 | import cn.iocoder.dashboard.framework.excel.core.convert.DictConvert; | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogExportReqVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogExportReqVO.java
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogPageReqVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogPageReqVO.java
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/SysOperateLogRespVO.java renamed to src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/operatelog/SysOperateLogRespVO.java
src/main/java/cn/iocoder/dashboard/modules/system/controller/logger/vo/package-info.java deleted
| 1 | -package cn.iocoder.dashboard.modules.system.controller.logger.vo; |
src/main/java/cn/iocoder/dashboard/modules/system/convert/logger/SysOperateLogConvert.java
| 1 | 1 | package cn.iocoder.dashboard.modules.system.convert.logger; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogCreateReqVO; | |
| 5 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExcelVO; | |
| 6 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogRespVO; | |
| 4 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogCreateReqVO; | |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExcelVO; | |
| 6 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogRespVO; | |
| 7 | 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger.SysOperateLogDO; |
| 8 | 8 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO; |
| 9 | 9 | import cn.iocoder.dashboard.util.collection.MapUtils; | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/dal/mysql/dao/logger/SysOperateLogMapper.java
| ... | ... | @@ -4,8 +4,8 @@ import cn.iocoder.dashboard.common.exception.enums.GlobalErrorCodeConstants; |
| 4 | 4 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 5 | 5 | import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX; |
| 6 | 6 | import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; |
| 7 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExportReqVO; | |
| 8 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogPageReqVO; | |
| 7 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExportReqVO; | |
| 8 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogPageReqVO; | |
| 9 | 9 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger.SysOperateLogDO; |
| 10 | 10 | import org.apache.ibatis.annotations.Mapper; |
| 11 | 11 | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/dal/mysql/dataobject/logger/SysLoginLogDO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger; | |
| 2 | + | |
| 3 | +import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO; | |
| 4 | +import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO; | |
| 5 | +import cn.iocoder.dashboard.modules.system.enums.logger.SysLoginResultEnum; | |
| 6 | +import com.baomidou.mybatisplus.annotation.TableName; | |
| 7 | + | |
| 8 | +/** | |
| 9 | + * 系统访问记录表 | |
| 10 | + * | |
| 11 | + * @author ruoyi | |
| 12 | + */ | |
| 13 | +@TableName("用户登陆日志") | |
| 14 | +public class SysLoginLogDO extends BaseDO { | |
| 15 | + | |
| 16 | + /** | |
| 17 | + * 日志主键 | |
| 18 | + */ | |
| 19 | + private Long id; | |
| 20 | + /** | |
| 21 | + * 链路追踪编号 | |
| 22 | + */ | |
| 23 | + private String traceId; | |
| 24 | + /** | |
| 25 | + * 用户编号 | |
| 26 | + * | |
| 27 | + * 外键 {@link SysUserDO#getId()} | |
| 28 | + */ | |
| 29 | + private Long userId; | |
| 30 | + /** | |
| 31 | + * 用户账号 | |
| 32 | + * | |
| 33 | + * 冗余,因为账号可以变更 | |
| 34 | + */ | |
| 35 | + private String username; | |
| 36 | + /** | |
| 37 | + * 登陆结果 | |
| 38 | + * | |
| 39 | + * 枚举 {@link SysLoginResultEnum} | |
| 40 | + */ | |
| 41 | + private Integer result; | |
| 42 | + | |
| 43 | + /** | |
| 44 | + * 用户 IP | |
| 45 | + */ | |
| 46 | + private String userIp; | |
| 47 | + | |
| 48 | + /** | |
| 49 | + * 浏览器 UA | |
| 50 | + */ | |
| 51 | + private String userAgent; | |
| 52 | + | |
| 53 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/enums/dict/DictTypeEnum.java
src/main/java/cn/iocoder/dashboard/modules/system/enums/logger/SysLoginResultEnum.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.enums.logger; | |
| 2 | + | |
| 3 | +import lombok.AllArgsConstructor; | |
| 4 | +import lombok.Getter; | |
| 5 | + | |
| 6 | +/** | |
| 7 | + * 登陆结果的枚举类 | |
| 8 | + */ | |
| 9 | +@Getter | |
| 10 | +@AllArgsConstructor | |
| 11 | +public enum SysLoginResultEnum { | |
| 12 | + | |
| 13 | + SUCCESS(0), // 成功 | |
| 14 | + ; | |
| 15 | + | |
| 16 | + /** | |
| 17 | + * 结果 | |
| 18 | + */ | |
| 19 | + private final Integer result; | |
| 20 | + | |
| 21 | +} | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/service/logger/SysOperateLogService.java
| ... | ... | @@ -2,8 +2,8 @@ package cn.iocoder.dashboard.modules.system.service.logger; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 4 | 4 | import cn.iocoder.dashboard.framework.logger.operatelog.core.service.OperateLogFrameworkService; |
| 5 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExportReqVO; | |
| 6 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogPageReqVO; | |
| 5 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExportReqVO; | |
| 6 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogPageReqVO; | |
| 7 | 7 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger.SysOperateLogDO; |
| 8 | 8 | |
| 9 | 9 | import java.util.List; | ... | ... |
src/main/java/cn/iocoder/dashboard/modules/system/service/logger/impl/SysOperateLogServiceImpl.java
| ... | ... | @@ -3,9 +3,9 @@ package cn.iocoder.dashboard.modules.system.service.logger.impl; |
| 3 | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | 4 | import cn.hutool.core.util.StrUtil; |
| 5 | 5 | import cn.iocoder.dashboard.common.pojo.PageResult; |
| 6 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogCreateReqVO; | |
| 7 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogExportReqVO; | |
| 8 | -import cn.iocoder.dashboard.modules.system.controller.logger.vo.SysOperateLogPageReqVO; | |
| 6 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogCreateReqVO; | |
| 7 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogExportReqVO; | |
| 8 | +import cn.iocoder.dashboard.modules.system.controller.logger.vo.operatelog.SysOperateLogPageReqVO; | |
| 9 | 9 | import cn.iocoder.dashboard.modules.system.convert.logger.SysOperateLogConvert; |
| 10 | 10 | import cn.iocoder.dashboard.modules.system.dal.mysql.dao.logger.SysOperateLogMapper; |
| 11 | 11 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.logger.SysOperateLogDO; | ... | ... |