From fb3d2e60125daf7e614231cf95e7dc4da85deffe Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Sun, 30 Jul 2023 17:16:40 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E7=BB=A7=E6=89=BF=20NullableColumn?= =?UTF-8?q?LogicDeleteProcessor=20=E5=87=8F=E5=B0=91=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E9=87=8F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/DateTimeLogicDeleteProcessor.java | 27 ++----------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/logicdelete/impl/DateTimeLogicDeleteProcessor.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/logicdelete/impl/DateTimeLogicDeleteProcessor.java index beedb5e0..9ad4164a 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/logicdelete/impl/DateTimeLogicDeleteProcessor.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/logicdelete/impl/DateTimeLogicDeleteProcessor.java @@ -16,11 +16,7 @@ package com.mybatisflex.core.logicdelete.impl; -import com.mybatisflex.core.dialect.IDialect; -import com.mybatisflex.core.logicdelete.AbstractLogicDeleteProcessor; -import com.mybatisflex.core.query.QueryColumn; -import com.mybatisflex.core.query.QueryWrapper; -import com.mybatisflex.core.table.TableInfo; +import com.mybatisflex.core.logicdelete.NullableColumnLogicDeleteProcessor; /** * {@link java.time.LocalDateTime} 类型的属性对应的逻辑删除处理器。 @@ -28,26 +24,7 @@ import com.mybatisflex.core.table.TableInfo; * @author 王帅 * @since 2023-06-20 */ -public class DateTimeLogicDeleteProcessor extends AbstractLogicDeleteProcessor { - - @Override - public String buildLogicNormalCondition(String logicColumn, TableInfo tableInfo, IDialect dialect) { - return dialect.wrap(logicColumn) + " IS NULL"; - } - - @Override - public void buildQueryCondition(QueryWrapper queryWrapper, TableInfo tableInfo) { - QueryColumn queryColumn = new QueryColumn(tableInfo.getSchema(), tableInfo.getTableName(), tableInfo.getLogicDeleteColumn()); - queryWrapper.and(queryColumn.isNull()); - } - - /** - * 逻辑删除字段值为 {@code null} 表示数据未删除。 - */ - @Override - public Object getLogicNormalValue() { - return null; - } +public class DateTimeLogicDeleteProcessor extends NullableColumnLogicDeleteProcessor { /** * 逻辑删除字段值为 {@code NOW()} 表示数据删除,并记录删除时间。