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/message/MessageFragment.java             |    6 +-
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java |    4 +
 app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java                  |    1 
 app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java            |  116 ++++++++++++++++++++++++++++++++++++++
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java  |   15 ++---
 app/src/main/res/layout/dialog_type_title_list_b.xml                               |   28 +++++++++
 6 files changed, 158 insertions(+), 12 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
index 92e0c8c..43eaf78 100644
--- a/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
+++ b/app/src/main/java/com/hdl/photovoltaic/config/ConstantManage.java
@@ -26,6 +26,7 @@
     public static final String network_change_post = "network_change";
     //鐢电珯鐘舵��
     public static final String station_status = "station_status";
+    public static final String station_edit = "station_edit";
 
 
 }
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 8756651..f5dd23d 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
@@ -28,7 +28,7 @@
 import com.hdl.photovoltaic.ui.adapter.MessageAdapter;
 import com.hdl.photovoltaic.ui.bean.MessageBean;
 import com.hdl.photovoltaic.ui.bean.UnCountBean;
-import com.hdl.photovoltaic.widget.TypeTitleListDialog;
+import com.hdl.photovoltaic.widget.BTypeTitleListDialog;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
 
 import org.greenrobot.eventbus.EventBus;
@@ -244,9 +244,9 @@
      * @param stringList 杩囨护绫诲瀷鍊艰〃
      */
     private void setTypeTitleListDialog(TextView textView, String filterType, List<String> stringList) {
-        TypeTitleListDialog typeTitleListDialog = new TypeTitleListDialog(_mActivity, stringList);
+        BTypeTitleListDialog typeTitleListDialog = new BTypeTitleListDialog(_mActivity, stringList);
         typeTitleListDialog.show();
-        typeTitleListDialog.setOnListener(new TypeTitleListDialog.OnClickListener() {
+        typeTitleListDialog.setOnListener(new BTypeTitleListDialog.OnClickListener() {
             @Override
             public void onClick(int position, String title) {
                 textView.setText(title);
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 9040eac..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
@@ -615,6 +615,10 @@
                 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();
             }
         }
     }
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java
index aa5901a..511f6e9 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java
@@ -76,10 +76,11 @@
     @Override
     public void onBackPressed() {
         super.onBackPressed();
-        BaseEventBus baseEventBus = new BaseEventBus();
-        baseEventBus.setTopic(ConstantManage.homepage_title_tab_switch);
-        baseEventBus.setType(HomepageTitleTabSwitch.powerstation.toString());
-        EventBus.getDefault().post(baseEventBus);
+        sendEventBus();
+    }
+
+    private void sendEventBus() {
+        HdlCommonLogic.getInstance().postEventBus(ConstantManage.homepage_title_tab_switch, ConstantManage.station_edit);
         finish();
     }
 
@@ -88,11 +89,7 @@
         viewBinding.toolbarTopFragmentHouseListRl.topBackLl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                BaseEventBus baseEventBus = new BaseEventBus();
-                baseEventBus.setTopic(ConstantManage.homepage_title_tab_switch);
-                baseEventBus.setType(HomepageTitleTabSwitch.powerstation.toString());
-                EventBus.getDefault().post(baseEventBus);
-                finish();
+                sendEventBus();
             }
         });
 
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java
new file mode 100644
index 0000000..52ebcfe
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java
@@ -0,0 +1,116 @@
+package com.hdl.photovoltaic.widget;
+
+import android.annotation.SuppressLint;
+import android.app.Dialog;
+import android.content.Context;
+import android.os.Bundle;
+import android.view.View;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+
+import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.base.BaseDialog;
+import com.hdl.photovoltaic.databinding.DialogTypeTitleListBBinding;
+import com.hdl.photovoltaic.widget.adapter.TypeListDialogAdapter;
+
+import java.util.List;
+
+public class BTypeTitleListDialog extends BaseDialog {
+    private OnClickListener mOnClickListener;
+    private DialogTypeTitleListBBinding viewBinding;
+
+    private TypeListDialogAdapter typeListDialogAdapter;
+
+    private Context mContext;
+
+    private List<String> mList;
+
+    public BTypeTitleListDialog(@NonNull Context context, List<String> list) {
+        super(context, R.style.Custom_Dialog);
+        this.mContext = context;
+        this.mList = list;
+    }
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        viewBinding = DialogTypeTitleListBBinding.inflate(getLayoutInflater());
+        setContentView(viewBinding.getRoot());
+        setDialogTouchOutsideCloseable(this);
+        LinearLayoutManager linearLayout = new LinearLayoutManager(mContext);
+        typeListDialogAdapter = new TypeListDialogAdapter(this.mList, mContext);
+        viewBinding.typeListRl.setLayoutManager(linearLayout);
+        viewBinding.typeListRl.setAdapter(typeListDialogAdapter);
+        typeListDialogAdapter.setItemOnclickListener(new TypeListDialogAdapter.OnclickListener() {
+            @Override
+            public void onClick(int position, String title) {
+                dismiss();
+                if (mOnClickListener != null) {
+                    mOnClickListener.onClick(position, title);
+                }
+            }
+        });
+    }
+
+    @Override
+    protected void onStart() {
+        super.onStart();
+//        // 鑾峰彇绐楀彛瀵硅薄
+//        Window dialogWindow = this.getWindow();
+//        if (dialogWindow != null) {
+//            // 鑾峰彇瀵硅瘽妗嗗綋鍓嶇殑鍙傛暟鍊�
+//            WindowManager.LayoutParams p = dialogWindow.getAttributes();
+//            p.width = LinearLayout.LayoutParams.MATCH_PARENT;
+//            p.height = LinearLayout.LayoutParams.WRAP_CONTENT;
+////            p.dimAmount = 0.6f;
+//            dialogWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
+//            p.gravity = Gravity.BOTTOM;
+//            p.y = DensityUtils.dip2px(mContext, 352);
+////            //杩欓噷璁剧疆鐨勫楂樹紭鍏堢骇楂樹簬XML涓殑甯冨眬璁剧疆
+////            if (this.enumBoxType == BoxType.PhotoAlbumBox) {
+////                p.gravity = Gravity.BOTTOM;
+////            } else if (this.enumBoxType == BoxType.FlashingBox) {
+////                p.dimAmount = 0f;
+////            }
+//            // 璁剧疆鍒板睘鎬ч厤缃腑
+//            dialogWindow.setAttributes(p);
+//        }
+//        setDialogTouchOutsideCloseable(this);
+
+    }
+
+    @SuppressLint("ClickableViewAccessibility")
+    public void setDialogTouchOutsideCloseable(Dialog dialog) {
+        viewBinding.typeParentCl.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                int top = viewBinding.dialogParentCl.getTop();
+                int left = viewBinding.dialogParentCl.getLeft();
+                int bottom = viewBinding.dialogParentCl.getBottom();
+                int right = viewBinding.dialogParentCl.getRight();
+                int y = (int) v.getY();
+                int x = (int) v.getX();
+                if (top < y && y < bottom) {
+                } else {
+                    dismiss();
+                }
+                if (left < x && x < right) {
+
+                } else {
+                    dismiss();
+                }
+
+            }
+        });
+    }
+
+    public void setOnListener(OnClickListener onClickListener) {
+        this.mOnClickListener = onClickListener;
+    }
+
+
+    public interface OnClickListener {
+        void onClick(int position, String title);
+    }
+}
diff --git a/app/src/main/res/layout/dialog_type_title_list_b.xml b/app/src/main/res/layout/dialog_type_title_list_b.xml
new file mode 100644
index 0000000..307ea4d
--- /dev/null
+++ b/app/src/main/res/layout/dialog_type_title_list_b.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/type_parent_cl"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+
+    >
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:id="@+id/dialog_parent_cl"
+        android:layout_width="match_parent"
+        android:layout_height="270dp"
+        android:layout_marginStart="@dimen/dp_16"
+        android:layout_marginTop="155dp"
+        android:layout_marginEnd="@dimen/dp_16"
+        android:background="@drawable/loading_ffffffff_4"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent">
+
+        <androidx.recyclerview.widget.RecyclerView
+            android:id="@+id/type_list_rl"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
+
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file

--
Gitblit v1.8.0