From 98994189864f045551f7d06f78017b5df70e1be3 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期四, 19 六月 2025 11:03:52 +0800
Subject: [PATCH] feat(card): 添加补扣功能并优化卡片操作界面

---
 generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 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 af6c1dc..d4f57d4 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/NfcWreatActivity.kt
@@ -41,6 +41,9 @@
     // 杩旇繕鐩稿叧淇℃伅
     private var returnAmount = 0.0
 
+    // 琛ユ墸鐩稿叧淇℃伅
+    private var deductAmount = 0.0
+
     //璁㈠崟缂栧彿
     var orderNumber = ""
     private lateinit var userCard: UserCard
@@ -74,6 +77,9 @@
 
         // 鑾峰彇杩旇繕鐩稿叧淇℃伅
         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
@@ -174,8 +180,15 @@
                     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()
             }
@@ -272,8 +285,22 @@
                     })
                 }
 
+                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()
             }

--
Gitblit v1.8.0