From c4ae4589c6c001329ebb731589b209e8ddcbf7ca Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 24 三月 2026 16:03:59 +0800
Subject: [PATCH] 2026年03月24日16:03:57
---
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | 97 ++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 81 insertions(+), 16 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 47b387e..f6d35ae 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -11,6 +11,8 @@
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.PowerStationType;
+import com.hdl.photovoltaic.enums.ProjectOperation;
import com.hdl.photovoltaic.internet.HttpClient;
import com.hdl.photovoltaic.internet.api.HttpApi;
import com.hdl.photovoltaic.listener.CloudCallBeak;
@@ -18,6 +20,7 @@
import com.hdl.photovoltaic.ui.bean.HouseInfoBean;
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.ui.bean.StatusOverviewBean;
+import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.sdk.link.core.config.HDLLinkConfig;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
@@ -176,6 +179,25 @@
}
/**
+ * 鐢电珯Id瀵硅薄鏇存柊
+ *
+ * @param houseIdBean 鐢电珯id瀵硅薄
+ */
+ public void updateHouseIdBean(HouseIdBean houseIdBean) {
+ if (houseIdBean == null) {
+ return;
+ }
+ for (int i = 0; i < mHouseIdList.size(); i++) {
+ HouseIdBean h = mHouseIdList.get(i);
+ if (h.getHomeId().equals(houseIdBean.getHomeId())) {
+ h.setDebugStatus(houseIdBean.getDebugStatus());
+ //mHouseIdList.set(i,houseIdBean);鏁翠釜瀵硅薄鏇挎崲
+ break;
+ }
+ }
+ }
+
+ /**
* 绉诲姩鐢电珯浣嶇疆
*
* @param houseId 鐢电珯id
@@ -233,7 +255,7 @@
houseInfoBean.setInstalledCapacity(houseIdBean.getInstalledCapacity());//瑁呮満瀹归噺
houseInfoBean.setPower(houseIdBean.getPower());//鍙戠數鍔熺巼
houseInfoBean.setTodayElectricity(houseIdBean.getTodayElectricity());//浠婂ぉ鍙戠數閲�
- houseInfoBean.setPowerStationStatus(houseIdBean.getPowerStationStatus());//鐢电珯鐘舵��(鐢电珯鐘舵�� 1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰)
+ houseInfoBean.setPowerStationStatus(houseIdBean.getPowerStationStatus());//鐢电珯鐘舵��(鐢电珯鐘舵�� 1:姝e父(杩愯),2:绂荤嚎,3:杩炴帴涓�,4:鏁呴殰)
//娣诲姞鍒版湰鍦扮紦瀛�
addHouseToLocalMemory(houseInfoBean);
}
@@ -371,10 +393,11 @@
* @param installedCapacityMax 鏈�澶х粍涓插閲�(瑁呮満瀹归噺)
* @param debugStatus 璋冭瘯鐘舵��(鍏ㄩ儴;璋冭瘯涓�;璋冭瘯瀹屾垚;宸蹭氦浠�;鎺堟潈璋冭瘯)
* @param powerStationStatus 鐢电珯鐘舵�� (鍏ㄩ儴 锛�"";1 锛� 姝e父;2 锛� 绂荤嚎; 3 锛� 寰呮帴鍏�;4 锛� 鏁呴殰)
+ * @param powerStationType 鐢电珯绫诲瀷(INV = 閫嗗彉鍣ㄧ數绔�;BMS = BMS鐢电珯)
* @param pageNo 椤电爜
* @param pageSize 椤垫暟锛堜竴椤靛灏戞暟鎹級
*/
- public void getResidenceIdList(String key, String keyValue, String installedCapacityMin, String installedCapacityMax, String debugStatus, String powerStationStatus, long pageNo, long pageSize, CloudCallBeak<HouseBeanClass> cloudCallBeak) {
+ public void getResidenceIdList(String key, String keyValue, String installedCapacityMin, String installedCapacityMax, String debugStatus, String powerStationStatus, String powerStationType, long pageNo, long pageSize, CloudCallBeak<HouseBeanClass> cloudCallBeak) {
String requestUrl = HttpApi.POST_PowerStation_List;
JsonObject json = new JsonObject();
@@ -405,6 +428,12 @@
try {
int value = Integer.parseInt(powerStationStatus);
json.addProperty("powerStationStatus", value);
+ } catch (Exception ignored) {
+ }
+ }
+ if (!TextUtils.isEmpty(powerStationType)) {
+ try {
+ json.addProperty("powerStationType", powerStationType);
} catch (Exception ignored) {
}
}
@@ -592,8 +621,13 @@
/**
* 鐢电珯鐘舵�佹瑙�(瀹夎鍟�)
+ *
+ * @param debugStatus (璋冭瘯鐘舵��:Debugging = 璋冭瘯涓�,WAIT_DELIVERED = 璋冭瘯瀹屾垚,Delivered = 宸蹭氦浠�,SECONDARY_DEBUGGIN = 鎺堟潈璋冭瘯)
+ * @param installedCapacityMin 鏈�灏忕粍涓插閲�(瑁呮満瀹归噺)
+ * @param installedCapacityMax 鏈�澶х粍涓插閲�(瑁呮満瀹归噺)
+ * @param powerStationType 鐢电珯绫诲瀷锛堥�嗗彉鍣紝BMS锛�
*/
- public void getStatusOverview(CloudCallBeak<StatusOverviewBean> cloudCallBeak) {
+ public void getStatusOverview(String debugStatus, String installedCapacityMin, String installedCapacityMax, String powerStationType, CloudCallBeak<StatusOverviewBean> cloudCallBeak) {
String requestUrl = HttpApi.POST_statusOverview;
JsonObject json = new JsonObject();
if (!TextUtils.isEmpty(installedCapacityMin)) {
@@ -604,6 +638,10 @@
}
if (!TextUtils.isEmpty(debugStatus)) {
json.addProperty("debugStatus", debugStatus);
+ }
+
+ if (!TextUtils.isEmpty(powerStationType)) {
+ json.addProperty("powerStationType", powerStationType);
}
@@ -910,6 +948,7 @@
// HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath());
//閲嶆柊璁剧疆浣忓畢id
UserConfigManage.getInstance().setHomeId(houseIdBean.getHomeId());
+ UserConfigManage.getInstance().setPowerStationType(houseIdBean.getPowerStationType());
UserConfigManage.getInstance().setHomeName(houseIdBean.getHomeName());
//閲嶆柊璁剧疆鏈湴閫氳绉橀挜
UserConfigManage.getInstance().setLocalSecret(houseIdBean.getLocalSecret());
@@ -923,6 +962,30 @@
HdlDeviceLogic.getInstance().searchCurrentHomeGateway(houseIdBean.getHomeId(), null);
}
+ /**
+ * 鎵撳紑鐢电珯璇︽儏(uni鐣岄潰)
+ *
+ * @param houseIdBean 浣忓畢Id瀵硅薄
+ */
+ public void openPowerStationDetails(HouseIdBean houseIdBean) {
+ if (UserConfigManage.getInstance().isBAccount()) {
+ if (houseIdBean.getPowerStationType().equals(PowerStationType.BMS)) {
+ String path = HDLUniMP.UNI_EVENT_OPEN_BMSPLANT_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&isInstaller=true";
+ HdlUniLogic.getInstance().openUniMP(path, null);
+ } else {
+ String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
+ HdlUniLogic.getInstance().openUniMP(path, null);
+ }
+ } else {
+ if (houseIdBean.getPowerStationType().equals(PowerStationType.BMS)) {
+ String path = HDLUniMP.UNI_EVENT_OPEN_BMSPLANT_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&isInstaller=false";
+ HdlUniLogic.getInstance().openUniMP(path, null);
+ } else {
+ String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS_C + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
+ HdlUniLogic.getInstance().openUniMP(path, null);
+ }
+ }
+ }
/**
* 鐢电珯鏁版嵁(缁熻)
@@ -1082,26 +1145,28 @@
}
/**
- * 娣诲姞鎺ㄩ�乀oken
+ * 鏇存柊椤圭洰鐘舵�� 锛堜氦浠樸�侀獙鏀躲�佹挙閿�浜や粯銆侀獙鏀舵湭閫氳繃銆侀噸鏂拌皟璇曘�佷氦浠樺洖婊氱瓑鎿嶄綔锛夛紙https://hdl-gz.yuque.com/wnkbmh/diiq35/kegldc#gWveC锛�
*
- * @param cloudCallBeak -
+ * @param homeId 鐢电珯id
+ * @param communityId 绀惧尯id
+ * @param flowRecordContent 娴佽浆璁板綍鍐呭
+ * @param projectOperation 椤圭洰鐘舵��
+ * @param cloudCallBeak -
*/
- public void pushAdd(CloudCallBeak<String> cloudCallBeak) {
- String requestUrl = HttpApi.POST_push_add;
+ public void setUpdateProjectDebugStatus(String homeId, String communityId, String flowRecordContent, String projectOperation, CloudCallBeak<Boolean> cloudCallBeak) {
+ String requestUrl = HttpApi.POST_UpdateProjectDebugStatus;
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");//杞欢鏉ユ簮
+ json.addProperty("houseId", homeId);
+ json.addProperty("communityId", communityId);
+ json.addProperty("flowRecordContent", flowRecordContent);//娴佽浆璁板綍鍐呭
+ json.addProperty("projectFlowRecordActionEnum", projectOperation);
HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
@Override
public void onSuccess(String jsonStr) {
if (cloudCallBeak != null) {
- cloudCallBeak.onSuccess(jsonStr);
+ cloudCallBeak.onSuccess(true);
}
-
}
@Override
@@ -1112,8 +1177,8 @@
}
});
-
}
+
public static class HouseBeanClass {
@@ -1169,4 +1234,4 @@
}
}
-}
+}
\ No newline at end of file
--
Gitblit v1.8.0