From 5dfed3cf524a2bcacc19643c9af6d9fedc182420 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 06 八月 2024 09:03:12 +0800 Subject: [PATCH] 2024年08月06日09:03:10 --- app/src/main/java/com/hdl/photovoltaic/ui/me/TemperatureUnitActivity.java | 75 ++++++++++++++++++++++++++++++++++--- 1 files changed, 69 insertions(+), 6 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 5ecd309..7550b57 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 @@ -5,12 +5,19 @@ import android.os.Bundle; import android.view.View; +import com.google.gson.JsonObject; +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.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.other.HdlUniLogic; import com.hdl.photovoltaic.ui.adapter.LanguageAdapter; +import com.hdl.photovoltaic.uni.HDLUniMP; import java.util.ArrayList; import java.util.List; @@ -24,6 +31,7 @@ private LanguageAdapter languageAdapter; private List<LanguageAdapter.ItemData> mList; + @Override public Object getContentView() { @@ -45,6 +53,7 @@ } private void readData() { + mList = new ArrayList<>(); LanguageAdapter.ItemData c = new LanguageAdapter.ItemData(); c.setState(false); @@ -56,7 +65,6 @@ f.setTitle(getString(R.string.set_f)); f.setUnit("鈩�"); 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())) { @@ -65,14 +73,15 @@ } } + } private void initEvent() { - viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setOnClickListener(new View.OnClickListener() { + viewBinding.toolbarTopFragmentHouseListRl.topBackLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - setResult(40); + backPressedData(); finish(); } }); @@ -90,8 +99,8 @@ } mList.get(position).setState(true); languageAdapter.notifyDataSetChanged(); - UserConfigManage.getInstance().setTemperature_unit(itemData.getUnit()); - UserConfigManage.getInstance().Save(); + setResidenceTemperatureUnit(itemData.getUnit()); + } catch (Exception e) { HdlLogLogic.print(e.getMessage(), false); } @@ -104,11 +113,65 @@ private void initView() { viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setText(R.string.set_temperature_unit); viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C, null)); - viewBinding.toolbarTopFragmentHouseListRl.topBackBtn.setVisibility(View.VISIBLE); + viewBinding.toolbarTopFragmentHouseListRl.topBackLl.setVisibility(View.VISIBLE); viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null)); LinearLayoutManager linearLayout = new LinearLayoutManager(_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); + } + }); + } + + /** + * 鐗╃悊鎸夐敭杩斿洖浜嬩欢 + */ + @Override + public void onBackPressed() { + backPressedData(); + super.onBackPressed(); + } + + /** + * 杩斿洖缁欎笂涓�绾х晫闈㈡暟鎹� + */ + private void backPressedData() { + setResult(40); + //閫氱煡缁欏皬绋嬪簭鏇存柊娓╁害鍗曚綅 + HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); + JsonObject jsonObject = new JsonObject(); + jsonObject.addProperty("temperature_unit", UserConfigManage.getInstance().getTemperature_unit()); + uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_REFRESH_TEMPERATURE); + uniCallBackBaseBean.setData(jsonObject); + HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean); + } + + } \ No newline at end of file -- Gitblit v1.8.0