工作空间 v3.7.4.6版本的 MD5 值为:94c1c0052e9f2e949ae1349e6caf437b

以下内容为反编译后的 UserInfoFragment.java 源代码,内容仅作参考


package com.uusafe.appsetting.fragment;

import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.RelativeLayout;
import androidx.annotation.CallSuper;
import androidx.annotation.MainThread;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.FileProvider;
import androidx.lifecycle.Lifecycle;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.uusafe.appsetting.adapter.UserInfoAdapter;
import com.uusafe.appsetting.baseview.IUserInfoView;
import com.uusafe.appsetting.impl.UserInfoPresenterImpl;
import com.uusafe.base.modulesdk.module.manager.BaseModuleManager;
import com.uusafe.base.modulesdk.module.router.ARouterConfig;
import com.uusafe.commbase.global.BaseGlobal;
import com.uusafe.contact.bean.AttributeInfo;
import com.uusafe.contact.bundleinfo.UserAttrModuleInfo;
import com.uusafe.cropview.bean.CropDataInfo;
import com.uusafe.cropview.image.CropIwaResultReceiver;
import com.uusafe.data.module.presenter.userinfo.UserInfoBean;
import com.uusafe.im.base.popwindow.PopItemAction;
import com.uusafe.im.base.popwindow.PopWindow;
import com.uusafe.mbs.appsetting.R;
import com.uusafe.permission.AfterPermissionGranted;
import com.uusafe.permission.util.PermissionsUtils;
import com.uusafe.uibase.event.StartFragmentEvent;
import com.uusafe.uibase.fragment.BaseFragment;
import com.uusafe.uibase.fragment.mvp.BaseMvpFragment;
import com.uusafe.uibase.manager.OpenWinManager;
import com.uusafe.utils.common.FileUtils;
import com.uusafe.utils.common.PhotoUtils;
import com.uusafe.utils.common.ZZLog;
import java.io.File;
public class UserInfoFragment extends BaseMvpFragment implements IUserInfoView {
    private static final int CODE_CAMERA_REQUEST = 161;
    private static final int CODE_GALLERY_REQUEST = 160;
    private Uri cropImageUri;
    private CropIwaResultReceiver cropResultReceiver;
    private Uri imageUri;
    private RecyclerView recyclerView;
    private UserInfoAdapter userInfoAdapter;
    private UserInfoPresenterImpl userInfoPresenter;
    private int waterMarkFlag = -1;
    RelativeLayout relativeLayout = null;
    private File fileUri = new File(Environment.getExternalStorageDirectory().getPath() + "/photo.jpg");
    private File fileCropUri = new File(Environment.getExternalStorageDirectory().getPath() + "/crop_photo.jpg");
    private UserInfoAdapter.OnItemClickListener onItemClickListener = new UserInfoAdapter.OnItemClickListener() {
        @Override
        public void onAttrClicked(AttributeInfo attributeInfo) {
            OpenWinManager.startActivityRouterPath(UserInfoFragment.this.mActivity, ARouterConfig.RouterPath.UUSAFE_FEATURE_APPSETTING_EDITUSERATTR_ACTIVITY, new UserAttrModuleInfo(attributeInfo), ARouterConfig.OpenTarget._BLANK);
        }

        @Override
        public void onPortraitClicked() {
            UserInfoFragment.this.showPopWindow();
        }
    };

    public static UserInfoFragment newInstance() {
        Bundle bundle = new Bundle();
        UserInfoFragment userInfoFragment = new UserInfoFragment();
        userInfoFragment.setArguments(bundle);
        return userInfoFragment;
    }

    @AfterPermissionGranted(138)
    public void b() {
        PhotoUtils.pickPhoto(this, 160);
    }

    private void registerCropReceiver() {
        this.cropResultReceiver = new CropIwaResultReceiver();
        this.cropResultReceiver.register(getCurrentContext());
        this.cropResultReceiver.setListener(new CropIwaResultReceiver.Listener() {
            @Override
            public void onCropFailed(Throwable th) {
                ZZLog.i(BaseFragment.TAG, "裁剪失败", new Object[0]);
                UserInfoFragment.this.showToast(R.string.uu_mos_appsetting_userinfo_upload_fail);
            }

            @Override
            public void onCropStart() {
            }

            @Override
            public void onCropSuccess(Uri uri) {
                ZZLog.i(BaseFragment.TAG, "裁剪成功", new Object[0]);
                UserInfoFragment.this.uploadPhoto(uri);
            }
        });
    }

