From 32d1501e6fe6338eb6dc51c26df7fe0808caac0d Mon Sep 17 00:00:00 2001
From: zuoxiao <lf_zuo@163.com>
Date: 星期四, 26 六月 2025 15:05:28 +0800
Subject: [PATCH] feat(general): 优化写卡成功界面并添加开卡功能- 重新设计写卡成功界面布局,增加滚动视图以支持长文本显示 - 添加开卡功能相关的UI和逻辑,包括工本费和充值金额的展示- 增加用户姓名和卡片信息的显示 - 优化打印凭证的内容和格式 -调整NFC连接逻辑,提高连接成功率

---
 baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NativeNfcWriteHelper.java |   29 +++++++++++++++++++----------
 1 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NativeNfcWriteHelper.java b/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NativeNfcWriteHelper.java
index 1d89f03..f58e809 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NativeNfcWriteHelper.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/tools/nfc/NativeNfcWriteHelper.java
@@ -125,14 +125,24 @@
                         mfc.connect();
                         // 楠岃瘉鎵囧尯瀵嗙爜
                         boolean isOpen = false;
-                        for (int i = 0; i < listKeyA.size(); i++) {
-                            if (mfc.authenticateSectorWithKeyA(a, listKeyA.get(i))) {
-                                isOpen = true;
-                                if (listKeyA.get(i).equals(defauleKey)) {
-                                    // 褰撳墠涓洪粯璁ょ櫧鍗″瘑鐮佹椂鍐欏崱鏃朵慨鏀瑰瘑鐮�
-                                    changePasword(a, mfc);
+
+                        if (listKeyA.size() != 0) {
+                            for (int i = 0; i < listKeyA.size(); i++) {
+                                if (mfc.authenticateSectorWithKeyA(a, listKeyA.get(i))) {
+                                    isOpen = true;
+                                    if (listKeyA.get(i).equals(defauleKey)) {
+                                        // 褰撳墠涓洪粯璁ょ櫧鍗″瘑鐮佹椂鍐欏崱鏃朵慨鏀瑰瘑鐮�
+                                        changePasword(a, mfc);
+                                    }
+                                    break;
                                 }
-                                break;
+                            }
+                        } else if (listA_PS.size() != 0 && listA_PS.size() > a) {
+                            if (mfc.authenticateSectorWithKeyA(a, defauleKey)) {
+                                isOpen = true;
+
+                            } else if (mfc.authenticateSectorWithKeyA(a, listA_PS.get(a))) {
+                                isOpen = true;
                             }
                         }
                         if (isOpen) {
@@ -239,7 +249,7 @@
                         boolean isOpen = false;
                         if (listKeyA.size() != 0) {
                             for (int i = 0; i < listKeyA.size(); i++) {
-                                if (mfc.authenticateSectorWithKeyA(0, listKeyA.get(i))) {
+                                if (mfc.authenticateSectorWithKeyA(a, listKeyA.get(i))) {
                                     isOpen = true;
                                     if (listKeyA.get(i).equals(defauleKey)) {
                                         // 褰撳墠涓洪粯璁ょ櫧鍗″瘑鐮佹椂鍐欏崱鏃朵慨鏀瑰瘑鐮�
@@ -326,7 +336,6 @@
     /**
      * 淇敼瀵嗙爜
      *
-     * @param 涔﹀啓鐨勬墖鍖�
      * @param passWord 瀵嗙爜
      * @return
      */
@@ -347,10 +356,10 @@
             }
 
             try {
-                // 杩炴帴NFC
                 if (isConnect) {
                     mfc.connect();
                 }
+
                 for (int i = 0; i < passWord.size(); i++) {
                     byte[] passWordItem = passWord.get(i);
                     // 楠岃瘉鎵囧尯瀵嗙爜

--
Gitblit v1.8.0