miemie %!s(int64=6) %!d(string=hai) anos
pai
achega
669842fa46

+ 16 - 16
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/AbstractWrapper.java

@@ -222,6 +222,14 @@ public abstract class AbstractWrapper<T, R, Children extends AbstractWrapper<T,
         return typedThis;
     }
 
+    @Override
+    public Children comment(boolean condition, String comment) {
+        if (condition) {
+            this.sqlComment = new SharedString(comment);
+        }
+        return typedThis;
+    }
+
     @Override
     public Children exists(boolean condition, String existsSql) {
         return doIt(condition, EXISTS, () -> String.format("(%s)", existsSql));
@@ -429,6 +437,14 @@ public abstract class AbstractWrapper<T, R, Children extends AbstractWrapper<T,
         return null;
     }
 
+    @Override
+    public String getSqlComment() {
+        if (StringUtils.isNotEmpty(sqlComment.getStringValue())) {
+            return "/*" + StringEscape.escapeRawString(sqlComment.getStringValue()) + "*/";
+        }
+        return null;
+    }
+
     @Override
     public MergeSegments getExpression() {
         return expression;
@@ -438,22 +454,6 @@ public abstract class AbstractWrapper<T, R, Children extends AbstractWrapper<T,
         return paramNameValuePairs;
     }
 
-    /**
-     * @param sqlComment SQL注释
-     */
-    public Children sqlComment(String sqlComment) {
-        this.sqlComment = new SharedString(sqlComment);
-        return typedThis;
-    }
-
-    @Override
-    public String getSqlComment() {
-        if (StringUtils.isNotEmpty(sqlComment.getStringValue())) {
-            return "/*" + StringEscape.escapeRawString(sqlComment.getStringValue()) + "*/";
-        }
-        return null;
-    }
-
     /**
      * 获取 columnName
      */

+ 16 - 0
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/interfaces/Join.java

@@ -78,6 +78,22 @@ public interface Join<Children> extends Serializable {
      */
     Children last(boolean condition, String lastSql);
 
+    /**
+     * ignore
+     */
+    default Children comment(String comment) {
+        return comment(true, comment);
+    }
+
+    /**
+     * sql 注释(会拼接在 sql 的最后面)
+     *
+     * @param condition 执行条件
+     * @param comment   sql注释
+     * @return children
+     */
+    Children comment(boolean condition, String comment);
+
     /**
      * ignore
      */

+ 12 - 6
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/service/additional/AbstractChainWrapper.java

@@ -15,11 +15,6 @@
  */
 package com.baomidou.mybatisplus.extension.service.additional;
 
-import java.util.Collection;
-import java.util.Map;
-import java.util.function.BiPredicate;
-import java.util.function.Function;
-
 import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.interfaces.Compare;
@@ -29,6 +24,11 @@ import com.baomidou.mybatisplus.core.conditions.interfaces.Nested;
 import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments;
 import com.baomidou.mybatisplus.core.toolkit.ExceptionUtils;
 
+import java.util.Collection;
+import java.util.Map;
+import java.util.function.BiPredicate;
+import java.util.function.Function;
+
 /**
  * 所有包装类都继承此抽象类,此抽象类代理了大部分生成 where 条件的方法
  * <li> 泛型: Children ,表示子类 </li>
@@ -54,7 +54,7 @@ public abstract class AbstractChainWrapper<T, R, Children extends AbstractChainW
     }
 
     @SuppressWarnings("rawtypes")
-	public AbstractWrapper getWrapper() {
+    public AbstractWrapper getWrapper() {
         return (AbstractWrapper) wrapperChildren;
     }
 
@@ -229,6 +229,12 @@ public abstract class AbstractChainWrapper<T, R, Children extends AbstractChainW
         return typedThis;
     }
 
+    @Override
+    public Children comment(boolean condition, String comment) {
+        getWrapper().comment(condition, comment);
+        return typedThis;
+    }
+
     @Override
     public Children exists(boolean condition, String existsSql) {
         getWrapper().exists(condition, existsSql);