mac
2023-12-28 96ef84e192807b383af7d3f2e5c89f08b359137f
2023年12月28日10:23:22
10个文件已修改
127 ■■■■ 已修改文件
app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/item_message.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
@@ -53,6 +53,8 @@
    public static final String POST_Device_ChildDevices_List = "/home-wisdom/app/powerStation/childDevices";
    //全量更新OID
    public static final String POST_Device_Oid = "/home-wisdom/program/device/oid/add";
    //设备基本信息(oid)增量添加
    public static final String POST_Device_IncrAdd = "/home-wisdom/program/device/oid/incrAdd";
    //获取逆变器(获取设备远程通讯信息)
    public static final String POST_Device_RemoteInfo = "/home-wisdom/program/device/remoteInfo";
    //设备基本信息列表(oid)获取
app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
@@ -299,9 +299,69 @@
     * @param cloudCallBeak 回调update
     */
    public void fullUpdateOid(String homeId, List<OidBean> oidList, CloudCallBeak<Boolean> cloudCallBeak) {
        if (oidList == null || oidList.size() == 0) {
            HdlLogLogic.print("oid列表为空,无法全量更新oid到云端--->", true);
            return;
        }
        String requestUrl = HttpApi.POST_Device_Oid;
        JsonObject json = new JsonObject();
        json.addProperty("operationSource", "PROGRAM_ENERGY");//
        json.addProperty("homeId", homeId);
        JsonArray jsonArray = new JsonArray();
        for (int i = 0; i < oidList.size(); i++) {
            OidBean oidBean = oidList.get(i);
            JsonObject jsonObject = new JsonObject();
            jsonObject.addProperty("protocolType", oidBean.getProtocolType());
            jsonObject.addProperty("deviceType", oidBean.getDeviceType());
            jsonObject.addProperty("mac", oidBean.getDevice_mac());
            jsonObject.addProperty("oid", oidBean.getOid());
            jsonObject.addProperty("device_name", oidBean.getDevice_name());
            jsonObject.addProperty("device_model", oidBean.getDevice_model());
            jsonObject.addProperty("addresses", oidBean.getAddresses());
            jsonObject.addProperty("parentOid", oidBean.getParentOid());
            jsonArray.add(jsonObject);
        }
        json.add("devices", jsonArray);
        // json.addProperty("zoneType", "password");//区域
        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
            @Override
            public void onSuccess(String str) {
                if (cloudCallBeak != null) {
                    cloudCallBeak.onSuccess(true);
                }
                HdlLogLogic.print("全量更新oid到云端成功--->", true);
            }
            @Override
            public void onFailure(HDLException e) {
                if (cloudCallBeak != null) {
                    cloudCallBeak.onFailure(e);
                }
                HdlLogLogic.print("全量更新oid到云端失败--->" + e.getMsg() + "(" + e.getCode() + ")", true);
            }
        });
    }
    /**
     * (oid)增量添加
     *
     * @param homeId        住宅id
     * @param oidList       oid列表
     * @param cloudCallBeak 回调update
     */
    public void updateOidAdd(String homeId, List<OidBean> oidList, CloudCallBeak<Boolean> cloudCallBeak) {
        if (oidList == null || oidList.size() == 0) {
            HdlLogLogic.print("oid列表为空,无法增量添加oid到云端--->", true);
            return;
        }
        String requestUrl = HttpApi.POST_Device_IncrAdd;
        JsonObject json = new JsonObject();
        json.addProperty("homeId", homeId);
        JsonArray jsonArray = new JsonArray();
        for (int i = 0; i < oidList.size(); i++) {
@@ -328,7 +388,7 @@
                if (cloudCallBeak != null) {
                    cloudCallBeak.onSuccess(true);
                }
                HdlLogLogic.print("增量添加oid到云端成功--->");
            }
            @Override
@@ -336,6 +396,7 @@
                if (cloudCallBeak != null) {
                    cloudCallBeak.onFailure(e);
                }
                HdlLogLogic.print("增量添加oid到云端失败--->" + e.getMsg() + "(" + e.getCode() + ")", true);
            }
        });
app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
@@ -13,6 +13,7 @@
import android.view.View;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.linkpm.sdk.home.type.HomeType;
import com.hdl.photovoltaic.R;
@@ -33,6 +34,7 @@
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.bean.DeviceRemoteInfo;
import com.hdl.photovoltaic.ui.bean.OidBean;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.utils.PermissionUtils;
@@ -49,6 +51,7 @@
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.lang.reflect.Type;
import java.util.List;
@@ -265,7 +268,7 @@
                    if (response.getTopic() == null) {
                        return;
                    }
                    HdlLogLogic.print("监听到的数据--->" + new Gson().toJson(response), false);
                    HdlLogLogic.print("监听到Modbus数据--->" + new Gson().toJson(response), false);
//                    if (response.getTopic().endsWith("custom/native/inverter/up")) {
                    HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
                    uniCallBackBaseBean.setType(response.getTopic());
