From 08bfe3072377b53c60e0952f00c26bce2e5b4bc0 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期三, 18 六月 2025 17:05:55 +0800 Subject: [PATCH] feat(card): 添加卡片返还功能- 新增 CardReturnActivity 用于执行卡片返还操作 - 在 BSCardFragment 中添加返还按钮,跳转到 CardReturnActivity - 在 CardOperationType 中添加 ReturnCard 类型 - 修改 CardReadActivity,优化卡片信息显示逻辑 - 更新 CardWriteSuccessActivity,支持返还成功提示 - 新增 ic_morny_back 图标用于返还操作 --- generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt | 36 ++++++++++++++++++++++++++++++++---- 1 files changed, 32 insertions(+), 4 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..af6c1dc 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,9 @@ // 閿�鍗$浉鍏充俊鎭� private var refundAmount = 0.0 private var cardBalance = 0.0 + + // 杩旇繕鐩稿叧淇℃伅 + private var returnAmount = 0.0 //璁㈠崟缂栧彿 var orderNumber = "" @@ -70,6 +71,9 @@ // 鑾峰彇閿�鍗$浉鍏充俊鎭� refundAmount = intent?.getDoubleExtra("refundAmount", 0.0) ?: 0.0 cardBalance = intent?.getDoubleExtra("cardBalance", 0.0) ?: 0.0 + + // 鑾峰彇杩旇繕鐩稿叧淇℃伅 + returnAmount = intent?.getDoubleExtra("returnAmount", 0.0) ?: 0.0 if (intent?.hasExtra("cardFee") == true) { cardFee = intent?.getIntExtra("cardFee", 0) ?: 0 @@ -162,6 +166,14 @@ 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.CheckCard -> TODO() CardOperationType.DeductCard -> TODO() CardOperationType.ReplaceCard -> TODO() @@ -245,6 +257,21 @@ }) } + 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.CheckCard -> TODO() CardOperationType.DeductCard -> TODO() CardOperationType.ReplaceCard -> TODO() @@ -278,6 +305,7 @@ finish() Intent(this@NfcWreatActivity, CardWriteSuccessActivity::class.java).apply { putExtra("cardNumber", cardNumber) + putExtra("operationTypeCode", operationTypeCode) startActivity(this) } } -- Gitblit v1.8.0