From 636c4bb04e4fcd723766b82732990cdb4ae4ea2e Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期四, 22 二月 2024 15:48:23 +0800
Subject: [PATCH] 删除掉本地库
---
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | 532 +++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 341 insertions(+), 191 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
index 6b2f341..304fac9 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -1,29 +1,38 @@
package com.hdl.photovoltaic.other;
-import android.os.SystemClock;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.os.Build;
import android.text.TextUtils;
-import android.util.Log;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
+import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.photovoltaic.bean.HttpResponsePack;
+import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.internet.HttpClient;
import com.hdl.photovoltaic.internet.api.HttpApi;
import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak;
import com.hdl.photovoltaic.listener.CloudCallBeak;
+import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
import com.hdl.photovoltaic.ui.bean.HouseInfoBean;
-import com.hdl.photovoltaic.ui.bean.HouseListBean;
+import com.hdl.photovoltaic.ui.bean.HouseIdBean;
+import com.hdl.photovoltaic.ui.bean.MessageBean;
+import com.hdl.sdk.link.common.exception.HDLLinkException;
+import com.hdl.sdk.link.core.bean.gateway.GatewayBean;
+import com.hdl.sdk.link.core.callback.GatewayCallBack;
+import com.hdl.sdk.link.core.config.HDLLinkConfig;
+import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
+import com.hdl.sdk.link.gateway.HDLLinkLocalGateway;
-import org.w3c.dom.Text;
-
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
-import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
/**
- * 浣忓畢閫昏緫鐣岄潰
+ * 浣忓畢閫昏緫
*/
public class HdlResidenceLogic {
@@ -48,60 +57,76 @@
return sHdlResidenceLogic;
}
+ /**
+ * 鑾峰彇缂撳瓨浣忓畢鍒楄〃
+ *
+ * @return 浣忓畢鍒楄〃
+ */
public List<HouseInfoBean> getHouseInfoList() {
return houseInfoList;
}
public void setHouseInfoList(List<HouseInfoBean> houseInfoList) {
+ if (houseInfoList == null) {
+ houseInfoList = new ArrayList<>();
+ }
this.houseInfoList = houseInfoList;
}
- public List<HouseListBean> getHouseInfoBeanList() {
- return houseList;
+ /**
+ * 鑾峰彇缂撳瓨浣忓畢ID鍒楄〃
+ *
+ * @return 浣忓畢ID鍒楄〃
+ */
+ public List<HouseIdBean> getHouseIdList() {
+ return houseIdList;
}
- public void setHouseInfoBeanList(List<HouseListBean> houseListBeanList) {
- this.houseList = houseListBeanList;
+ public void setHouseIdList(List<HouseIdBean> houseIdList) {
+ if (houseIdList == null) {
+ houseIdList = new ArrayList<>();
+ }
+ this.houseIdList = houseIdList;
}
- //浣忓畢鍒楄〃
- private List<HouseListBean> houseList = new ArrayList<>();
+ //浣忓畢ID鍒楄〃
+ private List<HouseIdBean> houseIdList = new ArrayList<>();
//浣忓畢璇︽儏鍒楄〃
private List<HouseInfoBean> houseInfoList = new ArrayList<>();
/**
- * 鑾峰彇浣忓畢鍒楄〃
+ * 鑾峰彇浣忓畢鍒楄〃锛屽寘鎷幏鍙栦綇瀹卛d鍒楄〃锛屼綇瀹呰鎯呭垪琛紱
*
* @param cloudCallBeak -
*/
public void getHouseList(CloudCallBeak<Boolean> cloudCallBeak) {
- //鑾峰彇浣忓畢鍒楄〃
- getResidenceList("", "", new CloudCallBeak<List<HouseListBean>>() {
+ //鑾峰彇浣忓畢ID鍒楄〃
+ getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
@Override
- public void onSuccess(List<HouseListBean> houseListBeanList) {
- if (houseListBeanList != null && houseListBeanList.size() > 0) {
- houseList.clear();
- houseList.addAll(houseListBeanList);
- //鏍囪鏈�鍚庝竴鏉�
+ public void onSuccess(List<HouseIdBean> houseListBeanIDList) {
+ if (houseListBeanIDList != null && houseListBeanIDList.size() > 0) {
+ houseIdList.clear();
+ houseIdList.addAll(houseListBeanIDList);
+ //璁板綍璇锋眰鏉℃暟
AtomicInteger atomicInteger = new AtomicInteger(0);
- for (int i = 0; i < houseList.size(); i++) {
- HouseListBean houseListBean = houseList.get(i);
- atomicInteger.set(i);
+ for (int i = 0; i < houseIdList.size(); i++) {
+ HouseIdBean houseIdBean = houseIdList.get(i);
//鑾峰彇浣忓畢璇︽儏鍒楄〃
- getResidenceInfo(houseListBean.getHomeId(), new CloudCallBeak<HouseInfoBean>() {
+ getResidenceInfo(houseIdBean.getHomeId(), new CloudCallBeak<HouseInfoBean>() {
@Override
public void onSuccess(HouseInfoBean houseInfoBean) {
+ atomicInteger.set(atomicInteger.get() + 1);
if (houseInfoBean != null) {
- houseInfoBean.setHomeImage(houseListBean.getHomeImage());//鐢电珯鍥剧墖
- houseInfoBean.setInstalledCapacity(houseListBean.getInstalledCapacity());//瑁呮満瀹归噺
- houseInfoBean.setPower(houseListBean.getPower());//鍙戠數鍔熺巼
- houseInfoBean.setTodayElectricity(houseListBean.getTodayElectricity());//浠婂ぉ鍙戠數閲�
- houseInfoBean.setPowerStationStatus(houseListBean.getPowerStationStatus());//鐢电珯鐘舵��(鐢电珯鐘舵�� 1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰)
+ houseInfoBean.setPowerStationImage(houseIdBean.getPowerStationImage());//鐢电珯鍥剧墖
+ houseInfoBean.setInstalledCapacity(houseIdBean.getInstalledCapacity());//瑁呮満瀹归噺
+ houseInfoBean.setPower(houseIdBean.getPower());//鍙戠數鍔熺巼
+ houseInfoBean.setTodayElectricity(houseIdBean.getTodayElectricity());//浠婂ぉ鍙戠數閲�
+ houseInfoBean.setPowerStationStatus(houseIdBean.getPowerStationStatus());//鐢电珯鐘舵��(鐢电珯鐘舵�� 1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰)
//娣诲姞鍒版湰鍦扮紦瀛�
addHouseToLocalMemory(houseInfoBean);
}
- if (atomicInteger.get() == houseList.size() - 1) {
+ if (atomicInteger.get() == houseIdList.size()) {
//鏈�鍚庝竴鏉¢��鍑�
if (cloudCallBeak != null) {
cloudCallBeak.onSuccess(true);
@@ -111,10 +136,12 @@
}
@Override
- public void onFailure(Exception exception) {
- if (atomicInteger.get() == houseList.size() - 1) {
+ public void onFailure(HDLException e) {
+ atomicInteger.set(atomicInteger.get() + 1);
+ if (atomicInteger.get() == houseIdList.size()) {
+ //鏈�鍚庝竴鏉¢��鍑�
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
}
@@ -129,9 +156,9 @@
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
@@ -139,142 +166,81 @@
}
/**
- * 鑾峰彇浣忓畢(鐢电珯)鍒楄〃
+ * 鑾峰彇浣忓畢(鐢电珯)ID鍒楄〃
*
- * @param pageNo 褰撳墠椤垫暟 寮�濮嬮粯璁�1
- * @param pageSize 涓�椤靛ぇ灏� 寮�濮嬮粯璁�50
- * @param key 鍙戠數鍔熺巼鎺掑簭(powerSort);浠婃棩鍙戠數閲忔帓搴�(todayElectricitySort);鍒涘缓鏃堕棿鎺掑簭(createTimeSort);
- * @param keyValue (descending:闄嶅簭ascending:鍗囧簭),
+ * @param key 鍙戠數鍔熺巼鎺掑簭(powerSort);
+ * 浠婃棩鍙戠數閲忔帓搴�(todayElectricitySort);
+ * 鍒涘缓鏃堕棿鎺掑簭(createTimeSort);
+ * @param keyValue (descending:闄嶅簭
+ * ascending:鍗囧簭),
*/
- public void getResidenceList(int pageNo, int pageSize, String key, String keyValue, CloudCallBeak<Boolean> cloudCallBeak) {
- if (pageNo == 1) {
- //绗竴娆¤繘鏉ユ竻绌哄垪琛�
- houseList.clear();
- }
- String requestUrl = HttpApi.POST_PowerStation_List;
- JsonObject json = new JsonObject();
- if (!TextUtils.isEmpty(key) && !TextUtils.isEmpty(keyValue)) {
- json.addProperty(key, keyValue);//鍙戠數鍔熺巼鎺掑簭(descending:闄嶅簭ascending:鍗囧簭)
- }
-// json.addProperty("powerSort", "descending");//鍙戠數鍔熺巼鎺掑簭(descending:闄嶅簭ascending:鍗囧簭)
-// json.addProperty("todayElectricitySort", "descending");//浠婃棩鍙戠數閲忔帓搴�
-// json.addProperty("createTimeSort", "descending");//鍒涘缓鏃堕棿鎺掑簭
-// json.addProperty("zoneType", "password");//鍖哄煙
- json.addProperty("pageNo", pageNo);//椤电爜
- json.addProperty("pageSize", pageSize);//椤垫暟
-
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
- @Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
- if (httpResponsePack != null && httpResponsePack.getData() != null) {
- Gson gson = new Gson();
- String jsonStr = gson.toJson(httpResponsePack.getData());
- HouseInfoBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseInfoBeanClass.class);
- //娣诲姞銆愪綇瀹呫�戝埌鏈湴缂撳瓨
- houseList.addAll(houseInfoBeanClass.getList());
- //鎬诲叡鏈夊灏戦〉
- long totalPage = houseInfoBeanClass.totalPage;
- if (totalPage == houseInfoBeanClass.getPageNo()) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(true);
- }
- return;
- }
- if (pageNo > totalPage) {
- //褰撳墠璇锋眰鐨勯〉鏁板ぇ浜庢�婚〉鏁�,浜戠鍑洪敊浜嗙珛鍗宠繑鍥炲幓;
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(true);
- }
- return;
- }
- getResidenceList(pageNo + 1, pageSize, key, keyValue, cloudCallBeak);
-
- }
- }
-
-
- @Override
- public void onFailure(Exception exception) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
- }
- }
- });
- }
-
-
- public void getResidenceList(String key, String keyValue, CloudCallBeak<List<HouseListBean>> cloudCallBeak) {
+ public void getResidenceIdList(String key, String keyValue, CloudCallBeak<List<HouseIdBean>> cloudCallBeak) {
String requestUrl = HttpApi.POST_PowerStation_List;
JsonObject json = new JsonObject();
if (!TextUtils.isEmpty(key) && !TextUtils.isEmpty(keyValue)) {
json.addProperty(key, keyValue);//鍙戠數鍔熺巼鎺掑簭(descending:闄嶅簭ascending:鍗囧簭)
}
-// json.addProperty("powerSort", "descending");//鍙戠數鍔熺巼鎺掑簭(descending:闄嶅簭ascending:鍗囧簭)
-// json.addProperty("todayElectricitySort", "descending");//浠婃棩鍙戠數閲忔帓搴�
-// json.addProperty("createTimeSort", "descending");//鍒涘缓鏃堕棿鎺掑簭
// json.addProperty("zoneType", "password");//鍖哄煙
json.addProperty("pageNo", 1);//椤电爜
json.addProperty("pageSize", pageSize);//椤垫暟
- List<HouseListBean> list = new ArrayList<>();
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ List<HouseIdBean> list = new ArrayList<>();
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
- if (httpResponsePack != null && httpResponsePack.getData() != null) {
- Gson gson = new Gson();
- String jsonStr = gson.toJson(httpResponsePack.getData());
- HouseInfoBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseInfoBeanClass.class);
- list.addAll(houseInfoBeanClass.getList());
- //鎬诲叡鏈夊灏戦〉
- long totalPage = houseInfoBeanClass.totalPage;
- if (totalPage < 2) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(list);
- }
- return;
- }
- //鏍囪鏈�鍚庝竴鏉�
- AtomicBoolean isLast = new AtomicBoolean(false);
- //浠庣浜岄〉鑾峰彇鏁版嵁
- for (int i = 2; i <= totalPage; i++) {
- if (totalPage == i) {
- isLast.set(true);
- }
- json.addProperty("pageNo", i);//鏇存柊椤电爜
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
- @Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
- Gson gson = new Gson();
- String jsonStr = gson.toJson(httpResponsePack.getData());
- HouseInfoBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseInfoBeanClass.class);
- list.addAll(houseInfoBeanClass.getList());
- if (isLast.get()) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(list);
- }
- }
- }
-
- @Override
- public void onFailure(Exception exception) {
- if (isLast.get()) {
- if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(list);
- }
- }
- }
- });
- }
-
- } else {
+ public void onSuccess(String jsonStr) {
+ if (TextUtils.isEmpty(jsonStr)) {
if (cloudCallBeak != null) {
cloudCallBeak.onSuccess(list);
}
}
+ Gson gson = new Gson();
+ HouseBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseBeanClass.class);
+ list.addAll(houseInfoBeanClass.getList());
+ //鎬诲叡鏈夊灏戦〉
+ long totalPage = houseInfoBeanClass.totalPage;
+ if (totalPage < 2) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(list);
+ }
+ return;
+ }
+ //璁板綍璇锋眰鏉℃暟
+ AtomicInteger atomicInteger = new AtomicInteger(0);
+ //浠庣浜岄〉鑾峰彇鏁版嵁
+ for (int i = 2; i <= totalPage; i++) {
+ json.addProperty("pageNo", i);//鏇存柊椤电爜
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String jsonStr) {
+ atomicInteger.set(atomicInteger.get() + 1);
+ Gson gson = new Gson();
+ HouseBeanClass houseInfoBeanClass = gson.fromJson(jsonStr, HouseBeanClass.class);
+ list.addAll(houseInfoBeanClass.getList());
+ if (atomicInteger.get() == totalPage - 1) {
+ //鏈�鍚庝竴鏉¢��鍑�
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(list);
+ }
+ }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ atomicInteger.set(atomicInteger.get() + 1);
+ if (atomicInteger.get() == totalPage - 1) {
+ //鏈�鍚庝竴鏉¢��鍑�
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(list);
+ }
+ }
+ }
+ });
+ }
+
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException exception) {
if (cloudCallBeak != null) {
cloudCallBeak.onFailure(exception);
}
@@ -285,7 +251,7 @@
}
/**
- * 鑾峰彇浣忓畢(鐢电珯)璇︽儏
+ * 鑾峰彇浣忓畢(鐢电珯)ID璇︽儏
*
* @param homeId 浣忓畢id
* @param cloudCallBeak 鍥炶皟
@@ -295,24 +261,25 @@
JsonObject json = new JsonObject();
json.addProperty("homeId", homeId);//鐢电珯id
//json.addProperty("zoneType", "password");//鍖哄煙
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
- if (httpResponsePack != null && httpResponsePack.getData() != null) {
- Gson gson = new Gson();
- String jsonStr = gson.toJson(httpResponsePack.getData());
- HouseInfoBean houseInfoBean = gson.fromJson(jsonStr, HouseInfoBean.class);
-
+ public void onSuccess(String jsonStr) {
+ if (TextUtils.isEmpty(jsonStr)) {
if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(houseInfoBean);
+ cloudCallBeak.onSuccess(null);
}
+ }
+ Gson gson = new Gson();
+ HouseInfoBean houseInfoBean = gson.fromJson(jsonStr, HouseInfoBean.class);
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(houseInfoBean);
}
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
@@ -352,9 +319,9 @@
json.addProperty("electrovalence", houseInfoBean.getElectrovalence());
json.addProperty("totalCost", houseInfoBean.getTotalCost());
json.addProperty("zoneType", houseInfoBean.getZoneType());
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
+ public void onSuccess(String str) {
if (cloudCallBeak != null) {
cloudCallBeak.onSuccess(true);
}
@@ -362,9 +329,9 @@
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
@@ -381,9 +348,9 @@
JsonObject json = new JsonObject();
json.addProperty("homeId", homeId);//鐢电珯id
//json.addProperty("zoneType", "password");//鍖哄煙
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
+ public void onSuccess(String str) {
if (cloudCallBeak != null) {
cloudCallBeak.onSuccess(true);
}
@@ -391,9 +358,9 @@
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
@@ -431,9 +398,9 @@
json.addProperty("electrovalence", houseInfoBean.getElectrovalence());
json.addProperty("totalCost", houseInfoBean.getTotalCost());
json.addProperty("zoneType", houseInfoBean.getZoneType());
- HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() {
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void onSuccess(HttpResponsePack httpResponsePack) {
+ public void onSuccess(String str) {
if (cloudCallBeak != null) {
cloudCallBeak.onSuccess(true);
}
@@ -441,9 +408,9 @@
}
@Override
- public void onFailure(Exception exception) {
+ public void onFailure(HDLException e) {
if (cloudCallBeak != null) {
- cloudCallBeak.onFailure(exception);
+ cloudCallBeak.onFailure(e);
}
}
});
@@ -452,24 +419,97 @@
}
/**
- * 鍒囨崲浣忓畢
- *
- * @param homeId 浣忓畢id
+ * 鑾峰彇浣忓畢鍥剧墖
*/
- public Boolean switchHouse(String homeId) {
- UserConfigManage.getInstance().setHomeId(homeId);
- HdlThreadLogic.runThread(new Runnable() {
+ public void getResidenceImage(String imageUrl, CloudCallBeak<Bitmap> cloudCallBeak) {
+ String requestUrl = imageUrl;
+ JsonObject json = new JsonObject();
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
- public void run() {
- //鎼滅储涓�涓嬩綇瀹呰澶�
+ public void onSuccess(String jsonStr) {
+ if (TextUtils.isEmpty(jsonStr)) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(null);
+ }
+ return;
+ }
+ Bitmap bitmap = BitmapFactory.decodeByteArray(jsonStr.getBytes(), 0, jsonStr.getBytes().length);
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(bitmap);
+ }
}
- }, null, null);
- //鍏抽棴杩涘害鏉�
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
- return true;
+
}
+
+ /**
+ * 鐢ㄦ埛鑷畾涔夐厤缃俯搴﹀崟浣�
+ *
+ * @param tempType 娓╁害鍗曚綅绫诲瀷 (C 锛氭憚姘忓害锛� F 锛氬崕姘忓害)
+ * @param cloudCallBeak -
+ */
+ public void setResidenceTemperatureUnit(String tempType, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_C_F_CustomConfig;
+ JsonObject json = new JsonObject();
+ json.addProperty("tempType", tempType);
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String str) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(true);
+ }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+
+ }
+
+ /**
+ * 鑾峰彇鐢ㄦ埛鑷畾涔夐厤缃俯搴﹀崟浣嶈鎯�
+ *
+ * @param cloudCallBeak -
+ */
+ public void getResidenceTemperatureUnit(CloudCallBeak<String> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_C_F_CustomConfigInfo;
+ JsonObject json = new JsonObject();
+// json.addProperty("homeId", homeId);
+
+ List<MessageBean> list = new ArrayList<>();
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String jsonStr) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(jsonStr);
+ }
+
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+
+ }
/**
* 娣诲姞銆愪綇瀹呰鎯呫�戝埌鏈湴缂撳瓨
@@ -532,8 +572,118 @@
}
}
+ /**
+ * 鑾峰彇浣忓畢Id瀵硅薄
+ *
+ * @param homeId 浣忓畢id
+ * @return 鍒楄〃绱㈠紩
+ */
+ public HouseIdBean getHouseId(String homeId) {
+ for (int i = 0; i < houseIdList.size(); i++) {
+ if (houseIdList.get(i).getHomeId().equals(homeId)) {
+ return houseIdList.get(i);
+ }
+ }
+ return null;
+ }
- static class HouseInfoBeanClass {
+ /**
+ * 鍒囨崲浣忓畢
+ *
+ * @param houseIdBean 浣忓畢Id瀵硅薄
+ */
+ public void switchHouse(HouseIdBean houseIdBean) {
+ String homeId = UserConfigManage.getInstance().getHomeId();
+ if (houseIdBean.getHomeId().equals(homeId)) {
+ HdlLogLogic.print("鐐瑰嚮鍚屼竴涓綇瀹�--->" + homeId);
+ return;
+ }
+ //璁㈤槄瑕佸叏閮ㄥ彇娑�
+ if (MqttRecvClient.getInstance() != null) {
+ MqttRecvClient.getInstance().removeAllTopic();
+ }
+ //瑕佹竻绌轰箣鍓峵cp杩炴帴缂撳瓨
+ //TODO: 10/10/23
+ //鍒犻櫎鏃х殑浣忓畢鏂囦欢澶� 2023骞�11鏈�03鏃�14:28:19鏆傛椂鍘绘帀
+// HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath());
+ //閲嶆柊璁剧疆浣忓畢id
+ UserConfigManage.getInstance().setHomeId(houseIdBean.getHomeId());
+ UserConfigManage.getInstance().setHomeName(houseIdBean.getHomeName());
+ //閲嶆柊璁剧疆鏈湴閫氳绉橀挜
+ UserConfigManage.getInstance().setLocalSecret(houseIdBean.getLocalSecret());
+ //閰嶇疆鏈湴閫氫俊鐨勪俊鎭�
+ HDLLinkConfig.getInstance().setHomeId(UserConfigManage.getInstance().getHomeId());
+ HDLLinkConfig.getInstance().setLocalSecret(UserConfigManage.getInstance().getLocalSecret());
+ //閲嶆柊鍒涘缓浣忓畢鏂囦欢澶�
+ HdlFileLogic.getInstance().createDirectory();
+ //杩涘幓浣忓畢璇︽儏鎼滅储涓�涓嬮�嗗彉鍣ㄥ垪琛�,鐩殑鏄缓绔嬮�氳閫氶亾;
+ HdlDeviceLogic.getInstance().searchCurrentHomeGateway(null);
+ }
+
+
+ /**
+ * 鐢电珯鏁版嵁(缁熻)
+ *
+ * @param homeId 浣忓畢id
+ */
+ public void getResidenceInverterAllInfo(String homeId, CloudCallBeak<Bitmap> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_inverter_allInfo;
+ JsonObject json = new JsonObject();
+ json.addProperty("homeId", homeId);
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String jsonStr) {
+ if (cloudCallBeak != null) {
+// cloudCallBeak.onSuccess(jsonStr);
+ }
+
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+ }
+
+
+ /**
+ * 娣诲姞鎺ㄩ�乀oken
+ *
+ * @param cloudCallBeak -
+ */
+ public void pushAdd(CloudCallBeak<String> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_push_add;
+ JsonObject json = new JsonObject();
+ json.addProperty("deviceName", Build.MODEL);//璁惧鍚嶇О
+ json.addProperty("deviceType", "Android");//璁惧绫诲瀷
+ json.addProperty("produce", AppConfigManage.isIsOnlineServer());//琛ㄧず鏄惁鏄寮忔湇鍔″櫒
+ json.addProperty("pushToken", UserConfigManage.getInstance().getRegistrationID());//App鐨勬帹閫乀oken锛屽湪鏋佸厜涓篟egId
+ json.addProperty("software", "PHOTOVOLTAIC");//杞欢鏉ユ簮
+
+ HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String jsonStr) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onSuccess(jsonStr);
+ }
+
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ if (cloudCallBeak != null) {
+ cloudCallBeak.onFailure(e);
+ }
+ }
+ });
+
+
+ }
+
+ static class HouseBeanClass {
//鎬绘潯鏁�
private long totalCount;
@@ -544,7 +694,7 @@
//椤垫暟
private long pageSize;
//鐢电珯鍒楄〃
- private List<HouseListBean> list;
+ private List<HouseIdBean> list;
public long getTotalCount() {
return totalCount;
@@ -578,11 +728,11 @@
this.pageSize = pageSize;
}
- public List<HouseListBean> getList() {
+ public List<HouseIdBean> getList() {
return list == null ? new ArrayList<>() : list;
}
- public void setList(List<HouseListBean> list) {
+ public void setList(List<HouseIdBean> list) {
this.list = list;
}
}
--
Gitblit v1.8.0