From 94509204d25f7c0ad213ae2322be2bd5bfd17424 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期一, 14 七月 2025 16:30:28 +0800 Subject: [PATCH] 1.初始化配煤计算器数据 2。配煤到待入库 --- ruoyi-common/src/main/java/com/ruoyi/common/handler/MyMetaObjectHandler.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 46 insertions(+), 13 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MyMetaObjectHandler.java b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MyMetaObjectHandler.java index 3ae24ea..da15fc7 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MyMetaObjectHandler.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MyMetaObjectHandler.java @@ -7,23 +7,56 @@ import java.time.LocalDateTime; -/** - * @Author: zhangxy - * @Date: 2020-08-05 14:40 - */ @Component public class MyMetaObjectHandler implements MetaObjectHandler { + + private static final String SYSTEM_USER = "system"; + @Override - public void insertFill(MetaObject metaObject) { - Long userId = SecurityUtils.getLoginUser().getUserId(); - this.strictInsertFill(metaObject, "createBy", Long.class, userId); - this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now()); + public void insertFill(MetaObject meta) { + LocalDateTime now = LocalDateTime.now(); + String userId = getUserId(); + + if (hasField(meta, "createBy")) { + strictInsertFill(meta, "createBy", String.class, userId); + } + if (hasField(meta, "updateBy")) { + strictInsertFill(meta, "updateBy", String.class, userId); + } + if (hasField(meta, "createTime")) { + strictInsertFill(meta, "createTime", LocalDateTime.class, now); + } + if (hasField(meta, "updateTime")) { + strictInsertFill(meta, "updateTime", LocalDateTime.class, now); + } } @Override - public void updateFill(MetaObject metaObject) { - Long userId = SecurityUtils.getLoginUser().getUserId(); - this.strictInsertFill(metaObject, "updateBy", Long.class, userId); - this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now()); + public void updateFill(MetaObject meta) { + LocalDateTime now = LocalDateTime.now(); + String userId = getUserId(); + + if (hasField(meta, "updateBy")) { + strictUpdateFill(meta, "updateBy", String.class, userId); + } + if (hasField(meta, "updateTime")) { + setFieldValByName("updateTime", now, meta); + } } -} + + private String getUserId() { + try { + Long uid = SecurityUtils.getLoginUser().getUserId(); + return uid != null ? uid.toString() : SYSTEM_USER; + } catch (Exception e) { + return SYSTEM_USER; + } + } + + private boolean hasField(MetaObject meta, String fieldName) { + if (meta == null || fieldName == null) { + return false; + } + return meta.hasGetter(fieldName) || meta.hasSetter(fieldName); + } +} \ No newline at end of file -- Gitblit v1.9.3