From ecaff4ffd05c630ac32e49daf3b9b8904052b0fe Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 29 十二月 2023 15:16:07 +0800
Subject: [PATCH] 备份一下

---
 app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java |   81 ++++++++++++++++++++++++++++++----------
 1 files changed, 61 insertions(+), 20 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java
index a51d6ef..680757a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java
@@ -1,19 +1,21 @@
 package com.hdl.photovoltaic.ui.me;
 
-import androidx.appcompat.app.AppCompatActivity;
 import androidx.recyclerview.widget.LinearLayoutManager;
 
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.view.View;
 
+import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseActivity;
 import com.hdl.photovoltaic.config.UserConfigManage;
-import com.hdl.photovoltaic.databinding.ActivityAccountAndSecurityBinding;
 import com.hdl.photovoltaic.databinding.ActivityTemperatureUnitBinding;
+import com.hdl.photovoltaic.listener.CloudCallBeak;
+import com.hdl.photovoltaic.other.HdlLogLogic;
+import com.hdl.photovoltaic.other.HdlResidenceLogic;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.ui.adapter.LanguageAdapter;
-import com.hdl.photovoltaic.utils.AppManagerUtils;
-import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -26,7 +28,8 @@
     private ActivityTemperatureUnitBinding viewBinding;
     private LanguageAdapter languageAdapter;
 
-    private List<LanguageAdapter.ItemData> list;
+    private List<LanguageAdapter.ItemData> mList;
+
 
     @Override
     public Object getContentView() {
@@ -48,25 +51,26 @@
     }
 
     private void readData() {
-        list = new ArrayList<>();
+
+        mList = new ArrayList<>();
         LanguageAdapter.ItemData c = new LanguageAdapter.ItemData();
         c.setState(false);
         c.setTitle(getString(R.string.set_c));
         c.setUnit("鈩�");
-        list.add(c);
+        mList.add(c);
         LanguageAdapter.ItemData f = new LanguageAdapter.ItemData();
         f.setState(false);
         f.setTitle(getString(R.string.set_f));
         f.setUnit("鈩�");
-        list.add(f);
-
-        for (int i = 0; i < list.size(); i++) {
-            LanguageAdapter.ItemData itemData = list.get(i);
+        mList.add(f);
+        for (int i = 0; i < mList.size(); i++) {
+            LanguageAdapter.ItemData itemData = mList.get(i);
             if (itemData.getUnit().equals(UserConfigManage.getInstance().getTemperature_unit())) {
                 //鍒濆鍖栦箣鍓嶇姸鎬�
                 itemData.setState(true);
             }
         }
+
 
     }
 
@@ -75,6 +79,7 @@
         viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
+                setResult(40);
                 finish();
             }
         });
@@ -82,16 +87,21 @@
         languageAdapter.setNoOnclickListener(new LanguageAdapter.OnclickListener() {
             @Override
             public void onClick(int position, LanguageAdapter.ItemData itemData) {
+                try {
+                    if (position < 0 || position > mList.size()) {
+                        return;
+                    }
+                    for (int i = 0; i < mList.size(); i++) {
+                        LanguageAdapter.ItemData data = mList.get(i);
+                        data.setState(false);
+                    }
+                    mList.get(position).setState(true);
+                    languageAdapter.notifyDataSetChanged();
+                    setResidenceTemperatureUnit(itemData.getUnit());
 
-
-                for (int i = 0; i < list.size(); i++) {
-                    LanguageAdapter.ItemData data = list.get(i);
-                    data.setState(false);
+                } catch (Exception e) {
+                    HdlLogLogic.print(e.getMessage(), false);
                 }
-                list.get(position).setState(true);
-                languageAdapter.notifyDataSetChanged();
-                UserConfigManage.getInstance().setTemperature_unit(itemData.getUnit());
-                UserConfigManage.getInstance().Save();
             }
         });
 
@@ -104,8 +114,39 @@
         viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setVisibility(View.VISIBLE);
         viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null));
         LinearLayoutManager linearLayout = new LinearLayoutManager(_mActivity);
-        languageAdapter = new LanguageAdapter(this.list, _mActivity);
+        languageAdapter = new LanguageAdapter(this.mList, _mActivity);
         viewBinding.languageRc.setLayoutManager(linearLayout);
         viewBinding.languageRc.setAdapter(languageAdapter);
     }
+
+    /**
+     * 閰嶇疆浣忓畢娓╁害鍗曚綅
+     *
+     * @param unit 鍗曚綅
+     */
+    private void setResidenceTemperatureUnit(String unit) {
+        if (UserConfigManage.getInstance().getTemperature_unit().equals(unit)) {
+            return;
+        }
+        String tempType = "C";
+        if (unit.contains("鈩�")) {
+            tempType = "C";
+        } else {
+            tempType = "F";
+        }
+        HdlResidenceLogic.getInstance().setResidenceTemperatureUnit(tempType, new CloudCallBeak<Boolean>() {
+            @Override
+            public void onSuccess(Boolean obj) {
+                UserConfigManage.getInstance().setTemperature_unit(unit);
+                UserConfigManage.getInstance().Save();
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                HdlThreadLogic.toast(_mActivity, e);
+            }
+        });
+    }
+
+
 }
\ No newline at end of file

--
Gitblit v1.8.0