@@ -284,11 +287,33 @@
                        uniCallBackBaseBean.setData(linkResponse.getData());
                        HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_REPLY_OTA_MODEL, uniCallBackBaseBean);
                        HdlLogLogic.print(linkResponse.getTopic() + new Gson().toJson(linkResponse.getData()), true);
                    } else if (linkResponse.getTopic().endsWith("/custom/device/list/upload")) {
                        //逆变器有新oid通知主题
                        if (linkResponse.getData() == null) {
                            HdlLogLogic.print("逆变器有新oid通知--->数据为空", false);
                            return;
                        }
                        try {
                            Gson gson = new Gson();
                            Type typeOfT = new TypeToken<List<OidBean>>() {
                            }.getType();
                            String json = gson.toJson(linkResponse.getData());
                            List<OidBean> oidList = gson.fromJson(json, typeOfT);
                            //增量增加add
                            HdlDeviceLogic.getInstance().updateOidAdd(UserConfigManage.getInstance().getHomeId(), oidList, null);
                        } catch (Exception ignored) {
                        }
                    }
                }
            }
        };
        HDLLinkLocalSdk.getInstance().registerAllTopicsListener(allTopicsListener);
        }
        ;
        HDLLinkLocalSdk.getInstance().
                registerAllTopicsListener(allTopicsListener);
    }
    /**
@@ -421,9 +446,6 @@
        }
        super.onBackPressed();
    }
}
app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
@@ -199,7 +199,7 @@
                        @Override
                        public void onFailure(HDLException e) {
                            HdlThreadLogic.toast(_mActivity, e);
                        }
                    });
                } else {
@@ -224,7 +224,7 @@
                        @Override
                        public void onFailure(HDLException e) {
                            HdlThreadLogic.toast(_mActivity, e);
                        }
                    });
                }
@@ -267,14 +267,14 @@
                    @Override
                    public void onFailure(HDLException e) {
                        HdlThreadLogic.toast(_mActivity, e);
                    }
                });
            }
            @Override
            public void onFailure(HDLException e) {
                HdlThreadLogic.toast(_mActivity, e);
//                hideLoading();
            }
        });
app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java
@@ -316,11 +316,14 @@
                        @Override
                        public void onFailure(HDLException e) {
                            HdlThreadLogic.toast(_mActivity, e);
                        }
                    });
                }else{
                    HdlThreadLogic.toast(_mActivity, e);
                }
            }
        });
app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java
@@ -12,7 +12,6 @@
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.ui.bean.MessageBean;
import java.util.ArrayList;
import java.util.List;
public class MessageAdapter extends RecyclerView.Adapter<MessageAdapter.MyViewHolder> {
app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java
@@ -79,6 +79,7 @@
                        public void onSuccess(Boolean obj) {
                            UserConfigManage.getInstance().setBingEmail(mailStr);
                            UserConfigManage.getInstance().Save();
                            setResult(20);
                            finish();
                        }
@@ -189,4 +190,5 @@
        setResult(20);
        super.onBackPressed();
    }
}
app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java
@@ -83,6 +83,7 @@
                        public void onSuccess(Boolean obj) {
                            UserConfigManage.getInstance().setBingPhone(phoneStr);
                            UserConfigManage.getInstance().Save();
                            setResult(20);
                            finish();
                        }
app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java
@@ -86,5 +86,11 @@
        viewBinding.messageInfoAlarmRangeIn.leftTitleTv.setText(R.string.message_alarm_detailsaffect_region);
        viewBinding.messageInfoPowerStationLocationIn.leftTitleTv.setText(R.string.message_alarm_detailspower_station_location);
        viewBinding.messageInfoAlarmTimeIn.leftTitleTv.setText(R.string.message_alarm_details_time);
        viewBinding.messageInfoAlarmContentIn.rightContentTv.setText(R.string.messagealarm_details_content);
        viewBinding.messageInfoAlarmDeviceIn.rightContentTv.setText(R.string.messagealarm_details_device);
        viewBinding.messageInfoAlarmRangeIn.rightContentTv.setText(R.string.message_alarm_detailsaffect_region);
        viewBinding.messageInfoPowerStationLocationIn.rightContentTv.setText(R.string.message_alarm_detailspower_station_location);
        viewBinding.messageInfoAlarmTimeIn.rightContentTv.setText(R.string.message_alarm_details_time);
    }
}
app/src/main/res/layout/item_message.xml
@@ -12,6 +12,7 @@
        android:layout_marginTop="@dimen/dp_20"
        android:layout_marginEnd="@dimen/dp_20"
        android:background="@drawable/house_list_line_parent_bg">
        <!--未读标签-->
        <TextView
            android:id="@+id/item_unread_message_tv"
@@ -25,8 +26,8 @@
            android:id="@+id/item_content_tv"
            android:layout_width="wrap_content"
            android:layout_height="@dimen/dp_23"
            android:layout_marginStart="@dimen/dp_22"
            android:layout_marginTop="@dimen/dp_17"
            android:layout_marginStart="20dp"
            android:layout_marginTop="16dp"
            android:textColor="@color/text_90000000"
            android:textSize="@dimen/text_16"
            app:layout_constraintStart_toStartOf="parent"