wjc
4 天以前 acccdeba7fe28f7f4b72ba464ad4789b0d9ddb2a
app/src/main/java/com/hdl/photovoltaic/other/HdlESLocalJsonLogic.java
@@ -6,6 +6,7 @@
import com.facebook.imagepipeline.cache.BitmapMemoryCacheTrimStrategy;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.enums.Languages;
import com.hdl.photovoltaic.internet.HttpClient;
import com.hdl.photovoltaic.listener.CloudCallBeak;
@@ -92,8 +93,13 @@
     * @param isDelPath   是否删除(true表示删除,否则不删除)
     */
    public void getHdlESLocalJson(String fileName, String deviceType, String deviceModel, boolean isDelPath, CloudCallBeak<String> callBeak) {
        // 2025年12月08日09:29:31 产品经理说:因脚本还没有适配阿拉伯语言,先默认英文
        String language = UserConfigManage.getInstance().getCurrentAppLanguage();
        if (!UserConfigManage.getInstance().getCurrentAppLanguage().equals(Languages.zh)) {
            language = Languages.en;
        }
        //拼接地址
        String url = getStrJointNewUrl(fileName, deviceType, deviceModel);
        String url = getStrJointNewUrl(fileName, deviceType, deviceModel, language);
        HttpClient.getInstance().requestJsonHttpGet(url, new CloudCallBeak<String>() {
            @Override
            public void onSuccess(String json) {
@@ -137,12 +143,8 @@
            if (TextUtils.isEmpty(json)) {
                return;
            }
            //英文文件路径
            String fullPath = HdlFileLogic.getInstance().getHdlESLocalJsonEnFilePath(deviceModel, fileName);
            if (UserConfigManage.getInstance().isZh()) {
                //中文文件路径
                fullPath = HdlFileLogic.getInstance().getHdlESLocalJsonZhFilePath(deviceModel, fileName);
            }
            //文件路径
            String fullPath = HdlFileLogic.getInstance().getHdlESLocalLanguageJsonFilePath(UserConfigManage.getInstance().getCurrentAppLanguage(), deviceModel, fileName);
            if (isDelPath) {
                HdlFileLogic.getInstance().deleteFile(fullPath);
            }
@@ -162,12 +164,8 @@
            if (TextUtils.isEmpty(fileName)) {
                return "";
            }
            //英文文件路径
            String fullPath = HdlFileLogic.getInstance().getHdlESLocalJsonEnFilePath(deviceModel, fileName);
            if (UserConfigManage.getInstance().isZh()) {
                //中文文件路径
                fullPath = HdlFileLogic.getInstance().getHdlESLocalJsonZhFilePath(deviceModel, fileName);
            }
            //文件路径
            String fullPath = HdlFileLogic.getInstance().getHdlESLocalLanguageJsonFilePath(UserConfigManage.getInstance().getCurrentAppLanguage(), deviceModel, fileName);
            return HdlFileLogic.getInstance().readFile(fullPath);
        } catch (Exception ignored) {
            return "";
@@ -180,9 +178,10 @@
     * @param fileName    json文件名称
     * @param deviceType  设备类型(inv,lc,bms,battery)
     * @param deviceModel 设备型号
     * @param language    语言 (例如:Languages.zh)
     * @return 新地址
     */
    private String getStrJointNewUrl(String fileName, String deviceType, String deviceModel) {
    private String getStrJointNewUrl(String fileName, String deviceType, String deviceModel, String language) {
        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)
@@ -203,12 +202,23 @@
                || joinFileName.equals(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_7)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_7)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_7)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_pv + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_output + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_pv + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_output + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_item + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_signal + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8)
                || joinFileName.equals(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8)
        ) {
            return address + "/" + UserConfigManage.getInstance().getCurrentAppLanguage() + "/" + deviceType + "/" + deviceModel + "/info/" + fileName + this.getVersion(joinFileName) + ".json";
            return address + "/" + language + "/" + deviceType + "/" + deviceModel + "/info/" + fileName + this.getVersion(joinFileName) + ".json";
        }
        return address + "/" + UserConfigManage.getInstance().getCurrentAppLanguage() + "/" + deviceType + "/" + deviceModel + "/" + fileName + this.getVersion(joinFileName) + ".json";
        return address + "/" + language + "/" + deviceType + "/" + deviceModel + "/" + fileName + this.getVersion(joinFileName) + ".json";
    }
    //region    ---------改一动五(注意:如果是增加设备型号【要到HdlFileLogic.createHdlESLocalJsonDirectory()方法里面创建文件夹】)-----------
    /**
     * 文件对应版本号
@@ -269,7 +279,69 @@
        map.put(FileName.hdl_battery_ecu_cell + concatenation_symbol + DeviceType.BATTERY + concatenation_symbol + DeviceModel.INV_KE_GLE_B15K_BATTERY, Version.v_1_5_7);//电池包-电芯信息
        //bms
        map.put(FileName.hdl_bms_ecu_off + concatenation_symbol + DeviceType.BMS + concatenation_symbol + DeviceModel.OFF_INV_BMS_7, Version.v_1_5_7);//离网逆变器BMS详情
        //离网逆变器 6kw
        map.put(FileName.hdl_inv_ecu_quick_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器快速配置
        map.put(FileName.hdl_inv_master_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器主机配置
        map.put(FileName.hdl_inv_slave_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器从机配置
        map.put(FileName.hdl_inv_ecu_info_pv_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器详情光伏输入
        map.put(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器详情交流输入
        map.put(FileName.hdl_inv_ecu_info_output_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器详情交流输出
        map.put(FileName.hdl_inv_ecu_info_item_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器详情基础参数
        map.put(FileName.hdl_inv_ecu_info_signal_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_6, Version.v_2_0_0);//离网逆变器详情统计
        //bms
        map.put(FileName.hdl_bms_ecu_off + concatenation_symbol + DeviceType.BMS + concatenation_symbol + DeviceModel.OFF_INV_BMS_6, Version.v_2_0_0);//离网逆变器BMS详情
        //离网逆变器 8kw
        map.put(FileName.hdl_inv_ecu_quick_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器快速配置
        map.put(FileName.hdl_inv_master_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器主机配置
        map.put(FileName.hdl_inv_slave_ecu_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器从机配置
        map.put(FileName.hdl_inv_ecu_info_pv_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器详情光伏输入
        map.put(FileName.hdl_inv_ecu_info_input_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器详情交流输入
        map.put(FileName.hdl_inv_ecu_info_output_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器详情交流输出
        map.put(FileName.hdl_inv_ecu_info_item_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器详情基础参数
        map.put(FileName.hdl_inv_ecu_info_signal_off + concatenation_symbol + DeviceType.INV + concatenation_symbol + DeviceModel.OFF_INV_8, Version.v_2_0_0);//离网逆变器详情统计
        //bms
        map.put(FileName.hdl_bms_ecu_off + concatenation_symbol + DeviceType.BMS + concatenation_symbol + DeviceModel.OFF_INV_BMS_8, Version.v_2_0_0);//离网逆变器BMS详情
        return map;
    }
    /**
     * 获取设备型号列表
     *
     * @return 设备型号列表
     */
    public List<String> getModelList() {
        ArrayList<String> list = new ArrayList<>();
        list.add(DeviceModel.INV);//并网-逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.LC);//负载中心
        list.add(HdlESLocalJsonLogic.DeviceModel.INV_BMS);//BMS
        list.add(HdlESLocalJsonLogic.DeviceModel.INV_BATTERY);//电池包
        //离线-逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV);//离线-逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BMS);//离网-逆变器-虚拟BMS
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BATTERY);//离网-逆变器-电池包
        //离线-3.6kw逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_3);//离线-逆变器3.6kw
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BMS_3);//离网-逆变器-虚拟BMS
        //电池包转换器
        list.add(HdlESLocalJsonLogic.DeviceModel.INV_KE_GLE_B5K_BATTERY);//电池包转换器
        //离线-7.6kw逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_7);//离线-逆变器7.6kw
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BMS_7);//离网-逆变器-BMS
        list.add(HdlESLocalJsonLogic.DeviceModel.INV_KE_GLE_B15K_BATTERY);//离网-逆变器-电池包15k
        //离线-6kw逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_6);//离线-逆变器6kw
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BMS_6);//离网-逆变器-BMS
        // 离线-8kw逆变器
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_8);//离线-逆变器8kw
        list.add(HdlESLocalJsonLogic.DeviceModel.OFF_INV_BMS_8);//离网-逆变器-BMS
        return list;
    }
    /**
@@ -476,6 +548,26 @@
         */
        String INV_KE_GLE_B15K_BATTERY = "ME-GLE-B15K";
        /**
         * 【离线-逆变器】设备型号 6kw
         */
        String OFF_INV_6 = "ME-GLE-S6K";
        /**
         * 【离网-逆变器-BMS】设备型号 6kw
         */
        String OFF_INV_BMS_6 = "ME-GLE-S6K-BMS";
        /**
         * 【离线-逆变器】设备型号 8kw
         */
        String OFF_INV_8 = "ME-GLE-S8K";
        /**
         * 【离网-逆变器-BMS】设备型号 8kw
         */
        String OFF_INV_BMS_8 = "ME-GLE-S8K-BMS";
    }