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 中添加了金额格式化和水价获取的最佳实践指南
---
generallibrary/src/main/java/com/dayu/general/activity/NewCard2Activity.kt | 37 ++++++++++++++++++++-----------------
1 files changed, 20 insertions(+), 17 deletions(-)
diff --git a/generallibrary/src/main/java/com/dayu/general/activity/NewCard2Activity.kt b/generallibrary/src/main/java/com/dayu/general/activity/NewCard2Activity.kt
index 9b7c268..045f203 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/NewCard2Activity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/NewCard2Activity.kt
@@ -10,6 +10,7 @@
import android.widget.Toast
import androidx.lifecycle.lifecycleScope
import com.dayu.baselibrary.net.subscribers.SubscriberListener
+import com.dayu.baselibrary.utils.MornyUtil
import com.dayu.baselibrary.view.TitleBar.ClickType_LEFT_IMAGE
import com.dayu.general.BaseApplication
import com.dayu.general.R
@@ -24,6 +25,7 @@
import com.dayu.general.net.ApiManager
import com.dayu.general.net.BaseResponse
import com.dayu.general.tool.CardCommon.Companion.USER_CARD_TYPE_1
+import com.dayu.general.tool.CardOperationType
import com.dayu.general.tool.NfcReadHelper
import com.dayu.general.tool.NfcWreatHelper
import com.dayu.general.utils.DateUtils
@@ -67,6 +69,7 @@
companion object {
private const val TAG = "NewCard2Activity"
+ private const val REQUEST_CODE_NFC_WRITE = 1001
}
@@ -308,11 +311,7 @@
// 鑾峰彇宸ユ湰璐�
val cardFeeStr = binding.newCardCardFee.text.toString()
- val cardFee = if (cardFeeStr.isEmpty()) 0.0 else cardFeeStr.toDouble()
-
- // 鏍煎紡鍖栭噾棰濅负涓や綅灏忔暟
- val formattedRechargeAmount = String.format("%.2f", rechargeAmount)
- val formattedCardFee = String.format("%.2f", cardFee)
+ val cardFee = if (cardFeeStr.isEmpty()) 0 else cardFeeStr.toInt()
val remark = binding.newCardRemark.text.toString()
@@ -357,30 +356,26 @@
try {
BaseDaoSingleton.getInstance(this@NewCard2Activity)
.cardRegistrationDao().insert(cardRegistration)
-
- Toast.makeText(
- this@NewCard2Activity,
- "寮�鍗℃垚鍔�",
- Toast.LENGTH_SHORT
- ).show()
setResult(RESULT_OK)
Intent(this@NewCard2Activity, NfcWreatActivity::class.java).apply {
putExtra("cardType", USER_CARD_TYPE_1)
- putExtra("orderId", orderId)
+ putExtra("orderNumber", orderId)
putExtra("cardAddr", cardPhysicalId)
var userCard = UserCard()
- userCard.areaNumber =clientInfo.districtNum
+ userCard.areaNumber = response.content?.cardNum?.substring(0, 12).toString()
userCard.userCode =clientInfo.clientNum
userCard.phoneNumber =clientInfo.phone
- userCard.userCodeNumber = response.content?.cardNum?.toInt()!!
- userCard.projectCode = response.content?.projectNo?.toInt()!!
- userCard.balance = response.content?.balance?.toInt()!!
+ userCard.userCodeNumber = response.content?.cardNum?.substring(12)?.toInt()!!
+ userCard.projectCode = response.content?.projectNo!!
+ userCard.balance = MornyUtil.changeY2F(response.content?.balance)
// userCard.surplusWater = response.content?.surplusWater?.toInt()!!
userCard.waterPrice = response.content?.waterPrice?.toFloat()!!
// userCard.electricPrice = response.content?.electricPrice?.toFloat()!!
userCard.rechargeDate = DateUtils.parseStringToCalendar(response.content?.time)
putExtra("userCard", userCard)
- startActivity(this)
+ putExtra("operationTypeCode", CardOperationType.OpenCard.code)
+ putExtra("cardFee", cardFee)
+ startActivityForResult(this, REQUEST_CODE_NFC_WRITE)
}
} catch (e: Exception) {
CrashReport.postCatchedException(e)
@@ -498,4 +493,12 @@
}
}
+ override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
+ super.onActivityResult(requestCode, resultCode, data)
+ if (requestCode == REQUEST_CODE_NFC_WRITE && resultCode == RESULT_OK) {
+ // 鍐欏崱鎴愬姛锛屽叧闂綋鍓岮ctivity
+ finish()
+ }
+ }
+
}
\ No newline at end of file
--
Gitblit v1.8.0