xuhy
2024-10-12 28108deb530abd986a77a951ba94e18284522454
修改bug
3个文件已修改
41 ■■■■■ 已修改文件
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/AcquisitionBillingModeReply.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/AcquisitionBillingModeReply.java
@@ -17,14 +17,14 @@
public class AcquisitionBillingModeReply extends BaseModel {
    private String charging_pile_code;// 桩编码
    private String billing_model_code;// "计费模型编号
    private BigDecimal sharp_peak_electricity_rate;// 尖费电费费率(精确到五位小数)
    private BigDecimal sharp_peak_service_rate;// 尖服务费费率(精确到五位小数)
    private BigDecimal peak_electricity_rate;// 峰电费费率(精确到五位小数)
    private BigDecimal peak_service_rate;// 峰服务费费率(精确到五位小数)
    private BigDecimal flat_peak_electricity_rate;// 平电费费率(精确到五位小数)
    private BigDecimal flat_peak_service_rate;// 平服务费费率(精确到五位小数)
    private BigDecimal low_peak_electricity_rate;// 谷电费费率(精确到五位小数)
    private BigDecimal low_peak_service_rate;// 谷服务费费率(精确到五位小数)
    private BigDecimal sharp_peak_electricity_rate = BigDecimal.ZERO;// 尖费电费费率(精确到五位小数)
    private BigDecimal sharp_peak_service_rate = BigDecimal.ZERO;// 尖服务费费率(精确到五位小数)
    private BigDecimal peak_electricity_rate = BigDecimal.ZERO;// 峰电费费率(精确到五位小数)
    private BigDecimal peak_service_rate = BigDecimal.ZERO;// 峰服务费费率(精确到五位小数)
    private BigDecimal flat_peak_electricity_rate = BigDecimal.ZERO;// 平电费费率(精确到五位小数)
    private BigDecimal flat_peak_service_rate = BigDecimal.ZERO;// 平服务费费率(精确到五位小数)
    private BigDecimal low_peak_electricity_rate = BigDecimal.ZERO;// 谷电费费率(精确到五位小数)
    private BigDecimal low_peak_service_rate = BigDecimal.ZERO;// 谷服务费费率(精确到五位小数)
    private BigDecimal loss_ratio;// 计损比例
//    private DayTimeBase day_time_base;
    private Integer time1;// 0:00~0:30 时段费率号(0:尖费率,1:峰费率,2:平费率,3:谷费率)
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/listener/IotMessageListener.java
@@ -146,14 +146,14 @@
                AcquisitionBillingModeMessage acquisitionBillingModeMessage = JSON.parseObject(content.toJSONString(),AcquisitionBillingModeMessage.class);
                chargingMessage.setAcquisitionBillingModeMessage(acquisitionBillingModeMessage);
                // 响应硬件   计费模型请求应答  1=尖阶段,2=峰阶段,3=平阶段,4=谷阶段
                List<TAccountingStrategyDetail> accountingStrategyDetails = accountingStrategyDetailClient.getDetailListByCode(acquisitionBillingModeMessage.getCharging_pile_code().substring(0,14)).getData();
                List<TAccountingStrategyDetail> accountingStrategyDetails = accountingStrategyDetailClient.getDetailListByCode(acquisitionBillingModeMessage.getCharging_pile_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(acquisitionBillingModeMessage.getCharging_pile_code().substring(0,14)).getData();
                TAccountingStrategyDetail accountingStrategyDetail = accountingStrategyDetailClient.getDetailByCode(acquisitionBillingModeMessage.getCharging_pile_code()).getData();
                acquisitionBillingModeReply.setBilling_model_code(accountingStrategyDetail.getId().toString());
                acquisitionBillingModeReply.setCharging_pile_code(acquisitionBillingModeMessage.getCharging_pile_code());
                acquisitionBillingModeReply.setLoss_ratio(BigDecimal.ZERO);
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/tools/StrategyUtil.java
@@ -6,6 +6,7 @@
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalTime;
import java.util.*;
import java.util.stream.Collectors;
@@ -34,22 +35,26 @@
     */
    public static void setStrategyPrice(Map<Integer, TAccountingStrategyDetail> accountingStrategyDetails,AcquisitionBillingModeReply acquisitionBillingModeReply) {
        accountingStrategyDetails.forEach((k,v)->{
            BigDecimal electrovalence = v.getElectrovalence();
            if(Objects.isNull(electrovalence)){
                electrovalence = BigDecimal.ZERO;
            }
            switch (k){
                case 1:
                    acquisitionBillingModeReply.setSharp_peak_electricity_rate(v.getElectrovalence());
//                    acquisitionBillingModeReply.setSharp_peak_service_rate(v.getServiceCharge());
                    acquisitionBillingModeReply.setSharp_peak_electricity_rate(electrovalence);
                    acquisitionBillingModeReply.setSharp_peak_service_rate(new BigDecimal(0));
                    break;
                case 2:
                    acquisitionBillingModeReply.setPeak_electricity_rate(v.getElectrovalence());
//                    acquisitionBillingModeReply.setPeak_service_rate(v.getServiceCharge());
                    acquisitionBillingModeReply.setPeak_electricity_rate(electrovalence);
                    acquisitionBillingModeReply.setPeak_service_rate(new BigDecimal(0));
                    break;
                case 3:
                    acquisitionBillingModeReply.setFlat_peak_electricity_rate(v.getElectrovalence());
//                    acquisitionBillingModeReply.setFlat_peak_service_rate(v.getServiceCharge());
                    acquisitionBillingModeReply.setFlat_peak_electricity_rate(electrovalence);
                    acquisitionBillingModeReply.setFlat_peak_service_rate(new BigDecimal(0));
                    break;
                default:
                    acquisitionBillingModeReply.setLow_peak_electricity_rate(v.getElectrovalence());
//                    acquisitionBillingModeReply.setLow_peak_service_rate(v.getServiceCharge());
                    acquisitionBillingModeReply.setLow_peak_electricity_rate(electrovalence);
                    acquisitionBillingModeReply.setLow_peak_service_rate(new BigDecimal(0));
                    break;
            }
        });