    public void showPopWindow() {
        new PopWindow.Builder(this.mActivity).setStyle(PopWindow.PopWindowStyle.PopUp).addItemAction(new PopItemAction(getString(R.string.uu_mos_appsetting_userinfo_dialog_take_photo), PopItemAction.PopItemStyle.Normal, new PopItemAction.OnClickListener() {
            @Override
            public final void onClick() {
                UserInfoFragment.this.a();
            }
        })).addItemAction(new PopItemAction(getString(R.string.uu_mos_appsetting_userinfo_dialog_pick_photo), PopItemAction.PopItemStyle.Normal, new PopItemAction.OnClickListener() {
            @Override
            public final void onClick() {
                UserInfoFragment.this.b();
            }
        })).addItemAction(new PopItemAction(getString(R.string.uu_mbs_cancel), PopItemAction.PopItemStyle.Cancel)).create().show();
    }

    @AfterPermissionGranted(123)
    private void takePhoto() {
        if (Build.VERSION.SDK_INT >= 24) {
            this.imageUri = FileProvider.getUriForFile(this.mActivity, BaseGlobal.getInstance().getFileProvider(), this.fileUri);
        } else {
            this.imageUri = Uri.fromFile(this.fileUri);
        }
        PhotoUtils.takePhoto(this, this.imageUri, 161);
    }

    public void uploadPhoto(Uri uri) {
        UserInfoPresenterImpl userInfoPresenterImpl = this.userInfoPresenter;
        if (userInfoPresenterImpl != null) {
            userInfoPresenterImpl.postUpdatePhoto(uri.getPath());
        }
    }

    public void a() {
        if (PermissionsUtils.requestPermission(this, 123, PermissionsUtils.CAMERA)) {
            takePhoto();
        }
    }

    @Override
    public int attachLayoutRes() {
        return R.layout.uu_mos_appsetting_fragment_userinfo;
    }

    @Override
    public void closeWindow() {
        AppCompatActivity appCompatActivity = this.mActivity;
        if (appCompatActivity != null) {
            appCompatActivity.finish();
        }
    }

    @Override
    public Context getCurrentContext() {
        return this.mActivity;
    }

    @Override
    public void initData() {
        this.userInfoAdapter = new UserInfoAdapter(this.onItemClickListener);
        this.recyclerView.setAdapter(this.userInfoAdapter);
        this.userInfoAdapter.setData(null, null, false);
    }

    @Override
    protected void initInjector() {
        this.userInfoPresenter = new UserInfoPresenterImpl();
        this.mPresenterImpl = this.userInfoPresenter;
    }

    @Override
    @CallSuper
    @MainThread
    public void initLifecycleObserver(Lifecycle lifecycle) {
        this.userInfoPresenter.getPresenter().setLifecycleOwner(this);
        lifecycle.addObserver(this.userInfoPresenter.getPresenter());
    }

    @Override
    public void initView(Bundle bundle) {
        setTitleText(R.string.uu_mos_appsetting_userinfo_title);
        this.recyclerView = (RecyclerView) findViewById(R.id.user_info_recycler_view);
        this.recyclerView.setLayoutManager(new LinearLayoutManager(this.mActivity));
        this.relativeLayout = (RelativeLayout) findViewById(R.id.uu_mos_appsetting_rv_userinfo_rl);
        this.waterMarkFlag = BaseGlobal.getInstance().setWaterMarkDrawable(this.relativeLayout);
    }

