场景示例
示例1:动态增加通用查询属性
调用通用查询时,预先对通用查询中定义的下拉树增加新属性。
示例代码:
//修改通用查询的json配置,为下拉树增加newValue属性,并设置newValue=0 public class DemoCQConfigProcessor extends CQConfigProcessor
{
public String process(String config)
{
JSONObject jsonObj = null;
try {
jsonObj = new JSONObject(config);
JSONArray jsonArray = jsonObj.getJSONArray("groups");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject group = jsonArray.getJSONObject(i);
JSONArray jfilters = group.getJSONArray("filters");
for (int j = 0; j < jfilters.length(); j++) {
JSONObject jfilter = jfilters.getJSONObject(j);
if (jfilter.getString("editorConfig").indexOf("DropDownTreeConfig") != -1) {
String configArg = jfilter.getString("editorConfigArg").replaceAll("\"", "'");
JSONObject editorConfigArg = new JSONObject(configArg);
if (!editorConfigArg.has("newValue")) {
editorConfigArg.put("newValue", "0");
jfilter.remove("editorConfigArg");
jfilter.put("editorConfigArg", editorConfigArg.toString());
}
}
}
}
}
catch (JSONException e) {
e.printStackTrace();
}
return jsonObj.toString();
}
}
参考DEMO
可将以下url地址中的ip、port端口号更改为应用实际部署的地址和端口后,进行访问查看对应demo。
http://ip:port/reportmis /mis2/commonQuery/demo/demo_processor.jsp