瀏覽代碼

将 login_log、error_log 迁移到 yudao-core-service 项目中

YunaiV 3 年之前
父節點
當前提交
d784b113af
共有 83 個文件被更改,包括 432 次插入748 次删除
  1. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/config/InfConfigController.java
  2. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/file/InfFileController.java
  3. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/logger/InfApiAccessLogController.java
  4. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/logger/InfApiErrorLogController.java
  5. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/config/InfConfigConvert.java
  6. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/file/InfFileConvert.java
  7. 1 3
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/logger/InfApiAccessLogConvert.java
  8. 1 4
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/logger/InfApiErrorLogConvert.java
  9. 0 65
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/config/InfConfigDO.java
  10. 0 153
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/logger/InfApiErrorLogDO.java
  11. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/config/InfConfigMapper.java
  12. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/file/InfFileMapper.java
  13. 3 3
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/logger/InfApiAccessLogMapper.java
  14. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/logger/InfApiErrorLogMapper.java
  15. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/InfConfigService.java
  16. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/impl/InfConfigServiceImpl.java
  17. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/InfFileService.java
  18. 1 1
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/impl/InfFileServiceImpl.java
  19. 3 4
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiAccessLogService.java
  20. 3 4
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiErrorLogService.java
  21. 2 15
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/impl/InfApiAccessLogServiceImpl.java
  22. 3 17
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/impl/InfApiErrorLogServiceImpl.java
  23. 0 3
      yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/SysUserProfileController.java
  24. 1 1
      yudao-admin-server/src/main/resources/application-dev.yaml
  25. 1 1
      yudao-admin-server/src/main/resources/application-local.yaml
  26. 1 1
      yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/InfConfigServiceTest.java
  27. 1 1
      yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/InfFileServiceTest.java
  28. 1 21
      yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiAccessLogServiceImplTest.java
  29. 2 23
      yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiErrorLogServiceImplTest.java
  30. 6 0
      yudao-core-service/pom.xml
  31. 15 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/logger/InfApiAccessLogCoreConvert.java
  32. 15 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/logger/InfApiErrorLogCoreConvert.java
  33. 1 1
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/package-info.java
  34. 0 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md
  35. 1 1
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/config/InfConfigDO.java
  36. 1 1
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/file/InfFileDO.java
  37. 1 1
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/logger/InfApiAccessLogDO.java
  38. 2 2
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/logger/InfApiErrorLogDO.java
  39. 4 4
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/config/InfConfigCoreDAOImpl.java
  40. 10 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/file/InfFileCoreMapper.java
  41. 14 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/logger/InfApiAccessLogCoreMapper.java
  42. 9 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/logger/InfApiErrorLogCoreMapper.java
  43. 1 1
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/enums/logger/InfApiErrorLogProcessStatusEnum.java
  44. 4 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/enums/package-info.java
  45. 2 2
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiAccessLogCoreService.java
  46. 2 2
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiErrorLogCoreService.java
  47. 37 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/impl/InfApiAccessLogCoreServiceImpl.java
  48. 39 0
      yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/impl/InfApiErrorLogCoreServiceImpl.java
  49. 46 0
      yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiAccessLogCoreServiceTest.java
  50. 45 0
      yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiErrorLogCoreServiceTest.java
  51. 1 0
      yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/package-info.java
  52. 2 0
      yudao-core-service/src/test/resources/sql/clean.sql
  53. 55 0
      yudao-core-service/src/test/resources/sql/create_tables.sql
  54. 1 0
      yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/util/SecurityFrameworkUtils.java
  55. 1 1
      yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/filter/ApiAccessLogFilter.java
  56. 1 2
      yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/service/ApiAccessLogFrameworkService.java
  57. 1 2
      yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/service/ApiErrorLogFrameworkService.java
  58. 1 1
      yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/handler/GlobalExceptionHandler.java
  59. 18 4
      yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/util/WebFrameworkUtils.java
  60. 1 1
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/framework/security/SecurityConfiguration.java
  61. 0 28
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/controller/HelloController.java
  62. 0 20
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/logger/InfApiAccessLogConvert.java
  63. 0 20
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/logger/InfApiErrorLogConvert.java
  64. 0 43
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/file/InfFileDO.java
  65. 0 107
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/logger/InfApiAccessLogDO.java
  66. 0 39
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/config/InfConfigDAOImpl.java
  67. 0 10
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/file/InfFileMapper.java
  68. 0 16
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/logger/InfApiAccessLogMapper.java
  69. 0 14
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/logger/InfApiErrorLogMapper.java
  70. 0 4
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/enums/package-info.java
  71. 0 7
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/package-info.java
  72. 0 36
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/impl/InfApiAccessLogServiceImpl.java
  73. 0 38
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/impl/InfApiErrorLogServiceImpl.java
  74. 0 1
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/package-info.java
  75. 1 0
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/package-info.java
  76. 3 0
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/user/SysUserProfileController.http
  77. 27 0
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/user/SysUserProfileController.java
  78. 8 0
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/service/user/MbrUserService.java
  79. 5 0
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/service/user/impl/MbrUserServiceImpl.java
  80. 2 2
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/convert/auth/SysAuthConvert.java
  81. 11 3
      yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/service/auth/impl/SysAuthServiceImpl.java
  82. 1 1
      yudao-user-server/src/main/resources/application-dev.yaml
  83. 1 1
      yudao-user-server/src/main/resources/application-local.yaml

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/config/InfConfigController.java

@@ -1,12 +1,12 @@
 package cn.iocoder.yudao.adminserver.modules.infra.controller.config;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
 import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.*;
 import cn.iocoder.yudao.adminserver.modules.infra.convert.config.InfConfigConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.adminserver.modules.infra.service.config.InfConfigService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/file/InfFileController.java

@@ -1,12 +1,12 @@
 package cn.iocoder.yudao.adminserver.modules.infra.controller.file;
 
 import cn.hutool.core.io.IoUtil;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFileRespVO;
 import cn.iocoder.yudao.adminserver.modules.infra.convert.file.InfFileConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService;
 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
 import io.swagger.annotations.Api;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/logger/InfApiAccessLogController.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.adminserver.modules.infra.controller.logger;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@@ -9,7 +10,6 @@ import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccess
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogRespVO;
 import cn.iocoder.yudao.adminserver.modules.infra.convert.logger.InfApiAccessLogConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.InfApiAccessLogService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/logger/InfApiErrorLogController.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.adminserver.modules.infra.controller.logger;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
@@ -9,7 +10,6 @@ import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorl
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogPageReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogRespVO;
 import cn.iocoder.yudao.adminserver.modules.infra.convert.logger.InfApiErrorLogConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.InfApiErrorLogService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/config/InfConfigConvert.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.adminserver.modules.infra.convert.config;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigCreateReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigExcelVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigRespVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigUpdateReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 import org.mapstruct.Mapper;
 import org.mapstruct.factory.Mappers;
 

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/file/InfFileConvert.java

@@ -1,8 +1,8 @@
 package cn.iocoder.yudao.adminserver.modules.infra.convert.file;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFileRespVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 import org.mapstruct.Mapper;
 import org.mapstruct.factory.Mappers;
 

+ 1 - 3
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/logger/InfApiAccessLogConvert.java

@@ -1,10 +1,10 @@
 package cn.iocoder.yudao.adminserver.modules.infra.convert.logger;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExcelVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogRespVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import org.mapstruct.Mapper;
 import org.mapstruct.factory.Mappers;
 
