From 382d057f20369b001fe585ab3027bf5a4cd27539 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 09 四月 2025 17:49:40 +0800
Subject: [PATCH] 2025年04月09日17:49:01
---
app/src/main/res/layout/fragment_house_list.xml | 14 +
app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java | 109 +++++++++----
app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java | 7
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 297 ++++++++++++++++++++++---------------
app/src/main/res/layout/fragment_message.xml | 10
app/src/main/res/layout/item_message.xml | 1
app/src/main/res/layout/item_plant_details.xml | 1
app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java | 2
app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java | 2
9 files changed, 274 insertions(+), 169 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java
index 8edfab2..05d0f10 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlMessageLogic.java
@@ -24,7 +24,7 @@
public class HdlMessageLogic {
private static volatile HdlMessageLogic sHdlMessageLogic;
- private final int pageSize = 50;//椤垫暟
+ private final int pageSize = 100;//椤垫暟
private List<MessageBean> mListMessage = new ArrayList<>();
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
index d73a6e3..b16a231 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
@@ -143,7 +143,7 @@
if (savedInstanceState != null) {
//鈥滃唴瀛橀噸鍚�濇椂璋冪敤 鑾峰彇鈥滃唴瀛橀噸鍚�濇椂淇濆瓨鐨勭储寮曚笅鏍�
currentFragmentIndex = savedInstanceState.getInt(CURRENT_FRAGMENT, 0);
- if (fragmentList.size() != 0) {
+ if (!fragmentList.isEmpty()) {
fragmentList.clear();
}
fragmentList.add(mFragmentManager.findFragmentByTag(0 + ""));
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
index fb3783c..ed0af8e 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
@@ -467,11 +467,14 @@
viewBinding.homePageStationSelectTimeLl.setVisibility(View.VISIBLE);
viewBinding.autoSizeMyAAChart.setBackgroundColor(_mActivity.getColor(R.color.text_FF1C1C1E));
setUpAAChartView(true);//鍥捐〃鍔犺浇
- processLogic();
+ pullToRefresh();
}
- protected void processLogic() {
+ /**
+ * 涓嬫媺鍒锋柊鐨勯�昏緫
+ */
+ protected void pullToRefresh() {
viewBinding.rsl.setDelegate(this);
HDLRefreshViewHolder hdlRefreshViewHolder = new HDLRefreshViewHolder(_mActivity, true);
hdlRefreshViewHolder.setPullDownImageResource(R.mipmap.loading_44);
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java
index 5b8011c..0b879ce 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/message/MessageFragment.java
@@ -3,6 +3,7 @@
import android.annotation.SuppressLint;
import android.content.DialogInterface;
import android.content.Intent;
+import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
@@ -32,6 +33,8 @@
import com.hdl.photovoltaic.ui.bean.UnCountBean;
import com.hdl.photovoltaic.widget.BTypeTitleListDialog;
import com.hdl.photovoltaic.widget.TypeTitleListDialog;
+import com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout;
+import com.hdl.photovoltaic.widget.refreshlayout.HDLRefreshViewHolder;
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import org.greenrobot.eventbus.EventBus;
@@ -160,17 +163,17 @@
viewBinding.allClearIv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- showLoading();
+// showLoading();
HdlMessageLogic.getInstance().messageAllRead("", new CloudCallBeak<Boolean>() {
@Override
public void onSuccess(Boolean obj) {
- hideLoading();
+// hideLoading();
loadNextPageMessageList(true, 1, mDeviceTypeFilterKye, mDeviceTypeFilterValue, mTypeFilterKye, mTypeFilterValue, mTimeTypeFilterKye, mTimeTypeFilterValue, true);
}
@Override
public void onFailure(HDLException e) {
- hideLoading();
+// hideLoading();
HdlThreadLogic.toast(_mActivity, e);
}
});
@@ -207,38 +210,6 @@
viewBinding.allGradeTitleIv.setBackgroundResource(R.drawable.down);
viewBinding.allTimeTitleIv.setBackgroundResource(R.drawable.up);
setTypeTitleListDialog(viewBinding.allTimeTitleTv, FilterType.timeType, getTypeList(FilterType.timeType));
- }
- });
-
- //涓嬫媺鎸夐挳
- viewBinding.messageSrl.setColorSchemeResources(R.color.text_FF245EC3);
- viewBinding.messageSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
- @Override
- public void onRefresh() {
- viewBinding.messageSrl.setRefreshing(false);
- loadNextPageMessageList(true, 1, mDeviceTypeFilterKye, mDeviceTypeFilterValue, mTypeFilterKye, mTypeFilterValue, mTimeTypeFilterKye, mTimeTypeFilterValue, true);
- }
- });
- //涓婃媺鎸夐挳
- viewBinding.messageRcv.addOnScrollListener(new RecyclerView.OnScrollListener() {
- @Override
- public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
-// super.onScrolled(recyclerView, dx, dy);
-
- LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
- if (layoutManager == null) {
- return;
- }
- int visibleItemCount = layoutManager.getChildCount();
- int totalItemCount = layoutManager.getItemCount();
- int firstVisibleItemPosition = layoutManager.findFirstVisibleItemPosition();
- if (visibleItemCount > 0 && visibleItemCount + firstVisibleItemPosition == totalItemCount) {
- if (!isLoadingMore) {
- // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
- HdlLogLogic.print("--->婊戝姩鍒颁簡搴曢儴");
- loadNextPageMessageList(false, ++mCurrentPage, mDeviceTypeFilterKye, mDeviceTypeFilterValue, mTypeFilterKye, mTypeFilterValue, mTimeTypeFilterKye, mTimeTypeFilterValue, false);
- }
- }
}
});
if (mMessageAdapter != null) {
@@ -313,8 +284,76 @@
mMessageAdapter = new MessageAdapter(_mActivity);
viewBinding.messageRcv.setLayoutManager(new LinearLayoutManager(_mActivity));
viewBinding.messageRcv.setAdapter(mMessageAdapter);
+ pullToRefresh();
}
+ /**
+ * 涓嬫媺鍒锋柊鐨勯�昏緫
+ */
+ protected void pullToRefresh() {
+ viewBinding.messageSrl.setDelegate(new BGARefreshLayout.BGARefreshLayoutDelegate() {
+ @Override
+ public void onBGARefreshLayoutBeginRefreshing(BGARefreshLayout refreshLayout) {
+ new AsyncTask<Void, Void, Void>() {
+
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ // 鎵ц浠诲姟锛堝鏇存柊UI銆佽烦杞瓑锛�
+ viewBinding.messageSrl.endRefreshing();
+ loadNextPageMessageList(true, 1, mDeviceTypeFilterKye, mDeviceTypeFilterValue, mTypeFilterKye, mTypeFilterValue, mTimeTypeFilterKye, mTimeTypeFilterValue, true);
+
+ }
+ }.execute();
+
+
+ }
+
+
+ @Override
+ public boolean onBGARefreshLayoutBeginLoadingMore(BGARefreshLayout refreshLayout) {
+ new AsyncTask<Void, Void, Void>() {
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(10);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ viewBinding.messageSrl.endLoadingMore();
+ //鍔犺浇鏈�鏂版暟鎹畬鎴�
+ if (!isLoadingMore) {
+ // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
+ loadNextPageMessageList(false, ++mCurrentPage, mDeviceTypeFilterKye, mDeviceTypeFilterValue, mTypeFilterKye, mTypeFilterValue, mTimeTypeFilterKye, mTimeTypeFilterValue, false);
+ }
+ }
+ }.execute();
+ return true;
+ }
+ });
+ HDLRefreshViewHolder hdlRefreshViewHolder = new HDLRefreshViewHolder(_mActivity, true);
+ hdlRefreshViewHolder.setPullDownImageResource(R.mipmap.loading_44);
+ hdlRefreshViewHolder.setChangeToReleaseRefreshAnimResId(R.drawable.loading_refresh);
+ hdlRefreshViewHolder.setRefreshingAnimResId(R.drawable.loading_refresh_end);
+ viewBinding.messageSrl.setRefreshViewHolder(hdlRefreshViewHolder);
+ }
+
+
+
private void initData() {
//杩涙潵璇诲彇涓�娆℃暟鎹�(涓轰簡鏇存柊currentPage锛宑urrentTotal杩欎釜鍊�),app鍚姩鏃跺�欒鍙栵紝涓轰簡鍒锋柊娑堟伅妯″潡鐨勮鏍�
loadNextPageMessageList(true, 1, FilterType.all, FilterType.all, FilterType.all, FilterType.all, FilterType.all, FilterType.all, true);
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 4d7c7e4..f1fe445 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
@@ -5,11 +5,14 @@
import android.content.Intent;
import android.content.pm.PackageManager;
import android.location.LocationManager;
+import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.Settings;
import android.view.View;
import android.widget.ImageView;
+import android.widget.LinearLayout;
import android.widget.RelativeLayout;
+import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.content.res.AppCompatResources;
@@ -55,6 +58,8 @@
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
import com.hdl.photovoltaic.widget.DefaultFilteringDialog;
import com.hdl.photovoltaic.widget.DelayedConfirmationCancelDialog;
+import com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout;
+import com.hdl.photovoltaic.widget.refreshlayout.HDLRefreshViewHolder;
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;
@@ -99,7 +104,7 @@
private String screeningConditionStatus = DebugStatus.All;//绛涢�夋潯浠剁姸鎬�
private String powerStationStatusValue = PowerStationStatus.All;//鐢电珯鐘舵��(鍏ㄩ儴 涓嶄紶璇ヨ繃婊ゅ弬鏁�,1:姝e父(杩愯),2:绂荤嚎,3:寰呮帴鍏�,4:鏁呴殰)
- private final long pageSize = 20;//椤垫暟
+ private final long pageSize = 100;//涓�椤靛ぇ灏�
/**
* 杩樺師鏉′欢鐨勫垵濮嬪寲鐘舵��
@@ -166,15 +171,7 @@
return;
}
powerStationStatusValue = PowerStationStatus.All;
- viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_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));
-
- viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
- viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ stationStatusStyle(viewBinding.allLl,viewBinding.allDesTv);
getStatusOverview();
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
}
@@ -187,15 +184,7 @@
return;
}
powerStationStatusValue = PowerStationStatus.malfunction;
- viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
- viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_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));
-
- viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
- viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ stationStatusStyle(viewBinding.faultsLl,viewBinding.faultsDesTv);
getStatusOverview();
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
}
@@ -208,15 +197,7 @@
return;
}
powerStationStatusValue = PowerStationStatus.off;
- 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_yes_ffffff));
- viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff));
-
- viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
- viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ stationStatusStyle(viewBinding.offlineLl,viewBinding.offlineDesTv);
getStatusOverview();
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
}
@@ -229,14 +210,7 @@
return;
}
powerStationStatusValue = PowerStationStatus.connecting;
- 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_yes_ffffff));
- viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
+ stationStatusStyle(viewBinding.connectedLl,viewBinding.connectedDesTv);
getStatusOverview();
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
}
@@ -283,40 +257,6 @@
loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
}
});
- }
- });
-
- //鐢电珯璁剧疆涓嬫媺绠ご棰滆壊
- viewBinding.fragmentHouseSrl.setColorSchemeResources(R.color.text_FF245EC3);
- //鐢电珯涓嬫媺璇诲彇
- viewBinding.fragmentHouseSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
- @Override
- public void onRefresh() {
- viewBinding.fragmentHouseSrl.setRefreshing(false);
- loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
- getStatusOverview();
- }
- });
- //鐢电珯涓婃媺璇诲彇
- viewBinding.fragmentHouseSrlListRc.addOnScrollListener(new RecyclerView.OnScrollListener() {
- @Override
- public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
-// super.onScrolled(recyclerView, dx, dy);
-
- LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
- if (layoutManager == null) {
- return;
- }
- int visibleItemCount = layoutManager.getChildCount();
- int totalItemCount = layoutManager.getItemCount();
- int firstVisibleItemPosition = layoutManager.findFirstVisibleItemPosition();
- if (visibleItemCount > 0 && visibleItemCount + firstVisibleItemPosition == totalItemCount) {
- if (!isHouseLoadingMore) {
- // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
- HdlLogLogic.print("---婊戝姩鍒颁簡搴曢儴");
- loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, ++currentHouseListPage, false);
- }
- }
}
});
//鐢电珯璇︽儏杩涘叆,鍒犻櫎鐢电珯,绉诲姩鐢电珯浣嶇疆
@@ -421,7 +361,7 @@
@Override
public void onClick(View v) {
boolean isSelected = !v.isSelected();
- screenIconState(viewBinding.stationNameRl, viewBinding.stationNameIv, isSelected);
+ screeningConditionStyle(viewBinding.stationNameRl, viewBinding.stationNameIv, isSelected);
key = SortType.installedCapacitySort;
value = isSelected ? SortValue.ascending : SortValue.descending;
getStatusOverview();
@@ -433,7 +373,7 @@
@Override
public void onClick(View v) {
boolean isSelected = !v.isSelected();
- screenIconState(viewBinding.stationPowerRl, viewBinding.stationPowerIv, isSelected);
+ screeningConditionStyle(viewBinding.stationPowerRl, viewBinding.stationPowerIv, isSelected);
key = SortType.invPowerSort;
value = isSelected ? SortValue.ascending : SortValue.descending;
getStatusOverview();
@@ -445,7 +385,7 @@
@Override
public void onClick(View v) {
boolean isSelected = !v.isSelected();
- screenIconState(viewBinding.stationMonthRl, viewBinding.stationMonthIv, isSelected);
+ screeningConditionStyle(viewBinding.stationMonthRl, viewBinding.stationMonthIv, isSelected);
key = SortType.batteryCapacitySort;
value = isSelected ? SortValue.ascending : SortValue.descending;
getStatusOverview();
@@ -457,7 +397,7 @@
@Override
public void onClick(View v) {
boolean isSelected = !v.isSelected();
- screenIconState(viewBinding.stationDayRl, viewBinding.stationDayIv, isSelected);
+ screeningConditionStyle(viewBinding.stationDayRl, viewBinding.stationDayIv, isSelected);
key = SortType.todayElectricitySort;
value = isSelected ? SortValue.ascending : SortValue.descending;
getStatusOverview();
@@ -508,38 +448,6 @@
});
}
});
- //璁惧璁剧疆涓嬫媺绠ご棰滆壊
- viewBinding.fragmentDeviceSrl.setColorSchemeResources(R.color.text_FF245EC3);
- //璁惧涓嬫媺璇诲彇
- viewBinding.fragmentDeviceSrl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
- @Override
- public void onRefresh() {
- viewBinding.fragmentDeviceSrl.setRefreshing(false);
- loadNextPageDeviceList(false, 1, true);
- }
- });
- //璁惧涓婃媺璇诲彇
- viewBinding.fragmentDeviceSrlListRc.addOnScrollListener(new RecyclerView.OnScrollListener() {
- @Override
- public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
-// super.onScrolled(recyclerView, dx, dy);
-
- LinearLayoutManager layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
- if (layoutManager == null) {
- return;
- }
- int visibleItemCount = layoutManager.getChildCount();
- int totalItemCount = layoutManager.getItemCount();
- int firstVisibleItemPosition = layoutManager.findFirstVisibleItemPosition();
- if (visibleItemCount > 0 && visibleItemCount + firstVisibleItemPosition == totalItemCount) {
- if (!isDeviceLoadingMore) {
- // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
- HdlLogLogic.print("---婊戝姩鍒颁簡搴曢儴");
- loadNextPageDeviceList(false, ++currentDeviceListPage, false);
- }
- }
- }
- });
//璁惧鎼滅储
viewBinding.deviceSearchCl.setOnClickListener(new View.OnClickListener() {
@Override
@@ -552,14 +460,36 @@
}
+
/**
- * 鏇存柊绛涢�夋潯浠剁姸鎬�
+ * 鏇存柊绛涢�夌數绔欑姸鎬佹牱寮�
+ *
+ * @param ll 缁勪欢鍚嶇О
+ * @param tv 缁勪欢鍚嶇О
+ */
+ private void stationStatusStyle(LinearLayout ll, TextView tv) {
+ 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_no_ffffff));
+ viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+
+ ll.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff));
+ tv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
+
+ }
+
+ /**
+ * 鏇存柊绛涢�夋潯浠剁姸鎬佹牱寮�
*
* @param relativeLayout 缁勪欢鍚嶇О
* @param imageView 缁勪欢鍚嶇О
* @param isSelected 鐘舵��
*/
- private void screenIconState(RelativeLayout relativeLayout, ImageView imageView, boolean isSelected) {
+ private void screeningConditionStyle(RelativeLayout relativeLayout, ImageView imageView, boolean isSelected) {
viewBinding.stationNameRl.setSelected(false);
viewBinding.stationNameIv.setSelected(false);
viewBinding.stationPowerRl.setSelected(false);
@@ -572,18 +502,12 @@
imageView.setSelected(isSelected);
}
+
private void initView() {
viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);
viewBinding.deviceLabelParent.setVisibility(View.GONE);
- viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_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));
- viewBinding.allDesTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
- viewBinding.faultsDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.offlineDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
- viewBinding.connectedDesTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
+ stationStatusStyle(viewBinding.allLl,viewBinding.allDesTv);
//鐢电珯鏍囩
houseInfoAdapter = new HouseInfoAdapter(_mActivity);
viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity));
@@ -594,7 +518,12 @@
deviceInfoAdapter = new DeviceInfoAdapter(_mActivity);
viewBinding.fragmentDeviceSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity));
viewBinding.fragmentDeviceSrlListRc.setAdapter(deviceInfoAdapter);
+ //
// this.nullDataUpdateUi();
+ //涓嬫媺鍒锋柊浣忓畢鐨勯�昏緫
+ pullToRefreshHome();
+ //涓嬫媺鍒锋柊璁惧鐨勯�昏緫
+ pullToRefreshDevice();
}
@@ -800,7 +729,7 @@
/**
* 鍒锋柊UI锛堢數绔欙級
*
- * @param isRefreshing 琛ㄧず鏄笅鎷夊埛鏂扮殑
+ * @param isRefreshing 鏄惁鏄剧ず鍔犺浇妗嗭紙true鏄剧ず锛宖alse涓嶆樉绀猴級
* @param key 鍙戠數鍔熺巼鎺掑簭(powerSort);
* 浠婃棩鍙戠數閲忔帓搴�(todayElectricitySort);
* 鍒涘缓鏃堕棿鎺掑簭(createTimeSort);
@@ -880,7 +809,7 @@
/**
* 鍒锋柊UI锛堣澶囷級
*
- * @param isRefreshing 琛ㄧず鏄笅鎷夊埛鏂扮殑
+ * @param isRefreshing 鏄惁鏄剧ず鍔犺浇妗嗭紙true鏄剧ず锛宖alse涓嶆樉绀猴級
* @param pageNo 椤电爜
* @param isClear true琛ㄧず娓呯┖缂撳瓨
*/
@@ -976,12 +905,12 @@
boolean is_data;
String tipText = "";
if (isClickPowerStationLabel) {
- is_data = houseListBeanIDList != null && houseListBeanIDList.size() > 0;
+ is_data = houseListBeanIDList != null && !houseListBeanIDList.isEmpty();
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;
+ is_data = deviceInfoList != null && !deviceInfoList.isEmpty();
tipText = getString(R.string.no_equipment);
HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity, viewBinding.deviceNullDataIc.getRoot(), viewBinding.deviceNullDataIc.nullDataGifAnimationIv, viewBinding.deviceNullDataIc.nullDataTv, tipText, is_data);
@@ -1123,4 +1052,132 @@
}
}
+
+
+ /**
+ * 涓嬫媺鍒锋柊銆愪綇瀹呫�戠殑閫昏緫
+ */
+ protected void pullToRefreshHome() {
+ viewBinding.fragmentHouseSrl.setDelegate(new BGARefreshLayout.BGARefreshLayoutDelegate() {
+ @Override
+ public void onBGARefreshLayoutBeginRefreshing(BGARefreshLayout refreshLayout) {
+ new AsyncTask<Void, Void, Void>() {
+
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ // 鎵ц浠诲姟锛堝鏇存柊UI銆佽烦杞瓑锛�
+ viewBinding.fragmentHouseSrl.endRefreshing();
+ //鍔犺浇鏈�鏂版暟鎹畬鎴�
+ loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, 1, true);
+ getStatusOverview();
+ }
+ }.execute();
+
+
+ }
+
+
+ @Override
+ public boolean onBGARefreshLayoutBeginLoadingMore(BGARefreshLayout refreshLayout) {
+ new AsyncTask<Void, Void, Void>() {
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(10);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ viewBinding.fragmentHouseSrl.endLoadingMore();
+ if (!isHouseLoadingMore) {
+ // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
+ loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, screeningConditionStatus, powerStationStatusValue, ++currentHouseListPage, false);
+ }
+ }
+ }.execute();
+ return true;
+ }
+ });
+ HDLRefreshViewHolder hdlRefreshViewHolder = new HDLRefreshViewHolder(_mActivity, true);
+ hdlRefreshViewHolder.setPullDownImageResource(R.mipmap.loading_44);
+ hdlRefreshViewHolder.setChangeToReleaseRefreshAnimResId(R.drawable.loading_refresh);
+ hdlRefreshViewHolder.setRefreshingAnimResId(R.drawable.loading_refresh_end);
+ viewBinding.fragmentHouseSrl.setRefreshViewHolder(hdlRefreshViewHolder);
+ }
+
+ /**
+ * 涓嬫媺鍒锋柊銆愯澶囥�戠殑閫昏緫
+ */
+ protected void pullToRefreshDevice() {
+ viewBinding.fragmentDeviceSrl.setDelegate(new BGARefreshLayout.BGARefreshLayoutDelegate() {
+ @Override
+ public void onBGARefreshLayoutBeginRefreshing(BGARefreshLayout refreshLayout) {
+
+ new AsyncTask<Void, Void, Void>() {
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ viewBinding.fragmentDeviceSrl.endRefreshing();
+ loadNextPageDeviceList(true, 1, true);
+ }
+ }.execute();
+ }
+
+ @Override
+ public boolean onBGARefreshLayoutBeginLoadingMore(BGARefreshLayout refreshLayout) {
+ new AsyncTask<Void, Void, Void>() {
+ @Override
+ protected Void doInBackground(Void... params) {
+ try {
+ Thread.sleep(10);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ @Override
+ protected void onPostExecute(Void aVoid) {
+ // 鎵ц浠诲姟锛堝鏇存柊UI銆佽烦杞瓑锛�
+ viewBinding.fragmentDeviceSrl.endLoadingMore();
+ if (!isDeviceLoadingMore) {
+ // 婊戝姩鍒颁簡搴曢儴锛屾墽琛岀浉搴旂殑鎿嶄綔
+ loadNextPageDeviceList(false, ++currentDeviceListPage, false);
+ }
+ }
+ }.execute();
+ return true;
+ }
+ });
+ HDLRefreshViewHolder hdlRefreshViewHolder = new HDLRefreshViewHolder(_mActivity, true);
+ hdlRefreshViewHolder.setPullDownImageResource(R.mipmap.loading_44);
+ hdlRefreshViewHolder.setChangeToReleaseRefreshAnimResId(R.drawable.loading_refresh);
+ hdlRefreshViewHolder.setRefreshingAnimResId(R.drawable.loading_refresh_end);
+ viewBinding.fragmentDeviceSrl.setRefreshViewHolder(hdlRefreshViewHolder);
+ }
+
+
}
diff --git a/app/src/main/res/layout/fragment_house_list.xml b/app/src/main/res/layout/fragment_house_list.xml
index 0042957..0bdc995 100644
--- a/app/src/main/res/layout/fragment_house_list.xml
+++ b/app/src/main/res/layout/fragment_house_list.xml
@@ -414,11 +414,11 @@
</androidx.constraintlayout.widget.ConstraintLayout>
- <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
+ <com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout
android:id="@+id/fragment_house_srl"
android:layout_width="match_parent"
android:layout_height="0dp"
- android:layout_marginTop="18.5dp"
+ android:layout_marginTop="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -427,8 +427,10 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/fragment_house_srl_list_rc"
android:layout_width="match_parent"
- android:layout_height="match_parent" />
- </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
+ android:layout_height="match_parent"
+ android:clipToPadding="false"
+ android:paddingBottom="@dimen/dp_10" />
+ </com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout>
<!--娌℃湁鏁版嵁鏄剧ず鏍峰紡-->
<include
android:id="@+id/home_null_data_ic"
@@ -500,7 +502,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
- <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
+ <com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout
android:id="@+id/fragment_device_srl"
android:layout_width="match_parent"
android:layout_height="0dp"
@@ -515,7 +517,7 @@
android:layout_height="match_parent"
android:clipToPadding="false"
android:paddingBottom="@dimen/dp_10" />
- </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
+ </com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout>
<!--娌℃湁鏁版嵁鏄剧ず鏍峰紡-->
<include
diff --git a/app/src/main/res/layout/fragment_message.xml b/app/src/main/res/layout/fragment_message.xml
index f73f310..647f41b 100644
--- a/app/src/main/res/layout/fragment_message.xml
+++ b/app/src/main/res/layout/fragment_message.xml
@@ -53,7 +53,7 @@
<LinearLayout
android:id="@+id/message_cl"
android:layout_width="match_parent"
- android:layout_height="98dp"
+ android:layout_height="77dp"
android:layout_marginTop="@dimen/dp_10"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
@@ -105,8 +105,9 @@
<LinearLayout
android:id="@+id/message_tab_ll"
android:layout_width="match_parent"
- android:layout_height="@dimen/dp_62"
+ android:layout_height="@dimen/dp_22"
android:layout_marginStart="@dimen/dp_16"
+ android:layout_marginTop="@dimen/dp_20"
android:layout_marginEnd="@dimen/dp_16"
android:orientation="horizontal">
<!--鍏ㄩ儴璁惧-->
@@ -205,10 +206,11 @@
</LinearLayout>
- <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
+ <com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout
android:id="@+id/message_srl"
android:layout_width="match_parent"
android:layout_height="0dp"
+ android:layout_marginTop="@dimen/dp_10"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -222,7 +224,7 @@
android:id="@+id/message_rcv"
android:layout_width="match_parent"
android:layout_height="match_parent" />
- </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
+ </com.hdl.photovoltaic.widget.refreshlayout.BGARefreshLayout>
<!--娌℃湁鏁版嵁鏄剧ず鏍峰紡-->
<include
diff --git a/app/src/main/res/layout/item_message.xml b/app/src/main/res/layout/item_message.xml
index a31dcc5..dffda21 100644
--- a/app/src/main/res/layout/item_message.xml
+++ b/app/src/main/res/layout/item_message.xml
@@ -5,6 +5,7 @@
android:layout_height="117.5dp">
<androidx.constraintlayout.widget.ConstraintLayout
+ android:layout_marginTop="@dimen/dp_10"
android:layout_width="0dp"
android:layout_height="107.5dp"
android:layout_marginStart="@dimen/dp_16"
diff --git a/app/src/main/res/layout/item_plant_details.xml b/app/src/main/res/layout/item_plant_details.xml
index a0967e9..49f9276 100644
--- a/app/src/main/res/layout/item_plant_details.xml
+++ b/app/src/main/res/layout/item_plant_details.xml
@@ -19,6 +19,7 @@
android:layout_width="match_parent"
android:layout_height="194.5dp"
android:layout_marginStart="@dimen/dp_16"
+ android:layout_marginTop="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_16"
android:background="@drawable/bj_ff1c1c1e">
<!--鐢电珯鍥剧墖-->
--
Gitblit v1.8.0