From cd16f8ff358d41af50307318aa4e420e1d608086 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期一, 01 七月 2024 16:49:40 +0800
Subject: [PATCH] 2024年07月01日16:49:23
---
app/src/main/java/com/hdl/photovoltaic/ui/me/MeFragment.java | 198 ++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 163 insertions(+), 35 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/MeFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/MeFragment.java
index 1574548..40f0b63 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/MeFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/me/MeFragment.java
@@ -2,24 +2,40 @@
import android.content.Intent;
import android.os.Bundle;
+import android.text.TextUtils;
import android.view.View;
import androidx.annotation.Nullable;
-import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
+import com.alibaba.fastjson.JSONObject;
+import com.google.gson.Gson;
import com.hdl.linkpm.sdk.core.exception.HDLException;
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.FragmentMeBinding;
+import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
+import com.hdl.photovoltaic.enums.UserRightType;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.other.HdlAccountLogic;
+import com.hdl.photovoltaic.other.HdlLogLogic;
+import com.hdl.photovoltaic.other.HdlMemberLogic;
+import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.bean.BUserInfo;
import com.hdl.photovoltaic.ui.bean.CUserInfo;
+import com.hdl.photovoltaic.ui.bean.UserRightTypeBean;
import com.hdl.photovoltaic.ui.test.TestMainActivity;
+import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.utils.GlideUtils;
+import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
/**
* 鎴戠殑-鐣岄潰
@@ -45,6 +61,7 @@
initEvent();
//鍒濆鍖栨暟鎹�
initData();
+
}
/**
@@ -52,11 +69,13 @@
*/
private void initData() {
// showLoading();
- if (UserConfigManage.getInstance().isBAccount()) {
- this.getBUserInfo();
- } else {
- this.getCMemberInfo();
- }
+// if (UserConfigManage.getInstance().isBAccount()) {
+// this.getBUserInfo();
+// } else {
+// this.getCMemberInfo();
+// }
+ //鍥犱负uni閭h竟闇�瑕侊紝鍚姩鐨勬椂鍊欏氨璇诲彇鍟�
+ this.getResidenceTemperatureUnit();
}
@@ -99,7 +118,7 @@
// setMemberHeadIcon(cUserInfo.getMemberHeadIcon());
//鏇存柊鐢ㄦ埛鍚嶇О
setMemberName(cUserInfo.getMemberName());
- HdlThreadLogic.toast(_mActivity, e);
+// HdlThreadLogic.toast(_mActivity, e);
}
});
}
@@ -109,6 +128,8 @@
@Override
public void onFailure(HDLException e) {
+ //鎬曞叾瀹冧笉鍒ゆ柇null
+ mC_UserInfo = new CUserInfo();
// hideLoading();
HdlThreadLogic.toast(_mActivity, e);
}
@@ -125,7 +146,6 @@
public void onSuccess(BUserInfo bUserInfo) {
mB_UserInfo = bUserInfo;
// hideLoading();
-
setMemberName(bUserInfo.getUserName());
}
@@ -146,10 +166,28 @@
viewBinding.fragmentMeIconParentCl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- Intent intent = new Intent();
- intent.setClass(_mActivity, PersonalDataActivity.class);
- intent.putExtra("memberHeadIcon", mC_UserInfo.getMemberHeadIcon());
- startActivityForResult(intent, 10);
+
+ if (UserConfigManage.getInstance().isBAccount()) {
+ Intent intent = new Intent();
+ intent.setClass(_mActivity, BPersonalDataActivity.class);
+ startActivity(intent);
+ } else {
+ Intent intent = new Intent();
+ intent.setClass(_mActivity, CPersonalDataActivity.class);
+ if (mC_UserInfo == null) {
+ mC_UserInfo = new CUserInfo();
+ }
+ intent.putExtra("memberHeadIcon", mC_UserInfo.getMemberHeadIcon());
+ startActivityForResult(intent, 10);
+ }
+ }
+ });
+ //鍛樺伐绠$悊锛堜富璐﹀彿鎵嶆樉绀猴級
+ viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineRightIconClickIv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ String path = HDLUniMP.UNI_EVENT_OPEN_MINE_MINESTAFFMANAGER;
+ HdlUniLogic.getInstance().openUniMP(path, null);
}
});
viewBinding.fragmentMeLineSetIl.fragmentMeLineRightIconClickIv.setOnClickListener(new View.OnClickListener() {
@@ -166,10 +204,15 @@
startActivity(AsRegardsActivity.class);
}
});
- viewBinding.toolbarTopFragmentMeRl.topTitleTv.setOnClickListener(new View.OnClickListener() {
+ final int[] count = {0};
+ viewBinding.meTitleTv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- startActivity(TestMainActivity.class);
+ count[0] = count[0] + 1;
+ if (count[0] > 3) {
+ count[0] = 0;
+ startActivity(TestMainActivity.class);
+ }
}
});
@@ -181,35 +224,30 @@
*/
private void initView() {
-
- viewBinding.toolbarTopFragmentMeRl.topTitleTv.setText(R.string.me);
-// viewBinding.toolbarTopFragmentMeRl.topMoreIv.setVisibility(View.VISIBLE);
-// viewBinding.toolbarTopFragmentMeRl.topMoreIv.setImageResource(R.drawable.message);
-
- viewBinding.fragmentMeLineMessageCenterIl.fragmentMeLineLeftIconIv.setImageResource(R.drawable.message_center);
- viewBinding.fragmentMeLineMessageCenterIl.fragmentMeLineTitleIv.setText(R.string.set_message_center);
- viewBinding.fragmentMeLineMessageCenterIl.fragmentMeLineV.setVisibility(View.VISIBLE);
-
viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineLeftIconIv.setImageResource(R.drawable.user_management);
- viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineTitleIv.setText(R.string.set_user_management);
- viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineV.setVisibility(View.VISIBLE);
-
- viewBinding.fragmentMeLineSetIl.fragmentMeLineLeftIconIv.setImageResource(R.drawable.set);
- viewBinding.fragmentMeLineSetIl.fragmentMeLineTitleIv.setText(R.string.me_set);
- viewBinding.fragmentMeLineSetIl.fragmentMeLineV.setVisibility(View.VISIBLE);
+ viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineTitleIv.setText(R.string.staff_management);
+// viewBinding.fragmentMeLineUserManagementIl.fragmentMeLineV.setVisibility(View.VISIBLE);
viewBinding.fragmentMeLineAsregardsIl.fragmentMeLineLeftIconIv.setImageResource(R.drawable.asregards);
viewBinding.fragmentMeLineAsregardsIl.fragmentMeLineTitleIv.setText(R.string.me_regard);
+// viewBinding.fragmentMeLineAsregardsIl.fragmentMeLineV.setVisibility(View.VISIBLE);
- if (!UserConfigManage.getInstance().isBAccount()) {
- viewBinding.fragmentMeLineMessageCenterIl.getRoot().setVisibility(View.GONE);
- viewBinding.fragmentMeLineUserManagementIl.getRoot().setVisibility(View.GONE);
- }
+ viewBinding.fragmentMeLineSetIl.fragmentMeLineLeftIconIv.setImageResource(R.drawable.set);
+ viewBinding.fragmentMeLineSetIl.fragmentMeLineTitleIv.setText(R.string.me_set);
+
+
+ setMemberName(UserConfigManage.getInstance().getUserName());
+// setMemberHeadIcon(UserConfigManage.getInstance().getUserImageUrl());
+
}
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
+ if (UserConfigManage.getInstance().isBAccount()) {
+ //B绔笉闇�瑕佹洿鏂�
+ return;
+ }
if (requestCode == 10 && resultCode == 10) {
if (data != null) {
String iconUrl = data.getStringExtra("memberHeadIcon");
@@ -227,10 +265,14 @@
* 鏄剧ず鐢ㄦ埛澶村儚
*/
private void setMemberHeadIcon(String memberHeadIconUrl) {
+ if (TextUtils.isEmpty(memberHeadIconUrl)) {
+ return;
+ }
if (mC_UserInfo != null) {
mC_UserInfo.setMemberHeadIcon(memberHeadIconUrl);
}
- GlideUtils.getRoundedCornersImage(_mActivity, memberHeadIconUrl, viewBinding.fragmentMeIconIv, new RoundedCorners(4));
+ GlideUtils.getCircleCropImage(_mActivity, memberHeadIconUrl, viewBinding.fragmentMeIconIv, true);
+// GlideUtils.getRoundedCornersImage(_mActivity, memberHeadIconUrl, viewBinding.fragmentMeIconIv, new RoundedCorners(4), true);
}
@@ -238,9 +280,95 @@
* 鏄剧ず鐢ㄦ埛鍚嶇О
*/
private void setMemberName(String userName) {
- viewBinding.fragmentMeUserNameIv.setText(userName);
+ if (TextUtils.isEmpty(userName)) {
+ return;
+ }
+ viewBinding.fragmentMeUserNameTv.setText(userName);
UserConfigManage.getInstance().setUserName(userName);
UserConfigManage.getInstance().Save();
}
+
+ @Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
+ public void onEventMessage(BaseEventBus eventBus) {
+ super.onEventMessage(eventBus);
+ if (eventBus == null) {
+ return;
+ }
+ //鎺ユ敹澶栭儴鐐瑰嚮浜嬩欢
+ if (eventBus.getTopic().equals(ConstantManage.homepage_title_tab_switch)) {
+ if (eventBus.getType().equals(HomepageTitleTabSwitch.me.toString())) {
+ // 鍙栨秷绮樻�т簨浠�
+ EventBus.getDefault().removeStickyEvent(eventBus);
+ //璇诲彇澶村儚
+ if (UserConfigManage.getInstance().isBAccount()) {
+ this.getBUserInfo();
+ } else {
+ this.getCMemberInfo();
+ }
+ getUserRightType();
+
+ }
+
+ }
+
+ }
+
+ /**
+ * 鍛樺伐鏉冮檺绫诲瀷(B绔�)
+ * MANAGER : 鍏徃绠$悊鍛�
+ * USER 锛� 鏅�氬憳宸�
+ */
+ private void getUserRightType() {
+ HdlMemberLogic.getInstance().getUserRightType(new CloudCallBeak<UserRightTypeBean>() {
+ @Override
+ public void onSuccess(UserRightTypeBean obj) {
+// if (obj.getUserRightType().equals(UserRightType.MANAGER)) {
+// viewBinding.fragmentMeLineUserManagementIl.getRoot().setVisibility(View.VISIBLE);
+// } else {
+// viewBinding.fragmentMeLineUserManagementIl.getRoot().setVisibility(View.GONE);
+// }
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+
+ }
+ });
+ }
+
+ /**
+ * 鑾峰彇鐢ㄦ埛鑷畾涔夐厤缃俯搴﹀崟浣嶈鎯�(app鍚姩鐨勬椂鍊欒鑾峰彇)
+ */
+ private void getResidenceTemperatureUnit() {
+ HdlResidenceLogic.getInstance().getResidenceTemperatureUnit(new CloudCallBeak<String>() {
+ @Override
+ public void onSuccess(String json) {
+ try {
+ if (TextUtils.isEmpty(json) || json.equals("{}")) {
+ return;
+ }
+ JSONObject jsonObject = new Gson().fromJson(json, JSONObject.class);
+ if (jsonObject.containsKey("tempType")) {
+ String unit = jsonObject.getString("tempType");
+ if (unit.contains("C")) {
+ unit = "鈩�";
+ } else {
+ unit = "鈩�";
+ }
+ UserConfigManage.getInstance().setTemperature_unit(unit);
+ UserConfigManage.getInstance().Save();
+ }
+ } catch (Exception ignored) {
+ }
+
+ }
+
+ @Override
+ public void onFailure(HDLException e) {
+ HdlLogLogic.print("鑾峰彇鐢ㄦ埛鑷畾涔夐厤缃俯搴﹀崟浣嶈鎯�--->" + e.getMsg() + "(" + e.getCode() + ")", true);
+// HdlThreadLogic.toast(_mActivity, e);
+ }
+ });
+ }
}
--
Gitblit v1.8.0