private JSONArray JsonAction(JSONObject json) throws BusinessException {
JSONArray newdatas = new JSONArray();
if (!json.containsKey("data")) {
return null;
}
JSONObject data = json.getJSONObject("data");
JSONObject newdata = null;
JSONObject datakey = null;
Object data1 = data.get("asset");
JSONArray assets = new JSONArray();
if (data1 instanceof JSONArray) {
assets = (JSONArray) data1;
} else {
assets.add((JSONObject) data1);
}
JSONArray newassets = null;
JSONObject asset = null;
Map<String, JSONArray> map = new HashMap<String, JSONArray>();
String code = null;
for (int i = 0; i < assets.size(); i++) {
asset = assets.getJSONObject(i);
code = asset.getString("nc_organ_code");
if (StringUtils.isEmpty(code)) {
throw new BusinessException("公司编码不能为空");
}
newassets = map.get(code);
if (newassets == null) {
newassets = new JSONArray();
}
newassets.add(asset);
map.put(code, newassets);
}
for (JSONArray array : map.values()) {
newdata = new JSONObject();
datakey = new JSONObject();
newdata.put("asset", array);
datakey.put("data", newdata);
newdatas.add(datakey);
}
return newdatas;
}