From d830fef6a2bc2ab061e6ac2b423c4a49dda3cf21 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 06 十二月 2023 18:08:26 +0800
Subject: [PATCH] 2023年12月06日18:08:20

---
 app/src/main/java/com/hdl/photovoltaic/ui/test/TestMainActivity.java |  130 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 108 insertions(+), 22 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/test/TestMainActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/test/TestMainActivity.java
index 40455f8..8a4bd8e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/test/TestMainActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/test/TestMainActivity.java
@@ -9,14 +9,17 @@
 import android.view.View;
 
 import com.google.gson.Gson;
+import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseActivity;
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.databinding.ActivityTestMainBinding;
 import com.hdl.photovoltaic.enums.ShowErrorMode;
+import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.listener.LinkCallBack;
 import com.hdl.photovoltaic.other.HdlDeviceLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.ui.bean.CloudInverterChildDeviceBean;
 import com.hdl.photovoltaic.ui.bean.OidBean;
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
 import com.hdl.photovoltaic.widget.ConfirmationExceptionDialog;
@@ -34,6 +37,8 @@
 
     private ActivityTestMainBinding viewBinding;
     private TestTitleAdapter testTitleAdapter;
+
+    private List<OidBean> mOidList;
 
     @Override
     public Object getContentView() {
@@ -57,30 +62,32 @@
      * 鍒濆鍖�
      */
     private void initView() {
-        viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null));
-        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setText("閫嗗彉鍣ㄦ寚浠ゆ祴璇�");
-        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C, null));
-        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setVisibility(View.VISIBLE);
+
+        String homeId = "娴嬭瘯浣忓畢ID=" + UserConfigManage.getInstance().getHomeId();
+        String homeName = "娴嬭瘯浣忓畢鍚嶇О=" + UserConfigManage.getInstance().getHomeName();
+        viewBinding.homeIdTv.setText(homeId);
+        viewBinding.homeNameTv.setText(homeName);
 
 
     }
 
     private void initEvent() {
-        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(this);
+        viewBinding.topBackBtn.setOnClickListener(this);
+        viewBinding.topLogBtn.setOnClickListener(this);
         testTitleAdapter.setItemOnClickListener(new TestTitleAdapter.OnClickListener() {
             @Override
-            public void OnClick(int position) {
+            public void OnClick(int position, String title) {
 
 
                 if (TextUtils.isEmpty(UserConfigManage.getInstance().getHomeId())) {
                     // TODO: 10/30/23 璇峰厛閫夋嫨浣忓畢杩涜娴嬭瘯,鍚﹀垯鏃犳硶杩涜閫嗗彉鍣ㄦ寚浠ゆ祴璇�;
-                    TipDialog("璇峰厛閫夋嫨浣忓畢杩涜娴嬭瘯,鍚﹀垯鏃犳硶杩涜閫嗗彉鍣ㄦ寚浠ゆ祴璇�.");
+                    TipDialog("璇峰厛閫夋嫨浣忓畢杩涜娴嬭瘯,鍚﹀垯鏃犳硶杩涜閫嗗彉鍣ㄦ寚浠ゆ祴璇�.", null);
                     return;
                 }
                 GatewayBean gatewayBean = HdlDeviceLogic.getInstance().getCurrentHomeMainGateway();
-                if (gatewayBean == null) {
+                if (gatewayBean == null && !title.equals("鎼滅储閫嗗彉鍣ㄥ垪琛�")) {
                     // TODO: 10/30/23 鎵句笉鍒颁綇瀹呯殑涓婚�嗗彉鍣�,璇峰厛纭鏄惁缁戝畾閫嗗彉鍣紝鍐嶈繘琛岄�嗗彉鍣ㄦ寚浠ゆ祴璇�;
-                    TipDialog("鎵句笉鍒颁綇瀹呯殑涓婚�嗗彉鍣�,璇峰厛纭鏄惁缁戝畾杩囬�嗗彉鍣紝鍐嶈繘琛岄�嗗彉鍣ㄦ寚浠ゆ祴璇�.");
+                    TipDialog("鎵句笉鍒颁綇瀹呯殑銆愪富閫嗗彉鍣ㄣ��,璇峰厛纭鏄惁缁戝畾杩囬�嗗彉鍣紝鍐嶈繘琛岄�嗗彉鍣ㄦ寚浠ゆ祴璇�.", null);
                     return;
                 }
                 showLoading();
@@ -93,8 +100,11 @@
     @Override
     public void onClick(View v) {
         int id = v.getId();
-        if (id == viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.getId()) {
+        if (id == viewBinding.topBackBtn.getId()) {
             finish();
+        } else if (id == viewBinding.topLogBtn.getId()) {
+            startActivity(TestLogActivity.class);
+
         }
     }
 
@@ -105,9 +115,12 @@
      */
     private List<String> getTitleList() {
         List<String> s = new ArrayList<>();
-        s.add("鎼滅储閫嗗彉鍣ㄥ垪琛�");
-        s.add("鑾峰彇閫嗗彉鍣╫id鍒楄〃");
-        s.add("璇诲彇閫嗗彉鍣ㄨ鎯�");
+        s.add("鎼滅储閫嗗彉鍣ㄥ垪琛�(1)");
+        s.add("鑾峰彇閫嗗彉鍣╫id鍒楄〃(2)");
+        s.add("璇诲彇閫嗗彉鍣ㄨ鎯�(3)");
+        s.add("娓呴櫎閫嗗彉鍣ㄤ綇瀹匢d(4)");
+        s.add("涓婁紶oid鍒楄〃缁欎簯绔�(5)");
+        s.add("鑾峰彇閫嗗彉鍣ㄤ笅鎸傝澶囧垪琛�(6)");
         return s;
     }
 
@@ -119,7 +132,7 @@
     private void startRequest(int position, GatewayBean gatewayBean) {
         String title = getTitleList().get(position);
         switch (title) {
-            case "鎼滅储閫嗗彉鍣ㄥ垪琛�": {
+            case "鎼滅储閫嗗彉鍣ㄥ垪琛�(1)": {
                 HdlDeviceLogic.getInstance().searchGateway(new GatewayCallBack() {
                     @Override
                     public void onSuccess(List<GatewayBean> gatewayBeanList) {
@@ -128,28 +141,29 @@
 
                     @Override
                     public void onError(HDLLinkException e) {
-                        setError(e);
+                        setError(e.getMsg(), e.getCode());
                     }
                 });
             }
             break;
 
-            case "鑾峰彇閫嗗彉鍣╫id鍒楄〃": {
+            case "鑾峰彇閫嗗彉鍣╫id鍒楄〃(2)": {
                 HdlDeviceLogic.getInstance().getInverterOidList(gatewayBean.getDevice_mac(), new LinkCallBack<List<OidBean>>() {
                     @Override
                     public void onSuccess(List<OidBean> obj) {
+                        mOidList = obj;
                         gsonConvertJsonStr(obj);
                     }
 
                     @Override
                     public void onError(HDLLinkException e) {
-                        setError(e);
+                        setError(e.getMsg(), e.getCode());
                     }
                 });
             }
             break;
 
-            case "璇诲彇閫嗗彉鍣ㄨ鎯�": {
+            case "璇诲彇閫嗗彉鍣ㄨ鎯�(3)": {
                 HdlDeviceLogic.getInstance().getGatewayInfo(gatewayBean.getDevice_mac(), new LinkCallBack<GatewayBean>() {
                     @Override
                     public void onSuccess(GatewayBean obj) {
@@ -158,17 +172,79 @@
 
                     @Override
                     public void onError(HDLLinkException e) {
-                        setError(e);
+                        setError(e.getMsg(), e.getCode());
                     }
                 });
             }
             break;
+            case "娓呴櫎閫嗗彉鍣ㄤ綇瀹匢d(4)": {
+                TipDialog("涓�鏃︽竻闄ゆ帀閫嗗彉鍣ㄤ綇瀹卛d,閫嗗彉鍣ㄩ渶瑕侀噸鏂扮粦瀹氫綇瀹咃紝鍚﹀垯鏃犳硶娴嬭瘯閫嗗彉鍣ㄦ寚浠�;", new Listener() {
+                    @Override
+                    public void Confirmation() {
+                        HdlDeviceLogic.getInstance().clearInverterHomeId(gatewayBean.getDevice_mac(), new LinkCallBack<Boolean>() {
+                            @Override
+                            public void onSuccess(Boolean obj) {
+                                gsonConvertJsonStr(obj);
+                            }
+
+                            @Override
+                            public void onError(HDLLinkException e) {
+                                setError(e.getMsg(), e.getCode());
+                            }
+                        });
+                    }
+                });
+            }
+            break;
+            case "涓婁紶oid鍒楄〃缁欎簯绔�(5)": {
+                if (this.mOidList == null || this.mOidList.size() == 0) {
+                    hideLoading();
+                    HdlThreadLogic.toast(this, "娌℃湁oid鍒楄〃鏁版嵁锛岃鍏堣幏鍙栭�嗗彉鍣╫id鍒楄〃鏁版嵁锛屽啀閲嶆柊涓婁紶.");
+                    return;
+                }
+                HdlDeviceLogic.getInstance().fullUpdateOid(this.mOidList, new CloudCallBeak<Boolean>() {
+                    @Override
+                    public void onSuccess(Boolean obj) {
+                        gsonConvertJsonStr(obj);
+                    }
+
+                    @Override
+                    public void onFailure(HDLException e) {
+                        setError(e.getMsg(), e.getCode());
+                    }
+                });
+            }
+            break;
+            case "鑾峰彇閫嗗彉鍣ㄤ笅鎸傝澶囧垪琛�(6)": {
+                HdlDeviceLogic.getInstance().getInverterDeviceChildDeviceList(gatewayBean.getOid(), new CloudCallBeak<List<CloudInverterChildDeviceBean>>() {
+                    @Override
+                    public void onSuccess(List<CloudInverterChildDeviceBean> obj) {
+                        gsonConvertJsonStr(obj);
+                    }
+
+                    @Override
+                    public void onFailure(HDLException e) {
+                        setError(e.getMsg(), e.getCode());
+                    }
+                });
+            }
+            break;
+            default: {
+                HdlThreadLogic.runMainThread(new Runnable() {
+                    @Override
+                    public void run() {
+                        hideLoading();
+                    }
+                }, this, ShowErrorMode.YES);
+                break;
+            }
+
         }
 
     }
 
-    private void setError(HDLLinkException hdlLinkException) {
-        String error = hdlLinkException.getMsg() + "(" + hdlLinkException.getCode() + ")";
+    private void setError(String msg, int code) {
+        String error = msg + "(" + code + ")";
         showText(error);
     }
 
@@ -198,7 +274,7 @@
     /**
      * @param s 閿欒淇℃伅
      */
-    private void TipDialog(String s) {
+    private void TipDialog(String s, Listener listener) {
         ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(this);
         confirmationCancelDialog.setTitle("鎻愮ず");
         confirmationCancelDialog.setContent(s);
@@ -209,16 +285,26 @@
             @Override
             public void Cancel() {
                 confirmationCancelDialog.dismiss();
+                hideLoading();
+
             }
         });
         confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
             @Override
             public void Confirm() {
+                hideLoading();
                 confirmationCancelDialog.dismiss();
+                if (listener != null) {
+                    listener.Confirmation();
+                }
 
             }
         });
     }
 
+    public interface Listener {
+        void Confirmation();
+    }
+
 
 }
\ No newline at end of file

--
Gitblit v1.8.0