mac
2024-06-03 f26c763192e7ac6264278ac891ee86486fcbd636
app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
@@ -4,6 +4,7 @@
import static com.hdl.photovoltaic.ui.home.aachart.CustomStyleChartComposer.configureColorfulColumnChart;
import android.os.Bundle;
import android.os.SystemClock;
import android.text.TextUtils;
import android.view.View;
@@ -21,7 +22,6 @@
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseFragment;
import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.FragmentHomePageBinding;
import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
import com.hdl.photovoltaic.enums.PowerStationStatus;
@@ -81,7 +81,6 @@
    @Override
    public void onBindView(Bundle savedInstanceState) {
        //初始化
        initView();
        //初始化界面监听器
@@ -120,7 +119,7 @@
        viewBinding.homeAllIl.parentLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                HdlCommonLogic.getInstance().postEventBus(ConstantManage.station_status, PowerStationStatus.All);
            }
        });
@@ -128,18 +127,21 @@
        viewBinding.homeFaultsIl.parentLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                HdlCommonLogic.getInstance().postEventBus(ConstantManage.station_status, PowerStationStatus.malfunction);
            }
        });
        //离线
        viewBinding.homeOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                HdlCommonLogic.getInstance().postEventBus(ConstantManage.station_status, PowerStationStatus.off);
            }
        });
        //待接入
        viewBinding.homeConnectedIl.parentLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                HdlCommonLogic.getInstance().postEventBus(ConstantManage.station_status, PowerStationStatus.connecting);
            }
        });
        //时间选择器
@@ -159,7 +161,8 @@
                    return;
                }
                timeType = TimeType.day;
                viewBinding.unitTv.setText(UnitType.kW);
                viewBinding.unitTextTv.setText(getString(R.string.pv_power));
                viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.time_selected_38c494));
                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_38C494));
@@ -192,6 +195,8 @@
                    return;
                }
                timeType = TimeType.month;
                viewBinding.unitTv.setText(UnitType.kWh);
                viewBinding.unitTextTv.setText(getString(R.string.generation));
                viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
@@ -224,6 +229,8 @@
                    return;
                }
                timeType = TimeType.year;
                viewBinding.unitTv.setText(UnitType.kWh);
                viewBinding.unitTextTv.setText(getString(R.string.generation));
                viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
@@ -254,6 +261,8 @@
                    return;
                }
                timeType = TimeType.all;
                viewBinding.unitTv.setText(UnitType.kWh);
                viewBinding.unitTextTv.setText(getString(R.string.generation));
                viewBinding.dayTv.setBackground(AppCompatResources.getDrawable(_mActivity, R.color.text_00000000));
                viewBinding.dayTv.setTextColor(_mActivity.getColor(R.color.text_66000000));
@@ -285,6 +294,7 @@
                String timeDateFormat = TimeUtils.getTimeDateFormat(timeType);
                Calendar calendar = TimeUtils.stringToCalendar(currDate, timeDateFormat);
                String time = TimeUtils.subtractDayMonthYearFromDate(calendar, 1, timeDateFormat, timeType);
                //不需要限制最小日期,因为是查询账号下所有电站,无法知道最小建站日期
                viewBinding.yearMonthDayTv.setText(time);
                getStatistics();
@@ -327,6 +337,7 @@
     * 时间选择器
     */
    private void selectedTimePickerBuilder() {
        String currDate = viewBinding.yearMonthDayTv.getText().toString();
        //时间选择器
        Calendar selectedDate = TimeUtils.stringToCalendar(currDate, TimeUtils.getTimeDateFormat(timeType));
@@ -388,10 +399,8 @@
        aaChartView.callBack = this;
        if (TimeType.day.equals(timeType)) {
            aaChartModel = BasicChartComposer.configureAreaChart(getString(R.string.pv_power), fieldNames, fieldValues);
        } else if (TimeType.month.equals(timeType)
                || TimeType.year.equals(timeType)
                || TimeType.all.equals(timeType)) {
            aaChartModel = configureColorfulColumnChart(getString(R.string.pv_power), fieldNames, fieldValues);
        } else if (TimeType.month.equals(timeType) || TimeType.year.equals(timeType) || TimeType.all.equals(timeType)) {
            aaChartModel = configureColorfulColumnChart(getString(R.string.generation), fieldNames, fieldValues);
        }
        aaChartView.aa_drawChartWithChartModel(aaChartModel);
@@ -408,7 +417,7 @@
        String dataStr = TimeUtils.getDateTimestamp(TimeUtils.getCurrentTimestamp(), TimeUtils.getTimeDateFormat(timeType));
        viewBinding.yearMonthDayTv.setText(dataStr);
        String installed_capacity = getString(R.string.installed_capacity) + "(" + UnitType.kWp + ")";
        String installed_capacity = getString(R.string.my_power_station_installed_capacity) + "(" + UnitType.kWp + ")";
        viewBinding.infoRl1Text2Tv.setText(installed_capacity);
        String generated_power = getString(R.string.generated_power) + "(" + UnitType.kW + ")";
        viewBinding.infoRl1Text4Tv.setText(generated_power);
@@ -465,6 +474,7 @@
        }
    }
    /**
     * 电站状态概览
     */
@@ -504,7 +514,7 @@
                            return;
                        }
                        viewBinding.infoRl1Text1Tv.setText(HdlCommonLogic.getConvertDoubleUnit(dataOverBean.getInstalledCapacity()));
                        viewBinding.infoRl1Text3Tv.setText(HdlCommonLogic.getConvertDoubleUnit(dataOverBean.getPower()));
                        viewBinding.infoRl1Text3Tv.setText(HdlCommonLogic.getConvertDoubleUnit(dataOverBean.getPower(),UnitType.kW,false));
                        viewBinding.infoRl1FText1Tv.setText(dataOverBean.getPowerRatio());
                        viewBinding.homePageStationInfoRl2DayIc.dataTv.setText(HdlCommonLogic.getConvertDoubleUnit(dataOverBean.getTodayElectricity()));
@@ -540,7 +550,11 @@
                        Object[] values = new Object[list.size()];
                        for (int i = 0; i < list.size(); i++) {
                            keys[i] = list.get(i).getFieldName();
                            values[i] = HdlCommonLogic.getBigDecimal(list.get(i).getFieldValue()).intValue();//获取整数部分
                            if (TimeType.day.equals(timeType)) {
                                values[i] = HdlCommonLogic.divideByOneThousandAndFormat(list.get(i).getFieldValue());// HdlCommonLogic.getBigDecimal(list.get(i).getFieldValue()).intValue();//获取整数部分
                            } else {
                                values[i] = HdlCommonLogic.getBigDecimal(list.get(i).getFieldValue());
                            }
                        }
                        fieldNames = keys;
                        fieldValues = values;
@@ -569,7 +583,7 @@
                }
                viewBinding.socialContributionData1Tv.setText(HdlCommonLogic.convertString(HdlCommonLogic.getBigDecimal(socialContributionBean.getCoal())));
                viewBinding.socialContributionData2Tv.setText(HdlCommonLogic.convertString(HdlCommonLogic.getBigDecimal(socialContributionBean.getCo2())));
                viewBinding.socialContributionData3Tv.setText(HdlCommonLogic.convertString(HdlCommonLogic.getBigDecimal(socialContributionBean.getTreePlanting())));
                viewBinding.socialContributionData3Tv.setText(HdlCommonLogic.convertString(socialContributionBean.getTreePlanting()));
            }
            @Override