From 3ec7de773bff5582411c6f1f659d35cf8fb1734a Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 16 七月 2024 15:13:51 +0800 Subject: [PATCH] Merge branch 'feature/v1.4.1' --- app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java | 203 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 201 insertions(+), 2 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 00b8645..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,15 +1,38 @@ 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; -import com.dcloud.zxing2.WriterException; -import com.google.gson.Gson; +import com.google.gson.JsonObject; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; 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; +import java.io.OutputStream; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.net.InetSocketAddress; +import java.net.Socket; import java.util.Hashtable; /** @@ -18,6 +41,12 @@ public class HdlCommonLogic { private static volatile HdlCommonLogic sHdlCommonLogic; + + + /** + * 妯″潡绫诲瀷锛堥椤碉紝鐢电珯锛屾秷鎭紝鎴戠殑锛� + */ + public static LowerTagType lowerTagType = LowerTagType.home; /** @@ -35,6 +64,97 @@ } return sHdlCommonLogic; + } + + public static String getConvertDoubleUnit(String value) { + if (TextUtils.isEmpty(value)) { + return UnitType.noValue; + } + BigDecimal formattedValue = getBigDecimal(value); + return formattedValue.toString(); + + } + + public static String getConvertDoubleUnit(int value) { + if (value == 0) { + return UnitType.noValue; + } + BigDecimal formattedValue = getBigDecimal(value + ""); + 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; + } + + + public static String convertString(Object value) { + return String.valueOf(value); + } + + + public static BigDecimal getBigDecimal(String value) { + if (TextUtils.isEmpty(value)) { + return new BigDecimal(0); + } + 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); } @@ -101,4 +221,83 @@ } + + /** + * 娌℃湁鏁版嵁鐣岄潰鐨勬牱寮� + * + * @param is_data true鏈夋暟鎹紝false娌℃暟鎹� + * @param parent 鐖跺鍣� + * @param imageView 鏄剧ずgif鎺т欢 + * @param str 鎻忚堪鏂囨湰 + */ + public void nullDataUpdateUi(Context mContext, View parent, ImageView imageView, TextView textView, String str, boolean is_data) { + if (is_data) { + parent.setVisibility(View.GONE); + } else { + parent.setVisibility(View.VISIBLE); + GlideUtils.getDrawableGifAnimation(mContext, imageView); + textView.setText(str); + + } + } + + + /** + * 鍙戝竷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