From 2c62031554742600f735baf74ea6a5776a1093a9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期三, 22 五月 2024 11:47:40 +0800
Subject: [PATCH] Merge branch 'feature/hxb' into develop_new
---
app/src/main/java/com/hdl/photovoltaic/widget/DefaultFilteringDialog.java | 277 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 272 insertions(+), 5 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/DefaultFilteringDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/DefaultFilteringDialog.java
index 6f41018..3ae9b1c 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/DefaultFilteringDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/DefaultFilteringDialog.java
@@ -2,13 +2,18 @@
import android.content.Context;
import android.os.Bundle;
+import android.text.TextUtils;
import android.view.View;
+import android.widget.TextView;
import androidx.annotation.NonNull;
+import androidx.appcompat.content.res.AppCompatResources;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.BaseDialog;
import com.hdl.photovoltaic.databinding.DialogDefaultFilteringBinding;
+import com.hdl.photovoltaic.enums.GridType;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
public class DefaultFilteringDialog extends BaseDialog {
private final Context mContext;
@@ -16,6 +21,18 @@
DialogDefaultFilteringBinding viewBinding;
OnClickListener mOnClickListener;
+
+ final String text1 = "0-5";
+ final String text2 = "5-10";
+ final String text3 = "10-15";
+ final String text4 = "15-30";
+ final String text5 = "30-100";
+ final String text6 = "100-300";
+ final String text7 = "300-500";
+ final String text8 = "500+";
+
+
+ private String mStateValue = GridType.All;
public DefaultFilteringDialog(@NonNull Context context) {
super(context, R.style.Custom_Dialog);
@@ -32,9 +49,11 @@
//鍒濆鍖栫晫闈㈡帶浠�
initView();
//鍒濆鍖栫晫闈㈡暟鎹�
- initData();
+// initData(mMinValue, mMaxValue, mStateValue);
//鍒濆鍖栫晫闈㈡帶浠剁殑浜嬩欢
initEvent();
+
+
}
private void initEvent() {
@@ -42,12 +61,36 @@
viewBinding.affirmLl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- if (mOnClickListener != null) {
- mOnClickListener.confirm();
+ String minValue = viewBinding.minEt.getText().toString();
+ String maxValue = viewBinding.maxEt.getText().toString();
+ if (!TextUtils.isEmpty(minValue) && !TextUtils.isEmpty(maxValue)) {
+ try {
+ if (Integer.parseInt(minValue) > Integer.parseInt(maxValue)) {
+ //鏈�灏忓�煎湪鍓嶉潰
+ if (mOnClickListener != null) {
+ mOnClickListener.confirm(maxValue, minValue, mStateValue);
+ }
+ } else {
+ if (mOnClickListener != null) {
+ mOnClickListener.confirm(minValue, maxValue, mStateValue);
+ }
+ }
+ } catch (Exception e) {
+ //寮哄埗杞崲鍥犺緭鍏ュ�艰秴鍑篿nt鍊煎煙鑼冨洿鎶ュ嚭寮傚父
+ int maxValueInt = Integer.MAX_VALUE;
+ HdlThreadLogic.toast(mContext, mContext.getString(R.string.the_input_value_has_been_exceeded) + "(" + maxValueInt + ").");
+ return;
+ }
+
+ } else {
+ if (mOnClickListener != null) {
+ mOnClickListener.confirm(minValue, maxValue, mStateValue);
+ }
}
dismiss();
}
});
+
viewBinding.cancelLl.setOnClickListener(new View.OnClickListener() {
@Override
@@ -55,12 +98,228 @@
dismiss();
}
});
+
+ viewBinding.resetTv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(null, TitleType.string_capacity);
+ setSelectedText("");
+ }
+ });
+ viewBinding.text1Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text1Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text1Tv.getTag().toString());
+ }
+ });
+ viewBinding.text2Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text2Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text2Tv.getTag().toString());
+ }
+ });
+ viewBinding.text3Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text3Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text3Tv.getTag().toString());
+ }
+ });
+ viewBinding.text4Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text4Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text4Tv.getTag().toString());
+ }
+ });
+
+ viewBinding.text5Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text5Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text5Tv.getTag().toString());
+ }
+ });
+ viewBinding.text6Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text6Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text6Tv.getTag().toString());
+ }
+ });
+ viewBinding.text7Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text7Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text7Tv.getTag().toString());
+ }
+ });
+ viewBinding.text8Tv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.text8Tv, TitleType.string_capacity);
+ setSelectedText(viewBinding.text8Tv.getTag().toString());
+ }
+ });
+
+ viewBinding.allTv.setOnClickListener(new View.OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.allTv, TitleType.GridConnectedState);
+ setSelectedText(viewBinding.allTv.getTag().toString());
+ }
+ });
+ viewBinding.gridConnectedTv.setOnClickListener(new View.OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.gridConnectedTv, TitleType.GridConnectedState);
+ setSelectedText(viewBinding.gridConnectedTv.getTag().toString());
+ }
+ });
+ viewBinding.offNetworkTv.setOnClickListener(new View.OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+ setBackgroundColor(viewBinding.offNetworkTv, TitleType.GridConnectedState);
+ setSelectedText(viewBinding.offNetworkTv.getTag().toString());
+ }
+ });
+
}
- private void initData() {
+ /**
+ * @param value 閫変腑鐨勫��
+ */
+ private void setSelectedText(String value) {
+
+ String minValue = "", maxValue = "";
+ if (TextUtils.isEmpty(value)) {
+ minValue = "";
+ maxValue = "";
+ } else if (value.contains("+")) {
+ minValue = "500";
+ maxValue = "";
+ } else if (value.contains("-")) {
+ String[] min_max = value.split("-");
+ if (min_max.length == 2) {
+ minValue = min_max[0];
+ maxValue = min_max[1];
+ }
+ } else {
+ mStateValue = value;
+ }
+
+ viewBinding.minEt.setText(minValue);
+ viewBinding.maxEt.setText(maxValue);
+
+ }
+
+ /**
+ * 鏀瑰彉缁勪欢鑳屾櫙锛屽瓧浣撻鑹叉牸寮�
+ *
+ * @param textView 缁勪欢鍙互锛堣缃负null,娌℃湁閫変腑鐘舵��)
+ * @param titleType 淇敼绫诲瀷
+ */
+ private void setBackgroundColor(TextView textView, TitleType titleType) {
+ if (titleType == TitleType.string_capacity) {
+ viewBinding.text1Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text1Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text2Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text2Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text3Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text3Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text4Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text4Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text5Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text5Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text6Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text6Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text7Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text7Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.text8Tv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.text8Tv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ } else {
+ viewBinding.allTv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.allTv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.gridConnectedTv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.gridConnectedTv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ viewBinding.offNetworkTv.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.search_bj_ff05000000));
+ viewBinding.offNetworkTv.setTextColor(mContext.getColor(R.color.text_E6000000));
+ }
+ if (textView != null) {
+ textView.setBackground(AppCompatResources.getDrawable(mContext, R.drawable.selected_38c494));
+ textView.setTextColor(mContext.getColor(R.color.text_FFFFFFFF));
+ }
+
+ }
+
+ public void initState(String min, String max, String stateValue) {
+ try {
+ mStateValue = stateValue;
+ viewBinding.minEt.setText(min);
+ viewBinding.maxEt.setText(max);
+
+ if (!TextUtils.isEmpty(min) || !TextUtils.isEmpty(max)) {
+ String str = min + "-" + max;
+ switch (str) {
+ case text1:
+ setBackgroundColor(viewBinding.text1Tv, TitleType.string_capacity);
+ break;
+ case text2:
+ setBackgroundColor(viewBinding.text2Tv, TitleType.string_capacity);
+ break;
+ case text3:
+ setBackgroundColor(viewBinding.text3Tv, TitleType.string_capacity);
+ break;
+ case text4:
+ setBackgroundColor(viewBinding.text4Tv, TitleType.string_capacity);
+ break;
+ case text5:
+ setBackgroundColor(viewBinding.text5Tv, TitleType.string_capacity);
+ break;
+ case text6:
+ setBackgroundColor(viewBinding.text6Tv, TitleType.string_capacity);
+ break;
+ case text7:
+ setBackgroundColor(viewBinding.text7Tv, TitleType.string_capacity);
+ break;
+ case text8:
+ setBackgroundColor(viewBinding.text8Tv, TitleType.string_capacity);
+ break;
+ }
+ }
+ if (TextUtils.isEmpty(stateValue)) {
+ setBackgroundColor(viewBinding.allTv, TitleType.GridConnectedState);
+ } else if (stateValue.equals(GridType.FULL_GRID)) {
+ setBackgroundColor(viewBinding.gridConnectedTv, TitleType.GridConnectedState);
+ } else {
+ setBackgroundColor(viewBinding.offNetworkTv, TitleType.GridConnectedState);
+ }
+ } catch (Exception ignored) {
+ }
+
}
private void initView() {
+
+ viewBinding.text1Tv.setTag(text1);
+ viewBinding.text2Tv.setTag(text2);
+ viewBinding.text3Tv.setTag(text3);
+ viewBinding.text4Tv.setTag(text4);
+ viewBinding.text5Tv.setTag(text5);
+ viewBinding.text6Tv.setTag(text6);
+ viewBinding.text7Tv.setTag(text7);
+ viewBinding.text8Tv.setTag(text8);
+
+ viewBinding.allTv.setTag(GridType.All);
+ viewBinding.gridConnectedTv.setTag(GridType.FULL_GRID);
+ viewBinding.offNetworkTv.setTag(GridType.OFFLINE);
+ setBackgroundColor(null, TitleType.string_capacity);
+ setBackgroundColor(viewBinding.allTv, TitleType.GridConnectedState);
}
public void setOnClickListener(OnClickListener onClickListener) {
@@ -71,6 +330,14 @@
public interface OnClickListener {
- void confirm();
+ void confirm(String min, String max, String state);
}
+
+ public enum TitleType {
+ string_capacity,//缁勪覆瀹归噺
+ GridConnectedState//骞剁綉鐘舵��
+
+ }
+
+
}
--
Gitblit v1.8.0