接口传入为不同数据的不同处理

传入为数组时调用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;
    }

猜你喜欢

转载自blog.csdn.net/Jolie_Laide0212/article/details/54970752
今日推荐