mobilemode.api.sql_wev8.js
1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
define("mApi/sql", ["mUtil", "securityHelper"], function(mUtil, securityHelper) {
return {
run: function(sql, sqlParams, datasource, callback, pageid){
if(mUtil.isFunction(sqlParams)){
callback = sqlParams;
datasource = "";
sqlParams = [];
}else if(mUtil.isString(sqlParams)){
callback = datasource;
datasource = sqlParams;
sqlParams = [];
}else if(mUtil.isArray(sqlParams)){
if(mUtil.isFunction(datasource)) {
callback = datasource;
datasource = "";
}
}else if(typeof(sqlParams) == "undefined"){
sqlParams = [];
}
var requestParam = {};
var index = sql.indexOf(";");
if(index != -1){
requestParam = mUtil.strToParamJSON(sql.substring(index + 1));
sql = sql.substring(0, index);
}
pageid = pageid || mUtil.getCurrentPageId();
var pageParam = mUtil.getPageParam(pageid);
requestParam = $.extend(true, {}, pageParam, requestParam);
sqlParams = securityHelper.encrypt(JSON.stringify(sqlParams));
var url = mUtil.jionActionUrl("com.api.mobilemode.web.mobile.service.MobileCommonAction", "action=runSQL&content="+sql+"&datasource="+(datasource || "")+"&sqlParams="+encodeURIComponent(sqlParams));
var chain = $.Deferred();
mUtil.getJSON(url, requestParam, function(result){
var data = result.data;
var res = data;
if (callback) {
res = callback.call(this, data.result, data.status);
}
chain.resolve(res);
});
return chain;
}
};
});