|
|
@@ -42,4 +42,112 @@ public class JscSqlProvider {
|
|
|
return sqlBuilder.toString();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public String getSqlListByMapAndTowTime(Map<String, Object> map) {
|
|
|
+ StringBuilder sqlBuilder = new StringBuilder("");
|
|
|
+ if (map != null && map.size() > 0) {
|
|
|
+ String jsc_sql = map.get("jsc_sql").toString();
|
|
|
+ if (StringUtils.isNotEmpty(jsc_sql)) {
|
|
|
+ sqlBuilder.append(jsc_sql);
|
|
|
+ if (map.size() > 1) {
|
|
|
+ sqlBuilder.append(" where ");
|
|
|
+ Set<String> keys = map.keySet();
|
|
|
+ if(keys.contains("begin_time")){
|
|
|
+ String value = String.valueOf(map.get("begin_time"));
|
|
|
+ value = value.substring(0,4);
|
|
|
+ map.put("begin_time",value);
|
|
|
+ }
|
|
|
+ if(keys.contains("end_time")){
|
|
|
+ String value = String.valueOf(map.get("end_time"));
|
|
|
+ value = value.substring(0,4);
|
|
|
+ map.put("end_time",value);
|
|
|
+ }
|
|
|
+ int len = 0;
|
|
|
+ for (String key : keys) {
|
|
|
+ if (key != null && !"jsc_sql".equals(key)) {
|
|
|
+ if (len > 0) {
|
|
|
+ sqlBuilder.append(" and ");
|
|
|
+ }
|
|
|
+ if(keys.contains("begin_time") && keys.contains("end_time")){
|
|
|
+ if ("begin_time".equals(key)) {
|
|
|
+ sqlBuilder.append("sjnf").append(">= #{").append(key.trim()).append("} ");
|
|
|
+ }else if ("end_time".equals(key)) {
|
|
|
+ sqlBuilder.append("sjnf").append("<= #{").append(key.trim()).append("} ");
|
|
|
+ }else if ("id".equals(key)) {
|
|
|
+ sqlBuilder.append("xzqhdm").append(" like #{").append(key.trim()).append("} ").append("||'%'");
|
|
|
+ }
|
|
|
+ }else if(keys.contains("begin_time") || keys.contains("end_time")){
|
|
|
+ if ("begin_time".equals(key) || "end_time".equals(key)) {
|
|
|
+ String newKey = key.trim();
|
|
|
+ if ("begin_time".equals(key) || "end_time".equals(key)) {
|
|
|
+ newKey = "sjnf";
|
|
|
+ }
|
|
|
+ sqlBuilder.append(newKey).append("= #{").append(key.trim()).append("} ");
|
|
|
+ }else if ("id".equals(key)) {
|
|
|
+ sqlBuilder.append("xzqhdm").append(" like #{").append(key.trim()).append("} ").append("||'%'");
|
|
|
+ }
|
|
|
+ }else if ("id".equals(key)) {
|
|
|
+ sqlBuilder.append("xzqhdm").append(" like #{").append(key.trim()).append("} ").append("||'%'");
|
|
|
+ }
|
|
|
+ len++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return sqlBuilder.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public String getSqlListByMapAndTowTime2(Map<String, Object> map) {
|
|
|
+ StringBuilder sqlBuilder = new StringBuilder("");
|
|
|
+ if (map != null && map.size() > 0) {
|
|
|
+ String jsc_sql = map.get("jsc_sql").toString();
|
|
|
+ if (StringUtils.isNotEmpty(jsc_sql)) {
|
|
|
+ sqlBuilder.append("select * from (").append(jsc_sql).append(") as a ");
|
|
|
+ if (map.size() > 1) {
|
|
|
+ sqlBuilder.append(" where ");
|
|
|
+ Set<String> keys = map.keySet();
|
|
|
+ if(keys.contains("begin_time")){
|
|
|
+ String value = String.valueOf(map.get("begin_time"));
|
|
|
+ value = value.substring(0,4);
|
|
|
+ map.put("begin_time",value);
|
|
|
+ }
|
|
|
+ if(keys.contains("end_time")){
|
|
|
+ String value = String.valueOf(map.get("end_time"));
|
|
|
+ value = value.substring(0,4);
|
|
|
+ map.put("end_time",value);
|
|
|
+ }
|
|
|
+ int len = 0;
|
|
|
+ for (String key : keys) {
|
|
|
+ if (key != null && !"jsc_sql".equals(key)) {
|
|
|
+ if (len > 0) {
|
|
|
+ sqlBuilder.append(" and ");
|
|
|
+ }
|
|
|
+ if(keys.contains("begin_time") && keys.contains("end_time")){
|
|
|
+ if ("begin_time".equals(key)) {
|
|
|
+ sqlBuilder.append(" a.").append("sjnf").append(">= #{").append(key.trim()).append("} ");
|
|
|
+ }else if ("end_time".equals(key)) {
|
|
|
+ sqlBuilder.append(" a.").append("sjnf").append("<= #{").append(key.trim()).append("} ");
|
|
|
+ }else {
|
|
|
+ sqlBuilder.append(" a.").append(key.trim()).append("= #{").append(key.trim()).append("} ");
|
|
|
+ }
|
|
|
+ }else if(keys.contains("begin_time") || keys.contains("end_time")){
|
|
|
+ String newKey = key.trim();
|
|
|
+ if ("begin_time".equals(key) || "end_time".equals(key)) {
|
|
|
+ newKey = "sjnf";
|
|
|
+ }
|
|
|
+ sqlBuilder.append(" a.").append(newKey).append("= #{").append(key.trim()).append("} ");
|
|
|
+ }
|
|
|
+ len++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return sqlBuilder.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|