wjc
2025-03-11 a9706d1dcf725f950b5fa703e4484db7467be9ef
app/src/main/java/com/hdl/photovoltaic/other/HdlESLocalJsonLogic.java
@@ -42,6 +42,10 @@
     */
    private static final String address = "https://hdl-hz-dev.oss-cn-hangzhou.aliyuncs.com/ecu";
    /**
     * 拼接符号
     */
    private final String concatenation_symbol = "%";
    /**
     * 拼接新地址
@@ -52,7 +56,20 @@
     * @return 新地址
     */
    private String getStrJointNewUrl(String fileName, String deviceType, String deviceModel) {
        return address + "/" + UserConfigManage.getInstance().getCurrentAppLanguage() + "/" + deviceType + "/" + deviceModel + "/" + fileName + this.getVersion(fileName) + ".json";
        String joinFileName = fileName + concatenation_symbol + deviceType + concatenation_symbol + deviceModel;
        if (joinFileName.equals(FileName.hdl_inv_ecu_info_pv + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_output + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_pv + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_output + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV)
        ) {
            return address + "/" + UserConfigManage.getInstance().getCurrentAppLanguage() + "/" + deviceType + "/" + deviceModel + "/info/" + fileName + this.getVersion(joinFileName) + ".json";
        }
        return address + "/" + UserConfigManage.getInstance().getCurrentAppLanguage() + "/" + deviceType + "/" + deviceModel + "/" + fileName + this.getVersion(joinFileName) + ".json";
    }
