传入为数组时调用setParameterDataList方法
1. 第一部分
@Override
public String uploadData(String jsonPara) throws AxisFault {
util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara));
result = util.uploadData();
return StringUtils.convertToJson(result);
}
2. 第2部分
private List<Map<String, Object>> parameterDataList = null;
public void setParameterDataList(List<Map<String, Object>> parameterDataList) {
this.parameterDataList = parameterDataList;
}
3. 第3部分
private static Type typeTokenList = new TypeToken<List<Map<String, Object>>>() {
}.getType();
4. 第4部分
/**
* 转换成list形式
*
* @Title: analysisJsonParaList
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @param jsonPara
* @param @return 参数说明
* @return List<Map<String,Object>> 返回类型
* @throws
* @author summer
*/
public static List<Map<String, Object>> analysisJsonParaList(String jsonPara) {
return gson.fromJson(jsonPara, typeTokenList);
}
传入非数组数据时调用setParameterData方法
1. 第1部分
@Override
public void setData(String jsonPara) {
// TODO Auto-generated method stub
util.setParameterData(StringUtils.analysisJsonPara(jsonPara));
}
2. 第2部分
private Map<String, Object> parameterData = null;
public void setParameterData(Map<String, Object> parameterData) {
this.parameterData = parameterData;
}
3. 第3部分
private static Type typeToken = new TypeToken<Map<String, Object>>() {
}.getType();
4. 第4部分
/**
* 解析参数
*
* @Title: analysisJsonPara
* @Description: TODO(字符串解析成map集合)
* @param @param jsonPara 参数说明
* @return void 返回类型
* @throws
*/
public static Map<String, Object> analysisJsonPara(String jsonPara) {
return gson.fromJson(jsonPara, typeToken);
}
项目部分代码
Part1:四个接口
@Override
public String testConnectState(String jsonPara) throws AxisFault {
this.setData(jsonPara);
result = util.testConnectState();
return StringUtils.convertToJson(result);
}
@Override
public String controlProbe(String jsonPara) throws AxisFault {
this.setData(jsonPara);
result = util.controlProbe();
return StringUtils.convertToJson(result);
}
@Override
public String uploadData(String jsonPara) throws AxisFault {
util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara));
result = util.uploadData();
return StringUtils.convertToJson(result);
}
@Override
public String uploadAlarmData(String jsonPara) throws AxisFault {
util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara));
result = util.uploadAlarmData();
return StringUtils.convertToJson(result);
}
Part2:上述四个接口的具体实现
/**
* 服务器连接状态
*/
public BaseJson testConnectState() {
BaseJson jsonResult = (BaseJson) getObject(BaseJson.class);
try {
// 获取参数
// String itemId = (String) this.parameterData.get("itemId");
// 获取service对象
HistoryDataService data = (HistoryDataService) getSpringObject(HistoryDataService.class);
jsonResult.setRetCode("0");
jsonResult.setRetMsg("正常连接!");
} catch (Exception e) {
e.printStackTrace();
log.error(e);
jsonResult.setRetMsg("连接失败!");
}
return jsonResult;
}
/**
* 探针控制接口
*
* @Title: controlProbe
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @return 参数说明
* @return BaseJson 返回类型
* @throws
* @author summer
*/
public BaseJson controlProbe() {
BaseJson jsonResult = (BaseJson) getObject(BaseJson.class);
try {
// 获取参数
String code = (String) this.parameterData.get("code");
// 获取service对象
ProbeService probeService = (ProbeService) getSpringObject(ProbeService.class);
// //*************业务逻辑************* start
// -----------------
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", code);
Probe probe = probeService.findByCode(map);
if (probe.getEnabled().equals("1")) {
jsonResult.setRetCode("0");
jsonResult.setRetMsg("该探针程序正常启用!");
} else if (probe.getEnabled().equals("0")) {
jsonResult.setRetCode("1");
jsonResult.setRetMsg("该探针程序已停止!");
}
// -----------------
// //*************业务逻辑************* end
} catch (Exception e) {
e.printStackTrace();
log.error(e);
jsonResult.setRetMsg("该探针程序已停止!");
}
return jsonResult;
}
/**
* 数据上传接口
*
* @Title: uploadData
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @return 参数说明
* @return BaseJson 返回类型
* @throws
* @author summer
*/
public BaseJson uploadData() {
BaseJson jsonResult = (BaseJson) getObject(BaseJson.class);
try {
// 获取参数
List<Map<String, Object>> paramList = this.parameterDataList;
// 获取service对象
HistoryDataService historyService = (HistoryDataService) getSpringObject(HistoryDataService.class);
EquipmentService equipService = (EquipmentService) getSpringObject(EquipmentService.class);
for (Map<String, Object> map : paramList) {
String equipmentCode = (String) map.get("equipmentCode");
// 根据设备编号查找设备
Equipment equipmentTemp = equipService
.searchEquipmentByIdCode(equipmentCode);
String temperature = (String) map.get("temperature");
String pressure = (String) map.get("pressure");
String vacuumDegree = (String) map.get("vacuumDegree");
String dataTime = (String) map.get("dataTime");
String probeCode = (String) map.get("probeCode");
HistoryData historyData = new HistoryData();
historyData.setEquipmentId(equipmentTemp.getId());
// 用户对应设备信息
Equipment equipment = new Equipment();
equipment.setId(equipmentTemp.getId());
historyData.setEquipment(equipment);
historyData.setTemperature(temperature);
historyData.setPressure(pressure);
historyData.setVacuumDegree(vacuumDegree);
historyData.setDataTime(DateUtil.formatStr(dataTime,
"yyyy-MM-dd"));
historyData.setUploadTime(DateUtil.getNow());
historyData.setProbeCode(probeCode);
Boolean resultBoolean = historyService.insertData(historyData);
if (resultBoolean) {
jsonResult.setRetCode("0");
jsonResult.setRetMsg("设备编号:" + equipmentCode + "的数据上传成功!");
} else {
jsonResult.setRetCode("1");
jsonResult.setRetMsg("设备编号:" + equipmentCode + "的数据上传失败!");
}
}
// -----------------
// //*************业务逻辑************* end
} catch (Exception e) {
e.printStackTrace();
log.error(e);
jsonResult.setRetMsg("失败!");
}
return jsonResult;
}
/**
* 故障报警数据上传
*
* @Title: uploadAlarmData
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @return 参数说明
* @return BaseJson 返回类型
* @throws
* @author summer
*/
public BaseJson uploadAlarmData() {
BaseJson jsonResult = (BaseJson) getObject(BaseJson.class);
try {
// 获取参数
List<Map<String, Object>> paramList = this.parameterDataList;
// 获取service对象
AlertSettingService alermSettingService = (AlertSettingService) getSpringObject(AlertSettingService.class);
EquipmentService equipService = (EquipmentService) getSpringObject(EquipmentService.class);
for (Map<String, Object> map : paramList) {
String equipmentCode = (String) map.get("equipmentCode");
// 根据设备编号查找设备
Equipment equipmentTemp = equipService
.searchEquipmentByIdCode(equipmentCode);
String alertType = (String) map.get("alertType");
String alarmPara = (String) map.get("alarmPara");
String alarmParaVal = (String) map.get("alarmParaVal");
AlertSetting alertSettingData = new AlertSetting();
alertSettingData.setEquipmentId(equipmentTemp.getId());
alertSettingData.setAlertType(alertType);
alertSettingData.setAlarmPara(alarmPara);
alertSettingData.setAlarmParaVal(alarmParaVal);
Boolean resultBoolean = alermSettingService
.insertData(alertSettingData);
if (resultBoolean) {
jsonResult.setRetCode("0");
jsonResult.setRetMsg("设备编号:" + equipmentCode
+ "的故障报警数据上传成功!");
} else {
jsonResult.setRetMsg("设备编号:" + equipmentCode
+ "的故障报警数据上传失败!");
}
}
// -----------------
// //*************业务逻辑************* end
} catch (Exception e) {
e.printStackTrace();
log.error(e);
jsonResult.setRetMsg("失败!");
}
return jsonResult;
}
private Map<String, Object> parameterData = null;
public void setParameterData(Map<String, Object> parameterData) {
this.parameterData = parameterData;
}
private List<Map<String, Object>> parameterDataList = null;
public void setParameterDataList(List<Map<String, Object>> parameterDataList) {
this.parameterDataList = parameterDataList;
}