From e3d2c10dcd06fa0075794435829ac25fd3fc12a7 Mon Sep 17 00:00:00 2001
From: wuxw7 <wuxw7@asiainfo.com>
Date: 星期一, 30 四月 2018 22:09:57 +0800
Subject: [PATCH] 加入控制中心服务
---
java110-service/src/main/java/com/java110/service/smo/impl/QueryServiceSMOImpl.java | 45 +++++++++++++++++++++++++++++----------------
1 files changed, 29 insertions(+), 16 deletions(-)
diff --git a/java110-service/src/main/java/com/java110/service/smo/impl/QueryServiceSMOImpl.java b/java110-service/src/main/java/com/java110/service/smo/impl/QueryServiceSMOImpl.java
index 37f8d25..24070f2 100644
--- a/java110-service/src/main/java/com/java110/service/smo/impl/QueryServiceSMOImpl.java
+++ b/java110-service/src/main/java/com/java110/service/smo/impl/QueryServiceSMOImpl.java
@@ -8,9 +8,9 @@
import com.java110.common.constant.CommonConstant;
import com.java110.common.constant.ResponseConstant;
import com.java110.common.exception.BusinessException;
+import com.java110.common.factory.DataTransactionFactory;
import com.java110.common.log.LoggerEngine;
import com.java110.common.util.Assert;
-import com.java110.common.util.ResponseTemplateUtil;
import com.java110.entity.service.DataQuery;
import com.java110.entity.service.ServiceSql;
import com.java110.service.dao.IQueryServiceDAO;
@@ -19,7 +19,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import java.util.HashMap;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
@@ -56,7 +56,7 @@
doExecuteProc(dataQuery);
}catch (BusinessException e){
logger.error("鍏敤鏌ヨ寮傚父锛�",e);
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_PARAM_ERROR,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_PARAM_ERROR,
e.getMessage()));
}
@@ -83,7 +83,7 @@
doExecuteUpdateProc(dataQuery);
}catch (BusinessException e){
logger.error("鍏敤鏌ヨ寮傚父锛�",e);
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_PARAM_ERROR,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_PARAM_ERROR,
e.getMessage()));
}
@@ -104,7 +104,7 @@
try {
JSONObject params = dataQuery.getRequestParams();
JSONObject sqlObj = JSONObject.parseObject(dataQuery.getServiceSql().getSql());
-
+ List<Object> currentParams = new ArrayList<Object>();
String currentSql = "";
for(String key : sqlObj.keySet()) {
currentSql = sqlObj.getString(key);
@@ -115,13 +115,15 @@
currentSqlNew += sqls[sqlIndex];
continue;
}
- currentSqlNew += params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "'" + params.getString(sqls[sqlIndex]) + "'";
+ currentSqlNew += "?";
+ currentParams.add(params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "'" + params.getString(sqls[sqlIndex]) + "'");
+ //currentSqlNew += params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "'" + params.getString(sqls[sqlIndex]) + "'";
}
- int flag = queryServiceDAOImpl.updateSql(currentSqlNew);
+ int flag = queryServiceDAOImpl.updateSql(currentSqlNew,currentParams.toArray());
if (flag < 1) {
- throw new BusinessException(ResponseConstant.RESULT_PARAM_ERROR, "璋冪敤鎺ュ彛澶辫触");
+ throw new BusinessException(ResponseConstant.RESULT_PARAM_ERROR, "鏁版嵁浜や簰澶辫触");
}
}
@@ -152,7 +154,7 @@
param = param.substring(0,param.length()-1);
}
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
"鎴愬姛",JSONObject.parseObject(interpreter.eval("execute("+param+")").toString())));
}catch (Exception e){
logger.error("鏁版嵁浜や簰寮傚父锛�",e);
@@ -201,7 +203,7 @@
}
}
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
"鎴愬姛",business));
}
@@ -215,6 +217,7 @@
try {
JSONObject params = dataQuery.getRequestParams();
JSONObject sqlObj = JSONObject.parseObject(dataQuery.getServiceSql().getSql());
+ List<Object> currentParams = new ArrayList<Object>();
String currentSql = sqlObj.getString(dataQuery.getTemplateKey());
String[] sqls = currentSql.split("#");
@@ -225,19 +228,29 @@
continue;
}
if (sqls[sqlIndex].startsWith("PARENT_")) {
+ if(obj.isEmpty()){
+ currentSqlNew += "?";
+ currentParams.add("''");
+ continue;
+ }
for (String key : obj.keySet()) {
if (sqls[sqlIndex].substring("PARENT_".length()).equals(key)) {
- currentSqlNew += obj.get(key) instanceof Integer
- ? obj.getInteger(key) : "'" + obj.getString(key) + "'";
+ /*currentSqlNew += obj.get(key) instanceof Integer
+ ? obj.getInteger(key) : "'" + obj.getString(key) + "'";*/
+ currentSqlNew += "?";
+ currentParams.add(obj.get(key) instanceof Integer
+ ? obj.getInteger(key) : "" + obj.getString(key) + "");
continue;
}
}
} else {
- currentSqlNew += params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "'" + params.getString(sqls[sqlIndex]) + "'";
+ currentSqlNew += "?";
+ currentParams.add(params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "" + params.getString(sqls[sqlIndex]) + "");
+ //currentSqlNew += params.get(sqls[sqlIndex]) instanceof Integer ? params.getInteger(sqls[sqlIndex]) : "'" + params.getString(sqls[sqlIndex]) + "'";
}
}
- List<Map> results = queryServiceDAOImpl.executeSql(currentSqlNew);
+ List<Map<String,Object>> results = queryServiceDAOImpl.executeSql(currentSqlNew, currentParams.toArray());
if (results == null || results.size() == 0) {
obj.put(values[1], new JSONObject());
@@ -284,7 +297,7 @@
throw new BusinessException(ResponseConstant.RESULT_CODE_INNER_ERROR,"瀛樺偍杩囩▼ procName = " + dataQuery.getServiceSql().getProc() + " 杩斿洖缁撴灉涓嶆槸Json鏍煎紡");
}
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
"鎴愬姛",JSONObject.parseObject(jsonStr)));
}
@@ -305,7 +318,7 @@
throw new BusinessException(ResponseConstant.RESULT_CODE_INNER_ERROR,"瀛樺偍杩囩▼ procName = " + dataQuery.getServiceSql().getProc() + " 杩斿洖缁撴灉涓嶆槸Json鏍煎紡");
}
- dataQuery.setResponseInfo(ResponseTemplateUtil.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
+ dataQuery.setResponseInfo(DataTransactionFactory.createBusinessResponseJson(ResponseConstant.RESULT_CODE_SUCCESS,
"鎴愬姛",JSONObject.parseObject(jsonStr)));
}
--
Gitblit v1.8.0