From cdcd08459665a89844a14c1d376995ebc501e018 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 22 五月 2024 16:23:49 +0800
Subject: [PATCH] 2024年05月22日16:23:47
---
app/src/main/java/com/hdl/photovoltaic/enums/LowerTagType.java | 8 ++++
app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java | 44 +++++++++++++++++++++-
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 21 +++++++---
app/src/main/res/layout/swipe_right_layout.xml | 2
app/src/main/java/com/hdl/photovoltaic/widget/DelayedConfirmationCancelDialog.java | 16 +++++++
app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java | 4 ++
app/src/main/java/com/hdl/photovoltaic/HDLApp.java | 9 ++++
app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java | 5 ++
8 files changed, 97 insertions(+), 12 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
index ddf3bd9..f6e3974 100644
--- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
+++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -20,9 +20,12 @@
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.enums.NetworkType;
+import com.hdl.photovoltaic.other.HdlDeviceLogic;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlMessageLogic;
+import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.ui.LoginActivity;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
@@ -59,6 +62,7 @@
//澹版槑涓�涓叕鍏辩殑淇℃伅鏄犲皠,鍙綋浣滃叏灞�鍙橀噺浣跨敤;
public HashMap<String, String> mInfoMap = new HashMap<>();
+
//鍒╃敤鍗曚緥妯″紡鑾峰彇褰撳墠搴旂敤鐨勫敮涓�瀹炰緥
public static HDLApp getInstance() {
return mHDLApp;
@@ -67,7 +71,6 @@
@Override
public void onCreate() {
super.onCreate();
-
// 鑾峰彇褰撳墠杩涚▼鐨凱ID
Log.d("杩涚▼===", android.os.Process.myPid() + "");
mHDLApp = this;
@@ -195,6 +198,10 @@
//娓呯┖娑堟伅缂撳瓨鏁版嵁
HdlMessageLogic.getInstance().clearListMessage();
+ //娓呯┖鐢电珯缂撳瓨鏁版嵁
+ HdlResidenceLogic.getInstance().clearHouseList();
+ //娓呯┖璁惧缂撳瓨鏁版嵁
+ HdlDeviceLogic.getInstance().clearDeviceList();
//娓呯┖缂撳瓨鏁版嵁
if (mInfoMap != null) {
mInfoMap.clear();
diff --git a/app/src/main/java/com/hdl/photovoltaic/enums/LowerTagType.java b/app/src/main/java/com/hdl/photovoltaic/enums/LowerTagType.java
new file mode 100644
index 0000000..2d4f74b
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/enums/LowerTagType.java
@@ -0,0 +1,8 @@
+package com.hdl.photovoltaic.enums;
+
+public enum LowerTagType {
+ home,
+ power_station,
+ message,
+ me
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
index 6cb0f7b..5be54bf 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
@@ -17,6 +17,7 @@
import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
+import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.enums.UnitType;
import com.hdl.photovoltaic.utils.GlideUtils;
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
@@ -40,6 +41,9 @@
private static volatile HdlCommonLogic sHdlCommonLogic;
+ public static LowerTagType lowerTagType = LowerTagType.home;
+
+
/**
* 鑾峰彇褰撳墠瀵硅薄
*
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 ede598c..fa9bc5a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
@@ -31,6 +31,7 @@
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivityMyPowerStationBinding;
import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
+import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.enums.NetworkType;
import com.hdl.photovoltaic.enums.PowerStationStatusType;
import com.hdl.photovoltaic.listener.CloudCallBeak;
@@ -308,6 +309,7 @@
currentFragmentIndex = 0;
bottomViewChangeOfStyle();
showFragment();
+ HdlCommonLogic.lowerTagType = LowerTagType.home;
HdlCommonLogic.getInstance().postEventBusSticky(ConstantManage.homepage_title_tab_switch, HomepageTitleTabSwitch.homepage.toString());
}
});
@@ -320,6 +322,7 @@
currentFragmentIndex = 1;
bottomViewChangeOfStyle();
showFragment();
+ HdlCommonLogic.lowerTagType = LowerTagType.power_station;
HdlCommonLogic.getInstance().postEventBusSticky(ConstantManage.homepage_title_tab_switch, HomepageTitleTabSwitch.powerstation.toString());
}
});
@@ -332,6 +335,7 @@
currentFragmentIndex = 2;
bottomViewChangeOfStyle();
showFragment();
+ HdlCommonLogic.lowerTagType = LowerTagType.message;
HdlCommonLogic.getInstance().postEventBusSticky(ConstantManage.homepage_title_tab_switch, HomepageTitleTabSwitch.message.toString());
}
});
@@ -344,6 +348,7 @@
currentFragmentIndex = 3;
bottomViewChangeOfStyle();
showFragment();
+ HdlCommonLogic.lowerTagType = LowerTagType.me;
HdlCommonLogic.getInstance().postEventBusSticky(ConstantManage.homepage_title_tab_switch, HomepageTitleTabSwitch.me.toString());
}
});
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
index 7118b04..0546b48 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/adapter/DeviceInfoAdapter.java
@@ -1,6 +1,7 @@
package com.hdl.photovoltaic.ui.adapter;
import android.content.Context;
+import android.graphics.drawable.Drawable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -9,6 +10,7 @@
import android.widget.TextView;
import androidx.annotation.NonNull;
+import androidx.appcompat.content.res.AppCompatResources;
import androidx.recyclerview.widget.RecyclerView;
import com.hdl.photovoltaic.R;
@@ -50,7 +52,7 @@
holder.device_label_power_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(deviceBean.getPowerPvNow(), UnitType.kW));
holder.device_label_day_value_tv.setText(HdlCommonLogic.getConvertDoubleUnit(deviceBean.getPowerPvNow(), UnitType.kWh));
holder.device_label_location_tv.setText(deviceBean.getHomeAddress());
-
+ setTextViewStyle(holder.device_label_state_tv, deviceBean.getDeviceStatus());
holder.itemView.setTag(position);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -87,6 +89,44 @@
}
/**
+ * 鏀瑰彉缁勪欢鏍峰紡
+ *
+ * @param textView 鏄剧ず缁勪欢
+ * @param state_value 璁惧鐘舵��(1:杩炴帴涓�,2:鏁呴殰,3:姝e父(杩愯),4:绂荤嚎)
+ */
+ private void setTextViewStyle(TextView textView, int state_value) {
+ String text = mContext.getString(R.string.my_power_station_operation);
+ Drawable drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_06b92a);
+ switch (state_value) {
+ case 1: {
+ text = mContext.getString(R.string.my_power_station_connecting);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_ffb300);
+ }
+ break;
+ case 2: {
+ text = mContext.getString(R.string.my_power_station_malfunction);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_e34343);
+ }
+ break;
+ case 3: {
+ text = mContext.getString(R.string.my_power_station_operation);
+ }
+ break;
+ case 4: {
+ text = mContext.getString(R.string.my_power_station_off_line);
+ drawable = AppCompatResources.getDrawable(mContext, R.drawable.state_b9b9b9);
+ }
+ break;
+
+
+ }
+ textView.setText(text);
+ textView.setBackground(drawable);
+
+
+ }
+
+ /**
* 涓�琛屽竷灞�瀹瑰櫒
*/
static class MyViewHolder extends RecyclerView.ViewHolder {
@@ -98,7 +138,7 @@
public TextView device_label_power_value_tv;//鏈夊姛鍔熺巼
public TextView device_label_day_value_tv;//褰撴棩鍙戠數閲�
public TextView device_label_location_tv;//鐢电珯鍦板潃
- public TextView device_label_state_tv;//鐢电珯鐘舵��(杩炴帴涓�,杩愯,绂荤嚎,鏁呴殰);
+ public TextView device_label_state_tv;//璁惧鐘舵��(1:杩炴帴涓�,2:鏁呴殰,3:姝e父(杩愯),4:绂荤嚎)
public MyViewHolder(@NonNull View itemView) {
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 507e362..0563f1e 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
@@ -23,6 +23,7 @@
import com.hdl.photovoltaic.databinding.FragmentHouseListBinding;
import com.hdl.photovoltaic.base.CustomBaseFragment;
import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
+import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.enums.PowerStationStatus;
import com.hdl.photovoltaic.enums.ShowErrorMode;
import com.hdl.photovoltaic.enums.SortType;
@@ -300,10 +301,11 @@
public void onDelClick(int position, HouseIdBean houseIdBean) {
DelayedConfirmationCancelDialog delayedConfirmationCancelDialog = new DelayedConfirmationCancelDialog(_mActivity);
- delayedConfirmationCancelDialog.setTitleContent(getString(R.string.loading_title_tip));
+ delayedConfirmationCancelDialog.show();
+ delayedConfirmationCancelDialog.isHideTitle(true);
String homeName = "\"" + houseIdBean.getHomeName() + "\"";
delayedConfirmationCancelDialog.setContent(getString(R.string.delete_power_station).replace("%s", homeName));
- delayedConfirmationCancelDialog.show();
+
delayedConfirmationCancelDialog.startCountdown(4);
delayedConfirmationCancelDialog.setYesOnclickListener(new DelayedConfirmationCancelDialog.onYesOnclickListener() {
@Override
@@ -596,15 +598,20 @@
} else if (HDLUniMP.UNI_EVENT_REPLY_HOME_CLOSE_HOME_DETAILS_PAGE.equals(eventBus.getType())) {
// 鍙栨秷绮樻�т簨浠�
EventBus.getDefault().removeStickyEvent(eventBus);
- //uin鍏抽棴浣忓畢璇︽儏鐣岄潰閫氱煡
- if (MqttRecvClient.getInstance() != null) {
- MqttRecvClient.getInstance().removeAllTopic();
+ //鏄湪鐢电珯鍒楄〃椤垫墠杩涙潵杩欓噷
+ if (HdlCommonLogic.lowerTagType == LowerTagType.power_station && isClickPowerStationLabel) {
+ //uin鍏抽棴浣忓畢璇︽儏鐣岄潰閫氱煡
+ if (MqttRecvClient.getInstance() != null) {
+ MqttRecvClient.getInstance().removeAllTopic();
+ }
+ loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
}
- loadNextPageHouseList(false, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true);
-
} else if (HDLUniMP.UNI_EVENT_REPLY_DEVICE_LIST.equals(eventBus.getType())) {
// 鍙栨秷绮樻�т簨浠�
EventBus.getDefault().removeStickyEvent(eventBus);
+// if (!isClickPowerStationLabel) {
+// return;
+// }
//杩涘幓浣忓畢璇︽儏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();
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/DelayedConfirmationCancelDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/DelayedConfirmationCancelDialog.java
index 9621ecf..8219c57 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/DelayedConfirmationCancelDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/DelayedConfirmationCancelDialog.java
@@ -11,12 +11,13 @@
import androidx.annotation.NonNull;
import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.base.BaseDialog;
import com.hdl.photovoltaic.databinding.DialogConfirmCancelBinding;
/**
* 寤舵椂纭妗�
*/
-public class DelayedConfirmationCancelDialog extends Dialog {
+public class DelayedConfirmationCancelDialog extends BaseDialog {
public DelayedConfirmationCancelDialog(@NonNull Context context) {
super(context, R.style.Custom_Dialog);
this.mContext = context;
@@ -64,6 +65,19 @@
}
/**
+ * 闅愯棌鑷畾涔�"鏍囬"缁勪欢
+ *
+ * @param isHideTitle true 闅愯棌
+ */
+ public void isHideTitle(boolean isHideTitle) {
+ if (isHideTitle) {
+ if (viewBinding != null) {
+ viewBinding.loadingConfirmationTitleTv.setVisibility(View.GONE);
+ }
+ }
+ }
+
+ /**
* 鑷畾涔�"纭"鏂囨湰
*
* @param confirm 鍐呭
diff --git a/app/src/main/res/layout/swipe_right_layout.xml b/app/src/main/res/layout/swipe_right_layout.xml
index 73ebdbb..2f127ff 100644
--- a/app/src/main/res/layout/swipe_right_layout.xml
+++ b/app/src/main/res/layout/swipe_right_layout.xml
@@ -7,7 +7,7 @@
<View
android:layout_width="wrap_content"
- android:layout_height="@dimen/dp_24" />
+ android:layout_height="@dimen/dp_16" />
<ImageView
android:id="@+id/move_home_iv"
--
Gitblit v1.8.0