From 8ad22c47f5d44635618f75e7085743893cdace4c Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期五, 20 六月 2025 14:22:01 +0800 Subject: [PATCH] refactor(generallibrary):重构制卡首页并添加解除挂失功能 --- generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt | 73 +++++++++++++++++++++++++++++++----- 1 files changed, 63 insertions(+), 10 deletions(-) diff --git a/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt b/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt index 3bf4fce..a464809 100644 --- a/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt +++ b/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt @@ -9,17 +9,15 @@ import com.dayu.baselibrary.utils.ToastUtil import com.dayu.general.bean.card.ClearCard import com.dayu.general.bean.card.UserCard -import com.dayu.general.tool.CardCommon -import com.dayu.general.tool.CardOperationType +import com.dayu.general.dao.BaseDaoSingleton import com.dayu.general.databinding.ActivityNfcWriteGeBinding import com.dayu.general.net.ApiManager import com.dayu.general.net.BaseResponse +import com.dayu.general.tool.CardOperationType import com.dayu.general.tool.NfcReadHelper import com.dayu.general.tool.NfcWreatHelper -import com.dayu.general.dao.BaseDaoSingleton import com.tencent.bugly.crashreport.CrashReport import kotlinx.coroutines.launch -import java.lang.StringBuilder /** * @author: zuo @@ -39,6 +37,12 @@ // 閿�鍗$浉鍏充俊鎭� private var refundAmount = 0.0 private var cardBalance = 0.0 + + // 杩旇繕鐩稿叧淇℃伅 + private var returnAmount = 0.0 + + // 琛ユ墸鐩稿叧淇℃伅 + private var deductAmount = 0.0 //璁㈠崟缂栧彿 var orderNumber = "" @@ -70,6 +74,12 @@ // 鑾峰彇閿�鍗$浉鍏充俊鎭� refundAmount = intent?.getDoubleExtra("refundAmount", 0.0) ?: 0.0 cardBalance = intent?.getDoubleExtra("cardBalance", 0.0) ?: 0.0 + + // 鑾峰彇杩旇繕鐩稿叧淇℃伅 + returnAmount = intent?.getDoubleExtra("returnAmount", 0.0) ?: 0.0 + + // 鑾峰彇琛ユ墸鐩稿叧淇℃伅 + deductAmount = intent?.getDoubleExtra("deductAmount", 0.0) ?: 0.0 if (intent?.hasExtra("cardFee") == true) { cardFee = intent?.getIntExtra("cardFee", 0) ?: 0 @@ -144,10 +154,7 @@ if (userCard.balance != 0) { val totalBalanceInYuan = userCard.balance / 100.0 // 杞崲涓哄厓 textData.append( - "鍗″唴鎬讳綑棰濓細" + String.format( - "%.2f", - totalBalanceInYuan - ) + "鍏�" + "鍏呭�煎悗浣欓锛�" + MornyUtil.changeF2Y(userCard.balance)+ "鍏�" ) } @@ -162,8 +169,23 @@ binding?.cardData?.text = textData.toString() } + CardOperationType.ReturnCard -> { + var textData = StringBuilder() + textData.append("杩旇繕\n") + textData.append("鍗″唴浣欓锛�" + MornyUtil.changeF2Y(userCard.balance) + "鍏僜n") + textData.append("杩旇繕閲戦锛�" + returnAmount + "鍏�") + binding?.cardData?.text = textData.toString() + } + + CardOperationType.DeductCard -> { + var textData = StringBuilder() + textData.append("琛ユ墸\n") + textData.append("鍗″唴浣欓锛�" + MornyUtil.changeF2Y(userCard.balance) + "鍏僜n") + textData.append("琛ユ墸閲戦锛�" + deductAmount + "鍏�") + binding?.cardData?.text = textData.toString() + } + CardOperationType.CheckCard -> TODO() - CardOperationType.DeductCard -> TODO() CardOperationType.ReplaceCard -> TODO() null -> TODO() } @@ -245,8 +267,37 @@ }) } + CardOperationType.ReturnCard -> { + nfcWreatHelper.writeUserDataAsync(userCard, object : NFCCallBack { + override fun isSusses(flag: Boolean, msg: String?) { + // 纭繚Toast鍦ㄤ富绾跨▼涓皟鐢� + runOnUiThread { + if (flag) { + postCardData(cardAddr) + } else { + ToastUtil.show("杩旇繕鍐欏崱澶辫触: ${msg ?: "鏈煡閿欒"}") + } + } + } + }) + } + + CardOperationType.DeductCard -> { + nfcWreatHelper.writeUserDataAsync(userCard, object : NFCCallBack { + override fun isSusses(flag: Boolean, msg: String?) { + // 纭繚Toast鍦ㄤ富绾跨▼涓皟鐢� + runOnUiThread { + if (flag) { + postCardData(cardAddr) + } else { + ToastUtil.show("琛ユ墸鍐欏崱澶辫触: ${msg ?: "鏈煡閿欒"}") + } + } + } + }) + } + CardOperationType.CheckCard -> TODO() - CardOperationType.DeductCard -> TODO() CardOperationType.ReplaceCard -> TODO() null -> TODO() } @@ -278,6 +329,8 @@ finish() Intent(this@NfcWreatActivity, CardWriteSuccessActivity::class.java).apply { putExtra("cardNumber", cardNumber) + putExtra("userCard", userCard) + putExtra("operationTypeCode", operationTypeCode) startActivity(this) } } -- Gitblit v1.8.0