From b43c4e2e62873e2ab4aa6b24b02f3effd4a16e05 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期一, 14 十月 2024 17:11:00 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java | 20 ++++++++++++++++++++ ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java | 12 ++++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java index d26dc29..4648622 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java @@ -443,5 +443,25 @@ String message = iotMessageProduce.sendMessage(platformStopCharging.getCharging_pile_code(), ServiceIdMenu.PLATFORM_STOP_CHARGING.getKey(),messageUtil.platformStopCharging(platformStopCharging)); return R.ok(message); } + @ApiOperation(value = "计费模板下发",tags = {"硬件接口"}) + @GetMapping(value = "/accountingStrategy") + public R accountingStrategy() { + String code = "3401231001200202"; + String deviceId = "3401231001200202"; + List<TAccountingStrategyDetail> accountingStrategyDetails = accountingStrategyDetailClient.getDetailListByCode(code).getData(); + Map<Integer, TAccountingStrategyDetail> strategyPrice = StrategyUtil.getStrategyPrice(accountingStrategyDetails); + // 价格设置 + AcquisitionBillingModeReply acquisitionBillingModeReply = new AcquisitionBillingModeReply(); + StrategyUtil.setStrategyPrice(strategyPrice,acquisitionBillingModeReply); + // 时段设置 + StrategyUtil.setTime(accountingStrategyDetails,acquisitionBillingModeReply); + TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailByCode(code).getData(); + acquisitionBillingModeReply.setBilling_model_code(accountingStrategyDetail.getId().toString()); + acquisitionBillingModeReply.setCharging_pile_code(code); + acquisitionBillingModeReply.setLoss_ratio(BigDecimal.ZERO); + System.err.println(acquisitionBillingModeReply); + iotMessageProduce.sendMessage(deviceId, ServiceIdMenu.ACQUISITION_BILLING_MODE_REPLY.getKey(),messageUtil.acquisitionBillingModeReply(acquisitionBillingModeReply)); + return R.ok(); + } } \ No newline at end of file diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java index f999d66..261e9c7 100644 --- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java +++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java @@ -36,25 +36,29 @@ public static void setStrategyPrice(Map<Integer, TAccountingStrategyDetail> accountingStrategyDetails,AcquisitionBillingModeReply acquisitionBillingModeReply) { accountingStrategyDetails.forEach((k,v)->{ BigDecimal electrovalence = v.getElectrovalence(); + BigDecimal serviceCharge = v.getServiceCharge(); if(Objects.isNull(electrovalence)){ electrovalence = BigDecimal.ZERO; + } + if(Objects.isNull(serviceCharge)){ + serviceCharge = BigDecimal.ZERO; } switch (k){ case 1: acquisitionBillingModeReply.setSharp_peak_electricity_rate(electrovalence); - acquisitionBillingModeReply.setSharp_peak_service_rate(new BigDecimal(0)); + acquisitionBillingModeReply.setSharp_peak_service_rate(serviceCharge); break; case 2: acquisitionBillingModeReply.setPeak_electricity_rate(electrovalence); - acquisitionBillingModeReply.setPeak_service_rate(new BigDecimal(0)); + acquisitionBillingModeReply.setPeak_service_rate(serviceCharge); break; case 3: acquisitionBillingModeReply.setFlat_peak_electricity_rate(electrovalence); - acquisitionBillingModeReply.setFlat_peak_service_rate(new BigDecimal(0)); + acquisitionBillingModeReply.setFlat_peak_service_rate(serviceCharge); break; default: acquisitionBillingModeReply.setLow_peak_electricity_rate(electrovalence); - acquisitionBillingModeReply.setLow_peak_service_rate(new BigDecimal(0)); + acquisitionBillingModeReply.setLow_peak_service_rate(serviceCharge); break; } }); -- Gitblit v1.7.1