@@ -62,7 +79,6 @@
     * @return map
     */
    private String getVersion(String fileName) {
        Map<String, String> map = this.getFeliAndVersion();
        for (Map.Entry<String, String> entry : map.entrySet()) {
            if (entry.getKey().equals(fileName)) {
@@ -72,42 +88,6 @@
        return "";
    }
    /**
     * 获取json文件名,设备类型,设备型号
     *
     * @return map
     */
    private List<String> getFileNameAndDeviceTypeAndDeviceModeList() {
        //注意(逆变器:ME-GSE-S5K,负载中心:ME-GSE-SPG63A,bms:ME-GSE-BMS15K,电池包:ME-GSE-B5K)设备型号不一样
        //拼接规则:文件名_设备类型_设备信号
        List<String> stringList = new ArrayList<>();
        stringList.add(FileName.hdl_lc_ecu_info_item + "%" + DeviceType.LC + "%" + DeviceModel.LC);//获取负载控制中心
        stringList.add(FileName.hdl_lc_ecu_quick + "%" + DeviceType.LC + "%" + DeviceModel.LC);//创建电站-负载控制中心参数配置
        stringList.add(FileName.hdl_inv_ecu_quick + "%" + DeviceType.INV + "%" + DeviceModel.INV);//创建电站-逆变器参数配置
        stringList.add(FileName.hdl_inv_ecu + "%" + DeviceType.INV + "%" + DeviceModel.INV);//逆变器参数配置
        stringList.add(FileName.hdl_inv_ecu_info_pv + "%" + DeviceType.INV + "%" + DeviceModel.INV);// 逆变器详情-pv
        stringList.add(FileName.hdl_inv_ecu_info_output + "%" + DeviceType.INV + "%" + DeviceModel.INV);//逆变器详情-输出
        stringList.add(FileName.hdl_inv_ecu_info_item + "%" + DeviceType.INV + "%" + DeviceModel.INV);//逆变器详情-item项
        stringList.add(FileName.hdl_inv_ecu_info_signal + "%" + DeviceType.INV + "%" + DeviceModel.INV);//逆变器详情-信号点
        stringList.add(FileName.hdl_bms_ecu + "%" + DeviceType.BMS + "%" + DeviceModel.INV_BMS);//获取BMS信息
        stringList.add(FileName.hdl_battery_ecu + "%" + DeviceType.BATTERY + "%" + DeviceModel.INV_BATTERY);//电池包信息
        stringList.add(FileName.hdl_battery_ecu_cell + "%" + DeviceType.BATTERY + "%" + DeviceModel.INV_BATTERY);//电池包-电芯信息
        //离网逆变器
        stringList.add(FileName.hdl_inv_ecu_quick_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_master_ecu_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_slave_ecu_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_ecu_info_pv_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_ecu_info_input_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_ecu_info_output_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_ecu_info_item_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_inv_ecu_info_signal_off + "%" + DeviceType.INV + "%" + DeviceModel.OFF_INV);//离网逆变器快速配置
        stringList.add(FileName.hdl_bms_ecu_off + "%" + DeviceType.BMS + "%" + DeviceModel.OFF_INV_BMS);//离网逆变器快速配置
        stringList.add(FileName.hdl_bms_ecu_off + "%" + DeviceType.BATTERY + "%" + DeviceModel.OFF_INV_BATTERY);//离网逆变器快速配置
        stringList.add(FileName.hdl_battery_ecu_cell_off + "%" + DeviceType.BATTERY + "%" + DeviceModel.OFF_INV_BATTERY);//离网逆变器快速配置
        return stringList;
    }
    /**
     * 文件对应版本号
     *
@@ -115,29 +95,30 @@
     */
    private Map<String, String> getFeliAndVersion() {
        Map<String, String> map = new HashMap<>();
        map.put(FileName.hdl_lc_ecu_info_item, Version.v_1_5_0);
        map.put(FileName.hdl_lc_ecu_quick, Version.v_1_5_0);
        map.put(FileName.hdl_inv_ecu_quick, Version.v_1_5_1);
        map.put(FileName.hdl_inv_ecu, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_pv, Version.v_1_4_2);
        map.put(FileName.hdl_inv_ecu_info_output, Version.v_1_4_2);
        map.put(FileName.hdl_inv_ecu_info_item, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_signal, Version.v_1_4_1);
        map.put(FileName.hdl_bms_ecu, Version.v_1_4_2);
        map.put(FileName.hdl_battery_ecu, Version.v_1_4_2);
        map.put(FileName.hdl_battery_ecu_cell, Version.v_1_4_2);
        //拼接规则:文件名_设备类型_设备信号
        map.put(FileName.hdl_lc_ecu_info_item + concatenation_symbol + DeviceType.LC + concatenation_symbol + DeviceModel.LC, Version.v_1_5_0);//获取负载控制中心
        map.put(FileName.hdl_lc_ecu_quick + concatenation_symbol + DeviceType.LC + concatenation_symbol + DeviceModel.LC, Version.v_1_5_0);//创建电站-负载控制中心参数配置
        map.put(FileName.hdl_inv_ecu_quick + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_5_2);//创建电站-逆变器参数配置
        map.put(FileName.hdl_inv_ecu + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_5_2);//逆变器参数配置//更新到v_1_5_2,目前硬件不支持
        map.put(FileName.hdl_inv_ecu_info_pv + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_4_2);// 逆变器详情-pv
        map.put(FileName.hdl_inv_ecu_info_output + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_4_2);//逆变器详情-输出
        map.put(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_5_2);//逆变器详情-item项//更新到v_1_5_2,目前硬件不支持¬
        map.put(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.INV, Version.v_1_4_1);//逆变器详情-信号点
        map.put(FileName.hdl_bms_ecu + concatenation_symbol + DeviceType.BMS + concatenation_symbol + DeviceModel.INV_BMS, Version.v_1_4_2);//获取BMS信息
        map.put(FileName.hdl_battery_ecu + concatenation_symbol + DeviceType.BATTERY + concatenation_symbol + DeviceModel.INV_BATTERY, Version.v_1_4_2);//电池包信息
        map.put(FileName.hdl_battery_ecu_cell + concatenation_symbol + DeviceType.BATTERY + concatenation_symbol + DeviceModel.INV_BATTERY, Version.v_1_4_2);//电池包-电芯信息
        //离网逆变器
        map.put(FileName.hdl_inv_ecu_quick_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_master_ecu_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_slave_ecu_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_pv_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_input_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_output_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_item_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_info_signal_off, Version.v_1_5_2);
        map.put(FileName.hdl_bms_ecu_off, Version.v_1_5_2);
        map.put(FileName.hdl_battery_ecu_off, Version.v_1_5_2);
        map.put(FileName.hdl_battery_ecu_cell_off, Version.v_1_5_2);
        map.put(FileName.hdl_inv_ecu_quick_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_master_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_slave_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_ecu_info_pv_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_ecu_info_output_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_ecu_info_item_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_inv_ecu_info_signal_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_bms_ecu_off + concatenation_symbol + DeviceType.BMS + concatenation_symbol + DeviceModel.OFF_INV_BMS, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_battery_ecu_off + concatenation_symbol + DeviceType.BATTERY + concatenation_symbol + DeviceModel.OFF_INV_BATTERY, Version.v_1_5_2);//离网逆变器快速配置
        map.put(FileName.hdl_battery_ecu_cell_off + concatenation_symbol + DeviceType.BATTERY + concatenation_symbol + DeviceModel.OFF_INV_BATTERY, Version.v_1_5_2);//离网逆变器快速配置
        return map;
    }
@@ -145,8 +126,11 @@
     * 向云端获取Json【所有】脚本
     */
    public void getAllHdlESLocalJson() {
        for (String str : this.getFileNameAndDeviceTypeAndDeviceModeList()) {
            String[] ary = str.split("%");
        for (Map.Entry<String, String> str : this.getFeliAndVersion().entrySet()) {
            if (TextUtils.isEmpty(str.getKey())) {
                continue;
            }
            String[] ary = str.getKey().split(concatenation_symbol);
            String fileName = ary[0];
            String deviceType = ary[1];
            String deviceMode = ary[2];
@@ -263,15 +247,15 @@
        /**
         * 逆变器详情-pv
         */
        String hdl_inv_ecu_info_pv = "info/modbus_hdl_inv_ecu_info_pv_v";
        String hdl_inv_ecu_info_pv = "modbus_hdl_inv_ecu_info_pv_v";
        /**
         * 逆变器详情-输出
         */
        String hdl_inv_ecu_info_output = "info/modbus_hdl_inv_ecu_info_output_v";
        String hdl_inv_ecu_info_output = "modbus_hdl_inv_ecu_info_output_v";
        /**
         * 逆变器详情-item项
         */
        String hdl_inv_ecu_info_item = "info/modbus_hdl_inv_ecu_info_item_v";
        String hdl_inv_ecu_info_item = "modbus_hdl_inv_ecu_info_item_v";
        /**
         * 获取负载控制中心
         */
@@ -293,7 +277,7 @@
        /**
         * 逆变器详情-信号点
         */
        String hdl_inv_ecu_info_signal = "info/modbus_hdl_inv_ecu_info_signal_v";
        String hdl_inv_ecu_info_signal = "modbus_hdl_inv_ecu_info_signal_v";
        /**