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