diff --git a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/annotations/OperateLog.java b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/annotations/OperateLog.java index 75b5001a..d8ddce32 100644 --- a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/annotations/OperateLog.java +++ b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/annotations/OperateLog.java @@ -38,6 +38,14 @@ public @interface OperateLog { * 实际并不是数组,因为枚举不能设置 null 作为默认值 */ OperateTypeEnum[] type() default {}; + /** + * 业务类型 + */ + String businessType() default ""; + /** + * 业务类型id + */ + long businessId() default 0L; // ========== 开关字段 ========== diff --git a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/aop/OperateLogAspect.java b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/aop/OperateLogAspect.java index f1981f6c..694ab3a4 100644 --- a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/aop/OperateLogAspect.java +++ b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/aop/OperateLogAspect.java @@ -88,11 +88,11 @@ public class OperateLogAspect { private Object around0(ProceedingJoinPoint joinPoint, com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog operateLog, Operation operation) throws Throwable { - // 目前,只有管理员,才记录操作日志!所以非管理员,直接调用,不进行记录 + /*// 目前,只有管理员,才记录操作日志!所以非管理员,直接调用,不进行记录 Integer userType = WebFrameworkUtils.getLoginUserType(); if (!Objects.equals(userType, UserTypeEnum.ADMIN.getValue())) { return joinPoint.proceed(); - } + }*/ // 记录开始时间 LocalDateTime startTime = LocalDateTime.now(); @@ -159,11 +159,20 @@ public class OperateLogAspect { fillRequestFields(operateLogObj); // 补全方法信息 fillMethodFields(operateLogObj, joinPoint, operateLog, startTime, result, exception); + // 补全业务信息 + fillBusinessFields(operateLogObj, operateLog); // 异步记录日志 operateLogFrameworkService.createOperateLog(operateLogObj); } + private static void fillBusinessFields(OperateLog operateLogObj, com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog operateLog) { + if(operateLog != null){ + operateLogObj.setBusinessType(operateLog.businessType()) + .setBusinessId(operateLog.businessId()); + } + } + private static void fillUserFields(OperateLog operateLogObj) { operateLogObj.setUserId(WebFrameworkUtils.getLoginUserId()); operateLogObj.setUserType(WebFrameworkUtils.getLoginUserType()); diff --git a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/enums/OperateTypeEnum.java b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/enums/OperateTypeEnum.java index 608119c1..70198a87 100644 --- a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/enums/OperateTypeEnum.java +++ b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/enums/OperateTypeEnum.java @@ -40,6 +40,34 @@ public enum OperateTypeEnum { * 导入 */ IMPORT(6), + /* + * 保存 + * */ + SAVE(7), + /* + * 送审 + * */ + SUBMIT_AUDIT(8), + /* + * 审核 + * */ + AUDIT(9), + /* + * 批准 + * */ + APPROVE(10), + /* + * 打回 + * */ + REPULSE(11), + /* + * 变更 + * */ + ALTER(12), + /* + * 终止 + * */ + TERMINATE(13), /** * 其它 * diff --git a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/service/OperateLog.java b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/service/OperateLog.java index 955a1780..01ff2759 100644 --- a/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/service/OperateLog.java +++ b/mes-framework/mes-spring-boot-starter-biz-operatelog/src/main/java/com/chanko/yunxi/mes/framework/operatelog/core/service/OperateLog.java @@ -17,7 +17,14 @@ public class OperateLog { * 链路追踪编号 */ private String traceId; - + /** + * 业务类型 用于业务关联 + */ + private String businessType; + /** + * 业务id + */ + private Long businessId; /** * 用户编号 */ diff --git a/mes-module-system/mes-module-system-api/src/main/java/com/chanko/yunxi/mes/module/system/api/logger/dto/OperateLogCreateReqDTO.java b/mes-module-system/mes-module-system-api/src/main/java/com/chanko/yunxi/mes/module/system/api/logger/dto/OperateLogCreateReqDTO.java index 1d2546eb..6bf4584b 100644 --- a/mes-module-system/mes-module-system-api/src/main/java/com/chanko/yunxi/mes/module/system/api/logger/dto/OperateLogCreateReqDTO.java +++ b/mes-module-system/mes-module-system-api/src/main/java/com/chanko/yunxi/mes/module/system/api/logger/dto/OperateLogCreateReqDTO.java @@ -17,7 +17,14 @@ public class OperateLogCreateReqDTO { * 链路追踪编号 */ private String traceId; - + /** + * 业务类型 用于业务关联 + */ + private String businessType; + /** + * 业务id + */ + private Long businessId; /** * 用户编号 */