mac
2024-01-29 96f2b56c103c53b17cf946d2c733d4cb03d2f39d
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -1,18 +1,26 @@
package com.hdl.photovoltaic.ui.powerstation;
import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Movie;
import android.hardware.camera2.CameraManager;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.DataSource;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.engine.GlideException;
import com.bumptech.glide.load.resource.gif.GifDrawable;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.target.Target;
import com.google.gson.Gson;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.photovoltaic.R;
@@ -25,17 +33,16 @@
import com.hdl.photovoltaic.enums.ShowErrorMode;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.other.HdlCommonLogic;
import com.hdl.photovoltaic.other.HdlDeviceLogic;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter;
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.ui.bean.HouseInfoBean;
import com.hdl.photovoltaic.ui.device.FastScanActivity;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.utils.GlideUtils;
import com.hdl.photovoltaic.utils.PermissionUtils;
import com.hdl.photovoltaic.widget.MovieDrawable;
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
@@ -76,8 +83,6 @@
        initView();
        //初始化界面监听器
        initEvent();
    }
    private void initEvent() {
@@ -87,25 +92,25 @@
        viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                requestPermissions(new PermissionsResultCallback() {
                    @Override
                    public void succeed() {
//                        Intent intent = new Intent();
//                        intent.setClass(_mActivity, FastScanActivity.class);
//                        startActivity(intent);
                        String path = HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION
                                + "&token=" + UserConfigManage.getInstance().getToken()
                                + "&refreshToken=" + UserConfigManage.getInstance().getRefreshToken()
                                + "&serverAddress=" + AppConfigManage.getUserRegionUrl();
//                        // 打开小程序页面
                        HdlUniLogic.getInstance().openUniMP(path, null);
                    }
                HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
                    @Override
                    public void failing() {
                    }
                });
//                requestPermissions(new PermissionsResultCallback() {
//                    @Override
//                    public void succeed() {
////                        Intent intent = new Intent();
////                        intent.setClass(_mActivity, FastScanActivity.class);
////                        startActivity(intent);
////                        // 打开小程序页面
//                        HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
//                    }
//
//                    @Override
//                    public void failing() {
//                        HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
//                    }
//                });
            }
        });
@@ -127,8 +132,7 @@
                String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS
                        + "?homeId=" + houseIdBean.getHomeId()
                        + "&homeName=" + houseIdBean.getHomeName()
                        + "&powerStationStatus=" + houseIdBean.getPowerStationStatus()
                        + "&serverAddress=" + AppConfigManage.getUserRegionUrl();
                        + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
                HdlUniLogic.getInstance().openUniMP(path, null);
            }
@@ -140,11 +144,10 @@
        viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setVisibility(View.VISIBLE);
        viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setImageResource(R.drawable.add);
        LinearLayoutManager linearLayout = new LinearLayoutManager(_mActivity);
        houseInfoAdapter = new HouseInfoAdapter(this.houseListBeanIDList, _mActivity);
        houseInfoAdapter = new HouseInfoAdapter(_mActivity);
        viewBinding.fragmentHouseSrlListRc.setLayoutManager(linearLayout);
        viewBinding.fragmentHouseSrlListRc.setAdapter(houseInfoAdapter);
        houseInfoAdapter.setList(this.houseListBeanIDList);
        this.nullDataUpdateUi(houseListBeanIDList);
@@ -247,7 +250,6 @@
                            if (houseInfoAdapter != null) {
                                //更新UI
                                houseInfoAdapter.setList(list);
                                houseInfoAdapter.notifyDataSetChanged();
                            }
                        }
@@ -281,10 +283,7 @@
        mPermissionsResultCallback = permissionsResultCallback;
        String[] s = new String[]{
                Manifest.permission.ACCESS_FINE_LOCATION,
                Manifest.permission.CAMERA,
        };
        String[] s = new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.CAMERA,};
        String[] ary = PermissionUtils.checkPermission(_mActivity, s);
        if (ary.length > 0) {
            requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
@@ -303,6 +302,10 @@
                if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {
                    if (mPermissionsResultCallback != null) {
                        mPermissionsResultCallback.succeed();
                    }
                } else {
                    if (mPermissionsResultCallback != null) {
                        mPermissionsResultCallback.failing();
                    }
                }
@@ -326,11 +329,10 @@
     * 没有电站列表的样式
     */
    private void nullDataUpdateUi(List<HouseIdBean> list) {
        if (list != null && list.size() > 0) {
            viewBinding.nullListTv.setVisibility(View.GONE);
        } else {
            viewBinding.nullListTv.setVisibility(View.VISIBLE);
        }
        HdlCommonLogic.getInstance().nullDataUpdateUi(_mActivity,
                viewBinding.nullDataIc.getRoot(),
                viewBinding.nullDataIc.nullDataGifAnimationIv,
                viewBinding.nullDataIc.nullDataTv, getString(R.string.my_power_station_data_null), list != null && list.size() > 0);
    }