diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/update/RawValue.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/update/RawValue.java index 3d2a85f4..23cfcb61 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/update/RawValue.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/update/RawValue.java @@ -18,6 +18,7 @@ package com.mybatisflex.core.update; import com.mybatisflex.core.constant.SqlConsts; import com.mybatisflex.core.dialect.IDialect; import com.mybatisflex.core.query.CPI; +import com.mybatisflex.core.query.HasParamsColumn; import com.mybatisflex.core.query.QueryColumn; import com.mybatisflex.core.query.QueryCondition; import com.mybatisflex.core.query.QueryWrapper; @@ -56,4 +57,24 @@ public class RawValue implements Serializable { return object.toString(); } + public Object[] getParams() { + if (object instanceof String) { + return new Object[0]; + } + + if (object instanceof QueryWrapper) { + return CPI.getValueArray((QueryWrapper) object); + } + + if (object instanceof QueryCondition) { + return CPI.getConditionParams((QueryCondition) object); + } + + if (object instanceof HasParamsColumn) { + return ((HasParamsColumn) object).getParamValues(); + } + + return new Object[0]; + } + }