From 7fdae87bc3de46b5b012f8987c6902cd8b054323 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 16 五月 2024 18:17:11 +0800
Subject: [PATCH] 2024年05月16日18:17:09

---
 app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java |  138 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 98 insertions(+), 40 deletions(-)

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 474231d..c048c81 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
@@ -1,14 +1,15 @@
 package com.hdl.photovoltaic.ui.home;
 
 
-import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulColumnChart;
+import static com.hdl.photovoltaic.ui.home.aachart.CustomStyleChartComposer.configureColorfulColumnChart;
 
 import android.os.Bundle;
 import android.text.TextUtils;
 import android.view.View;
 
-import androidx.annotation.RequiresPermission;
+
 import androidx.appcompat.content.res.AppCompatResources;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
 
 import com.bigkoo.pickerview.builder.TimePickerBuilder;
 import com.bigkoo.pickerview.listener.OnTimeSelectListener;
@@ -17,7 +18,6 @@
 import com.github.AAChartModel.AAChartCore.AAChartCreator.AAChartView;
 import com.github.AAChartModel.AAChartCore.AAChartCreator.AAMoveOverEventMessageModel;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
-import com.hdl.photovoltaic.HDLApp;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseFragment;
 import com.hdl.photovoltaic.config.ConstantManage;
@@ -29,10 +29,15 @@
 import com.hdl.photovoltaic.other.HdlDeviceLogic;
 import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.other.HdlPowerStationDataStatisticsLogic;
+import com.hdl.photovoltaic.other.HdlResidenceLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.other.HdlUniLogic;
 import com.hdl.photovoltaic.ui.bean.DataOverBean;
 import com.hdl.photovoltaic.ui.bean.SocialContributionBean;
 import com.hdl.photovoltaic.ui.bean.StatisticsBean;
+import com.hdl.photovoltaic.ui.bean.StatusOverviewBean;
+import com.hdl.photovoltaic.ui.home.aachart.BasicChartComposer;
+import com.hdl.photovoltaic.uni.HDLUniMP;
 import com.hdl.photovoltaic.utils.TimeUtils;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
 
@@ -53,7 +58,7 @@
 
     FragmentHomePageBinding viewBinding;
 
-    AAChartView aaChartView;
+    AutoSizeMyAAChart aaChartView;
 
     AAChartModel aaChartModel;
 
@@ -73,14 +78,15 @@
 
     @Override
     public void onBindView(Bundle savedInstanceState) {
+
         //鍒濆鍖�
         initView();
         //鍒濆鍖栫晫闈㈢洃鍚櫒
         initEvent();
         //璇诲彇鏁版嵁
         readDate();
-
     }
+
 
     /**
      * 璇诲彇鏁版嵁
@@ -89,6 +95,7 @@
         HdlThreadLogic.runSubThread(new Runnable() {
             @Override
             public void run() {
+                getStatusOverview();
                 getDataOver();
                 getStatistics();
                 getSocialContribution();
@@ -98,6 +105,13 @@
     }
 
     private void initEvent() {
+        //鐢电珯娣诲姞
+        viewBinding.homePageStationAddIv.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
+            }
+        });
         //鏃堕棿閫夋嫨鍣�
         viewBinding.yearMonthDayTv.setOnClickListener(new View.OnClickListener() {
             @Override
@@ -120,13 +134,13 @@
                 viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
 
                 viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.yearTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.lifeCycleTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.v1.setVisibility(View.GONE);
                 viewBinding.v2.setVisibility(View.VISIBLE);
@@ -149,16 +163,16 @@
                 }
                 timeType = TimeType.month;
                 viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
                 viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
 
                 viewBinding.yearTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.lifeCycleTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.v1.setVisibility(View.GONE);
                 viewBinding.v2.setVisibility(View.GONE);
@@ -181,16 +195,16 @@
                 }
                 timeType = TimeType.year;
                 viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.yearTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
                 viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
 
                 viewBinding.lifeCycleTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.v1.setVisibility(View.VISIBLE);
                 viewBinding.v2.setVisibility(View.GONE);
@@ -211,13 +225,13 @@
                 }
                 timeType = TimeType.all;
                 viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.yearTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+                viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
 
                 viewBinding.lifeCycleTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
                 viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
@@ -265,7 +279,19 @@
                 viewBinding.yearMonthDayTv.setText(time);
             }
         });
+        //璁剧疆涓嬫媺绠ご棰滆壊
+        viewBinding.srl.setColorSchemeResources(R.color.text_FF245EC3);
+        viewBinding.srl.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+            @Override
+            public void onRefresh() {
+                viewBinding.srl.setRefreshing(false);
+                readDate();
+            }
+        });
+
+
     }
+
     /**
      * 鏃堕棿閫夋嫨鍣�
      */
