|
@@ -32,10 +32,11 @@ import com.persagy.ibms.data.sdk.criteria.Match_lte;
|
|
|
import com.persagy.ibms.data.sdk.criteria.Match_ne;
|
|
|
import com.persagy.ibms.data.sdk.criteria.Match_notin;
|
|
|
import com.persagy.ibms.data.sdk.criteria.Match_regex;
|
|
|
+import com.persagy.ibms.data.sdk.criteria.Match_startwith;
|
|
|
import com.persagy.ibms.data.sdk.data.SceneDataObject;
|
|
|
-import com.persagy.ibms.data.sdk.data.SceneDataValue;
|
|
|
import com.persagy.ibms.data.sdk.data.SceneDataPrimitive;
|
|
|
import com.persagy.ibms.data.sdk.data.SceneDataSet;
|
|
|
+import com.persagy.ibms.data.sdk.data.SceneDataValue;
|
|
|
import com.sagacloud.advanced.expression.AdvancedExpressionLexer;
|
|
|
import com.sagacloud.advanced.expression.AdvancedExpressionParser;
|
|
|
import com.sagacloud.advanced.expression.AdvancedExpressionScanner;
|
|
@@ -320,7 +321,7 @@ public class QueryUtil {
|
|
|
Object itemValueInner = valueInner.get(itemKeyInner);
|
|
|
if (itemKeyInner.equals("e") || itemKeyInner.equals("ne") || itemKeyInner.equals("gt") || itemKeyInner.equals("gte")
|
|
|
|| itemKeyInner.equals("lt") || itemKeyInner.equals("lte") || itemKeyInner.equals("regex")
|
|
|
- || itemKeyInner.equals("contain")) {
|
|
|
+ || itemKeyInner.equals("contain") || itemKeyInner.equals("startwith")) {
|
|
|
boolean change = false;
|
|
|
if (itemValueInner instanceof JSONObject) {
|
|
|
JSONObject valueInnerInner = (JSONObject) itemValueInner;
|
|
@@ -354,6 +355,9 @@ public class QueryUtil {
|
|
|
} else if (itemKeyInner.equals("contain")) {
|
|
|
Match_contain MatchInner = new Match_contain(itemValueInner, change);
|
|
|
matchList.add(MatchInner);
|
|
|
+ } else if (itemKeyInner.equals("startwith")) {
|
|
|
+ Match_startwith MatchInner = new Match_startwith(itemValueInner, change);
|
|
|
+ matchList.add(MatchInner);
|
|
|
}
|
|
|
} else if (itemKeyInner.equals("in") || itemKeyInner.equals("notin")) {
|
|
|
if (itemValueInner instanceof JSONObject && ((JSONObject) itemValueInner).containsKey("pass")) {
|