wjc
2023-06-27 da8bb15e0d0293d373071b44b89f2b953ecc0830
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -2,31 +2,44 @@
import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.hardware.camera2.CameraManager;
import android.os.Bundle;
import android.os.SystemClock;
import android.util.Log;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.FragmentHouseListBinding;
import com.hdl.photovoltaic.base.CustomBaseFragment;
import com.hdl.photovoltaic.databinding.LoadingConfirmInputBinding;
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.MyPowerStationActivity;
import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter;
import com.hdl.photovoltaic.ui.bean.HouseListBean;
import com.hdl.photovoltaic.ui.device.FastScanActivity;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import com.hdl.photovoltaic.utils.PermissionUtils;
import com.hdl.photovoltaic.widget.ConfirmationDialog;
import com.hdl.photovoltaic.widget.ConfirmationInputDialog;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
import io.dcloud.feature.unimp.DCUniMPJSCallback;
public class HouseListFragment extends CustomBaseFragment {
    private FragmentHouseListBinding viewBinding;
@@ -34,6 +47,7 @@
    private CameraManager manager;
    private List<HouseListBean> houseListBeanList = null;
    @Override
    public Object getContentView() {
@@ -54,18 +68,25 @@
    }
    private void initEvent() {
        viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String[] ary = PermissionUtils.checkPermission(_mActivity, new String[]{Manifest.permission.CAMERA});
                if (ary.length > 0) {
                    requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
                } else {
                    startActivity(FastScanActivity.class);
                }
                // 打开小程序页面
//                HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
                requestPermissions(new PermissionsResultCallback() {
                    @Override
                    public void succeed() {
                        // 打开小程序页面
                        HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
                    }
                    @Override
                    public void failing() {
                    }
                });
            }
        });
@@ -77,6 +98,19 @@
                viewBinding.fragmentHouseSrl.setRefreshing(false);
                Log.d("HouseListFragment", "下拉刷新");
            }
        });
        houseInfoAdapter.setNoOnclickListener(new HouseInfoAdapter.OnclickListener() {
            @Override
            public void onClick(int position) {
                //点击住宅详情
                HdlLogLogic.print("====点击住宅详情" + position);
                if (houseListBeanList == null || houseListBeanList.size() <= 0) {
                    return;
                }
                HouseListBean houseListBean = houseListBeanList.get(position);
                String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseListBean.getHomeId();
                HdlUniLogic.getInstance().openUniMP(path, null);
            }
        });
    }
@@ -95,13 +129,33 @@
    private void initData() {
        this.houseListBeanList = new ArrayList<>();
        for (int i = 0; i < 11; i++) {
            HouseListBean houseListBean = new HouseListBean();
            houseListBean.setHomeName("电站" + i);
            this.houseListBeanList.add(houseListBean);
//        for (int i = 0; i < 11; i++) {
//            HouseListBean houseListBean = new HouseListBean();
//            houseListBean.setHomeName("电站" + i);
//            this.houseListBeanList.add(houseListBean);
//        }
        this.houseListBeanList.addAll(HdlResidenceLogic.getInstance().getHouseInfoBeanList());
    }
    /**
     * 申请权限
     */
    private void requestPermissions(PermissionsResultCallback permissionsResultCallback) {
        mPermissionsResultCallback = permissionsResultCallback;
        //Manifest.permission.CAMERA,
        String[] s = new String[]{
                Manifest.permission.ACCESS_FINE_LOCATION
        };
        String[] ary = PermissionUtils.checkPermission(_mActivity, s);
        if (ary.length > 0) {
            requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
        } else {
            if (mPermissionsResultCallback != null) {
                mPermissionsResultCallback.succeed();
            }
        }
    }
    @Override
@@ -110,11 +164,24 @@
        if (requestCode == PermissionUtils.STATUS_SUCCESS) {
            for (int i = 0; i < permissions.length; i++) {
                if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {
                    startActivity(FastScanActivity.class);
                    if (mPermissionsResultCallback != null) {
                        mPermissionsResultCallback.succeed();
                    }
                }
            }
        }
    }
    private PermissionsResultCallback mPermissionsResultCallback;
    public interface PermissionsResultCallback {
        void succeed();
        void failing();
    }
}