From 96ef84e192807b383af7d3f2e5c89f08b359137f Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 28 十二月 2023 10:23:39 +0800
Subject: [PATCH] 2023年12月28日10:23:22

---
 app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java          |    8 +-
 app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java               |    2 
 app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java            |    1 
 app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java     |    6 ++
 app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java          |   34 +++++++++--
 app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java |    5 +
 app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java          |    1 
 app/src/main/res/layout/item_message.xml                                       |    5 +
 app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java             |    2 
 app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java               |   63 ++++++++++++++++++++
 10 files changed, 112 insertions(+), 15 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java b/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
index 6e99553..ec66f84 100644
--- a/app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
+++ b/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)鑾峰彇
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
index aabe708..bbe7790 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
+++ b/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鍒楄〃涓虹┖锛屾棤娉曞叏閲忔洿鏂皁id鍒颁簯绔�--->", 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鍒楄〃涓虹┖锛屾棤娉曞閲忔坊鍔爋id鍒颁簯绔�--->", 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);
             }
         });
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
index e02daf2..3b658bd 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
+++ b/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("鐩戝惉鍒癕odbus鏁版嵁--->" + 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")) {
+                        //閫嗗彉鍣ㄦ湁鏂皁id閫氱煡涓婚
+                        if (linkResponse.getData() == null) {
+                            HdlLogLogic.print("閫嗗彉鍣ㄦ湁鏂皁id閫氱煡--->鏁版嵁涓虹┖", 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();
     }
-
-
-
 
 
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java b/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
index 2f076d5..20c4e31 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
+++ b/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();
             }
         });
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java
index a2c30fc..07d6b31 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/account/RegisterAccountActivity.java
+++ b/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);
                 }
 
+
             }
         });
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java
index 6ce4bb5..b1dab95 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/MessageAdapter.java
+++ b/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> {
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java
index 6d14d1e..03df85b 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/BindMailActivity.java
+++ b/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();
     }
+
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java
index 1e1d153..669b11e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/BindPhoneActivity.java
+++ b/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();
                         }
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java
index f3ea5db..45d0e52 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageInfoActivity.java
+++ b/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);
     }
 }
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_message.xml b/app/src/main/res/layout/item_message.xml
index fa6a0a9..c090068 100644
--- a/app/src/main/res/layout/item_message.xml
+++ b/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"

--
Gitblit v1.8.0