From ed7ae7fcc3adf66fbcc2b9481692791e9a167d04 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 21 五月 2024 16:56:01 +0800 Subject: [PATCH] 2024年05月21日16:55:59 --- app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 78 ++++++++++++++++++++++++++------------ 1 files changed, 53 insertions(+), 25 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 22a168f..3ac21fd 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 @@ -22,6 +22,7 @@ import com.hdl.photovoltaic.databinding.FragmentHouseListBinding; import com.hdl.photovoltaic.base.CustomBaseFragment; import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; +import com.hdl.photovoltaic.enums.PowerStationStatus; import com.hdl.photovoltaic.enums.ShowErrorMode; import com.hdl.photovoltaic.enums.SortType; import com.hdl.photovoltaic.enums.SortValue; @@ -58,6 +59,8 @@ * 鐢电珯鍜岃澶�-鐣岄潰 */ public class HouseAndDeviceFragment extends CustomBaseFragment { + + private boolean isReadData = false; private FragmentHouseListBinding viewBinding; private HouseInfoAdapter houseInfoAdapter; @@ -65,8 +68,6 @@ private List<HouseIdBean> houseListBeanIDList; private List<DeviceBean> deviceInfoList; - - private int currentHouseListPage = 0; // 褰撳墠鐢电珯鍒楄〃椤电爜 private int currentHouseListTotal = 0; // 鐢电珯鍒楄〃鎬婚〉鐮� private boolean isHouseLoadingMore = false; // 鏍囪鐢电珯鍒楄〃姝e湪鍔犺浇鏇村鏁版嵁 @@ -82,7 +83,7 @@ private String installedCapacityMinValue = "";//鏈�灏忕粍涓插閲�(瑁呮満瀹归噺) private String installedCapacityMaxValue = "";//鏈�澶х粍涓插閲�(瑁呮満瀹归噺) private String gridTypeValue = "";//骞剁綉鐘舵��(鍏ㄩ儴 涓嶄紶璇ヨ繃婊ゅ弬鏁�,FULL_GRID:骞剁綉,OFFLINE:绂荤綉) - private String powerStationStatusValue = "";//鐢电珯鐘舵��(鍏ㄩ儴 涓嶄紶璇ヨ繃婊ゅ弬鏁�,1:姝e父(杩愯),2:绂荤嚎,3:寰呮帴鍏�,4:鏁呴殰) + private String powerStationStatusValue = PowerStationStatus.All;//鐢电珯鐘舵��(鍏ㄩ儴 涓嶄紶璇ヨ繃婊ゅ弬鏁�,1:姝e父(杩愯),2:绂荤嚎,3:寰呮帴鍏�,4:鏁呴殰) private final long pageSize = 20;//椤垫暟 @@ -95,9 +96,6 @@ @Override public void onBindView(Bundle savedInstanceState) { - //鏀惧湪杩欓噷涔熷锛岃繖閲屽彧鏄鍒涘缓涓�娆� -// loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); -// getStatusOverview(); initData(); //鍒濆鍖� initView(); @@ -121,7 +119,11 @@ 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); + getStatusOverview(); } }); //璁惧鏍囩 @@ -138,6 +140,9 @@ 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); + } loadNextPageDeviceList(true, 1, true); } }); @@ -145,6 +150,7 @@ viewBinding.powerStationAllIl.parentLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + powerStationStatusValue = PowerStationStatus.All; selectedStationStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } @@ -153,15 +159,17 @@ viewBinding.powerStationFaultsIl.parentLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + powerStationStatusValue = PowerStationStatus.malfunction; selectedStationStyle(viewBinding.powerStationFaultsIl.parentLl, viewBinding.powerStationFaultsIl.stationTotalTv, viewBinding.powerStationFaultsIl.stationTitleTv, true); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //绂荤嚎 - viewBinding.hpowerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.powerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - selectedStationStyle(viewBinding.hpowerStationOfflineIl.parentLl, viewBinding.hpowerStationOfflineIl.stationTotalTv, viewBinding.hpowerStationOfflineIl.stationTitleTv, true); + powerStationStatusValue = PowerStationStatus.off; + selectedStationStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); @@ -169,6 +177,7 @@ viewBinding.powerStationConnectedIl.parentLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + powerStationStatusValue = PowerStationStatus.connecting; selectedStationStyle(viewBinding.powerStationConnectedIl.parentLl, viewBinding.powerStationConnectedIl.stationTotalTv, viewBinding.powerStationConnectedIl.stationTitleTv, true); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } @@ -218,6 +227,7 @@ public void onRefresh() { viewBinding.fragmentHouseSrl.setRefreshing(false); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); + getStatusOverview(); } }); //鐢电珯涓婃媺璇诲彇 @@ -354,6 +364,7 @@ viewBinding.stationNameIv.setSelected(isSelected); key = SortType.homeNameSort; value = isSelected ? SortValue.ascending : SortValue.descending; + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //鐢电珯鍙戠數鍔熺巼绛涢�� @@ -365,6 +376,7 @@ viewBinding.stationPowerIv.setSelected(isSelected); key = SortType.powerSort; value = isSelected ? SortValue.ascending : SortValue.descending; + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //鐢电珯褰撴棩鍙戠數閲忕瓫閫� @@ -376,6 +388,7 @@ viewBinding.stationDayIv.setSelected(isSelected); key = SortType.todayElectricitySort; value = isSelected ? SortValue.ascending : SortValue.descending; + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //鐢电珯褰撴湀鍙戠數閲忕瓫閫� @@ -387,6 +400,7 @@ viewBinding.stationMonthIv.setSelected(isSelected); key = SortType.monthElectricitySort; value = isSelected ? SortValue.ascending : SortValue.descending; + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //璁惧鐐瑰嚮 @@ -428,7 +442,7 @@ } } }); - //璁惧娣绘悳绱� + //璁惧鎼滅储 viewBinding.deviceSearchCl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -446,7 +460,7 @@ viewBinding.powerStationAllIl.stationTitleTv.setText(getString(R.string.message_all)); viewBinding.powerStationFaultsIl.stationTitleTv.setText(getString(R.string.my_power_station_malfunction)); - viewBinding.hpowerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line)); + 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); @@ -476,7 +490,7 @@ private void selectedStationStyle(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.hpowerStationOfflineIl.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)); @@ -485,8 +499,8 @@ viewBinding.powerStationFaultsIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); viewBinding.powerStationFaultsIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - viewBinding.hpowerStationOfflineIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.hpowerStationOfflineIl.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)); @@ -506,8 +520,7 @@ this.houseListBeanIDList.addAll(HdlResidenceLogic.getInstance().getHouseIdList()); } else { this.deviceInfoList = new ArrayList<>(); - this.deviceInfoList.add(new DeviceBean()); -// this.deviceInfoList.addAll(HdlDeviceLogic.getInstance().getListDevice()); + this.deviceInfoList.addAll(HdlDeviceLogic.getInstance().getDeviceList()); } @@ -588,14 +601,24 @@ // 鍙栨秷绮樻�т簨浠� EventBus.getDefault().removeStickyEvent(eventBus); HdlLogLogic.print("姝e湪鐐瑰嚮銆愮數绔欍��"); -// HdlThreadLogic.runSubThread(new Runnable() { -// @Override -// public void run() { - loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); - getStatusOverview(); -// } -// }); - + if (!isReadData) { + //1锛屼粠棣栭〉-鏁呴殰-杩涙潵-鐢电珯锛堜笉璇诲彇锛� + //1锛屼粠鐢电珯-杩涙潵-鐢电珯锛堣鍙栦竴娆�,鍚庨潰杩涙潵涓嶅湪璇诲彇锛� + loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); + getStatusOverview(); + } + } else if (eventBus.getType().equals(PowerStationStatus.All)) { + viewBinding.powerStationAllIl.parentLl.performClick(); + } else if (eventBus.getType().equals(PowerStationStatus.malfunction)) { + viewBinding.powerStationFaultsIl.parentLl.performClick(); + } else if (eventBus.getType().equals(PowerStationStatus.off)) { + viewBinding.powerStationOfflineIl.parentLl.performClick(); + } else if (eventBus.getType().equals(PowerStationStatus.connecting)) { + viewBinding.powerStationConnectedIl.parentLl.performClick(); + } else if (eventBus.getType().equals(ConstantManage.station_edit)) { + //鏇存柊涓�涓嬩綇瀹� + loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); +// getStatusOverview(); } } } @@ -613,7 +636,7 @@ } viewBinding.powerStationAllIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal())); viewBinding.powerStationFaultsIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault())); - viewBinding.hpowerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); + viewBinding.powerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); viewBinding.powerStationConnectedIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting())); } @@ -642,6 +665,7 @@ * @param isClear 鏄惁娓呴櫎鏁版嵁 */ private void loadNextPageHouseList(boolean isRefreshing, String key, String keyValue, String installedCapacityMin, String installedCapacityMax, String gridType, String powerStationStatus, long pageNo, boolean isClear) { + isReadData = true; if (isClear) { clearData(); } @@ -803,11 +827,15 @@ if (isClickPowerStationLabel) { is_data = houseListBeanIDList != null && houseListBeanIDList.size() > 0; tipText = getString(R.string.my_power_station_data_null); + HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.homeNullDataIc.getRoot(), viewBinding.homeNullDataIc.nullDataGifAnimationIv, viewBinding.homeNullDataIc.nullDataTv, tipText, is_data); + } else { is_data = deviceInfoList != null && deviceInfoList.size() > 0; tipText = getString(R.string.no_equipment); + + HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.deviceNullDataIc.getRoot(), viewBinding.deviceNullDataIc.nullDataGifAnimationIv, viewBinding.deviceNullDataIc.nullDataTv, tipText, is_data); + } - HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.nullDataIc.getRoot(), viewBinding.nullDataIc.nullDataGifAnimationIv, viewBinding.nullDataIc.nullDataTv, tipText, is_data); } /** -- Gitblit v1.8.0