diff --git a/mateclaw-server/src/main/java/vip/mate/config/MybatisPlusConfig.java b/mateclaw-server/src/main/java/vip/mate/config/MybatisPlusConfig.java index 6f120b53..37ab1e20 100644 --- a/mateclaw-server/src/main/java/vip/mate/config/MybatisPlusConfig.java +++ b/mateclaw-server/src/main/java/vip/mate/config/MybatisPlusConfig.java @@ -22,6 +22,12 @@ public class MybatisPlusConfig implements MetaObjectHandler { @Override public void updateFill(MetaObject metaObject) { - this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now()); + // Use setFieldValByName (unconditional) rather than strictUpdateFill, + // which is a no-op when the field already has a value. After a row + // is loaded from the DB its updateTime is non-null, so the strict + // variant left the column frozen at insert time forever — every + // mate_* table inherited this. Unconditional fill matches the + // documented "updateTime moves on every update" expectation. + this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject); } }