    @Override
    public void onActivityResult(int i, int i2, Intent intent) {
        super.onActivityResult(i, i2, intent);
        if (i2 == -1) {
            if (i == 160) {
                this.cropImageUri = Uri.fromFile(this.fileCropUri);
                FileUtils.deleteQuietly(this.fileCropUri);
                this.imageUri = Uri.parse(PhotoUtils.getPath(this.mActivity, intent.getData(), "file:///"));
                if (Build.VERSION.SDK_INT >= 24) {
                    this.imageUri = FileProvider.getUriForFile(this.mActivity, BaseGlobal.getInstance().getFileProvider(), new File(this.imageUri.getPath()));
                } else {
                    this.imageUri = intent.getData();
                }
                CropDataInfo cropDataInfo = new CropDataInfo();
                cropDataInfo.setOrgImageUri(this.imageUri.toString());
                cropDataInfo.setDesImageUri(this.cropImageUri.toString());
                OpenWinManager.startActivityRouterPath(this.mActivity, ARouterConfig.RouterPath.UUSAFE_BASE_CROPVIEW_CROP_ACTIVITY, cropDataInfo, ARouterConfig.OpenTarget._BLANK, -1);
            } else if (i != 161) {
            } else {
                this.cropImageUri = Uri.fromFile(this.fileCropUri);
                FileUtils.deleteQuietly(this.fileCropUri);
                if (this.imageUri == null) {
                    if (Build.VERSION.SDK_INT >= 24) {
                        this.imageUri = FileProvider.getUriForFile(this.mActivity, BaseGlobal.getInstance().getFileProvider(), this.fileUri);
                    } else {
                        this.imageUri = Uri.fromFile(this.fileUri);
                    }
                }
                CropDataInfo cropDataInfo2 = new CropDataInfo();
                cropDataInfo2.setOrgImageUri(this.imageUri.toString());
                cropDataInfo2.setDesImageUri(this.cropImageUri.toString());
                OpenWinManager.startActivityRouterPath(this.mActivity, ARouterConfig.RouterPath.UUSAFE_BASE_CROPVIEW_CROP_ACTIVITY, cropDataInfo2, ARouterConfig.OpenTarget._BLANK, -1);
            }
        }
    }

    @Override
    public boolean onBackPressedSupport() {
        return super.onBackPressedSupport();
    }

    @Override
    public void onClick(View view) {
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        UserInfoPresenterImpl userInfoPresenterImpl = this.userInfoPresenter;
        if (userInfoPresenterImpl != null && userInfoPresenterImpl.getPresenter() != null) {
            this.userInfoPresenter.getPresenter().dispose();
        }
        CropIwaResultReceiver cropIwaResultReceiver = this.cropResultReceiver;
        if (cropIwaResultReceiver != null) {
            cropIwaResultReceiver.unregister(getCurrentContext());
        }
        org.greenrobot.eventbus.e.a().g(this);
    }

    @Override
    public void onEditUserAttrError(String str) {
    }

    @Override
    public void onEditUserAttrSuccess() {
    }

    @Override
    public void onResume() {
        super.onResume();
        UserInfoPresenterImpl userInfoPresenterImpl = this.userInfoPresenter;
        if (userInfoPresenterImpl != null) {
            userInfoPresenterImpl.postUserInfo();
        }
        BaseModuleManager.getInstance().getUaaModule().onClickEvent("uu_mbs_uaa_event_personal_detail", getString(com.uusafe.mbs.base.R.string.uu_mbs_uaa_event_personal_detail), getContext());
        if (this.waterMarkFlag != 0 || this.relativeLayout == null) {
            return;
        }
        this.waterMarkFlag = BaseGlobal.getInstance().setWaterMarkDrawable(this.relativeLayout);
    }

    @Override
    public void onSupportInvisible() {
        super.onSupportInvisible();
        hideSoftInput();
    }

    @Override
    public void onUploadPhotoError(String str) {
        showToast(getCurrentContext().getString(R.string.uu_mos_appsetting_userinfo_upload_fail));
    }

    @Override
    public void onUploadPhotoSuccess() {
        this.userInfoAdapter.notifyDataSetChanged();
    }

    @Override
    public void onUserInfoError(String str) {
    }

    @Override
    public void onUserInfoSuccess(final UserInfoBean userInfoBean) {
        AppCompatActivity appCompatActivity = this.mActivity;
        if (appCompatActivity != null) {
            appCompatActivity.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    UserInfoFragment.this.a(userInfoBean);
                }
            });
        }
    }

    @Override
    protected void restoreView() {
    }

    @Override
    public void setListener() {
        registerCropReceiver();
        org.greenrobot.eventbus.e.a().e(this);
    }

    @org.greenrobot.eventbus.n
    public void startBrother(StartFragmentEvent startFragmentEvent) {
        if (startFragmentEvent.target == ARouterConfig.OpenTarget._SELF) {
            startWithPop(startFragmentEvent.targetFragment);
        } else {
            start(startFragmentEvent.targetFragment);
        }
    }

    public void a(UserInfoBean userInfoBean) {
        this.userInfoAdapter.setData(userInfoBean.getDepartment(), userInfoBean.getMember(), userInfoBean.getEditFlag() == 1);
    }
}