From a8751388c9a86ae95714a15279994d8aa426a26d Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 13 六月 2025 14:59:02 +0800
Subject: [PATCH] feat(generallibrary): 优化充值功能并添加水价获取- 在 activity_recharge_detail.xml 中移除了不必要的 bold 样式- 在 EditText 中添加了金额输入限制(数字和小数点)- 在 BaseApplication 中添加了水价信息存储 - 在 MainActivity 中实现了延时获取水价的功能- 优化了 RechargeDetailActivity 中的水价检查和使用逻辑 - 在 README.md 中添加了金额格式化和水价获取的最佳实践指南
---
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java | 31 +++++++++++++++++--------------
1 files changed, 17 insertions(+), 14 deletions(-)
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
index 8446d9a..f6aa469 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
@@ -1,8 +1,8 @@
package com.dayu.qihealonelibrary.card;
import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
import java.io.Serializable;
import java.util.List;
@@ -14,7 +14,7 @@
* 澶囨敞锛氱數閲忓崟浠峰崱
*/
public class ElectricPriceCard extends BaseCard implements Serializable {
- public String cardType = MyCommon.ELECTRIC_PRICE;
+ public String cardType = CardCommon.ELECTRIC_PRICE;
public Float electricPrice;// 鐢甸噺鍗曚环(浣�)鍗曚綅鏄厓锛�3浣嶅皬鏁扮偣
public Float getElectricPrice() {
@@ -25,18 +25,17 @@
this.electricPrice = electricPrice;
}
- public byte[] toByte(AppDatabase appDatabase) {
- setCardData(appDatabase, cardType);
+ public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+ setCardData(QHAloneAppDatabase, cardType);
Zero zero = new Zero();
return zero.toByte();
}
-
- public static ElectricPriceCard getBean(List<byte[]> data){
- ElectricPriceCard regionCard=new ElectricPriceCard();
- byte[] zero=data.get(0);
- regionCard.cardType= HexUtil.byteToHex(zero[0]);
+ public static ElectricPriceCard getBean(List<byte[]> data) {
+ ElectricPriceCard regionCard = new ElectricPriceCard();
+ byte[] zero = data.get(0);
+ regionCard.cardType = HexUtil.byteToHex(zero[0]);
byte[] cardDataByte = new byte[4];
System.arraycopy(zero, 1, cardDataByte, 0, cardDataByte.length);
@@ -45,7 +44,7 @@
byte[] electricPriceByte = new byte[4];
System.arraycopy(zero, 5, electricPriceByte, 0, electricPriceByte.length);
- regionCard.electricPrice = HexUtil.bytesToFloat(electricPriceByte);
+ regionCard.electricPrice = HexUtil.hexToFloatLowHigh(electricPriceByte);
return regionCard;
@@ -55,17 +54,21 @@
/**
* 绗�1鎵囧尯0鍧� 瀛樺偍鐨勬暟鎹�
*/
- public class Zero {
+ public class Zero {
public byte[] toByte() {
byte[] data = new byte[16];
data[0] = HexUtil.hexToByte(cardType);
- byte[] regionBytes = HexUtil.hexToByteArray(cardData);
+ byte[] regionBytes = new byte[4];
+ byte[] regionDatas = HexUtil.hexToByteArray(cardData);
+ System.arraycopy(regionDatas, 0, regionBytes, 0, regionDatas.length);
if (regionBytes != null) {
System.arraycopy(regionBytes, 0, data, 1, regionBytes.length);
}
- byte[] controllerCodelBytes = HexUtil.folatToByte(electricPrice);
+ byte[] controllerCodelBytes = new byte[4];
+ byte[] controllerCodelDatas = HexUtil.hexToByteArray(HexUtil.floatToHexLowHigh(electricPrice));
+ System.arraycopy(controllerCodelDatas, 0, controllerCodelBytes, 0, controllerCodelDatas.length);
if (controllerCodelBytes != null) {
System.arraycopy(controllerCodelBytes, 0, data, 5, controllerCodelBytes.length);
}
--
Gitblit v1.8.0