mac
2023-11-30 8231d2af7893e221d90c71bd5dec4cf3f2f1f0ce
app/src/main/java/com/hdl/photovoltaic/ui/me/SetActivity.java
@@ -1,20 +1,34 @@
package com.hdl.photovoltaic.ui.me;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.IBinder;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.hdl.linkpm.sdk.HDLLinkPMSdk;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivitySetBinding;
import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpServer;
import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpService;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.other.HdlAccountLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.widget.ConfirmationInputDialog;
/**
 * 设置界面
 * 我的-设置-界面
 */
public class SetActivity extends CustomBaseActivity implements View.OnClickListener {
public class SetActivity extends CustomBaseActivity {
    private ActivitySetBinding viewBinding;
@@ -26,6 +40,8 @@
    @Override
    public void onBindView(Bundle savedInstanceState) {
        setNotificationBarBackgroundColor(CustomColor.white);
        setStatusBarTextColor();
        //初始化
        initView();
        //初始化界面监听器
@@ -34,41 +50,96 @@
    }
    private void initEvent() {
        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(this);
        viewBinding.outTv.setOnClickListener(this);
        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
        //多语言
        viewBinding.setLanguageIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(languageSelectionActivity.class);
            }
        });
        //账号与安全
        viewBinding.setAccountSecurityIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(AccountAndSecurityActivity.class);
            }
        });
        //温度单位
        viewBinding.setTemperatureUnitIl.getRoot().setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(TemperatureUnitActivity.class);
            }
        });
        //退出登录
        viewBinding.outTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                logoutRequest();
            }
        });
    }
    private void initView() {
        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setText(R.string.me_set);
        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C));
        viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C, null));
        viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setVisibility(View.VISIBLE);
        viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF));
        viewBinding.setNicknameIl.sllLlRlNameTv.setText(R.string.set_nickname);
        viewBinding.setChangePasswordIl.sllLlRlNameTv.setText(R.string.home_login_修改密码);
        viewBinding.setCloseAccountIl.sllLlRlNameTv.setText(R.string.set_注销账号);
        viewBinding.setMesIl.sllLlRlTitleTv.setText(R.string.set_消息设置);
        viewBinding.setPushMsgIl.sllLlRlNameTv.setText(R.string.set_推送消息);
        viewBinding.setCallMsgIl.sllLlRlNameTv.setText(R.string.set_报警消息);
        viewBinding.setGeneralMsgIl.sllLlRlTitleTv.setText(R.string.set_通用设置);
        viewBinding.setMultiLanguageIl.sllLlRlNameTv.setText(R.string.set_多语言);
        viewBinding.setDataCenterIl.sllLlRlNameTv.setText(R.string.set_数据中心);
        viewBinding.setPrivacyIl.sllLlRlTitleTv.setText(R.string.set_privacy);
        viewBinding.setSystemAuthorizationIl.sllLlRlNameTv.setText(R.string.set_系统权限管理);
        viewBinding.setShareIl.sllLlRlNameTv.setText(R.string.set_第三方信息共享清单);
//        viewBinding.setPushMsgIl.sllLlRlRightIconIv.setLayoutParams(new RelativeLayout.LayoutParams(57, 31));
        viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null));
        viewBinding.setLanguageIl.sllLlRlNameTv.setText(R.string.set_multilingual);
        viewBinding.setAccountSecurityIl.sllLlRlNameTv.setText(R.string.set_account_security);
        viewBinding.setTemperatureUnitIl.sllLlRlNameTv.setText(R.string.set_temperature_unit);
    }
    /**
     * 修改用户昵称
     */
    private void changedNickname() {
        if (UserConfigManage.getInstance().isBAccount()) {
            //todo B端不支持更改昵称
        } else {
            ConfirmationInputDialog confirmationInputDialog = new ConfirmationInputDialog(_mActivity);
            confirmationInputDialog.setTitle(getString(R.string.set_nickname_modification));
            confirmationInputDialog.setEditContent(UserConfigManage.getInstance().getUserName());
            confirmationInputDialog.show();
    @Override
    public void onClick(View v) {
        if (v.getId() == viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.getId()) {
            finish();
        } else if (v.getId() == viewBinding.outTv.getId()) {
            logoutRequest();
            confirmationInputDialog.setYesOnclickListener(new ConfirmationInputDialog.onYesOnclickListener() {
                @Override
                public void Confirm(String str) {
                    HdlAccountLogic.getInstance().updateMemberInfo_C("", str, "", "", "", "", new CloudCallBeak<Boolean>() {
                        @Override
                        public void onSuccess(Boolean obj) {
                            UserConfigManage.getInstance().setUserName(str);
                            UserConfigManage.getInstance().Save();
                            HdlThreadLogic.tipFlashingBox(_mActivity, true, getString(R.string.home_login_change_name_succeed), 0);
                        }
                        @Override
                        public void onFailure(HDLException e) {
                            HdlThreadLogic.tipFlashingBox(_mActivity, false, e.getMessage(), e.getCode());
                        }
                    });
                }
            });
            confirmationInputDialog.setNoOnclickListener(new ConfirmationInputDialog.onNoOnclickListener() {
                @Override
                public void Cancel() {
                    confirmationInputDialog.dismiss();
                }
            });
        }
    }
    /**
     * 退出登录请求的方法
     */