wuxw
2023-10-08 a93eaa5f46e56b6bc95972228e994d1871a75a02
service-common/src/main/java/com/java110/common/smartMeter/factory/Tdshuibiao/TqShuiBiaoLoraRechargeFactoryAdaptImpl.java
@@ -54,7 +54,7 @@
    private ISmartMeterCoreRead smartMeterCoreReadImpl;
    @Override
    public ResultVo requestRecharge(MeterMachineDto meterMachineDto, double degree,double money) {
    public ResultVo requestRecharge(MeterMachineDto meterMachineDto, double degree, double money) {
        List<Map<String, Object>> req = new ArrayList<>();
@@ -80,7 +80,6 @@
        item.put("address", meterMachineDto.getAddress());
        item.put("params", params);
        req.add(item);
        String request_content = JSON.toJSONString(req);
@@ -117,7 +116,11 @@
        if (meterMachineDetailPos.size() > 0) {
            meterMachineDetailV1InnerServiceSMOImpl.saveMeterMachineDetails(meterMachineDetailPos);
        }
        return new ResultVo(ResultVo.CODE_OK, "提交重置");
        //todo 下发查询余额
        requestRead(meterMachineDto);
        return new ResultVo(ResultVo.CODE_OK, "提交成功");
    }
    @Override
@@ -286,6 +289,7 @@
                JSONObject contentObject = contentArray.getJSONObject(i);
                doBusiness(contentObject, batchId);
            } catch (Exception e) {
                System.out.println("异常数据:" + response_content);
                e.printStackTrace();
            }
@@ -310,12 +314,18 @@
        }
        /**
         * [{"opr_id":"10d9cf7ac3ea4ffd9ec2216e07a17d6e","resolve_time":"2020-06-05 15:22:48","status":"SUCCESS",
         * "data":[{"type":42,"value":["0.0","0.0","0.0"],"dsp":"总用量:0.0 m³ 剩余量:0.0 m³ 总购量:0.0 m³ 阀门状态:Off"}]}]
         * [{"opr_id":"112023100894930005","resolve_time":"2023-10-08 23:45:52","status":"SUCCESS","data":[{"type":42,"value":["0.66|0.11|677.30"],
         * "dsp":"总用量:0.66 m³  本月用量:0.11 m³ 阀门状态:开阀 表类型:远程预付费 购买次数:6 累计消费金额:2.70 元 剩余金额:677.30 元 电池电压:3.8V 信号强度:-94"}]}]
         */
        double degree = contentObject.getJSONArray("data").getJSONObject(0).getJSONArray("value").getDouble(1);
        //double degree = contentObject.getJSONArray("data").getJSONObject(0).getJSONArray("value").getDouble(0);
        String value = contentObject.getJSONArray("data").getJSONObject(0).getJSONArray("value").getString(0);
        String[] values = value.split("\\|", 3);
        String degree = "0.0";
        if (values.length == 3) {
            degree = values[2];
        }
        smartMeterCoreReadImpl.saveMeterAndCreateFee(meterMachineDetailDtos.get(0), degree + "", batchId);
        smartMeterCoreReadImpl.saveMeterAndCreateFee(meterMachineDetailDtos.get(0), degree, batchId);
    }