前台传入两个id循环遍历
public String getSssjDataJson(String token, String devid) {
// TODO Auto-generated method stub
Map<String, String> paramMap = new HashMap<String, String>();
ResponseBean responseBean = new ResponseBean();
JSONObject json = null;
String[] devs = devid.split(",");
List<DataSssjBean> beanList = new ArrayList<>();
//遥信
List<DigitalBean> retList = new ArrayList<>();
//遥控
List<DigitalBean> retListYk = new ArrayList<>();
List<DevWarnBean> devWarnBeans = new ArrayList<>();
for (int j = 0; j < devs.length; j++) {
//paramMap.put("ip", ip);
paramMap.put("token", token);
paramMap.put("devid", devs[j]);
int count = interfaceService.queryDevCount(paramMap);
if (count > 0) {
//遥测
beanList = dataPushService.queryDataSssjByDevId(devs[j]);
Terminal terminal = terminalmapDao.queryTerminalByTmcode(devs[j]);
String devType = terminal.getType();
if (devType.equals(SystemCons.TERMINAL_TYPE_SW) || devType.equals(SystemCons.TERMINAL_TYPE_FSGPRS) || devType.equals(SystemCons.TERMINAL_TYPE_HZGPRS)
|| devType.equals(SystemCons.TERMINAL_TYPE_SZY206_2012) || devType.equals(SystemCons.TERMINAL_TYPE_VIRTUAL)) {
retList = terminalmapDao.queryDigitalNewDataPagerListByTmcode(devid, 1,
0, 50);
retListYk = terminalmapDao.queryDigitalNewDataPagerListByTmcode(devid, 2,
0, 50);
} else {
retList = terminalmapDao.queryDigitalNewDataPagerList(devid, 1,
0, 50);
retListYk = terminalmapDao.queryDigitalNewDataPagerList(devid, 2,
0, 50);
}
for (int i = 0; i < retList.size(); i++) {
DataSssjBean dataSssjBean = new DataSssjBean();
DigitalBean digitalBean = retList.get(i);
dataSssjBean.setDevid(devs[j]);
dataSssjBean.setData(Double.parseDouble(digitalBean.getOnoff()));
dataSssjBean.setDatatype(Integer.parseInt(digitalBean.getCtype()));
dataSssjBean.setName(digitalBean.getRelname());
dataSssjBean.setDatatime(digitalBean.getDatatime());
beanList.add(dataSssjBean);
}
for (int i = 0; i < retListYk.size(); i++) {
DataSssjBean dataSssjBean = new DataSssjBean();
DigitalBean digitalBean = retListYk.get(i);
dataSssjBean.setDevid(devs[j]);
dataSssjBean.setData(Double.parseDouble(digitalBean.getOnoff()));
dataSssjBean.setDatatype(Integer.parseInt(digitalBean.getCtype()));
dataSssjBean.setName(digitalBean.getRelname());
dataSssjBean.setDatatime(digitalBean.getDatatime());
beanList.add(dataSssjBean);
}
//报警
devWarnBeans = devWarnService.queryDevWarnByDevid(devs[j]);
JSONArray dsbJsonArray = JSONArray.fromObject(beanList);
JSONArray warnJsonArray = JSONArray.fromObject(devWarnBeans);
//属性数据
JSONObject prodataobj = new JSONObject();
prodataobj.put("devname", terminal.getName());
prodataobj.put("status", terminal.getStatus());
prodataobj.put("longitude", terminal.getLongitude());
prodataobj.put("latitude", terminal.getLatitude());
prodataobj.put("xzqh", terminal.getXzqh());
JSONObject dataJson = new JSONObject();
dataJson.put("devdata", dsbJsonArray);
dataJson.put("warndata", warnJsonArray);
dataJson.put("prodata", prodataobj);
responseBean.setData(dataJson);
responseBean.setCode(0);
responseBean.setMsg("success");
json = JSONObject.fromObject(responseBean);
} else {
responseBean.setCode(-1);
responseBean.setMsg("No devices available");
json = JSONObject.fromObject(responseBean);
}
}
return json.toString();
}
推荐上代码,别上图片
这种代码,你一个debug就看出来了,还不如去百度下怎么debug
按这个改下吧,返回jsonArray,每个设备id对应一个jsonObject