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