From d8d41b0623146ec890ec9191b613c0e8f13197dd Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 12 六月 2024 14:53:37 +0800
Subject: [PATCH] 2024年06月12日14:53:31
---
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 98 ++++++++++++++++++++++++++++++++-----------------
1 files changed, 64 insertions(+), 34 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
index effb37d..e505902 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java
@@ -48,6 +48,7 @@
import com.hdl.sdk.link.common.exception.HDLLinkException;
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import com.hdl.sdk.link.core.bean.gateway.GatewayBean;
+import com.hdl.sdk.link.core.config.HDLLinkConfig;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
import com.hdl.sdk.link.gateway.HDLLinkLocalGateway;
@@ -117,17 +118,10 @@
return;
}
isClickPowerStationLabel = true;
- viewBinding.powerStationLabel.setTextAppearance(R.style.Text20Style);
- viewBinding.deviceLabel.setTextAppearance(R.style.Text16Style);
- viewBinding.editIv.setVisibility(View.VISIBLE);//缂栬緫鍥炬爣闅愯棌
- viewBinding.addIv.setVisibility(View.VISIBLE);//娣诲姞鍥炬爣闅愯棌
- viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
- viewBinding.deviceLabelParent.setVisibility(View.GONE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
- if (viewBinding.deviceNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
- viewBinding.deviceNullDataIc.getRoot().setVisibility(View.GONE);
- }
- loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
+ selectedTitleLabelStyle();
getStatusOverview();
+ loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
+
}
});
//璁惧鏍囩
@@ -138,15 +132,7 @@
return;
}
isClickPowerStationLabel = false;
- viewBinding.deviceLabel.setTextAppearance(R.style.Text20Style);
- viewBinding.powerStationLabel.setTextAppearance(R.style.Text16Style);
- viewBinding.editIv.setVisibility(View.GONE);//缂栬緫鍥炬爣闅愯棌
- viewBinding.addIv.setVisibility(View.GONE);//娣诲姞鍥炬爣闅愯棌
- viewBinding.powerStationLabelParent.setVisibility(View.GONE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
- viewBinding.deviceLabelParent.setVisibility(View.VISIBLE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
- if (viewBinding.homeNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
- viewBinding.homeNullDataIc.getRoot().setVisibility(View.GONE);
- }
+ selectedTitleLabelStyle();
loadNextPageDeviceList(true, 1, true);
}
});
@@ -155,7 +141,7 @@
@Override
public void onClick(View v) {
powerStationStatusValue = PowerStationStatus.All;
- selectedStationStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true);
+ selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true);
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
}
});
@@ -164,7 +150,7 @@
@Override
public void onClick(View v) {
powerStationStatusValue = PowerStationStatus.malfunction;
- selectedStationStyle(viewBinding.powerStationFaultsIl.parentLl, viewBinding.powerStationFaultsIl.stationTotalTv, viewBinding.powerStationFaultsIl.stationTitleTv, true);
+ selectedStationStateStyle(viewBinding.powerStationFaultsIl.parentLl, viewBinding.powerStationFaultsIl.stationTotalTv, viewBinding.powerStationFaultsIl.stationTitleTv, true);
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
}
});
@@ -173,7 +159,7 @@
@Override
public void onClick(View v) {
powerStationStatusValue = PowerStationStatus.off;
- selectedStationStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true);
+ selectedStationStateStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true);
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
}
});
@@ -182,7 +168,7 @@
@Override
public void onClick(View v) {
powerStationStatusValue = PowerStationStatus.connecting;
- selectedStationStyle(viewBinding.powerStationConnectedIl.parentLl, viewBinding.powerStationConnectedIl.stationTotalTv, viewBinding.powerStationConnectedIl.stationTitleTv, true);
+ selectedStationStateStyle(viewBinding.powerStationConnectedIl.parentLl, viewBinding.powerStationConnectedIl.stationTotalTv, viewBinding.powerStationConnectedIl.stationTitleTv, true);
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
}
});
@@ -284,7 +270,7 @@
//绉诲姩鐢电珯浣嶇疆
HdlResidenceLogic.getInstance().moveHouseId(houseIdBean.getHomeId());
initData();//鍒濆鍖栫紦瀛樻暟鎹�
- houseInfoAdapter.setList(houseListBeanIDList);//閲嶆柊鍒锋柊鍒楄〃
+ houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);//閲嶆柊鍒锋柊鍒楄〃
nullDataUpdateUi();//妫�娴嬫暟鎹槸鍚︿负绌�
}
@@ -426,9 +412,16 @@
// gatewayBean.setHomeId(deviceBean.getHomeId());
// gatewayBean.setSpk(deviceBean.getSpk());
// gatewayBean.setDeviceType(deviceBean.getDeviceType());
+ if (deviceBean.getDeviceStatus() == 4) {
+ HdlThreadLogic.toast(_mActivity, R.string.device_off);
+ return;
+ }
+ //閰嶇疆鏈湴閫氫俊鐨勪俊鎭�
+ HDLLinkConfig.getInstance().setHomeId(deviceBean.getHomeId());
+ HDLLinkConfig.getInstance().setLocalSecret(deviceBean.getLocalSecret());
List<CloudInverterDeviceBean> newList = new ArrayList<>();
newList.add(deviceBean);
- // //鐩殑鏄负浜嗚幏鍙栨嬁鍒扮綉鍏矷D锛宮qtt閫氳绉橀挜绛変俊鎭紝缂撳瓨鏈湴閫嗗彉鍣ㄥ垪琛ㄩ噷闈紝鍙戦�佹暟鎹暟鎹椂鑷姩鍘荤紦瀛樺垪琛ㄩ噷闈㈠幓鏌ユ壘锛�
+ //鐩殑鏄负浜嗚幏鍙栨嬁鍒扮綉鍏矷D锛宮qtt閫氳绉橀挜绛変俊鎭紝鎷垮埌鍚庣紦瀛樺埌鏈湴閫嗗彉鍣ㄥ垪琛ㄩ噷闈紝鍙戦�佹暟鎹暟鎹椂鑷姩鍘荤紦瀛樺垪琛ㄩ噷闈㈠幓鏌ユ壘锛�
HdlDeviceLogic.getInstance().setDeviceRemoteInfo(newList, deviceBean.getHomeId(), new CloudCallBeak<List<GatewayBean>>() {
@Override
public void onSuccess(List<GatewayBean> obj) {
@@ -498,12 +491,12 @@
viewBinding.powerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line));
viewBinding.powerStationConnectedIl.stationTitleTv.setText(getString(R.string.to_be_added));
- selectedStationStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true);
+ selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true);
//鐢电珯鏍囩
houseInfoAdapter = new HouseInfoAdapter(_mActivity);
viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity));
viewBinding.fragmentHouseSrlListRc.setAdapter(houseInfoAdapter);
- houseInfoAdapter.setList(this.houseListBeanIDList);
+ houseInfoAdapter.setList(this.houseListBeanIDList, powerStationStatusValue);
//璁惧鏍囩
deviceInfoAdapter = new DeviceInfoAdapter(_mActivity);
@@ -515,6 +508,34 @@
}
/**
+ * 鐢电珯鍜岃澶囨爣绛炬牱寮�
+ */
+ private void selectedTitleLabelStyle() {
+ if (isClickPowerStationLabel) {
+ viewBinding.powerStationLabel.setTextAppearance(R.style.Text20Style);
+ viewBinding.deviceLabel.setTextAppearance(R.style.Text16Style);
+ viewBinding.editIv.setVisibility(View.VISIBLE);//缂栬緫鍥炬爣闅愯棌
+ viewBinding.addIv.setVisibility(View.VISIBLE);//娣诲姞鍥炬爣闅愯棌
+ viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
+ viewBinding.deviceLabelParent.setVisibility(View.GONE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
+ if (viewBinding.deviceNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
+ viewBinding.deviceNullDataIc.getRoot().setVisibility(View.GONE);
+ }
+ } else {
+ viewBinding.deviceLabel.setTextAppearance(R.style.Text20Style);
+ viewBinding.powerStationLabel.setTextAppearance(R.style.Text16Style);
+ viewBinding.editIv.setVisibility(View.GONE);//缂栬緫鍥炬爣闅愯棌
+ viewBinding.addIv.setVisibility(View.GONE);//娣诲姞鍥炬爣闅愯棌
+ viewBinding.powerStationLabelParent.setVisibility(View.GONE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戦殣钘�
+ viewBinding.deviceLabelParent.setVisibility(View.VISIBLE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戞樉绀�
+ if (viewBinding.homeNullDataIc.getRoot().getVisibility() == View.VISIBLE) {
+ viewBinding.homeNullDataIc.getRoot().setVisibility(View.GONE);
+ }
+ }
+
+ }
+
+ /**
* 鏄剧ず閫変腑鐘舵�佹牱寮�
*
* @param linearLayout 缁勪欢
@@ -522,7 +543,7 @@
* @param titleTv 缁勪欢
* @param isShowSelectedStatus 鏄惁鏄剧ず鐘舵�佹牱寮�
*/
- private void selectedStationStyle(LinearLayout linearLayout, TextView numberTv, TextView titleTv, boolean isShowSelectedStatus) {
+ private void selectedStationStateStyle(LinearLayout linearLayout, TextView numberTv, TextView titleTv, boolean isShowSelectedStatus) {
viewBinding.powerStationAllIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
viewBinding.powerStationFaultsIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
viewBinding.powerStationOfflineIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
@@ -643,17 +664,25 @@
HdlLogLogic.print("姝e湪鐐瑰嚮銆愮數绔欍��");
if (!isReadData) {
//1锛屼粠棣栭〉-鏁呴殰-杩涙潵-鐢电珯锛堜笉璇诲彇锛�
- //1锛屼粠鐢电珯-杩涙潵-鐢电珯锛堣鍙栦竴娆�,鍚庨潰杩涙潵涓嶅湪璇诲彇锛�
+ //2锛屼粠鐢电珯-杩涙潵-鐢电珯锛堣鍙栦竴娆�,鍚庨潰杩涙潵涓嶅湪璇诲彇锛�
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
getStatusOverview();
}
} else if (eventBus.getType().equals(PowerStationStatus.All)) {
+ isClickPowerStationLabel = true;
+ selectedTitleLabelStyle();
viewBinding.powerStationAllIl.parentLl.performClick();
} else if (eventBus.getType().equals(PowerStationStatus.malfunction)) {
+ isClickPowerStationLabel = true;
+ selectedTitleLabelStyle();
viewBinding.powerStationFaultsIl.parentLl.performClick();
} else if (eventBus.getType().equals(PowerStationStatus.off)) {
+ isClickPowerStationLabel = true;
+ selectedTitleLabelStyle();
viewBinding.powerStationOfflineIl.parentLl.performClick();
} else if (eventBus.getType().equals(PowerStationStatus.connecting)) {
+ isClickPowerStationLabel = true;
+ selectedTitleLabelStyle();
viewBinding.powerStationConnectedIl.parentLl.performClick();
} else if (eventBus.getType().equals(ConstantManage.station_edit)) {
//缂栬緫鍚庢洿鏂颁竴涓嬩綇瀹呭垪琛�
@@ -662,7 +691,7 @@
if (houseInfoAdapter != null) {
initData();
//鏇存柊UI
- houseInfoAdapter.setList(houseListBeanIDList);
+ houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);
}
}
}
@@ -722,7 +751,7 @@
}
isHouseLoadingMore = true;//鏍囪璇诲彇鐘舵��
if (isRefreshing) {
- showLoading();
+ showLoading(getString(R.string.device_loading));
}
//鑾峰彇浣忓畢(鐢电珯)ID鍒楄〃
@@ -744,7 +773,7 @@
if (houseInfoAdapter != null) {
initData();
//鏇存柊UI
- houseInfoAdapter.setList(houseListBeanIDList);
+ houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);
}
}
nullDataUpdateUi();
@@ -791,7 +820,7 @@
}
isDeviceLoadingMore = true;//鏍囪璇诲彇鐘舵��
if (isRefreshing) {
- showLoading();
+ showLoading(getString(R.string.device_loading));
}
//鑾峰彇浣忓畢(鐢电珯)ID鍒楄〃
HdlDeviceLogic.getInstance().getPowerStationDeviceList("", pageNo, pageSize, new CloudCallBeak<PageNumberObject<CloudInverterDeviceBean>>() {
@@ -925,7 +954,8 @@
initializeInverter(list); //鍙戣捣鍒濆鍖栨寚浠ょ粰閫嗗彉鍣�;锛堟敞鎰�:鍙兘鏄湰鍦板彂閫佷簡(瑕佹悳绱㈠眬鍩熺綉閫嗗彉鍣ㄥ垪琛紝寤虹珛鏈湴閫氳閫氶亾),鍒犻櫎鐢电珯鎴愬姛鍚�,浜戠瑙g粦閫嗗彉鍣ㄧ殑鍏崇郴锛�
HdlResidenceLogic.getInstance().delHouseId(homeId);//鍒犻櫎鐢电珯缂撳瓨
initData();//鍒濆鍖栫紦瀛樻暟鎹�
- houseInfoAdapter.setList(houseListBeanIDList);//閲嶆柊鍒锋柊鍒楄〃
+ houseInfoAdapter.setList(houseListBeanIDList, powerStationStatusValue);//閲嶆柊鍒锋柊鍒楄〃
+ getStatusOverview();//鍒犻櫎鎴愬姛鍚庡埛鏂扮數绔欑姸鎬佹瑙�
nullDataUpdateUi();//妫�娴嬫暟鎹槸鍚︿负绌�
}
--
Gitblit v1.8.0