From 73919e36e6c84a665a2c4352fa3b22d1b2e9e6bb Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期二, 18 六月 2024 13:08:19 +0800
Subject: [PATCH] 2024年06月18日13:08:14

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java |  142 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 138 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
index 8569903..89cc4b0 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
@@ -1,10 +1,12 @@
 package com.hdl.photovoltaic.other;
 
+import android.app.Activity;
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.os.SystemClock;
 import android.text.TextUtils;
 import android.view.View;
+import android.view.inputmethod.InputMethodManager;
 import android.widget.ImageView;
 import android.widget.TextView;
 
@@ -14,9 +16,15 @@
 import com.google.zxing.common.BitMatrix;
 import com.google.zxing.qrcode.QRCodeWriter;
 import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
+import com.hdl.photovoltaic.config.ConstantManage;
 import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
+import com.hdl.photovoltaic.enums.LowerTagType;
+import com.hdl.photovoltaic.enums.UnitType;
 import com.hdl.photovoltaic.utils.GlideUtils;
+import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
 
+import org.greenrobot.eventbus.EventBus;
 import org.json.JSONObject;
 
 import java.io.InputStream;
@@ -33,6 +41,12 @@
 public class HdlCommonLogic {
 
     private static volatile HdlCommonLogic sHdlCommonLogic;
+
+
+    /**
+     * 妯″潡绫诲瀷锛堥椤碉紝鐢电珯锛屾秷鎭紝鎴戠殑锛�
+     */
+    public static LowerTagType lowerTagType = LowerTagType.home;
 
 
     /**
@@ -54,19 +68,67 @@
 
     public static String getConvertDoubleUnit(String value) {
         if (TextUtils.isEmpty(value)) {
-            return HdlDeviceLogic.noValue ;
+            return UnitType.noValue;
         }
         BigDecimal formattedValue = getBigDecimal(value);
-        return formattedValue.toString() ;
+        return formattedValue.toString();
 
     }
 
     public static String getConvertDoubleUnit(int value) {
         if (value == 0) {
-            return HdlDeviceLogic.noValue ;
+            return UnitType.noValue;
         }
         BigDecimal formattedValue = getBigDecimal(value + "");
-        return formattedValue.toString() ;
+        return formattedValue.toString();
+    }
+
+
+    /**
+     * @param value 鍊�
+     * @param unit  渚嬪:UnitType.kWh
+     * @return 甯﹀崟浣嶅�艰繑鍥�
+     */
+    public static String getConvertDoubleUnit(String value, String unit) {
+        if (TextUtils.isEmpty(value)) {
+            return UnitType.noValue + unit;
+        }
+        if (unit.equals(UnitType.kW)) {
+            return divideByOneThousandAndFormat(value).toString() + unit;
+        }
+        return getBigDecimal(value).toString() + unit;
+
+    }
+
+    /**
+     * @param value     鍊�
+     * @param unitValue 渚嬪:UnitType.kWh
+     * @param isUnit    true琛ㄧず鏈夊崟浣嶈繑鍥�
+     * @return 甯﹀崟浣嶅�艰繑鍥�
+     */
+    public static String getConvertDoubleUnit(String value, String unitValue, boolean isUnit) {
+        if (TextUtils.isEmpty(value)) {
+            return UnitType.noValue + (isUnit ? unitValue : "");
+        }
+        if (unitValue.equals(UnitType.kW)) {
+            return divideByOneThousandAndFormat(value).toString() + (isUnit ? unitValue : "");
+        }
+        return getBigDecimal(value).toString() + (isUnit ? unitValue : "");
+
+    }
+
+
+    /**
+     * @param value 鍊�
+     * @param unit  渚嬪:UnitType.kWh
+     * @return 甯﹀崟浣嶅�艰繑鍥�
+     */
+    public static String getConvertDoubleUnit(int value, String unit) {
+        if (value == 0) {
+            return UnitType.noValue + unit;
+        }
+        BigDecimal formattedValue = getBigDecimal(value + "");
+        return formattedValue.toString() + unit;
     }
 
 
@@ -81,6 +143,18 @@
         }
         double doubleValue = Double.parseDouble(value);
         return BigDecimal.valueOf(doubleValue).setScale(2, RoundingMode.HALF_UP);
+    }
+
+    /**
+     * 闄や互涓�鍗冨拰鏍煎紡
+     *
+     * @param value 鍊�
+     * @return BigDecimal
+     */
+    public static BigDecimal divideByOneThousandAndFormat(String value) {
+        double doubleValue = Double.parseDouble(value);
+        BigDecimal bigDecimal = new BigDecimal(doubleValue);
+        return bigDecimal.divide(new BigDecimal(1000), 2, RoundingMode.HALF_EVEN);
     }
 
 
@@ -146,6 +220,8 @@
         }
     }
 
+
+
     /**
      * 娌℃湁鏁版嵁鐣岄潰鐨勬牱寮�
      *
@@ -166,4 +242,62 @@
     }
 
 
+    /**
+     * 鍙戝竷EventBus绮樻�т簨浠�
+     * <p>
+     * 娉ㄦ剰:瑕佸彇娑堢矘鎬т簨浠禘ventBus.getDefault().removeStickyEvent(eventBus);
+     *
+     * @param topic 涓婚
+     * @param type  浜嬩欢
+     */
+    public void postEventBusSticky(String topic, String type) {
+        BaseEventBus baseEventBus = new BaseEventBus();
+        baseEventBus.setTopic(topic);
+        baseEventBus.setType(type);
+        EventBus.getDefault().postSticky(baseEventBus);
+    }
+
+    /**
+     * 鍙戝竷EventBus绮樻�т簨浠�
+     * <p>
+     * 娉ㄦ剰:瑕佸彇娑堢矘鎬т簨浠禘ventBus.getDefault().removeStickyEvent(eventBus);
+     *
+     * @param topic 涓婚
+     * @param type  浜嬩欢
+     */
+    public void postEventBusSticky(String topic, String type, Object o) {
+        BaseEventBus baseEventBus = new BaseEventBus();
+        baseEventBus.setTopic(topic);
+        baseEventBus.setType(type);
+        baseEventBus.setData(o);
+        EventBus.getDefault().postSticky(baseEventBus);
+    }
+
+    /**
+     * 鍙戝竷EventBus浜嬩欢
+     *
+     * @param topic 涓婚
+     * @param type  浜嬩欢
+     */
+    public void postEventBus(String topic, String type) {
+        BaseEventBus baseEventBus = new BaseEventBus();
+        baseEventBus.setTopic(topic);
+        baseEventBus.setType(type);
+        EventBus.getDefault().post(baseEventBus);
+    }
+
+    /**
+     * 鍙戝竷EventBus浜嬩欢
+     *
+     * @param topic 涓婚
+     * @param type  浜嬩欢
+     */
+    public void postEventBus(String topic, String type, Object o) {
+        BaseEventBus baseEventBus = new BaseEventBus();
+        baseEventBus.setTopic(topic);
+        baseEventBus.setType(type);
+        baseEventBus.setData(o);
+        EventBus.getDefault().post(baseEventBus);
+    }
+
 }

--
Gitblit v1.8.0