|
@@ -1,6 +1,7 @@
|
|
|
package com.util;
|
|
package com.util;
|
|
|
|
|
|
|
|
import com.model.bo.Screen;
|
|
import com.model.bo.Screen;
|
|
|
|
|
+import com.model.bo.ScreenStr;
|
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
|
|
import java.util.Iterator;
|
|
import java.util.Iterator;
|
|
@@ -11,12 +12,16 @@ import java.util.List;
|
|
|
*/
|
|
*/
|
|
|
@Component
|
|
@Component
|
|
|
public class ScreenUtil {
|
|
public class ScreenUtil {
|
|
|
- public String screensUtil(List<Screen> screenList){
|
|
|
|
|
|
|
+ public ScreenStr screensUtil(List<Screen> screenList, String xColumn){
|
|
|
//返回值
|
|
//返回值
|
|
|
|
|
+ ScreenStr screenStr = new ScreenStr();
|
|
|
if (screenList.size() == 0){
|
|
if (screenList.size() == 0){
|
|
|
- return "";
|
|
|
|
|
|
|
+ screenStr.setRet("");
|
|
|
|
|
+ screenStr.setWithColumnRet("");
|
|
|
|
|
+ return screenStr;
|
|
|
}
|
|
}
|
|
|
- String ret = "";
|
|
|
|
|
|
|
+ String ret = ""; //筛选条件
|
|
|
|
|
+ String withColumnRet = ""; //与目标列相同的筛选条件
|
|
|
Iterator isList = screenList.iterator();
|
|
Iterator isList = screenList.iterator();
|
|
|
while (isList.hasNext()){
|
|
while (isList.hasNext()){
|
|
|
Screen screen = (Screen) isList.next();
|
|
Screen screen = (Screen) isList.next();
|
|
@@ -27,15 +32,25 @@ public class ScreenUtil {
|
|
|
|
|
|
|
|
if (columnType != "time" && !("time".equals(columnType))){
|
|
if (columnType != "time" && !("time".equals(columnType))){
|
|
|
String symbVal = getSymbAndVal(symbol, value);
|
|
String symbVal = getSymbAndVal(symbol, value);
|
|
|
- ret = ret + " and " + columnName + " " + symbVal;
|
|
|
|
|
|
|
+ if (xColumn.equals(columnName)){
|
|
|
|
|
+ withColumnRet = ret + " and " + columnName + " " + symbVal;
|
|
|
|
|
+ }else {
|
|
|
|
|
+ ret = ret + " and " + columnName + " " + symbVal;
|
|
|
|
|
+ }
|
|
|
System.out.println("ret:" + ret);
|
|
System.out.println("ret:" + ret);
|
|
|
}if(columnType == "time" || "time".equals(columnType)){
|
|
}if(columnType == "time" || "time".equals(columnType)){
|
|
|
String symbVal = getTimeSymbAndVal(symbol, value);
|
|
String symbVal = getTimeSymbAndVal(symbol, value);
|
|
|
String column = getTimeColumn(columnName);
|
|
String column = getTimeColumn(columnName);
|
|
|
- ret = ret + " and " + column + " " + symbVal;
|
|
|
|
|
|
|
+ if (xColumn.equals(columnName)){
|
|
|
|
|
+ withColumnRet = ret + " and " + column + " " + symbVal;
|
|
|
|
|
+ }else {
|
|
|
|
|
+ ret = ret + " and " + column + " " + symbVal;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- return ret;
|
|
|
|
|
|
|
+ screenStr.setRet(ret);
|
|
|
|
|
+ screenStr.setWithColumnRet(withColumnRet);
|
|
|
|
|
+ return screenStr;
|
|
|
}
|
|
}
|
|
|
public String getSymbAndVal(String symbol, String value){
|
|
public String getSymbAndVal(String symbol, String value){
|
|
|
String values = "" + value;
|
|
String values = "" + value;
|
|
@@ -52,7 +67,13 @@ public class ScreenUtil {
|
|
|
tar = "is null";
|
|
tar = "is null";
|
|
|
}else if ("notNull".equals(symbol)){
|
|
}else if ("notNull".equals(symbol)){
|
|
|
tar = "is not null";
|
|
tar = "is not null";
|
|
|
- }else {
|
|
|
|
|
|
|
+ }else if ("between".equals(symbol)){
|
|
|
|
|
+ tar = "";
|
|
|
|
|
+ String[] str = value.split(",");
|
|
|
|
|
+ String str1 = str[0];
|
|
|
|
|
+ String str2 = str[1];
|
|
|
|
|
+ tar = "between '" + str1 + "' and '" + str2 + "'";
|
|
|
|
|
+ } else {
|
|
|
tar = symbol + " " + values + "'";
|
|
tar = symbol + " " + values + "'";
|
|
|
}
|
|
}
|
|
|
return tar;
|
|
return tar;
|
|
@@ -74,7 +95,7 @@ public class ScreenUtil {
|
|
|
String[] str = value.split(",");
|
|
String[] str = value.split(",");
|
|
|
String str1 = str[0];
|
|
String str1 = str[0];
|
|
|
String str2 = str[1];
|
|
String str2 = str[1];
|
|
|
- tar = "between str1";
|
|
|
|
|
|
|
+ tar = "between '" + str1 + "' and '" + str2 + "'";
|
|
|
}
|
|
}
|
|
|
else {
|
|
else {
|
|
|
tar = symbol + " '" + values + "'";
|
|
tar = symbol + " '" + values + "'";
|