@@ -307,12 +333,12 @@
                 .setTitleText(_mActivity.getString(R.string.time_selectd))//鏍囬鏂囧瓧
                 .setOutSideCancelable(true)//鐐瑰嚮灞忓箷锛岀偣鍦ㄦ帶浠跺閮ㄨ寖鍥存椂锛屾槸鍚﹀彇娑堟樉绀�
                 .isCyclic(false)//鏄惁寰幆婊氬姩
-                .setTitleColor(_mActivity.getColor(R.color.text_90000000))//鏍囬鏂囧瓧棰滆壊
+                .setTitleColor(_mActivity.getColor(R.color.text_E6000000))//鏍囬鏂囧瓧棰滆壊
                 .setSubmitColor(_mActivity.getColor(R.color.text_38C494))//纭畾鎸夐挳鏂囧瓧棰滆壊
-                .setCancelColor(_mActivity.getColor(R.color.text_40000000))//鍙栨秷鎸夐挳鏂囧瓧棰滆壊
+                .setCancelColor(_mActivity.getColor(R.color.text_66000000))//鍙栨秷鎸夐挳鏂囧瓧棰滆壊
                 .setTitleBgColor(_mActivity.getColor(R.color.text_FFFFFFFF))//鏍囬鑳屾櫙棰滆壊 Night mode
                 .setBgColor(_mActivity.getColor(R.color.text_FFFFFFFF))//婊氳疆鑳屾櫙棰滆壊 Night mode
-                .setTextColorCenter(_mActivity.getColor(R.color.text_90000000)).setDate(selectedDate)// 濡傛灉涓嶈缃殑璇濓紝榛樿鏄郴缁熸椂闂�*/
+                .setTextColorCenter(_mActivity.getColor(R.color.text_E6000000)).setDate(selectedDate)// 濡傛灉涓嶈缃殑璇濓紝榛樿鏄郴缁熸椂闂�*/
                 .setRangDate(startDate, endDate)//璧峰缁堟骞存湀鏃ヨ瀹�
                 .setLabel(_mActivity.getString(R.string.year), _mActivity.getString(R.string.month), _mActivity.getString(R.string.day), _mActivity.getString(R.string.hour), _mActivity.getString(R.string.minute), _mActivity.getString(R.string.seconds))//榛樿璁剧疆涓哄勾鏈堟棩鏃跺垎绉�
                 .isCenterLabel(false) //鏄惁鍙樉绀轰腑闂撮�変腑椤圭殑label鏂囧瓧锛宖alse鍒欐瘡椤筰tem鍏ㄩ儴閮藉甫鏈塴abel銆�
@@ -327,19 +353,26 @@
      * 鍥捐〃鍔犺浇
      */
     private void setUpAAChartView() {
-        aaChartView = viewBinding.AAChartView;
+        aaChartView = viewBinding.autoSizeMyAAChart;
         aaChartView.callBack = this;
         if (TimeType.day.equals(timeType)) {
             aaChartModel = BasicChartComposer.configureAreaChart("Pv鍙戠數鍔熺巼", fieldNames, fieldValues);
         } else if (TimeType.month.equals(timeType)
                 || TimeType.year.equals(timeType)
                 || TimeType.all.equals(timeType)) {
-            aaChartModel = configureColorfulColumnChart();
+            aaChartModel = configureColorfulColumnChart("Pv鍙戠數鍔熺巼", fieldNames, fieldValues);
         }
         aaChartView.aa_drawChartWithChartModel(aaChartModel);
+
     }
 
     private void initView() {
+
+
+        viewBinding.homeAllIl.stationTitleTv.setText(getString(R.string.message_all));
+        viewBinding.homeFaultsIl.stationTitleTv.setText(getString(R.string.my_power_station_malfunction));
+        viewBinding.homeOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line));
+        viewBinding.homeConnectedIl.stationTitleTv.setText(getString(R.string.to_be_added));
 
         String dataStr = TimeUtils.getDateTimestamp(getCurrentTimestamp(), getTimeDateFormat());
         viewBinding.yearMonthDayTv.setText(dataStr);
@@ -348,7 +381,7 @@
         viewBinding.infoRl1Text2Tv.setText(installed_capacity);
         String generated_power = getString(R.string.generated_power) + "(" + HdlDeviceLogic.kW + ")";
         viewBinding.infoRl1Text4Tv.setText(generated_power);
