diff --git a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java index 4d22dbd84..7d7c3d32f 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/listener/UserActionListener.java @@ -13,7 +13,7 @@ import org.dromara.common.core.utils.MessageUtils; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.ip.AddressUtils; -import org.dromara.common.log.event.LogininforEvent; +import org.dromara.common.log.event.LoginInfoEvent; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.web.service.SysLoginService; @@ -59,12 +59,12 @@ public class UserActionListener implements SaTokenListener { } // 记录登录日志 - LogininforEvent logininforEvent = new LogininforEvent(); - logininforEvent.setUsername(username); - logininforEvent.setStatus(Constants.LOGIN_SUCCESS); - logininforEvent.setMessage(MessageUtils.message("user.login.success")); - logininforEvent.setRequest(ServletUtils.getRequest()); - SpringUtils.context().publishEvent(logininforEvent); + LoginInfoEvent loginInfoEvent = new LoginInfoEvent(); + loginInfoEvent.setUsername(username); + loginInfoEvent.setStatus(Constants.LOGIN_SUCCESS); + loginInfoEvent.setMessage(MessageUtils.message("user.login.success")); + loginInfoEvent.setRequest(ServletUtils.getRequest()); + SpringUtils.context().publishEvent(loginInfoEvent); // 更新登录信息 loginService.recordLoginInfo((Long) loginParameter.getExtra(LoginHelper.USER_KEY), ip); log.info("user doLogin, userId:{}, token:{}", loginId, tokenValue); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index 103701182..d8918085c 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -19,7 +19,7 @@ import org.dromara.common.core.enums.LoginType; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.exception.user.UserException; import org.dromara.common.core.utils.*; -import org.dromara.common.log.event.LogininforEvent; +import org.dromara.common.log.event.LoginInfoEvent; import org.dromara.common.mybatis.helper.DataPermissionHelper; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; @@ -109,7 +109,7 @@ public class SysLoginService { if (ObjectUtil.isNull(loginUser)) { return; } - recordLogininfor(loginUser.getUsername(), Constants.LOGOUT, MessageUtils.message("user.logout.success")); + recordLoginInfo(loginUser.getUsername(), Constants.LOGOUT, MessageUtils.message("user.logout.success")); } catch (NotLoginException ignored) { } finally { try { @@ -126,13 +126,13 @@ public class SysLoginService { * @param status 状态 * @param message 消息内容 */ - public void recordLogininfor(String username, String status, String message) { - LogininforEvent logininforEvent = new LogininforEvent(); - logininforEvent.setUsername(username); - logininforEvent.setStatus(status); - logininforEvent.setMessage(message); - logininforEvent.setRequest(ServletUtils.getRequest()); - SpringUtils.context().publishEvent(logininforEvent); + public void recordLoginInfo(String username, String status, String message) { + LoginInfoEvent loginInfoEvent = new LoginInfoEvent(); + loginInfoEvent.setUsername(username); + loginInfoEvent.setStatus(status); + loginInfoEvent.setMessage(message); + loginInfoEvent.setRequest(ServletUtils.getRequest()); + SpringUtils.context().publishEvent(loginInfoEvent); } /** @@ -192,7 +192,7 @@ public class SysLoginService { int errorNumber = ObjectUtil.defaultIfNull(RedisUtils.getCacheObject(errorKey), 0); // 锁定时间内登录 则踢出 if (errorNumber >= maxRetryCount) { - recordLogininfor(username, loginFail, MessageUtils.message(loginType.getRetryLimitExceed(), maxRetryCount, lockTime)); + recordLoginInfo(username, loginFail, MessageUtils.message(loginType.getRetryLimitExceed(), maxRetryCount, lockTime)); throw new UserException(loginType.getRetryLimitExceed(), maxRetryCount, lockTime); } @@ -202,11 +202,11 @@ public class SysLoginService { RedisUtils.setCacheObject(errorKey, errorNumber, Duration.ofMinutes(lockTime)); // 达到规定错误次数 则锁定登录 if (errorNumber >= maxRetryCount) { - recordLogininfor(username, loginFail, MessageUtils.message(loginType.getRetryLimitExceed(), maxRetryCount, lockTime)); + recordLoginInfo(username, loginFail, MessageUtils.message(loginType.getRetryLimitExceed(), maxRetryCount, lockTime)); throw new UserException(loginType.getRetryLimitExceed(), maxRetryCount, lockTime); } else { // 未达到规定错误次数 - recordLogininfor(username, loginFail, MessageUtils.message(loginType.getRetryLimitCount(), errorNumber)); + recordLoginInfo(username, loginFail, MessageUtils.message(loginType.getRetryLimitCount(), errorNumber)); throw new UserException(loginType.getRetryLimitCount(), errorNumber); } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java index 8306151cd..60d4aa48e 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysRegisterService.java @@ -14,7 +14,7 @@ import org.dromara.common.core.utils.MessageUtils; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.log.event.LogininforEvent; +import org.dromara.common.log.event.LoginInfoEvent; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.web.config.properties.CaptchaProperties; import org.dromara.system.domain.SysUser; @@ -65,7 +65,7 @@ public class SysRegisterService { if (!regFlag) { throw new UserException("user.register.error"); } - recordLogininfor(username, Constants.REGISTER, MessageUtils.message("user.register.success")); + recordLoginInfo(username, Constants.REGISTER, MessageUtils.message("user.register.success")); } /** @@ -80,11 +80,11 @@ public class SysRegisterService { String captcha = RedisUtils.getCacheObject(verifyKey); RedisUtils.deleteObject(verifyKey); if (captcha == null) { - recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); + recordLoginInfo(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); throw new CaptchaExpireException(); } if (!StringUtils.equalsIgnoreCase(code, captcha)) { - recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")); + recordLoginInfo(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")); throw new CaptchaException(); } } @@ -97,13 +97,13 @@ public class SysRegisterService { * @param message 消息内容 * @return */ - private void recordLogininfor(String username, String status, String message) { - LogininforEvent logininforEvent = new LogininforEvent(); - logininforEvent.setUsername(username); - logininforEvent.setStatus(status); - logininforEvent.setMessage(message); - logininforEvent.setRequest(ServletUtils.getRequest()); - SpringUtils.context().publishEvent(logininforEvent); + private void recordLoginInfo(String username, String status, String message) { + LoginInfoEvent loginInfoEvent = new LoginInfoEvent(); + loginInfoEvent.setUsername(username); + loginInfoEvent.setStatus(status); + loginInfoEvent.setMessage(message); + loginInfoEvent.setRequest(ServletUtils.getRequest()); + SpringUtils.context().publishEvent(loginInfoEvent); } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java index f12997659..08342cac5 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/EmailAuthStrategy.java @@ -77,7 +77,7 @@ public class EmailAuthStrategy implements IAuthStrategy { private boolean validateEmailCode(String email, String emailCode) { String code = RedisUtils.getCacheObject(GlobalConstants.CAPTCHA_CODE_KEY + email); if (StringUtils.isBlank(code)) { - loginService.recordLogininfor(email, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); + loginService.recordLoginInfo(email, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); throw new CaptchaExpireException(); } return code.equals(emailCode); diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java index 8fffea97f..635e83441 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/PasswordAuthStrategy.java @@ -95,11 +95,11 @@ public class PasswordAuthStrategy implements IAuthStrategy { String captcha = RedisUtils.getCacheObject(verifyKey); RedisUtils.deleteObject(verifyKey); if (captcha == null) { - loginService.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); + loginService.recordLoginInfo(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); throw new CaptchaExpireException(); } if (!StringUtils.equalsIgnoreCase(code, captcha)) { - loginService.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")); + loginService.recordLoginInfo(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")); throw new CaptchaException(); } } diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java index bca14f660..d134f72a6 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/impl/SmsAuthStrategy.java @@ -77,7 +77,7 @@ public class SmsAuthStrategy implements IAuthStrategy { private boolean validateSmsCode(String phonenumber, String smsCode) { String code = RedisUtils.getCacheObject(GlobalConstants.CAPTCHA_CODE_KEY + phonenumber); if (StringUtils.isBlank(code)) { - loginService.recordLogininfor(phonenumber, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); + loginService.recordLoginInfo(phonenumber, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")); throw new CaptchaExpireException(); } return code.equals(smsCode); diff --git a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LoginInfoEvent.java similarity index 92% rename from ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java rename to ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LoginInfoEvent.java index e54693c8e..428fb84bc 100644 --- a/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LogininforEvent.java +++ b/ruoyi-common/ruoyi-common-log/src/main/java/org/dromara/common/log/event/LoginInfoEvent.java @@ -14,7 +14,7 @@ import java.io.Serializable; */ @Data -public class LogininforEvent implements Serializable { +public class LoginInfoEvent implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java similarity index 64% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java index cfd4300c8..b033b0f89 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLogininforController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/monitor/SysLoginInfoController.java @@ -14,9 +14,9 @@ import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.web.core.BaseController; -import org.dromara.system.domain.bo.SysLogininforBo; -import org.dromara.system.domain.vo.SysLogininforVo; -import org.dromara.system.service.ISysLogininforService; +import org.dromara.system.domain.bo.SysLoginInfoBo; +import org.dromara.system.domain.vo.SysLoginInfoVo; +import org.dromara.system.service.ISysLoginInfoService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -30,55 +30,55 @@ import java.util.List; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/monitor/logininfor") -public class SysLogininforController extends BaseController { +@RequestMapping("/monitor/loginInfo") +public class SysLoginInfoController extends BaseController { - private final ISysLogininforService logininforService; + private final ISysLoginInfoService loginInfoService; /** * 获取系统访问记录列表 */ - @SaCheckPermission("monitor:logininfor:list") + @SaCheckPermission("monitor:logininfo:list") @GetMapping("/list") - public TableDataInfo list(SysLogininforBo logininfor, PageQuery pageQuery) { - return logininforService.selectPageLogininforList(logininfor, pageQuery); + public TableDataInfo list(SysLoginInfoBo loginInfo, PageQuery pageQuery) { + return loginInfoService.selectPageLoginInfoList(loginInfo, pageQuery); } /** * 导出系统访问记录列表 */ @Log(title = "登录日志", businessType = BusinessType.EXPORT) - @SaCheckPermission("monitor:logininfor:export") + @SaCheckPermission("monitor:logininfo:export") @PostMapping("/export") - public void export(SysLogininforBo logininfor, HttpServletResponse response) { - List list = logininforService.selectLogininforList(logininfor); - ExcelUtil.exportExcel(list, "登录日志", SysLogininforVo.class, response); + public void export(SysLoginInfoBo loginInfo, HttpServletResponse response) { + List list = loginInfoService.selectLoginInfoList(loginInfo); + ExcelUtil.exportExcel(list, "登录日志", SysLoginInfoVo.class, response); } /** * 批量删除登录日志 * @param infoIds 日志ids */ - @SaCheckPermission("monitor:logininfor:remove") + @SaCheckPermission("monitor:logininfo:remove") @Log(title = "登录日志", businessType = BusinessType.DELETE) @DeleteMapping("/{infoIds}") public R remove(@PathVariable Long[] infoIds) { - return toAjax(logininforService.deleteLogininforByIds(infoIds)); + return toAjax(loginInfoService.deleteLoginInfoByIds(infoIds)); } /** * 清理系统访问记录 */ - @SaCheckPermission("monitor:logininfor:remove") + @SaCheckPermission("monitor:logininfo:remove") @Log(title = "登录日志", businessType = BusinessType.CLEAN) @Lock4j @DeleteMapping("/clean") public R clean() { - logininforService.cleanLogininfor(); + loginInfoService.cleanLoginInfo(); return R.ok(); } - @SaCheckPermission("monitor:logininfor:unlock") + @SaCheckPermission("monitor:logininfo:unlock") @Log(title = "账户解锁", businessType = BusinessType.OTHER) @RepeatSubmit() @GetMapping("/unlock/{userName}") diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLoginInfo.java similarity index 90% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLoginInfo.java index e646fc83d..88703f5fb 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLogininfor.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysLoginInfo.java @@ -9,14 +9,14 @@ import java.io.Serializable; import java.util.Date; /** - * 系统访问记录表 sys_logininfor + * 系统访问记录表 sys_login_info * * @author Lion Li */ @Data -@TableName("sys_logininfor") -public class SysLogininfor implements Serializable { +@TableName("sys_login_info") +public class SysLoginInfo implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLoginInfoBo.java similarity index 83% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLoginInfoBo.java index 8cce2547d..4b639e754 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLogininforBo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysLoginInfoBo.java @@ -1,6 +1,6 @@ package org.dromara.system.domain.bo; -import org.dromara.system.domain.SysLogininfor; +import org.dromara.system.domain.SysLoginInfo; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; @@ -9,14 +9,14 @@ import java.util.HashMap; import java.util.Map; /** - * 系统访问记录业务对象 sys_logininfor + * 系统访问记录业务对象 sys_login_info * * @author Michelle.Chung */ @Data -@AutoMapper(target = SysLogininfor.class, reverseConvertGenerate = false) -public class SysLogininforBo { +@AutoMapper(target = SysLoginInfo.class, reverseConvertGenerate = false) +public class SysLoginInfoBo { /** * 访问ID diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLoginInfoVo.java similarity index 90% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLoginInfoVo.java index 68edb5903..c238ce774 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLogininforVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysLoginInfoVo.java @@ -5,7 +5,7 @@ import org.apache.fesod.sheet.annotation.ExcelIgnoreUnannotated; import org.apache.fesod.sheet.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; -import org.dromara.system.domain.SysLogininfor; +import org.dromara.system.domain.SysLoginInfo; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; @@ -15,15 +15,15 @@ import java.io.Serializable; /** - * 系统访问记录视图对象 sys_logininfor + * 系统访问记录视图对象 sys_login_info * * @author Michelle.Chung * @date 2023-02-07 */ @Data @ExcelIgnoreUnannotated -@AutoMapper(target = SysLogininfor.class) -public class SysLogininforVo implements Serializable { +@AutoMapper(target = SysLoginInfo.class) +public class SysLoginInfoVo implements Serializable { @Serial private static final long serialVersionUID = 1L; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLoginInfoMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLoginInfoMapper.java new file mode 100644 index 000000000..30240b2ec --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLoginInfoMapper.java @@ -0,0 +1,14 @@ +package org.dromara.system.mapper; + +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.system.domain.SysLoginInfo; +import org.dromara.system.domain.vo.SysLoginInfoVo; + +/** + * 系统访问日志情况信息 数据层 + * + * @author Lion Li + */ +public interface SysLoginInfoMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLogininforMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLogininforMapper.java deleted file mode 100644 index 85edd1df6..000000000 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysLogininforMapper.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.dromara.system.mapper; - -import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.system.domain.SysLogininfor; -import org.dromara.system.domain.vo.SysLogininforVo; - -/** - * 系统访问日志情况信息 数据层 - * - * @author Lion Li - */ -public interface SysLogininforMapper extends BaseMapperPlus { - -} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLogininforService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLoginInfoService.java similarity index 58% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLogininforService.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLoginInfoService.java index 1bc1ea9ff..af3845e5a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLogininforService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysLoginInfoService.java @@ -2,8 +2,8 @@ package org.dromara.system.service; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.system.domain.bo.SysLogininforBo; -import org.dromara.system.domain.vo.SysLogininforVo; +import org.dromara.system.domain.bo.SysLoginInfoBo; +import org.dromara.system.domain.vo.SysLoginInfoVo; import java.util.List; @@ -12,31 +12,31 @@ import java.util.List; * * @author Lion Li */ -public interface ISysLogininforService { +public interface ISysLoginInfoService { /** * 分页查询登录日志列表 * - * @param logininfor 查询条件 + * @param loginInfo 查询条件 * @param pageQuery 分页参数 * @return 登录日志分页列表 */ - TableDataInfo selectPageLogininforList(SysLogininforBo logininfor, PageQuery pageQuery); + TableDataInfo selectPageLoginInfoList(SysLoginInfoBo loginInfo, PageQuery pageQuery); /** * 新增系统登录日志 * * @param bo 访问日志对象 */ - void insertLogininfor(SysLogininforBo bo); + void insertLoginInfo(SysLoginInfoBo bo); /** * 查询系统登录日志集合 * - * @param logininfor 访问日志对象 + * @param loginInfo 访问日志对象 * @return 登录记录集合 */ - List selectLogininforList(SysLogininforBo logininfor); + List selectLoginInfoList(SysLoginInfoBo loginInfo); /** * 批量删除系统登录日志 @@ -44,10 +44,10 @@ public interface ISysLogininforService { * @param infoIds 需要删除的登录日志ID * @return 结果 */ - int deleteLogininforByIds(Long[] infoIds); + int deleteLoginInfoByIds(Long[] infoIds); /** * 清空系统登录日志 */ - void cleanLogininfor(); + void cleanLoginInfo(); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java similarity index 50% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java rename to ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java index be04ccc5c..4dd7b4b01 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLogininforServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysLoginInfoServiceImpl.java @@ -13,17 +13,17 @@ import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.ServletUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.ip.AddressUtils; -import org.dromara.common.log.event.LogininforEvent; +import org.dromara.common.log.event.LoginInfoEvent; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; -import org.dromara.system.domain.SysLogininfor; -import org.dromara.system.domain.bo.SysLogininforBo; +import org.dromara.system.domain.SysLoginInfo; +import org.dromara.system.domain.bo.SysLoginInfoBo; import org.dromara.system.domain.vo.SysClientVo; -import org.dromara.system.domain.vo.SysLogininforVo; -import org.dromara.system.mapper.SysLogininforMapper; +import org.dromara.system.domain.vo.SysLoginInfoVo; +import org.dromara.system.mapper.SysLoginInfoMapper; import org.dromara.system.service.ISysClientService; -import org.dromara.system.service.ISysLogininforService; +import org.dromara.system.service.ISysLoginInfoService; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -41,21 +41,21 @@ import java.util.Map; @RequiredArgsConstructor @Slf4j @Service -public class SysLogininforServiceImpl implements ISysLogininforService { +public class SysLoginInfoServiceImpl implements ISysLoginInfoService { - private final SysLogininforMapper baseMapper; + private final SysLoginInfoMapper baseMapper; private final ISysClientService clientService; /** * 记录登录信息 * - * @param logininforEvent 登录事件 + * @param loginInfoEvent 登录事件 */ @Async @EventListener - public void recordLogininfor(LogininforEvent logininforEvent) { - HttpServletRequest request = logininforEvent.getRequest(); + public void recordLoginInfo(LoginInfoEvent loginInfoEvent) { + HttpServletRequest request = loginInfoEvent.getRequest(); final UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent")); final String ip = ServletUtils.getClientIP(request); // 客户端信息 @@ -69,35 +69,35 @@ public class SysLogininforServiceImpl implements ISysLogininforService { StringBuilder s = new StringBuilder(); s.append(getBlock(ip)); s.append(address); - s.append(getBlock(logininforEvent.getUsername())); - s.append(getBlock(logininforEvent.getStatus())); - s.append(getBlock(logininforEvent.getMessage())); + s.append(getBlock(loginInfoEvent.getUsername())); + s.append(getBlock(loginInfoEvent.getStatus())); + s.append(getBlock(loginInfoEvent.getMessage())); // 打印信息到日志 - log.info(s.toString(), logininforEvent.getArgs()); + log.info(s.toString(), loginInfoEvent.getArgs()); // 获取客户端操作系统 String os = userAgent.getOs().getName(); // 获取客户端浏览器 String browser = userAgent.getBrowser().getName(); // 封装对象 - SysLogininforBo logininfor = new SysLogininforBo(); - logininfor.setUserName(logininforEvent.getUsername()); + SysLoginInfoBo loginInfo = new SysLoginInfoBo(); + loginInfo.setUserName(loginInfoEvent.getUsername()); if (ObjectUtil.isNotNull(client)) { - logininfor.setClientKey(client.getClientKey()); - logininfor.setDeviceType(client.getDeviceType()); + loginInfo.setClientKey(client.getClientKey()); + loginInfo.setDeviceType(client.getDeviceType()); } - logininfor.setIpaddr(ip); - logininfor.setLoginLocation(address); - logininfor.setBrowser(browser); - logininfor.setOs(os); - logininfor.setMsg(logininforEvent.getMessage()); + loginInfo.setIpaddr(ip); + loginInfo.setLoginLocation(address); + loginInfo.setBrowser(browser); + loginInfo.setOs(os); + loginInfo.setMsg(loginInfoEvent.getMessage()); // 日志状态 - if (StringUtils.equalsAny(logininforEvent.getStatus(), Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER)) { - logininfor.setStatus(Constants.SUCCESS); - } else if (Constants.LOGIN_FAIL.equals(logininforEvent.getStatus())) { - logininfor.setStatus(Constants.FAIL); + if (StringUtils.equalsAny(loginInfoEvent.getStatus(), Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER)) { + loginInfo.setStatus(Constants.SUCCESS); + } else if (Constants.LOGIN_FAIL.equals(loginInfoEvent.getStatus())) { + loginInfo.setStatus(Constants.FAIL); } // 插入数据 - insertLogininfor(logininfor); + insertLoginInfo(loginInfo); } private String getBlock(Object msg) { @@ -110,23 +110,23 @@ public class SysLogininforServiceImpl implements ISysLogininforService { /** * 分页查询登录日志列表 * - * @param logininfor 查询条件 + * @param loginInfo 查询条件 * @param pageQuery 分页参数 * @return 登录日志分页列表 */ @Override - public TableDataInfo selectPageLogininforList(SysLogininforBo logininfor, PageQuery pageQuery) { - Map params = logininfor.getParams(); - LambdaQueryWrapper lqw = new LambdaQueryWrapper() - .like(StringUtils.isNotBlank(logininfor.getIpaddr()), SysLogininfor::getIpaddr, logininfor.getIpaddr()) - .eq(StringUtils.isNotBlank(logininfor.getStatus()), SysLogininfor::getStatus, logininfor.getStatus()) - .like(StringUtils.isNotBlank(logininfor.getUserName()), SysLogininfor::getUserName, logininfor.getUserName()) + public TableDataInfo selectPageLoginInfoList(SysLoginInfoBo loginInfo, PageQuery pageQuery) { + Map params = loginInfo.getParams(); + LambdaQueryWrapper lqw = new LambdaQueryWrapper() + .like(StringUtils.isNotBlank(loginInfo.getIpaddr()), SysLoginInfo::getIpaddr, loginInfo.getIpaddr()) + .eq(StringUtils.isNotBlank(loginInfo.getStatus()), SysLoginInfo::getStatus, loginInfo.getStatus()) + .like(StringUtils.isNotBlank(loginInfo.getUserName()), SysLoginInfo::getUserName, loginInfo.getUserName()) .between(params.get("beginTime") != null && params.get("endTime") != null, - SysLogininfor::getLoginTime, params.get("beginTime"), params.get("endTime")); + SysLoginInfo::getLoginTime, params.get("beginTime"), params.get("endTime")); if (StringUtils.isBlank(pageQuery.getOrderByColumn())) { - lqw.orderByDesc(SysLogininfor::getInfoId); + lqw.orderByDesc(SysLoginInfo::getInfoId); } - Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); + Page page = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(page); } @@ -136,28 +136,28 @@ public class SysLogininforServiceImpl implements ISysLogininforService { * @param bo 访问日志对象 */ @Override - public void insertLogininfor(SysLogininforBo bo) { - SysLogininfor logininfor = MapstructUtils.convert(bo, SysLogininfor.class); - logininfor.setLoginTime(new Date()); - baseMapper.insert(logininfor); + public void insertLoginInfo(SysLoginInfoBo bo) { + SysLoginInfo loginInfo = MapstructUtils.convert(bo, SysLoginInfo.class); + loginInfo.setLoginTime(new Date()); + baseMapper.insert(loginInfo); } /** * 查询系统登录日志集合 * - * @param logininfor 访问日志对象 + * @param loginInfo 访问日志对象 * @return 登录记录集合 */ @Override - public List selectLogininforList(SysLogininforBo logininfor) { - Map params = logininfor.getParams(); - return baseMapper.selectVoList(new LambdaQueryWrapper() - .like(StringUtils.isNotBlank(logininfor.getIpaddr()), SysLogininfor::getIpaddr, logininfor.getIpaddr()) - .eq(StringUtils.isNotBlank(logininfor.getStatus()), SysLogininfor::getStatus, logininfor.getStatus()) - .like(StringUtils.isNotBlank(logininfor.getUserName()), SysLogininfor::getUserName, logininfor.getUserName()) + public List selectLoginInfoList(SysLoginInfoBo loginInfo) { + Map params = loginInfo.getParams(); + return baseMapper.selectVoList(new LambdaQueryWrapper() + .like(StringUtils.isNotBlank(loginInfo.getIpaddr()), SysLoginInfo::getIpaddr, loginInfo.getIpaddr()) + .eq(StringUtils.isNotBlank(loginInfo.getStatus()), SysLoginInfo::getStatus, loginInfo.getStatus()) + .like(StringUtils.isNotBlank(loginInfo.getUserName()), SysLoginInfo::getUserName, loginInfo.getUserName()) .between(params.get("beginTime") != null && params.get("endTime") != null, - SysLogininfor::getLoginTime, params.get("beginTime"), params.get("endTime")) - .orderByDesc(SysLogininfor::getInfoId)); + SysLoginInfo::getLoginTime, params.get("beginTime"), params.get("endTime")) + .orderByDesc(SysLoginInfo::getInfoId)); } /** @@ -167,7 +167,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { * @return 结果 */ @Override - public int deleteLogininforByIds(Long[] infoIds) { + public int deleteLoginInfoByIds(Long[] infoIds) { return baseMapper.deleteByIds(Arrays.asList(infoIds)); } @@ -175,7 +175,7 @@ public class SysLogininforServiceImpl implements ISysLogininforService { * 清空系统登录日志 */ @Override - public void cleanLogininfor() { + public void cleanLoginInfo() { baseMapper.delete(new LambdaQueryWrapper<>()); } } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLogininforMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLoginInfoMapper.xml similarity index 72% rename from ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLogininforMapper.xml rename to ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLoginInfoMapper.xml index c64b551be..f218640ff 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLogininforMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysLoginInfoMapper.xml @@ -2,6 +2,6 @@ - + diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 2e16b0d60..615f27b75 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -360,7 +360,7 @@ insert into sys_menu values('120', '任务调度中心', '2', '5', 'snailjo -- 三级菜单 insert into sys_menu values('500', '操作日志', '108', '1', 'operlog', 'monitor/operlog/index', '', 1, 0, 'C', '0', '0', 'monitor:operlog:list', 'form', 103, 1, sysdate, null, null, '操作日志菜单'); -insert into sys_menu values('501', '登录日志', '108', '2', 'logininfor', 'monitor/logininfor/index', '', 1, 0, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', 103, 1, sysdate, null, null, '登录日志菜单'); +insert into sys_menu values('501', '登录日志', '108', '2', 'loginInfo', 'monitor/logininfo/index', '', 1, 0, 'C', '0', '0', 'monitor:loginInfo:list', 'loginInfo', 103, 1, sysdate, null, null, '登录日志菜单'); -- 用户管理按钮 insert into sys_menu values('1001', '用户查询', '100', '1', '', '', '', 1, 0, 'F', '0', '0', 'system:user:query', '#', 103, 1, sysdate, null, null, ''); insert into sys_menu values('1002', '用户新增', '100', '2', '', '', '', 1, 0, 'F', '0', '0', 'system:user:add', '#', 103, 1, sysdate, null, null, ''); @@ -413,10 +413,10 @@ insert into sys_menu values('1040', '操作查询', '500', '1', '#', '', '', 1, insert into sys_menu values('1041', '操作删除', '500', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:remove', '#', 103, 1, sysdate, null, null, ''); insert into sys_menu values('1042', '日志导出', '500', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:export', '#', 103, 1, sysdate, null, null, ''); -- 登录日志按钮 -insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:query', '#', 103, 1, sysdate, null, null, ''); -insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:remove', '#', 103, 1, sysdate, null, null, ''); -insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:export', '#', 103, 1, sysdate, null, null, ''); -insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:unlock', '#', 103, 1, sysdate, null, null, ''); +insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfo:query', '#', 103, 1, sysdate, null, null, ''); +insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfo:remove', '#', 103, 1, sysdate, null, null, ''); +insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfo:export', '#', 103, 1, sysdate, null, null, ''); +insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfo:unlock', '#', 103, 1, sysdate, null, null, ''); -- 在线用户按钮 insert into sys_menu values('1046', '在线查询', '109', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:query', '#', 103, 1, sysdate, null, null, ''); insert into sys_menu values('1047', '批量强退', '109', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:batchLogout', '#', 103, 1, sysdate, null, null, ''); @@ -853,7 +853,7 @@ insert into sys_config values(11, 'OSS预览列表资源开关', 'sys.o -- ---------------------------- -- 14、系统访问记录 -- ---------------------------- -create table sys_logininfor ( +create table sys_login_info ( info_id number(20) not null, user_name varchar2(50) default '', client_key varchar2(32) default '', @@ -867,22 +867,22 @@ create table sys_logininfor ( login_time date ); -alter table sys_logininfor add constraint pk_sys_logininfor primary key (info_id); -create index idx_sys_logininfor_s on sys_logininfor (status); -create index idx_sys_logininfor_lt on sys_logininfor (login_time); +alter table sys_login_info add constraint pk_sys_login_info primary key (info_id); +create index idx_sys_login_info_s on sys_login_info (status); +create index idx_sys_login_info_lt on sys_login_info (login_time); -comment on table sys_logininfor is '系统访问记录'; -comment on column sys_logininfor.info_id is '访问ID'; -comment on column sys_logininfor.user_name is '登录账号'; -comment on column sys_logininfor.client_key is '客户端'; -comment on column sys_logininfor.device_type is '设备类型'; -comment on column sys_logininfor.ipaddr is '登录IP地址'; -comment on column sys_logininfor.login_location is '登录地点'; -comment on column sys_logininfor.browser is '浏览器类型'; -comment on column sys_logininfor.os is '操作系统'; -comment on column sys_logininfor.status is '登录状态(0成功 1失败)'; -comment on column sys_logininfor.msg is '提示消息'; -comment on column sys_logininfor.login_time is '访问时间'; +comment on table sys_login_info is '系统访问记录'; +comment on column sys_login_info.info_id is '访问ID'; +comment on column sys_login_info.user_name is '登录账号'; +comment on column sys_login_info.client_key is '客户端'; +comment on column sys_login_info.device_type is '设备类型'; +comment on column sys_login_info.ipaddr is '登录IP地址'; +comment on column sys_login_info.login_location is '登录地点'; +comment on column sys_login_info.browser is '浏览器类型'; +comment on column sys_login_info.os is '操作系统'; +comment on column sys_login_info.status is '登录状态(0成功 1失败)'; +comment on column sys_login_info.msg is '提示消息'; +comment on column sys_login_info.login_time is '访问时间'; -- ---------------------------- diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index 491fcfa36..aaa2f9c40 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -357,7 +357,7 @@ insert into sys_menu values('120', '任务调度中心', '2', '6', 'snailjo -- 三级菜单 insert into sys_menu values('500', '操作日志', '108', '1', 'operlog', 'monitor/operlog/index', '', '1', '0', 'C', '0', '0', 'monitor:operlog:list', 'form', 103, 1, now(), null, null, '操作日志菜单'); -insert into sys_menu values('501', '登录日志', '108', '2', 'logininfor', 'monitor/logininfor/index', '', '1', '0', 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', 103, 1, now(), null, null, '登录日志菜单'); +insert into sys_menu values('501', '登录日志', '108', '2', 'loginInfo', 'monitor/loginInfo/index', '', '1', '0', 'C', '0', '0', 'monitor:loginInfo:list', 'loginInfo', 103, 1, now(), null, null, '登录日志菜单'); -- 用户管理按钮 insert into sys_menu values('1001', '用户查询', '100', '1', '', '', '', '1', '0', 'F', '0', '0', 'system:user:query', '#', 103, 1, now(), null, null, ''); insert into sys_menu values('1002', '用户新增', '100', '2', '', '', '', '1', '0', 'F', '0', '0', 'system:user:add', '#', 103, 1, now(), null, null, ''); @@ -410,10 +410,10 @@ insert into sys_menu values('1040', '操作查询', '500', '1', '#', '', '', '1' insert into sys_menu values('1041', '操作删除', '500', '2', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:operlog:remove', '#', 103, 1, now(), null, null, ''); insert into sys_menu values('1042', '日志导出', '500', '4', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:operlog:export', '#', 103, 1, now(), null, null, ''); -- 登录日志按钮 -insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:logininfor:query', '#', 103, 1, now(), null, null, ''); -insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:logininfor:remove', '#', 103, 1, now(), null, null, ''); -insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:logininfor:export', '#', 103, 1, now(), null, null, ''); -insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:logininfor:unlock', '#', 103, 1, now(), null, null, ''); +insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:loginInfo:query', '#', 103, 1, now(), null, null, ''); +insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:loginInfo:remove', '#', 103, 1, now(), null, null, ''); +insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:loginInfo:export', '#', 103, 1, now(), null, null, ''); +insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:loginInfo:unlock', '#', 103, 1, now(), null, null, ''); -- 在线用户按钮 insert into sys_menu values('1046', '在线查询', '109', '1', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:online:query', '#', 103, 1, now(), null, null, ''); insert into sys_menu values('1047', '批量强退', '109', '2', '#', '', '', '1', '0', 'F', '0', '0', 'monitor:online:batchLogout', '#', 103, 1, now(), null, null, ''); @@ -851,7 +851,7 @@ insert into sys_config values(11, 'OSS预览列表资源开关', 'sys.o -- ---------------------------- -- 14、系统访问记录 -- ---------------------------- -create table if not exists sys_logininfor +create table if not exists sys_login_info ( info_id int8, user_name varchar(50) default ''::varchar, @@ -864,24 +864,24 @@ create table if not exists sys_logininfor status char default '0'::bpchar, msg varchar(255) default ''::varchar, login_time timestamp, - constraint sys_logininfor_pk primary key (info_id) + constraint sys_login_info_pk primary key (info_id) ); -create index idx_sys_logininfor_s ON sys_logininfor (status); -create index idx_sys_logininfor_lt ON sys_logininfor (login_time); +create index idx_sys_login_info_s ON sys_login_info (status); +create index idx_sys_login_info_lt ON sys_login_info (login_time); -comment on table sys_logininfor is '系统访问记录'; -comment on column sys_logininfor.info_id is '访问ID'; -comment on column sys_logininfor.user_name is '用户账号'; -comment on column sys_logininfor.client_key is '客户端'; -comment on column sys_logininfor.device_type is '设备类型'; -comment on column sys_logininfor.ipaddr is '登录IP地址'; -comment on column sys_logininfor.login_location is '登录地点'; -comment on column sys_logininfor.browser is '浏览器类型'; -comment on column sys_logininfor.os is '操作系统'; -comment on column sys_logininfor.status is '登录状态(0成功 1失败)'; -comment on column sys_logininfor.msg is '提示消息'; -comment on column sys_logininfor.login_time is '访问时间'; +comment on table sys_login_info is '系统访问记录'; +comment on column sys_login_info.info_id is '访问ID'; +comment on column sys_login_info.user_name is '用户账号'; +comment on column sys_login_info.client_key is '客户端'; +comment on column sys_login_info.device_type is '设备类型'; +comment on column sys_login_info.ipaddr is '登录IP地址'; +comment on column sys_login_info.login_location is '登录地点'; +comment on column sys_login_info.browser is '浏览器类型'; +comment on column sys_login_info.os is '操作系统'; +comment on column sys_login_info.status is '登录状态(0成功 1失败)'; +comment on column sys_login_info.msg is '提示消息'; +comment on column sys_login_info.login_time is '访问时间'; -- ---------------------------- -- 17、通知公告表 diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index c8966129a..63126b64d 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -232,7 +232,7 @@ insert into sys_menu values('120', '任务调度中心', '2', '6', 'snailjo -- 三级菜单 insert into sys_menu values('500', '操作日志', '108', '1', 'operlog', 'monitor/operlog/index', '', 1, 0, 'C', '0', '0', 'monitor:operlog:list', 'form', 103, 1, sysdate(), null, null, '操作日志菜单'); -insert into sys_menu values('501', '登录日志', '108', '2', 'logininfor', 'monitor/logininfor/index', '', 1, 0, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', 103, 1, sysdate(), null, null, '登录日志菜单'); +insert into sys_menu values('501', '登录日志', '108', '2', 'loginInfo', 'monitor/loginInfo/index', '', 1, 0, 'C', '0', '0', 'monitor:loginInfo:list', 'loginInfo', 103, 1, sysdate(), null, null, '登录日志菜单'); -- 用户管理按钮 insert into sys_menu values('1001', '用户查询', '100', '1', '', '', '', 1, 0, 'F', '0', '0', 'system:user:query', '#', 103, 1, sysdate(), null, null, ''); insert into sys_menu values('1002', '用户新增', '100', '2', '', '', '', 1, 0, 'F', '0', '0', 'system:user:add', '#', 103, 1, sysdate(), null, null, ''); @@ -285,10 +285,10 @@ insert into sys_menu values('1040', '操作查询', '500', '1', '#', '', '', 1, insert into sys_menu values('1041', '操作删除', '500', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:remove', '#', 103, 1, sysdate(), null, null, ''); insert into sys_menu values('1042', '日志导出', '500', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:operlog:export', '#', 103, 1, sysdate(), null, null, ''); -- 登录日志按钮 -insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:query', '#', 103, 1, sysdate(), null, null, ''); -insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:remove', '#', 103, 1, sysdate(), null, null, ''); -insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:export', '#', 103, 1, sysdate(), null, null, ''); -insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:logininfor:unlock', '#', 103, 1, sysdate(), null, null, ''); +insert into sys_menu values('1043', '登录查询', '501', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:loginInfo:query', '#', 103, 1, sysdate(), null, null, ''); +insert into sys_menu values('1044', '登录删除', '501', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:loginInfo:remove', '#', 103, 1, sysdate(), null, null, ''); +insert into sys_menu values('1045', '日志导出', '501', '3', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:loginInfo:export', '#', 103, 1, sysdate(), null, null, ''); +insert into sys_menu values('1050', '账户解锁', '501', '4', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:loginInfo:unlock', '#', 103, 1, sysdate(), null, null, ''); -- 在线用户按钮 insert into sys_menu values('1046', '在线查询', '109', '1', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:query', '#', 103, 1, sysdate(), null, null, ''); insert into sys_menu values('1047', '批量强退', '109', '2', '#', '', '', 1, 0, 'F', '0', '0', 'monitor:online:batchLogout', '#', 103, 1, sysdate(), null, null, ''); @@ -645,7 +645,7 @@ insert into sys_config values(11, 'OSS预览列表资源开关', 'sys.os -- ---------------------------- -- 14、系统访问记录 -- ---------------------------- -create table sys_logininfor ( +create table sys_login_info ( info_id bigint(20) not null comment '访问ID', user_name varchar(50) default '' comment '用户账号', client_key varchar(32) default '' comment '客户端', @@ -658,8 +658,8 @@ create table sys_logininfor ( msg varchar(255) default '' comment '提示消息', login_time datetime comment '访问时间', primary key (info_id), - key idx_sys_logininfor_s (status), - key idx_sys_logininfor_lt (login_time) + key idx_sys_login_info_s (status), + key idx_sys_login_info_lt (login_time) ) engine=innodb comment = '系统访问记录'; diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index f93c241b5..4e770d59a 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -1102,7 +1102,7 @@ GO INSERT sys_dict_type VALUES (12, N'设备类型', N'sys_device_type', 103, 1, getdate(), NULL, NULL, N'客户端设备类型') GO -CREATE TABLE sys_logininfor +CREATE TABLE sys_login_info ( info_id bigint NOT NULL, user_name nvarchar(50) DEFAULT '' NULL, @@ -1122,81 +1122,81 @@ CREATE TABLE sys_logininfor ON [PRIMARY] GO -CREATE NONCLUSTERED INDEX idx_sys_logininfor_s ON sys_logininfor (status) +CREATE NONCLUSTERED INDEX idx_sys_login_info_s ON sys_login_info (status) GO -CREATE NONCLUSTERED INDEX idx_sys_logininfor_lt ON sys_logininfor (login_time) +CREATE NONCLUSTERED INDEX idx_sys_login_info_lt ON sys_login_info (login_time) GO EXEC sys.sp_addextendedproperty 'MS_Description', N'访问ID' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'info_id' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'用户账号' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'user_name' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'客户端' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'client_key' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'设备类型' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'device_type' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'登录IP地址' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'ipaddr' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'登录地点' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'login_location' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'浏览器类型' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'browser' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'操作系统' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'os' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'登录状态(0成功 1失败)' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'status' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'提示消息' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'msg' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'访问时间' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor', + 'TABLE', N'sys_login_info', 'COLUMN', N'login_time' GO EXEC sys.sp_addextendedproperty 'MS_Description', N'系统访问记录' , 'SCHEMA', N'dbo', - 'TABLE', N'sys_logininfor' + 'TABLE', N'sys_login_info' GO CREATE TABLE sys_menu @@ -1409,7 +1409,7 @@ INSERT sys_menu VALUES (120, N'任务调度中心', 2, 5, N'snailjob', N'monitor GO INSERT sys_menu VALUES (500, N'操作日志', 108, 1, N'operlog', N'monitor/operlog/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:operlog:list', N'form', 103, 1, getdate(), NULL, NULL, N'操作日志菜单') GO -INSERT sys_menu VALUES (501, N'登录日志', 108, 2, N'logininfor', N'monitor/logininfor/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:logininfor:list', N'logininfor', 103, 1, getdate(), NULL, NULL, N'登录日志菜单') +INSERT sys_menu VALUES (501, N'登录日志', 108, 2, N'loginInfo', N'monitor/loginInfo/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:loginInfo:list', N'loginInfo', 103, 1, getdate(), NULL, NULL, N'登录日志菜单') GO INSERT sys_menu VALUES (1001, N'用户查询', 100, 1, N'', N'', N'', 1, 0, N'F', N'0', N'0', N'system:user:query', N'#', 103, 1, getdate(), NULL, NULL, N'') GO @@ -1495,13 +1495,13 @@ INSERT sys_menu VALUES (1041, N'操作删除', 500, 2, N'#', N'', N'', 1, 0, N'F GO INSERT sys_menu VALUES (1042, N'日志导出', 500, 4, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:operlog:export', N'#', 103, 1, getdate(), NULL, NULL, N'') GO -INSERT sys_menu VALUES (1043, N'登录查询', 501, 1, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:logininfor:query', N'#', 103, 1, getdate(), NULL, NULL, N'') +INSERT sys_menu VALUES (1043, N'登录查询', 501, 1, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:loginInfo:query', N'#', 103, 1, getdate(), NULL, NULL, N'') GO -INSERT sys_menu VALUES (1044, N'登录删除', 501, 2, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:logininfor:remove', N'#', 103, 1, getdate(), NULL, NULL, N'') +INSERT sys_menu VALUES (1044, N'登录删除', 501, 2, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:loginInfo:remove', N'#', 103, 1, getdate(), NULL, NULL, N'') GO -INSERT sys_menu VALUES (1045, N'日志导出', 501, 3, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:logininfor:export', N'#', 103, 1, getdate(), NULL, NULL, N'') +INSERT sys_menu VALUES (1045, N'日志导出', 501, 3, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:loginInfo:export', N'#', 103, 1, getdate(), NULL, NULL, N'') GO -INSERT sys_menu VALUES (1050, N'账户解锁', 501, 4, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:logininfor:unlock', N'#', 103, 1, getdate(), NULL, NULL, N'') +INSERT sys_menu VALUES (1050, N'账户解锁', 501, 4, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:loginInfo:unlock', N'#', 103, 1, getdate(), NULL, NULL, N'') GO INSERT sys_menu VALUES (1046, N'在线查询', 109, 1, N'#', N'', N'', 1, 0, N'F', N'0', N'0', N'monitor:online:query', N'#', 103, 1, getdate(), NULL, NULL, N'') GO