@@ -20,8 +20,6 @@ public interface InfApiAccessLogConvert {
 
     InfApiAccessLogConvert INSTANCE = Mappers.getMapper(InfApiAccessLogConvert.class);
 
-    InfApiAccessLogDO convert(ApiAccessLogCreateDTO bean);
-
     InfApiAccessLogRespVO convert(InfApiAccessLogDO bean);
 
     List<InfApiAccessLogRespVO> convertList(List<InfApiAccessLogDO> list);

+ 1 - 4
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/convert/logger/InfApiErrorLogConvert.java

@@ -1,10 +1,9 @@
 package cn.iocoder.yudao.adminserver.modules.infra.convert.logger;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogExcelVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogRespVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import org.mapstruct.Mapper;
 import org.mapstruct.factory.Mappers;
 
@@ -20,8 +19,6 @@ public interface InfApiErrorLogConvert {
 
     InfApiErrorLogConvert INSTANCE = Mappers.getMapper(InfApiErrorLogConvert.class);
 
-    InfApiErrorLogDO convert(ApiErrorLogCreateDTO bean);
-
     InfApiErrorLogRespVO convert(InfApiErrorLogDO bean);
 
     PageResult<InfApiErrorLogRespVO> convertPage(PageResult<InfApiErrorLogDO> page);

+ 0 - 65
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/config/InfConfigDO.java

@@ -1,65 +0,0 @@
-package cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config;
-
-import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.adminserver.modules.infra.enums.config.InfConfigTypeEnum;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.ToString;
-
-/**
- * 参数配置表
- *
- * @author ruoyi
- */
-@TableName("inf_config")
-@Data
-@EqualsAndHashCode(callSuper = true)
-@ToString(callSuper = true)
-public class InfConfigDO extends BaseDO {
-
-    /**
-     * 参数主键
-     */
-    @TableId
-    private Long id;
-    /**
-     * 参数分组
-     */
-    @TableField("`group`")
-    private String group;
-    /**
-     * 参数名称
-     */
-    private String name;
-    /**
-     * 参数键名
-     */
-    @TableField("`key`")
-    private String key;
-    /**
-     * 参数键值
-     */
-    private String value;
-    /**
-     * 参数类型
-     *
-     * 枚举 {@link InfConfigTypeEnum}
-     */
-    @TableField("`type`")
-    private Integer type;
-    /**
-     * 是否敏感
-     *
-     * 对于敏感配置,需要管理权限才能查看
-     */
-    @TableField("`sensitive`")
-    private Boolean sensitive;
-    /**
-     * 备注
-     */
-    private String remark;
-
-}

+ 0 - 153
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/logger/InfApiErrorLogDO.java

@@ -1,153 +0,0 @@
-package cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger;
-
-import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
-import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.adminserver.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
-import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.*;
-
-import java.util.Date;
-
-/**
- * API 异常数据
- *
- * @author 芋道源码
- */
-@TableName("inf_api_error_log")
-@Data
-@EqualsAndHashCode(callSuper = true)
-@ToString(callSuper = true)
-@Builder
-@NoArgsConstructor
-@AllArgsConstructor
-public class InfApiErrorLogDO extends BaseDO {
-
-    /**
-     * 编号
-     */
-    private Long id;
-    /**
-     * 用户编号
-     */
-    private Long userId;
-    /**
-     * 链路追踪编号
-     *
-     * 一般来说,通过链路追踪编号,可以将访问日志,错误日志,链路追踪日志,logger 打印日志等,结合在一起,从而进行排错。
-     */
-    private String traceId;
-    /**
-     * 用户类型
-     *
-     * 枚举 {@link UserTypeEnum}
-     */
-    private Integer userType;
-    /**
-     * 应用名
-     *
-     * 目前读取 spring.application.name
-     */
-    private String applicationName;
-
-    // ========== 请求相关字段 ==========
-
-    /**
-     * 请求方法名
-     */
-    private String requestMethod;
-    /**
-     * 访问地址
-     */
-    private String requestUrl;
-    /**
-     * 请求参数
-     *
-     * query: Query String
-     * body: Quest Body
-     */
-    private String requestParams;
-    /**
-     * 用户 IP
-     */
-    private String userIp;
-    /**
-     * 浏览器 UA
-     */
-    private String userAgent;
-
-    // ========== 异常相关字段 ==========
-
-    /**
-     * 异常发生时间
-     */
-    private Date exceptionTime;
-    /**
-     * 异常名
-     *
-     * {@link Throwable#getClass()} 的类全名
-     */
-    private String exceptionName;
-    /**
-     * 异常导致的消息
-     *
-     * {@link cn.hutool.core.exceptions.ExceptionUtil#getMessage(Throwable)}
-     */
-    private String exceptionMessage;
-    /**
-     * 异常导致的根消息
-     *
-     * {@link cn.hutool.core.exceptions.ExceptionUtil#getRootCauseMessage(Throwable)}
-     */
-    private String exceptionRootCauseMessage;
-    /**
-     * 异常的栈轨迹
-     *
-     * {@link org.apache.commons.lang3.exception.ExceptionUtils#getStackTrace(Throwable)}
-     */
-    private String exceptionStackTrace;
-    /**
-     * 异常发生的类全名
-     *
-     * {@link StackTraceElement#getClassName()}
-     */
-    private String exceptionClassName;
-    /**
-     * 异常发生的类文件
-     *
-     * {@link StackTraceElement#getFileName()}
-     */
-    private String exceptionFileName;
-    /**
-     * 异常发生的方法名
-     *
-     * {@link StackTraceElement#getMethodName()}
-     */
-    private String exceptionMethodName;
-    /**
-     * 异常发生的方法所在行
-     *
-     * {@link StackTraceElement#getLineNumber()}
-     */
-    private Integer exceptionLineNumber;
-
-    // ========== 处理相关字段 ==========
-
-    /**
-     * 处理状态
-     *
-     * 枚举 {@link InfApiErrorLogProcessStatusEnum}
-     */
-    private Integer processStatus;
-    /**
-     * 处理时间
-     */
-    private Date processTime;
-    /**
-     * 处理用户编号
-     *
-     * 关联 {@link SysUserDO#getId()}
-     */
-    private Long processUserId;
-
-}

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/config/InfConfigMapper.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.apache.ibatis.annotations.Mapper;
 

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/file/InfFileMapper.java

@@ -1,10 +1,10 @@
 package cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.file;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 import org.apache.ibatis.annotations.Mapper;
 
 @Mapper

+ 3 - 3
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/logger/InfApiAccessLogMapper.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger;
 
+import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExportReqVO;
+import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
-import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExportReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.util.List;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/logger/InfApiErrorLogMapper.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
 import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.util.List;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/InfConfigService.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.config;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigCreateReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigPageReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigUpdateReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 
 import javax.validation.Valid;
 import java.util.List;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/impl/InfConfigServiceImpl.java

@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.config.impl;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigCreateReqVO;
@@ -8,7 +9,6 @@ import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfig
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigUpdateReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.convert.config.InfConfigConvert;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config.InfConfigMapper;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.adminserver.modules.infra.enums.config.InfConfigTypeEnum;
 import cn.iocoder.yudao.adminserver.modules.infra.mq.producer.config.InfConfigProducer;
 import cn.iocoder.yudao.adminserver.modules.infra.service.config.InfConfigService;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/InfFileService.java

@@ -1,8 +1,8 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.file;
 
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 
 /**
  * 文件 Service 接口

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/impl/InfFileServiceImpl.java

@@ -1,10 +1,10 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.file.impl;
 
 import cn.hutool.core.io.FileTypeUtil;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.framework.file.config.FileProperties;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.file.InfFileMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService;
 import org.springframework.stereotype.Service;

+ 3 - 4
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiAccessLogService.java

@@ -1,10 +1,9 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.logger;
 
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.apilog.core.service.ApiAccessLogFrameworkService;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 
 import java.util.List;
 
@@ -13,7 +12,7 @@ import java.util.List;
  *
  * @author 芋道源码
  */
-public interface InfApiAccessLogService extends ApiAccessLogFrameworkService {
+public interface InfApiAccessLogService {
 
     /**
      * 获得 API 访问日志分页

+ 3 - 4
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiErrorLogService.java

@@ -1,10 +1,9 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.logger;
 
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.apilog.core.service.ApiErrorLogFrameworkService;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 
 import java.util.List;
 
@@ -13,7 +12,7 @@ import java.util.List;
  *
  * @author 芋道源码
  */
-public interface InfApiErrorLogService extends ApiErrorLogFrameworkService {
+public interface InfApiErrorLogService {
 
     /**
      * 获得 API 错误日志分页

+ 2 - 15
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/impl/InfApiAccessLogServiceImpl.java

@@ -1,21 +1,16 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.logger.impl;
 
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.convert.logger.InfApiAccessLogConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger.InfApiAccessLogMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.InfApiAccessLogService;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.scheduling.annotation.AsyncResult;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.util.List;
-import java.util.concurrent.Future;
 
 /**
  * API 访问日志 Service 实现类
@@ -29,14 +24,6 @@ public class InfApiAccessLogServiceImpl implements InfApiAccessLogService {
     @Resource
     private InfApiAccessLogMapper apiAccessLogMapper;
 
-    @Override
-    @Async
-    public Future<Boolean> createApiAccessLogAsync(ApiAccessLogCreateDTO createDTO) {
-        InfApiAccessLogDO apiAccessLog = InfApiAccessLogConvert.INSTANCE.convert(createDTO);
-        int insert = apiAccessLogMapper.insert(apiAccessLog);
-        return new AsyncResult<>(insert > 1);
-    }
-
     @Override
     public PageResult<InfApiAccessLogDO> getApiAccessLogPage(InfApiAccessLogPageReqVO pageReqVO) {
         return apiAccessLogMapper.selectPage(pageReqVO);

+ 3 - 17
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/impl/InfApiErrorLogServiceImpl.java

@@ -1,27 +1,22 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.logger.impl;
 
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.convert.logger.InfApiErrorLogConvert;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger.InfApiErrorLogMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.InfApiErrorLogService;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.scheduling.annotation.AsyncResult;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.util.Date;
 import java.util.List;
-import java.util.concurrent.Future;
 
-import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static cn.iocoder.yudao.adminserver.modules.infra.enums.InfErrorCodeConstants.API_ERROR_LOG_NOT_FOUND;
 import static cn.iocoder.yudao.adminserver.modules.infra.enums.InfErrorCodeConstants.API_ERROR_LOG_PROCESSED;
+import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 
 /**
  * API 错误日志 Service 实现类
@@ -35,15 +30,6 @@ public class InfApiErrorLogServiceImpl implements InfApiErrorLogService {
     @Resource
     private InfApiErrorLogMapper apiErrorLogMapper;
 
-    @Override
-    @Async
-    public Future<Boolean> createApiErrorLogAsync(ApiErrorLogCreateDTO createDTO) {
-        InfApiErrorLogDO apiErrorLog = InfApiErrorLogConvert.INSTANCE.convert(createDTO);
-        apiErrorLog.setProcessStatus(InfApiErrorLogProcessStatusEnum.INIT.getStatus());
-        int insert = apiErrorLogMapper.insert(apiErrorLog);
-        return new AsyncResult<>(insert == 1);
-    }
-
     @Override
     public PageResult<InfApiErrorLogDO> getApiErrorLogPage(InfApiErrorLogPageReqVO pageReqVO) {
         return apiErrorLogMapper.selectPage(pageReqVO);

+ 0 - 3
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/SysUserProfileController.java

@@ -34,9 +34,6 @@ import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
 import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.FILE_IS_EMPTY;
 
-/**
- * @author niudehua
- */
 @Api(tags = "用户个人中心")
 @RestController
 @RequestMapping("/system/user/profile")

+ 1 - 1
yudao-admin-server/src/main/resources/application-dev.yaml

@@ -99,7 +99,7 @@ apollo:
     eagerLoad:
       enabled: true # 设置 Apollo 在日志初始化前生效,可以实现日志的动态级别配置
   jdbc: # 自定义的 JDBC 配置项,用于数据库的地址
-    dao: cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config.InfConfigDAOImpl
+    dao: cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.config.InfConfigCoreDAOImpl
     url: ${spring.datasource.dynamic.datasource.master.url}
     username: ${spring.datasource.dynamic.datasource.master.username}
     password: ${spring.datasource.dynamic.datasource.master.password}

+ 1 - 1
yudao-admin-server/src/main/resources/application-local.yaml

@@ -99,7 +99,7 @@ apollo:
     eagerLoad:
       enabled: true # 设置 Apollo 在日志初始化前生效,可以实现日志的动态级别配置
   jdbc: # 自定义的 JDBC 配置项,用于数据库的地址
-    dao: cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config.InfConfigDAOImpl
+    dao: cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.config.InfConfigCoreDAOImpl
     url: ${spring.datasource.dynamic.datasource.master.url}
     username: ${spring.datasource.dynamic.datasource.master.username}
     password: ${spring.datasource.dynamic.datasource.master.password}

+ 1 - 1
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/config/InfConfigServiceTest.java

@@ -1,12 +1,12 @@
 package cn.iocoder.yudao.adminserver.modules.infra.service.config;
 
 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigCreateReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigPageReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.config.vo.InfConfigUpdateReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.config.InfConfigDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config.InfConfigMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.enums.config.InfConfigTypeEnum;
 import cn.iocoder.yudao.adminserver.modules.infra.mq.producer.config.InfConfigProducer;

+ 1 - 1
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/InfFileServiceTest.java

@@ -2,10 +2,10 @@ package cn.iocoder.yudao.adminserver.modules.infra.service.file;
 
 import cn.hutool.core.io.resource.ResourceUtil;
 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.adminserver.modules.infra.framework.file.config.FileProperties;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file.InfFileDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.file.InfFileMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.service.file.impl.InfFileServiceImpl;
 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;

+ 1 - 21
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiAccessLogServiceImplTest.java

@@ -2,13 +2,13 @@ package cn.iocoder.yudao.adminserver.modules.infra.service.logger;
 
 import cn.hutool.core.util.RandomUtil;
 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
 import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apiaccesslog.InfApiAccessLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger.InfApiAccessLogMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.impl.InfApiAccessLogServiceImpl;
 import cn.iocoder.yudao.framework.test.core.util.RandomUtils;
@@ -38,26 +38,6 @@ public class InfApiAccessLogServiceImplTest extends BaseDbUnitTest {
     @Resource
     private InfApiAccessLogMapper infApiAccessLogMapper;
 
-    @Test
-    public void testCreateApiAccessLogAsync() throws Exception {
-        ApiAccessLogCreateDTO createDTO = RandomUtils.randomPojo(
-                ApiAccessLogCreateDTO.class,
-                dto -> dto.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue())
-        );
-
-        // 执行service方法
-        Future<Boolean> future = infApiAccessLogServiceImpl.createApiAccessLogAsync(createDTO);
-
-        // 等异步执行完
-        future.get();
-
-        InfApiAccessLogDO infApiAccessLogDO = infApiAccessLogMapper.selectOne(null);
-        // 断言
-        assertNotNull(infApiAccessLogDO);
-        // 断言,忽略基本字段
-        assertPojoEquals(createDTO, infApiAccessLogDO);
-    }
-
     @Test
     public void testGetApiAccessLogPage() {
         // 构造测试数据

+ 2 - 23
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/logger/InfApiErrorLogServiceImplTest.java

@@ -2,12 +2,12 @@ package cn.iocoder.yudao.adminserver.modules.infra.service.logger;
 
 import cn.hutool.core.util.RandomUtil;
 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogExportReqVO;
 import cn.iocoder.yudao.adminserver.modules.infra.controller.logger.vo.apierrorlog.InfApiErrorLogPageReqVO;
-import cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
 import cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.logger.InfApiErrorLogMapper;
 import cn.iocoder.yudao.adminserver.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
 import cn.iocoder.yudao.adminserver.modules.infra.service.logger.impl.InfApiErrorLogServiceImpl;
@@ -41,28 +41,6 @@ public class InfApiErrorLogServiceImplTest extends BaseDbUnitTest {
     @Resource
     private InfApiErrorLogMapper infApiErrorLogMapper;
 
-
-    @Test
-    public void testCreateApiErrorLogAsync() throws Exception {
-        ApiErrorLogCreateDTO createDTO = RandomUtils.randomPojo(
-                ApiErrorLogCreateDTO.class,
-                dto -> dto.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue())
-        );
-
-        // 执行service方法
-        Future<Boolean> future = infApiErrorLogServiceImpl.createApiErrorLogAsync(createDTO);
-
-        // 等异步执行完
-        future.get();
-
-        InfApiErrorLogDO infApiErrorLogDO = infApiErrorLogMapper.selectOne(null);
-        // 断言
-        assertNotNull(infApiErrorLogDO);
-        // 断言,忽略基本字段
-        assertPojoEquals(createDTO, infApiErrorLogDO);
-    }
-
-
     @Test
     public void testGetApiErrorLogPage() {
         // 构造测试数据
@@ -204,4 +182,5 @@ public class InfApiErrorLogServiceImplTest extends BaseDbUnitTest {
         // 验证 progressUserId 是否修改成功
         assertEquals(processUserId, secondSelect.getProcessUserId());
     }
+
 }

+ 6 - 0
yudao-core-service/pom.xml

@@ -61,6 +61,12 @@
             <artifactId>yudao-spring-boot-starter-redis</artifactId>
         </dependency>
 
+        <!-- Config 配置中心相关 -->
+        <dependency>
+            <groupId>cn.iocoder.boot</groupId>
+            <artifactId>yudao-spring-boot-starter-config</artifactId>
+        </dependency>
+
         <!-- Test 测试相关 -->
         <dependency>
             <groupId>cn.iocoder.boot</groupId>

+ 15 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/logger/InfApiAccessLogCoreConvert.java

@@ -0,0 +1,15 @@
+package cn.iocoder.yudao.coreservice.modules.infra.convert.logger;
+
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import org.mapstruct.Mapper;
+import org.mapstruct.factory.Mappers;
+
+@Mapper
+public interface InfApiAccessLogCoreConvert {
+
+    InfApiAccessLogCoreConvert INSTANCE = Mappers.getMapper(InfApiAccessLogCoreConvert.class);
+
+    InfApiAccessLogDO convert(ApiAccessLogCreateDTO bean);
+
+}

+ 15 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/logger/InfApiErrorLogCoreConvert.java

@@ -0,0 +1,15 @@
+package cn.iocoder.yudao.coreservice.modules.infra.convert.logger;
+
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import org.mapstruct.Mapper;
+import org.mapstruct.factory.Mappers;
+
+@Mapper
+public interface InfApiErrorLogCoreConvert {
+
+    InfApiErrorLogCoreConvert INSTANCE = Mappers.getMapper(InfApiErrorLogCoreConvert.class);
+
+    InfApiErrorLogDO convert(ApiErrorLogCreateDTO bean);
+
+}

+ 1 - 1
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/package-info.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/package-info.java

@@ -3,4 +3,4 @@
  *
  * 目前使用 MapStruct 框架
  */
-package cn.iocoder.yudao.userserver.modules.infra.convert;
+package cn.iocoder.yudao.coreservice.modules.infra.convert;

+ 0 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/convert/《芋道 Spring Boot 对象转换 MapStruct 入门》.md


+ 1 - 1
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/config/InfConfigDO.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/config/InfConfigDO.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.config;
+package cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.config;
 
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
 import com.baomidou.mybatisplus.annotation.TableField;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/file/InfFileDO.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/file/InfFileDO.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.file;
+package cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file;
 
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
 import com.baomidou.mybatisplus.annotation.IdType;

+ 1 - 1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/dataobject/logger/InfApiAccessLogDO.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/logger/InfApiAccessLogDO.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.adminserver.modules.infra.dal.dataobject.logger;
+package cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger;
 
 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;

+ 2 - 2
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/logger/InfApiErrorLogDO.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/dataobject/logger/InfApiErrorLogDO.java

@@ -1,8 +1,8 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger;
+package cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger;
 
 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.userserver.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
+import cn.iocoder.yudao.coreservice.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
 

+ 4 - 4
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/dal/mysql/config/InfConfigDAOImpl.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/config/InfConfigCoreDAOImpl.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.adminserver.modules.infra.dal.mysql.config;
+package cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.config;
 
 import cn.iocoder.yudao.framework.apollo.internals.ConfigFrameworkDAO;
 import cn.iocoder.yudao.framework.apollo.internals.dto.ConfigRespDTO;
@@ -12,15 +12,15 @@ import java.util.Date;
 import java.util.List;
 
 /**
- * ConfigFrameworkDAO 实现类
+ * ConfigFrameworkDAO Core 实现类
  *
  * @author 芋道源码
  */
-public class InfConfigDAOImpl implements ConfigFrameworkDAO {
+public class InfConfigCoreDAOImpl implements ConfigFrameworkDAO {
 
     private final JdbcTemplate jdbcTemplate;
 
-    public InfConfigDAOImpl(String jdbcUrl, String username, String password) {
+    public InfConfigCoreDAOImpl(String jdbcUrl, String username, String password) {
         DataSource dataSource = new DriverManagerDataSource(jdbcUrl, username, password);
         this.jdbcTemplate = new JdbcTemplate(dataSource);
     }

+ 10 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/file/InfFileCoreMapper.java

@@ -0,0 +1,10 @@
+package cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.file;
+
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface InfFileCoreMapper extends BaseMapperX<InfFileDO> {
+
+}

+ 14 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/logger/InfApiAccessLogCoreMapper.java

@@ -0,0 +1,14 @@
+package cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger;
+
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * API 访问日志 Mapper
+ *
+ * @author 芋道源码
+ */
+@Mapper
+public interface InfApiAccessLogCoreMapper extends BaseMapperX<InfApiAccessLogDO> {
+}

+ 9 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/dal/mysql/logger/InfApiErrorLogCoreMapper.java

@@ -0,0 +1,9 @@
+package cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger;
+
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface InfApiErrorLogCoreMapper extends BaseMapperX<InfApiErrorLogDO> {
+}

+ 1 - 1
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/enums/logger/InfApiErrorLogProcessStatusEnum.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/enums/logger/InfApiErrorLogProcessStatusEnum.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.userserver.modules.infra.enums.logger;
+package cn.iocoder.yudao.coreservice.modules.infra.enums.logger;
 
 import lombok.AllArgsConstructor;
 import lombok.Getter;

+ 4 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/enums/package-info.java

@@ -0,0 +1,4 @@
+/**
+ * 占位类,可以无视
+ */
+package cn.iocoder.yudao.coreservice.modules.infra.enums;

+ 2 - 2
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/InfApiAccessLogService.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiAccessLogCoreService.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.userserver.modules.infra.service.logger;
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger;
 
 import cn.iocoder.yudao.framework.apilog.core.service.ApiAccessLogFrameworkService;
 
@@ -7,6 +7,6 @@ import cn.iocoder.yudao.framework.apilog.core.service.ApiAccessLogFrameworkServi
  *
  * @author 芋道源码
  */
-public interface InfApiAccessLogService extends ApiAccessLogFrameworkService {
+public interface InfApiAccessLogCoreService extends ApiAccessLogFrameworkService {
 
 }

+ 2 - 2
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/InfApiErrorLogService.java → yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiErrorLogCoreService.java

@@ -1,4 +1,4 @@
-package cn.iocoder.yudao.userserver.modules.infra.service.logger;
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger;
 
 import cn.iocoder.yudao.framework.apilog.core.service.ApiErrorLogFrameworkService;
 
@@ -7,6 +7,6 @@ import cn.iocoder.yudao.framework.apilog.core.service.ApiErrorLogFrameworkServic
  *
  * @author 芋道源码
  */
-public interface InfApiErrorLogService extends ApiErrorLogFrameworkService {
+public interface InfApiErrorLogCoreService extends ApiErrorLogFrameworkService {
 
 }

+ 37 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/impl/InfApiAccessLogCoreServiceImpl.java

@@ -0,0 +1,37 @@
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger.impl;
+
+import cn.iocoder.yudao.coreservice.modules.infra.convert.logger.InfApiAccessLogCoreConvert;
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger.InfApiAccessLogCoreMapper;
+import cn.iocoder.yudao.coreservice.modules.infra.service.logger.InfApiAccessLogCoreService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.AsyncResult;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+import java.util.concurrent.Future;
+
+/**
+ * API 访问日志 Service 实现类
+ *
+ * @author 芋道源码
+ */
+@Service
+@Validated
+@Slf4j
+public class InfApiAccessLogCoreServiceImpl implements InfApiAccessLogCoreService {
+
+    @Resource
+    private InfApiAccessLogCoreMapper apiAccessLogMapper;
+
+    @Override
+    @Async
+    public void createApiAccessLogAsync(ApiAccessLogCreateDTO createDTO) {
+        InfApiAccessLogDO apiAccessLog = InfApiAccessLogCoreConvert.INSTANCE.convert(createDTO);
+        apiAccessLogMapper.insert(apiAccessLog);
+    }
+
+}

+ 39 - 0
yudao-core-service/src/main/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/impl/InfApiErrorLogCoreServiceImpl.java

@@ -0,0 +1,39 @@
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger.impl;
+
+import cn.iocoder.yudao.coreservice.modules.infra.convert.logger.InfApiErrorLogCoreConvert;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger.InfApiErrorLogCoreMapper;
+import cn.iocoder.yudao.coreservice.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
+import cn.iocoder.yudao.coreservice.modules.infra.service.logger.InfApiErrorLogCoreService;
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.AsyncResult;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+import java.util.concurrent.Future;
+
+/**
+ * API 错误日志 Service 实现类
+ *
+ * @author 芋道源码
+ */
+@Service
+@Validated
+@Slf4j
+public class InfApiErrorLogCoreServiceImpl implements InfApiErrorLogCoreService {
+
+    @Resource
+    private InfApiErrorLogCoreMapper apiErrorLogMapper;
+
+    @Override
+    @Async
+    public void createApiErrorLogAsync(ApiErrorLogCreateDTO createDTO) {
+        InfApiErrorLogDO apiErrorLog = InfApiErrorLogCoreConvert.INSTANCE.convert(createDTO);
+        apiErrorLog.setProcessStatus(InfApiErrorLogProcessStatusEnum.INIT.getStatus());
+        apiErrorLogMapper.insert(apiErrorLog);
+    }
+
+}

+ 46 - 0
yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiAccessLogCoreServiceTest.java

@@ -0,0 +1,46 @@
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger;
+
+import cn.hutool.core.util.RandomUtil;
+import cn.iocoder.yudao.coreservice.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger.InfApiAccessLogCoreMapper;
+import cn.iocoder.yudao.coreservice.modules.infra.service.logger.impl.InfApiAccessLogCoreServiceImpl;
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
+import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
+import cn.iocoder.yudao.framework.test.core.util.RandomUtils;
+import org.junit.jupiter.api.Test;
+import org.springframework.context.annotation.Import;
+
+import javax.annotation.Resource;
+import java.util.concurrent.Future;
+
+import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+/**
+ * {@link InfApiAccessLogCoreServiceImpl} 单元测试
+ */
+@Import(InfApiAccessLogCoreServiceImpl.class)
+public class InfApiAccessLogCoreServiceTest extends BaseDbUnitTest {
+
+    @Resource
+    private InfApiAccessLogCoreService apiAccessLogCoreService;
+
+    @Resource
+    private InfApiAccessLogCoreMapper apiAccessLogCoreMapper;
+
+    @Test
+    public void testCreateApiAccessLogAsync() {
+        // 准备参数
+        ApiAccessLogCreateDTO createDTO = RandomUtils.randomPojo(ApiAccessLogCreateDTO.class,
+                dto -> dto.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue()));
+
+        // 调用
+        apiAccessLogCoreService.createApiAccessLogAsync(createDTO);
+        // 断言
+        InfApiAccessLogDO infApiAccessLogDO = apiAccessLogCoreMapper.selectOne(null);
+        assertNotNull(infApiAccessLogDO);
+        assertPojoEquals(createDTO, infApiAccessLogDO);
+    }
+
+}

+ 45 - 0
yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/logger/InfApiErrorLogCoreServiceTest.java

@@ -0,0 +1,45 @@
+package cn.iocoder.yudao.coreservice.modules.infra.service.logger;
+
+import cn.hutool.core.util.RandomUtil;
+import cn.iocoder.yudao.coreservice.BaseDbUnitTest;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
+import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.logger.InfApiErrorLogCoreMapper;
+import cn.iocoder.yudao.coreservice.modules.infra.service.logger.impl.InfApiErrorLogCoreServiceImpl;
+import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
+import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
+import cn.iocoder.yudao.framework.test.core.util.RandomUtils;
+import org.junit.jupiter.api.Test;
+import org.springframework.context.annotation.Import;
+
+import javax.annotation.Resource;
+
+import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
+/**
+ * {@link InfApiErrorLogCoreServiceImpl} 单元测试
+ */
+@Import(InfApiErrorLogCoreServiceImpl.class)
+public class InfApiErrorLogCoreServiceTest extends BaseDbUnitTest {
+
+    @Resource
+    private InfApiErrorLogCoreService apiErrorLogCoreService;
+
+    @Resource
+    private InfApiErrorLogCoreMapper infApiErrorLogCoreMapper;
+
+    @Test
+    public void testCreateApiErrorLogAsync() {
+        // 准备参数
+        ApiErrorLogCreateDTO createDTO = RandomUtils.randomPojo(ApiErrorLogCreateDTO.class,
+                dto -> dto.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue()));
+
+        // 调用
+        apiErrorLogCoreService.createApiErrorLogAsync(createDTO);
+        // 断言
+        InfApiErrorLogDO infApiErrorLogDO = infApiErrorLogCoreMapper.selectOne(null);
+        assertNotNull(infApiErrorLogDO);
+        assertPojoEquals(createDTO, infApiErrorLogDO);
+    }
+
+}

+ 1 - 0
yudao-core-service/src/test/java/cn/iocoder/yudao/coreservice/modules/infra/service/package-info.java

@@ -0,0 +1 @@
+package cn.iocoder.yudao.coreservice.modules.infra.service;

+ 2 - 0
yudao-core-service/src/test/resources/sql/clean.sql

@@ -1,4 +1,6 @@
 -- inf 开头的 DB
+DELETE FROM "inf_api_access_log";
+DELETE FROM "inf_api_error_log";
 
 -- sys 开头的 DB
 DELETE FROM "sys_user_session";

+ 55 - 0
yudao-core-service/src/test/resources/sql/create_tables.sql

@@ -33,3 +33,58 @@ CREATE TABLE IF NOT EXISTS "sys_dict_data" (
     "deleted" bit NOT NULL DEFAULT FALSE,
     PRIMARY KEY ("id")
 ) COMMENT '字典数据表';
+
+CREATE TABLE IF NOT EXISTS "inf_api_access_log" (
+    "id" bigint not null GENERATED BY DEFAULT AS IDENTITY,
+    "trace_id" varchar(64) not null default '',
+    "user_id" bigint not null default '0',
+    "user_type" tinyint not null default '0',
+    "application_name" varchar(50) not null,
+    "request_method" varchar(16) not null default '',
+    "request_url" varchar(255) not null default '',
+    "request_params" varchar(8000) not null default '',
+    "user_ip" varchar(50) not null,
+    "user_agent" varchar(512) not null,
+    "begin_time" timestamp not null,
+    "end_time" timestamp not null,
+    "duration" integer not null,
+    "result_code" integer not null default '0',
+    "result_msg" varchar(512) default '',
+    "creator" varchar(64) default '',
+    "create_time" timestamp not null default current_timestamp,
+    "updater" varchar(64) default '',
+    "update_time" timestamp not null default current_timestamp,
+    "deleted" bit not null default false,
+    primary key ("id")
+    ) COMMENT 'API 访问日志表';
+
+CREATE TABLE IF NOT EXISTS "inf_api_error_log" (
+    "id" integer not null GENERATED BY DEFAULT AS IDENTITY,
+    "trace_id" varchar(64) not null,
+    "user_id" bigint not null default '0',
+    "user_type" tinyint not null default '0',
+    "application_name" varchar(50) not null,
+    "request_method" varchar(16) not null,
+    "request_url" varchar(255) not null,
+    "request_params" varchar(8000) not null,
+    "user_ip" varchar(50) not null,
+    "user_agent" varchar(512) not null,
+    "exception_time" timestamp not null,
+    "exception_name" varchar(128) not null default '',
+    "exception_message" clob not null,
+    "exception_root_cause_message" clob not null,
+    "exception_stack_trace" clob not null,
+    "exception_class_name" varchar(512) not null,
+    "exception_file_name" varchar(512) not null,
+    "exception_method_name" varchar(512) not null,
+    "exception_line_number" integer not null,
+    "process_status" tinyint not null,
+    "process_time" timestamp default null,
+    "process_user_id" bigint default '0',
+    "creator" varchar(64) default '',
+    "create_time" timestamp not null default current_timestamp,
+    "updater" varchar(64) default '',
+    "update_time" timestamp not null default current_timestamp,
+    "deleted" bit not null default false,
+    primary key ("id")
+    ) COMMENT '系统异常日志';

+ 1 - 0
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/util/SecurityFrameworkUtils.java

@@ -97,6 +97,7 @@ public class SecurityFrameworkUtils {
         // 额外设置到 request 中,用于 ApiAccessLogFilter 可以获取到用户编号;
         // 原因是,Spring Security 的 Filter 在 ApiAccessLogFilter 后面,在它记录访问日志时,线上上下文已经没有用户编号等信息
         WebFrameworkUtils.setLoginUserId(request, loginUser.getId());
+        WebFrameworkUtils.setLoginUserType(request, loginUser.getUserType());
     }
 
 }

+ 1 - 1
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/filter/ApiAccessLogFilter.java

@@ -81,7 +81,7 @@ public class ApiAccessLogFilter extends OncePerRequestFilter {
                                       Map<String, String> queryString, String requestBody, Exception ex) {
         // 处理用户信息
         accessLog.setUserId(WebFrameworkUtils.getLoginUserId(request));
-        accessLog.setUserType(WebFrameworkUtils.getUserType(request));
+        accessLog.setUserType(WebFrameworkUtils.getLoginUserType(request));
         // 设置访问结果
         CommonResult<?> result = WebFrameworkUtils.getCommonResult(request);
         if (result != null) {

+ 1 - 2
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/service/ApiAccessLogFrameworkService.java

@@ -16,8 +16,7 @@ public interface ApiAccessLogFrameworkService {
      * 创建 API 访问日志
      *
      * @param createDTO 创建信息
-     * @return 是否创建成功
      */
-    Future<Boolean> createApiAccessLogAsync(@Valid ApiAccessLogCreateDTO createDTO);
+    void createApiAccessLogAsync(@Valid ApiAccessLogCreateDTO createDTO);
 
 }

+ 1 - 2
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/apilog/core/service/ApiErrorLogFrameworkService.java

@@ -16,8 +16,7 @@ public interface ApiErrorLogFrameworkService {
      * 创建 API 错误日志
      *
      * @param createDTO 创建信息
-     * @return 是否创建成功
      */
-    Future<Boolean> createApiErrorLogAsync(@Valid ApiErrorLogCreateDTO createDTO);
+    void createApiErrorLogAsync(@Valid ApiErrorLogCreateDTO createDTO);
 
 }

+ 1 - 1
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/handler/GlobalExceptionHandler.java

@@ -245,7 +245,7 @@ public class GlobalExceptionHandler {
     private void initExceptionLog(ApiErrorLogCreateDTO errorLog, HttpServletRequest request, Throwable e) {
         // 处理用户信息
         errorLog.setUserId(WebFrameworkUtils.getLoginUserId(request));
-        errorLog.setUserType(WebFrameworkUtils.getUserType(request));
+        errorLog.setUserType(WebFrameworkUtils.getLoginUserType(request));
         // 设置异常字段
         errorLog.setExceptionName(e.getClass().getName());
         errorLog.setExceptionMessage(ExceptionUtil.getMessage(e));

+ 18 - 4
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/util/WebFrameworkUtils.java

@@ -17,6 +17,7 @@ import javax.servlet.http.HttpServletRequest;
 public class WebFrameworkUtils {
 
     private static final String REQUEST_ATTRIBUTE_LOGIN_USER_ID = "login_user_id";
+    private static final String REQUEST_ATTRIBUTE_LOGIN_USER_TYPE = "login_user_type";
 
     private static final String REQUEST_ATTRIBUTE_COMMON_RESULT = "common_result";
 
@@ -24,6 +25,10 @@ public class WebFrameworkUtils {
         request.setAttribute(REQUEST_ATTRIBUTE_LOGIN_USER_ID, userId);
     }
 
+    public static void setLoginUserType(ServletRequest request, Integer userType) {
+        request.setAttribute(REQUEST_ATTRIBUTE_LOGIN_USER_TYPE, userType);
+    }
+
     /**
      * 获得当前用户的编号,从请求中
      *
@@ -37,15 +42,24 @@ public class WebFrameworkUtils {
         return (Long) request.getAttribute(REQUEST_ATTRIBUTE_LOGIN_USER_ID);
     }
 
+    /**
+     * 获得当前用户的类型,从请求中
+     *
+     * @param request 请求
+     * @return 用户编号
+     */
+    public static Integer getLoginUserType(HttpServletRequest request) {
+        if (request == null) {
+            return null;
+        }
+        return (Integer) request.getAttribute(REQUEST_ATTRIBUTE_LOGIN_USER_TYPE);
+    }
+
     public static Long getLoginUserId() {
         HttpServletRequest request = getRequest();
         return getLoginUserId(request);
     }
 
-    public static Integer getUserType(HttpServletRequest request) {
-        return UserTypeEnum.ADMIN.getValue(); // TODO 芋艿:等后续优化
-    }
-
     public static void setCommonResult(ServletRequest request, CommonResult<?> result) {
         request.setAttribute(REQUEST_ATTRIBUTE_COMMON_RESULT, result);
     }

+ 1 - 1
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/framework/security/SecurityConfiguration.java

@@ -18,7 +18,7 @@ public class SecurityConfiguration {
     @Bean
     public Customizer<ExpressionUrlAuthorizationConfigurer<HttpSecurity>.ExpressionInterceptUrlRegistry> authorizeRequestsCustomizer() {
         return registry -> {
-            registry.antMatchers(api("/**")).anonymous(); // 默认 API 都是用户可访问
+            registry.antMatchers(api("/**")).permitAll(); // 默认 API 都是用户可访问
         };
     }
 

+ 0 - 28
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/controller/HelloController.java

@@ -1,28 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.controller;
-
-import cn.iocoder.yudao.framework.security.core.annotations.PreAuthenticated;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.security.access.annotation.Secured;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @author weir
- */
-@Slf4j
-@RestController
-public class HelloController {
-
-    @RequestMapping("/user/hello")
-    public String hello(String hello) {
-        return "echo + " + hello;
-    }
-
-    @RequestMapping("/user/info")
-    @PreAuthenticated
-    public String xx() {
-        return "none";
-    }
-
-}

+ 0 - 20
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/logger/InfApiAccessLogConvert.java

@@ -1,20 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.convert.logger;
-
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
-import org.mapstruct.Mapper;
-import org.mapstruct.factory.Mappers;
-
-/**
- * API 访问日志 Convert
- *
- * @author 芋道源码
- */
-@Mapper
-public interface InfApiAccessLogConvert {
-
-    InfApiAccessLogConvert INSTANCE = Mappers.getMapper(InfApiAccessLogConvert.class);
-
-    InfApiAccessLogDO convert(ApiAccessLogCreateDTO bean);
-
-}

+ 0 - 20
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/convert/logger/InfApiErrorLogConvert.java

@@ -1,20 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.convert.logger;
-
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
-import org.mapstruct.Mapper;
-import org.mapstruct.factory.Mappers;
-
-/**
- * API 错误日志 Convert
- *
- * @author 芋道源码
- */
-@Mapper
-public interface InfApiErrorLogConvert {
-
-    InfApiErrorLogConvert INSTANCE = Mappers.getMapper(InfApiErrorLogConvert.class);
-
-    InfApiErrorLogDO convert(ApiErrorLogCreateDTO bean);
-
-}

+ 0 - 43
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/file/InfFileDO.java

@@ -1,43 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.file;
-
-import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.*;
-
-import java.io.InputStream;
-
-/**
- * 文件表
- *
- * @author 芋道源码
- */
-@Data
-@TableName("inf_file")
-@EqualsAndHashCode(callSuper = true)
-@ToString(callSuper = true)
-@Builder
-@NoArgsConstructor
-@AllArgsConstructor
-public class InfFileDO extends BaseDO {
-
-    /**
-     * 文件路径
-     */
-    @TableId(type = IdType.INPUT)
-    private String id;
-    /**
-     * 文件类型
-     *
-     * 通过 {@link cn.hutool.core.io.FileTypeUtil#getType(InputStream)} 获取
-     */
-    @TableField(value = "`type`")
-    private String type;
-    /**
-     * 文件内容
-     */
-    private byte[] content;
-
-}

+ 0 - 107
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/dataobject/logger/InfApiAccessLogDO.java

@@ -1,107 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger;
-
-import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
-import cn.iocoder.yudao.framework.common.pojo.CommonResult;
-import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.*;
-
-import java.util.Date;
-
-/**
- * API 访问日志
- *
- * @author 芋道源码
- */
-@TableName("inf_api_access_log")
-@Data
-@EqualsAndHashCode(callSuper = true)
-@ToString(callSuper = true)
-@Builder
-@NoArgsConstructor
-@AllArgsConstructor
-public class InfApiAccessLogDO extends BaseDO {
-
-    /**
-     * 编号
-     */
-    @TableId
-    private Integer id;
-    /**
-     * 链路追踪编号
-     *
-     * 一般来说,通过链路追踪编号,可以将访问日志,错误日志,链路追踪日志,logger 打印日志等,结合在一起,从而进行排错。
-     */
-    private String traceId;
-    /**
-     * 用户编号
-     */
-    private Long userId;
-    /**
-     * 用户类型
-     *
-     * 枚举 {@link UserTypeEnum}
-     */
-    private Integer userType;
-    /**
-     * 应用名
-     *
-     * 目前读取 `spring.application.name` 配置项
-     */
-    private String applicationName;
-
-    // ========== 请求相关字段 ==========
-
-    /**
-     * 请求方法名
-     */
-    private String requestMethod;
-    /**
-     * 访问地址
-     */
-    private String requestUrl;
-    /**
-     * 请求参数
-     *
-     * query: Query String
-     * body: Quest Body
-     */
-    private String requestParams;
-    /**
-     * 用户 IP
-     */
-    private String userIp;
-    /**
-     * 浏览器 UA
-     */
-    private String userAgent;
-
-    // ========== 执行相关字段 ==========
-
-    /**
-     * 开始请求时间
-     */
-    private Date beginTime;
-    /**
-     * 结束请求时间
-     */
-    private Date endTime;
-    /**
-     * 执行时长,单位:毫秒
-     */
-    private Integer duration;
-    /**
-     * 结果码
-     *
-     * 目前使用的 {@link CommonResult#getCode()} 属性
-     */
-    private Integer resultCode;
-    /**
-     * 结果提示
-     *
-     * 目前使用的 {@link CommonResult#getMsg()} 属性
-     */
-    private String resultMsg;
-
-}

+ 0 - 39
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/config/InfConfigDAOImpl.java

@@ -1,39 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.mysql.config;
-
-import cn.iocoder.yudao.framework.apollo.internals.ConfigFrameworkDAO;
-import cn.iocoder.yudao.framework.apollo.internals.dto.ConfigRespDTO;
-import org.springframework.jdbc.core.BeanPropertyRowMapper;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.jdbc.datasource.DriverManagerDataSource;
-
-import javax.sql.DataSource;
-import java.sql.ResultSet;
-import java.util.Date;
-import java.util.List;
-
-/**
- * ConfigFrameworkDAO 实现类
- *
- * @author 芋道源码
- */
-public class InfConfigDAOImpl implements ConfigFrameworkDAO {
-
-    private final JdbcTemplate jdbcTemplate;
-
-    public InfConfigDAOImpl(String jdbcUrl, String username, String password) {
-        DataSource dataSource = new DriverManagerDataSource(jdbcUrl, username, password);
-        this.jdbcTemplate = new JdbcTemplate(dataSource);
-    }
-
-    @Override
-    public boolean selectExistsByUpdateTimeAfter(Date maxUpdateTime) {
-        return jdbcTemplate.query("SELECT id FROM inf_config WHERE update_time > ? LIMIT 1",
-                ResultSet::next, maxUpdateTime);
-    }
-
-    @Override
-    public List<ConfigRespDTO> selectList() {
-        return jdbcTemplate.query("SELECT `key`, `value`, update_time, deleted FROM inf_config", new BeanPropertyRowMapper<>(ConfigRespDTO.class));
-    }
-
-}

+ 0 - 10
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/file/InfFileMapper.java

@@ -1,10 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.mysql.file;
-
-import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.file.InfFileDO;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface InfFileMapper extends BaseMapperX<InfFileDO> {
-
-}

+ 0 - 16
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/logger/InfApiAccessLogMapper.java

@@ -1,16 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.mysql.logger;
-
-import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-
-/**
- * API 访问日志 Mapper
- *
- * @author 芋道源码
- */
-@Mapper
-public interface InfApiAccessLogMapper extends BaseMapperX<InfApiAccessLogDO> {
-}

+ 0 - 14
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/dal/mysql/logger/InfApiErrorLogMapper.java

@@ -1,14 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.dal.mysql.logger;
-
-import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
-import org.apache.ibatis.annotations.Mapper;
-
-/**
- * API 错误日志 Mapper
- *
- * @author 芋道源码
- */
-@Mapper
-public interface InfApiErrorLogMapper extends BaseMapperX<InfApiErrorLogDO> {
-}

+ 0 - 4
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/enums/package-info.java

@@ -1,4 +0,0 @@
-/**
- * 占位类,可以无视
- */
-package cn.iocoder.yudao.userserver.modules.infra.enums;

+ 0 - 7
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/package-info.java

@@ -1,7 +0,0 @@
-/**
- * infra 包下,我们放基础设施的运维与管理,支撑上层的通用与核心业务。
- * 例如说:定时任务的管理、服务器的信息等等
- *
- * 缩写:inf
- */
-package cn.iocoder.yudao.userserver.modules.infra;

+ 0 - 36
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/impl/InfApiAccessLogServiceImpl.java

@@ -1,36 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.service.logger.impl;
-
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiAccessLogCreateDTO;
-import cn.iocoder.yudao.userserver.modules.infra.convert.logger.InfApiAccessLogConvert;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiAccessLogDO;
-import cn.iocoder.yudao.userserver.modules.infra.dal.mysql.logger.InfApiAccessLogMapper;
-import cn.iocoder.yudao.userserver.modules.infra.service.logger.InfApiAccessLogService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.scheduling.annotation.AsyncResult;
-import org.springframework.stereotype.Service;
-import org.springframework.validation.annotation.Validated;
-
-import javax.annotation.Resource;
-import java.util.concurrent.Future;
-
-/**
- * API 访问日志 Service 实现类
- *
- * @author 芋道源码
- */
-@Service
-@Validated
-@Slf4j
-public class InfApiAccessLogServiceImpl implements InfApiAccessLogService {
-
-    @Resource
-    private InfApiAccessLogMapper apiAccessLogMapper;
-
-    @Override
-    public Future<Boolean> createApiAccessLogAsync(ApiAccessLogCreateDTO createDTO) {
-        InfApiAccessLogDO apiAccessLog = InfApiAccessLogConvert.INSTANCE.convert(createDTO);
-        int insert = apiAccessLogMapper.insert(apiAccessLog);
-        return new AsyncResult<>(insert > 1);
-    }
-
-}

+ 0 - 38
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/logger/impl/InfApiErrorLogServiceImpl.java

@@ -1,38 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.service.logger.impl;
-
-import cn.iocoder.yudao.framework.apilog.core.service.dto.ApiErrorLogCreateDTO;
-import cn.iocoder.yudao.userserver.modules.infra.convert.logger.InfApiErrorLogConvert;
-import cn.iocoder.yudao.userserver.modules.infra.dal.dataobject.logger.InfApiErrorLogDO;
-import cn.iocoder.yudao.userserver.modules.infra.dal.mysql.logger.InfApiErrorLogMapper;
-import cn.iocoder.yudao.userserver.modules.infra.enums.logger.InfApiErrorLogProcessStatusEnum;
-import cn.iocoder.yudao.userserver.modules.infra.service.logger.InfApiErrorLogService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.scheduling.annotation.AsyncResult;
-import org.springframework.stereotype.Service;
-import org.springframework.validation.annotation.Validated;
-
-import javax.annotation.Resource;
-import java.util.concurrent.Future;
-
-/**
- * API 错误日志 Service 实现类
- *
- * @author 芋道源码
- */
-@Service
-@Validated
-@Slf4j
-public class InfApiErrorLogServiceImpl implements InfApiErrorLogService {
-
-    @Resource
-    private InfApiErrorLogMapper apiErrorLogMapper;
-
-    @Override
-    public Future<Boolean> createApiErrorLogAsync(ApiErrorLogCreateDTO createDTO) {
-        InfApiErrorLogDO apiErrorLog = InfApiErrorLogConvert.INSTANCE.convert(createDTO);
-        apiErrorLog.setProcessStatus(InfApiErrorLogProcessStatusEnum.INIT.getStatus());
-        int insert = apiErrorLogMapper.insert(apiErrorLog);
-        return new AsyncResult<>(insert == 1);
-    }
-
-}

+ 0 - 1
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/package-info.java

@@ -1 +0,0 @@
-package cn.iocoder.yudao.userserver.modules.infra.service;

+ 1 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/package-info.java

@@ -0,0 +1 @@
+package cn.iocoder.yudao.userserver.modules.member.controller;

+ 3 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/user/SysUserProfileController.http

@@ -0,0 +1,3 @@
+### 请求 /system/user/profile/get 接口 => 没有权限
+GET {{userServerUrl}}/system/user/profile/get
+Authorization: Bearer test245

+ 27 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/user/SysUserProfileController.java

@@ -0,0 +1,27 @@
+package cn.iocoder.yudao.userserver.modules.member.controller.user;
+
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.security.core.annotations.PreAuthenticated;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "用户个人中心")
+@RestController
+@RequestMapping("/system/user/profile")
+@Validated
+@Slf4j
+public class SysUserProfileController {
+
+    @GetMapping("/get")
+    @ApiOperation("获得登录用户信息")
+    @PreAuthenticated
+    public CommonResult<Boolean> profile() {
+        return null;
+    }
+
+}

+ 8 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/service/user/MbrUserService.java

@@ -25,4 +25,12 @@ public interface MbrUserService {
      */
     void updateUserLogin(Long id, String loginIp);
 
+    /**
+     * 通过用户 ID 查询用户
+     *
+     * @param id 用户ID
+     * @return 用户对象信息
+     */
+    MbrUserDO getUser(Long id);
+
 }

+ 5 - 0
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/service/user/impl/MbrUserServiceImpl.java

@@ -33,4 +33,9 @@ public class MbrUserServiceImpl implements MbrUserService {
         userMapper.updateById(new MbrUserDO().setId(id).setLoginIp(loginIp).setLoginDate(new Date()));
     }
 
+    @Override
+    public MbrUserDO getUser(Long id) {
+        return userMapper.selectById(id);
+    }
+
 }

+ 2 - 2
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/convert/auth/MbrAuthConvert.java → yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/convert/auth/SysAuthConvert.java

@@ -8,9 +8,9 @@ import org.mapstruct.Mapping;
 import org.mapstruct.factory.Mappers;
 
 @Mapper
-public interface MbrAuthConvert {
+public interface SysAuthConvert {
 
-    MbrAuthConvert INSTANCE = Mappers.getMapper(MbrAuthConvert.class);
+    SysAuthConvert INSTANCE = Mappers.getMapper(SysAuthConvert.class);
 
     @Mapping(source = "mobile", target = "username")
     LoginUser convert0(MbrUserDO bean);

+ 11 - 3
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/service/auth/impl/SysAuthServiceImpl.java

@@ -7,7 +7,7 @@ import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils;
 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
 import cn.iocoder.yudao.framework.security.core.LoginUser;
 import cn.iocoder.yudao.userserver.modules.system.controller.auth.vo.SysAuthLoginReqVO;
-import cn.iocoder.yudao.userserver.modules.system.convert.auth.MbrAuthConvert;
+import cn.iocoder.yudao.userserver.modules.system.convert.auth.SysAuthConvert;
 import cn.iocoder.yudao.userserver.modules.member.dal.dataobject.user.MbrUserDO;
 import cn.iocoder.yudao.userserver.modules.system.service.auth.SysAuthService;
 import cn.iocoder.yudao.userserver.modules.member.service.user.MbrUserService;
@@ -60,7 +60,7 @@ public class SysAuthServiceImpl implements SysAuthService {
             throw new UsernameNotFoundException(mobile);
         }
         // 创建 LoginUser 对象
-        return MbrAuthConvert.INSTANCE.convert(user);
+        return SysAuthConvert.INSTANCE.convert(user);
     }
 
     @Override
@@ -125,7 +125,15 @@ public class SysAuthServiceImpl implements SysAuthService {
 
     @Override
     public LoginUser mockLogin(Long userId) {
-        return null;
+        // 获取用户编号对应的 MbrUserDO
+        MbrUserDO user = userService.getUser(userId);
+        if (user == null) {
+            throw new UsernameNotFoundException(String.valueOf(userId));
+        }
+        this.createLoginLog(user.getMobile(), SysLoginLogTypeEnum.LOGIN_MOCK, SysLoginResultEnum.SUCCESS);
+
+        // 创建 LoginUser 对象
+        return SysAuthConvert.INSTANCE.convert(user);
     }
 
     @Override

+ 1 - 1
yudao-user-server/src/main/resources/application-dev.yaml

@@ -72,7 +72,7 @@ apollo:
     eagerLoad:
       enabled: true # 设置 Apollo 在日志初始化前生效,可以实现日志的动态级别配置
   jdbc: # 自定义的 JDBC 配置项,用于数据库的地址
-    dao: cn.iocoder.yudao.userserver.modules.infra.dal.mysql.config.InfConfigDAOImpl
+    dao: cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.config.InfConfigCoreDAOImpl
     url: ${spring.datasource.dynamic.datasource.master.url}
     username: ${spring.datasource.dynamic.datasource.master.username}
     password: ${spring.datasource.dynamic.datasource.master.password}

+ 1 - 1
yudao-user-server/src/main/resources/application-local.yaml

@@ -72,7 +72,7 @@ apollo:
     eagerLoad:
       enabled: true # 设置 Apollo 在日志初始化前生效,可以实现日志的动态级别配置
   jdbc: # 自定义的 JDBC 配置项,用于数据库的地址
-    dao: cn.iocoder.yudao.userserver.modules.infra.dal.mysql.config.InfConfigDAOImpl
+    dao: cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.config.InfConfigCoreDAOImpl
     url: ${spring.datasource.dynamic.datasource.master.url}
     username: ${spring.datasource.dynamic.datasource.master.username}
     password: ${spring.datasource.dynamic.datasource.master.password}