From 5e2e1fc7fc23d5fa035608bc415e9eac73ce2e37 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 27 十一月 2024 13:11:20 +0800 Subject: [PATCH] 2024年11月27日13:11:17 --- app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 191 ++++++++++++++++++++++++----------------------- 1 files changed, 97 insertions(+), 94 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 00244ba..d91d90b 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 @@ -18,7 +18,6 @@ import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.bean.PageNumberObject; import com.hdl.photovoltaic.config.ConstantManage; -import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.databinding.FragmentHouseListBinding; import com.hdl.photovoltaic.base.CustomBaseFragment; import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; @@ -91,6 +90,17 @@ private final long pageSize = 20;//椤垫暟 + /** + * 杩樺師鏉′欢鐨勫垵濮嬪寲鐘舵�� + */ + private void initializationState() { + key = SortValue.all; + value = SortValue.all; + installedCapacityMinValue = ""; + installedCapacityMaxValue = ""; + gridTypeValue = ""; + powerStationStatusValue = PowerStationStatus.All; + } @Override public Object getContentView() { @@ -119,6 +129,7 @@ } isClickPowerStationLabel = true; selectedTitleLabelStyle(); + initializationState(); getStatusOverview(); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -137,38 +148,50 @@ } }); //鍏ㄩ儴 - viewBinding.powerStationAllIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.allLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.All; - selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yer_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //鏁呴殰 - viewBinding.powerStationFaultsIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.faultsLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.malfunction; - selectedStationStateStyle(viewBinding.powerStationFaultsIl.parentLl, viewBinding.powerStationFaultsIl.stationTotalTv, viewBinding.powerStationFaultsIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yer_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //绂荤嚎 - viewBinding.powerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.offlineLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.off; - selectedStationStateStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yer_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //寰呮帴鍏� - viewBinding.powerStationConnectedIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.connectedLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.connecting; - selectedStationStateStyle(viewBinding.powerStationConnectedIl.parentLl, viewBinding.powerStationConnectedIl.stationTotalTv, viewBinding.powerStationConnectedIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yer_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); @@ -248,7 +271,7 @@ public void onClick(int position, HouseIdBean houseIdBean) { //鐐瑰嚮浣忓畢璇︽儏 HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏---" + new Gson().toJson(houseIdBean), false); - HdlResidenceLogic.getInstance().switchHouse(houseIdBean); + HdlResidenceLogic.getInstance().switchHouse(houseIdBean, true); String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus(); HdlUniLogic.getInstance().openUniMP(path, null); @@ -485,13 +508,10 @@ private void initView() { viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE); viewBinding.deviceLabelParent.setVisibility(View.GONE); - - viewBinding.powerStationAllIl.stationTitleTv.setText(getString(R.string.message_all)); - viewBinding.powerStationFaultsIl.stationTitleTv.setText(getString(R.string.my_power_station_malfunction)); - viewBinding.powerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line)); - viewBinding.powerStationConnectedIl.stationTitleTv.setText(getString(R.string.to_be_added)); - - selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yer_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); //鐢电珯鏍囩 houseInfoAdapter = new HouseInfoAdapter(_mActivity); viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity)); @@ -504,7 +524,6 @@ viewBinding.fragmentDeviceSrlListRc.setAdapter(deviceInfoAdapter); this.nullDataUpdateUi(); - } /** @@ -512,9 +531,9 @@ */ private void selectedTitleLabelStyle() { if (isClickPowerStationLabel) { - viewBinding.powerStationLabel.setTextAppearance(R.style.Text20Style); - viewBinding.deviceLabel.setTextAppearance(R.style.Text16Style); - viewBinding.editIv.setVisibility(View.VISIBLE);//缂栬緫鍥炬爣闅愯棌 + viewBinding.powerStationLabel.setTextAppearance(R.style.Text18Style); + viewBinding.deviceLabel.setTextAppearance(R.style.Text14Style); +// viewBinding.editIv.setVisibility(View.VISIBLE);//缂栬緫鍥炬爣闅愯棌 viewBinding.addIv.setVisibility(View.VISIBLE);//娣诲姞鍥炬爣闅愯棌 viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戞樉绀� viewBinding.deviceLabelParent.setVisibility(View.GONE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戦殣钘� @@ -522,9 +541,9 @@ 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.deviceLabel.setTextAppearance(R.style.Text18Style); + viewBinding.powerStationLabel.setTextAppearance(R.style.Text14Style); +// viewBinding.editIv.setVisibility(View.GONE);//缂栬緫鍥炬爣闅愯棌 viewBinding.addIv.setVisibility(View.GONE);//娣诲姞鍥炬爣闅愯棌 viewBinding.powerStationLabelParent.setVisibility(View.GONE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戦殣钘� viewBinding.deviceLabelParent.setVisibility(View.VISIBLE);//璁惧鏍囩銆愮埗瀹瑰櫒銆戞樉绀� @@ -535,40 +554,6 @@ } - /** - * 鏄剧ず閫変腑鐘舵�佹牱寮� - * - * @param linearLayout 缁勪欢 - * @param numberTv 缁勪欢 - * @param titleTv 缁勪欢 - * @param 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)); - viewBinding.powerStationConnectedIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); - - viewBinding.powerStationAllIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationAllIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationFaultsIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationFaultsIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationOfflineIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationOfflineIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationConnectedIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationConnectedIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - - if (isShowSelectedStatus) { - linearLayout.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.selected_8_38c494)); - numberTv.setTextColor(getResources().getColor(R.color.text_FFFFFFFF, null)); - titleTv.setTextColor(getResources().getColor(R.color.text_FFFFFFFF, null)); - } - - } private void initData() { if (isClickPowerStationLabel) { @@ -600,7 +585,7 @@ Gson gson = new Gson(); String json = eventBus.getData().toString(); HouseIdBean houseIdBean = gson.fromJson(json, HouseIdBean.class); - HdlResidenceLogic.getInstance().switchHouse(houseIdBean); + HdlResidenceLogic.getInstance().switchHouse(houseIdBean, true); } } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT.equals(eventBus.getType())) { @@ -633,12 +618,12 @@ } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_CLOSE_HOME_DETAILS_PAGE.equals(eventBus.getTopic())) { // 鍙栨秷绮樻�т簨浠� EventBus.getDefault().removeStickyEvent(eventBus); - //鏄湪鐢电珯鍒楄〃椤垫墠杩涙潵杩欓噷 + //鏄湪锛堢數绔欙級妯″潡涓斿湪锛堢數绔欙級鏍囩椤垫墠杩涙潵杩欓噷 if (HdlCommonLogic.lowerTagType == LowerTagType.power_station && isClickPowerStationLabel) { - //uin鍏抽棴浣忓畢璇︽儏鐣岄潰閫氱煡 - if (MqttRecvClient.getInstance() != null) { - MqttRecvClient.getInstance().removeAllTopic(); - } +// //uin鍏抽棴浣忓畢璇︽儏鐣岄潰閫氱煡 +// if (MqttRecvClient.getInstance() != null) { +// MqttRecvClient.getInstance().removeAllTopic(); +// } loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } } else if (HDLUniMP.UNI_EVENT_REPLY_DEVICE_LIST.equals(eventBus.getType())) { @@ -647,42 +632,60 @@ // if (!isClickPowerStationLabel) { // return; // } + //鍏堟竻绌鸿闃呬富棰� + if (MqttRecvClient.getInstance() != null) { + MqttRecvClient.getInstance().removeAllTopic(); + } + String homeId = eventBus.getData().toString(); //杩涘幓浣忓畢璇︽儏uni璇诲彇閫嗗彉鍣ㄥ垪琛ㄦ垚鍔熷悗閫氱煡 - for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(UserConfigManage.getInstance().getHomeId()).size(); i++) { - String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(UserConfigManage.getInstance().getHomeId()).get(i).getGatewayId(); + for (int i = 0; i < HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId).size(); i++) { + String gatewayId = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList(homeId).get(i).getGatewayId(); //瀛楃涓叉槸鑷繁鎸夎鍒欐嫾鎺ョ殑,閲岄潰娉ㄥ唽涓婚鏃朵細瑙f瀽瀛楃涓�,鍙嬁getGatewayId()鍊�; String topic = "/user/" + gatewayId + "/#"; //杩涘幓浣忓畢璇︽儏寮�濮嬭闃呬富棰� - MqttRecvClient.getInstance().checkAndsubscribeAllTopics(topic); + MqttRecvClient.getInstance().checkAndsubscribeAllTopics(topic);//璁㈤槄銆愰�嗗彉鍣ㄣ�戞秷鎭� } + String topicHome = "/user/" + homeId + "/#"; + MqttRecvClient.getInstance().checkAndsubscribeAllTopics(topicHome);//璁㈤槄銆愮數绔欍�戞秷鎭� + + } else if (eventBus.getTopic().equals(ConstantManage.homepage_title_tab_switch)) { + // 鍙栨秷绮樻�т簨浠� + EventBus.getDefault().removeStickyEvent(eventBus); //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢 if (eventBus.getType().equals(HomepageTitleTabSwitch.powerstation.toString())) { - // 鍙栨秷绮樻�т簨浠� - EventBus.getDefault().removeStickyEvent(eventBus); HdlLogLogic.print("姝e湪鐐瑰嚮銆愮數绔欍��"); - if (!isReadData) { - //1锛屼粠棣栭〉-鏁呴殰-杩涙潵-鐢电珯锛堜笉璇诲彇锛� - //2锛屼粠鐢电珯-杩涙潵-鐢电珯锛堣鍙栦竴娆�,鍚庨潰杩涙潵涓嶅湪璇诲彇锛� - loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); - getStatusOverview(); +// if (!isReadData) { +// //1锛屼粠棣栭〉-鏁呴殰-杩涙潵-鐢电珯锛堜笉璇诲彇锛� +// //2锛屼粠鐢电珯-杩涙潵-鐢电珯锛堣鍙栦竴娆�,鍚庨潰杩涙潵涓嶅湪璇诲彇锛� +// loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); +// getStatusOverview(); +// } + //2024骞�06鏈�24鏃�14:34:01 浜у搧缁忕悊瑕佹眰杩涘幓鐢电珯鍒楄〃閮借璇诲彇 涓旈粯璁よ繘鍘婚兘鏄粯璁ょ數绔欐爣绛� + isClickPowerStationLabel = true; + selectedTitleLabelStyle(); + initializationState(); + getStatusOverview(); + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); + } else if (eventBus.getType().equals(ConstantManage.station_page)) { + //閫氳繃棣栭〉鐢电珯杩涙潵鐨� + if (eventBus.getData().equals(PowerStationStatus.All)) { + isClickPowerStationLabel = true; + selectedTitleLabelStyle(); + viewBinding.allLl.performClick(); + } else if (eventBus.getData().equals(PowerStationStatus.malfunction)) { + isClickPowerStationLabel = true; + selectedTitleLabelStyle(); + viewBinding.faultsLl.performClick(); + } else if (eventBus.getData().equals(PowerStationStatus.off)) { + isClickPowerStationLabel = true; + selectedTitleLabelStyle(); + viewBinding.offlineLl.performClick(); + } else if (eventBus.getData().equals(PowerStationStatus.connecting)) { + isClickPowerStationLabel = true; + selectedTitleLabelStyle(); + viewBinding.connectedLl.performClick(); } - } 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)) { //缂栬緫鍚庢洿鏂颁竴涓嬩綇瀹呭垪琛� //loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -707,10 +710,10 @@ if (statusOverviewBean == null) { return; } - viewBinding.powerStationAllIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal())); - viewBinding.powerStationFaultsIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault())); - viewBinding.powerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); - viewBinding.powerStationConnectedIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting())); + viewBinding.allTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal())); + viewBinding.faultsTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault())); + viewBinding.offlineTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); + viewBinding.connectedTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting())); } @Override -- Gitblit v1.8.0