-        String generation = getString(R.string.generation) + "(" + HdlDeviceLogic.kWp + ")";
+        String generation = getString(R.string.generation) + "(" + HdlDeviceLogic.kWh + ")";
         viewBinding.homePageStationInfoRl1TitleTv.setText(generation);
 
         viewBinding.homePageStationInfoRl2DayIc.dataTypeTv.setText(R.string.day_power_generation);
@@ -360,20 +393,17 @@
         viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
         viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
         viewBinding.monthTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-        viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+        viewBinding.monthTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
         viewBinding.yearTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-        viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+        viewBinding.yearTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
         viewBinding.lifeCycleTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
-        viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_40000000));
+        viewBinding.lifeCycleTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
         viewBinding.v1.setVisibility(View.GONE);
         viewBinding.v2.setVisibility(View.VISIBLE);
         viewBinding.v3.setVisibility(View.VISIBLE);
         viewBinding.homePageStationSelectTimeLl.setVisibility(View.VISIBLE);
         setUpAAChartView();//鍥捐〃鍔犺浇
     }
-
-
-
 
 
     @Override
@@ -404,6 +434,29 @@
         }
     }
 
+    /**
+     * 鐢电珯鐘舵�佹瑙�
+     */
+    private void getStatusOverview() {
+        HdlResidenceLogic.getInstance().getStatusOverview(new CloudCallBeak<StatusOverviewBean>() {
+            @Override
+            public void onSuccess(StatusOverviewBean statusOverviewBean) {
+                if (statusOverviewBean == null) {
+                    return;
+                }
+                viewBinding.homeAllIl.stationTotalTv.setText(statusOverviewBean.getTotal() + "");
+                viewBinding.homeFaultsIl.stationTotalTv.setText(statusOverviewBean.getFault() + "");
+                viewBinding.homeOfflineIl.stationTotalTv.setText(statusOverviewBean.getOffline() + "");
+                viewBinding.homeConnectedIl.stationTotalTv.setText(statusOverviewBean.getConnecting() + "");
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+
+            }
+        });
+    }
+
 
     /**
      * 鑾峰彇缁熻姒傝鏁版嵁(鍏徃缁村害)
@@ -412,17 +465,22 @@
         HdlPowerStationDataStatisticsLogic.getInstance().getDataOver(new CloudCallBeak<DataOverBean>() {
             @Override
             public void onSuccess(DataOverBean dataOverBean) {
-                if (dataOverBean == null) {
-                    return;
-                }
-                viewBinding.infoRl1Text1Tv.setText(dataOverBean.getInstalledCapacity());
-                viewBinding.infoRl1Text3Tv.setText(dataOverBean.getPower());
-                viewBinding.infoRl1FText1Tv.setText(dataOverBean.getPowerRatio());
+                HdlThreadLogic.runMainThread(new Runnable() {
+                    @Override
+                    public void run() {
+                        if (dataOverBean == null) {
+                            return;
+                        }
+                        viewBinding.infoRl1Text1Tv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getInstalledCapacity()));
+                        viewBinding.infoRl1Text3Tv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getPower()));
+                        viewBinding.infoRl1FText1Tv.setText(dataOverBean.getPowerRatio());
 
-                viewBinding.homePageStationInfoRl2DayIc.dataTv.setText(dataOverBean.getTodayElectricity());
-                viewBinding.homePageStationInfoRl2MonIc.dataTv.setText(dataOverBean.getMonthElectricity());
-                viewBinding.homePageStationInfoRl2YearIc.dataTv.setText(dataOverBean.getYearElectricity());
-                viewBinding.homePageStationInfoRl2CumulativeIc.dataTv.setText(dataOverBean.getTotalElectricity());
+                        viewBinding.homePageStationInfoRl2DayIc.dataTv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getTodayElectricity()));
+                        viewBinding.homePageStationInfoRl2MonIc.dataTv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getMonthElectricity()));
+                        viewBinding.homePageStationInfoRl2YearIc.dataTv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getYearElectricity()));
+                        viewBinding.homePageStationInfoRl2CumulativeIc.dataTv.setText(HdlDeviceLogic.getConvertDoubleUnit(dataOverBean.getTotalElectricity()));
+                    }
+                });
             }
 
             @Override
@@ -462,7 +520,7 @@
     }
 
     /**
-     * 鍙戠數閲忕粺璁�(鍏徃缁村害)
+     * 绀句細璐$尞(鍏徃缁村害)
      */
     private void getSocialContribution() {
         HdlPowerStationDataStatisticsLogic.getInstance().getSocialContribution(new CloudCallBeak<SocialContributionBean>() {

--
Gitblit v1.8.0