From 55b196ea2e28a8d859c85326f2147a4f7b7196de Mon Sep 17 00:00:00 2001
From: zuojincheng <lf_zuo@163.com>
Date: 星期四, 10 四月 2025 10:58:32 +0800
Subject: [PATCH] feat(general): 新增开卡信息保存功能并优化界面布局- 新增 CardRegistrationBean 数据模型用于保存开卡信息 - 在数据库中添加 card_registration 表用于存储开卡记录 - 优化 NewCard2Activity 界面布局,调整样式和间距 - 添加协程支持,实现异步保存开卡信息到数据库 - 更新颜色配置,统一使用新加的 base_blue_bg 和 base_green_bg颜色

---
 henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java |   43 ++++++++++++++++++++++++++++---------------
 1 files changed, 28 insertions(+), 15 deletions(-)

diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
index ed57dca..d8cbfe3 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
@@ -7,14 +7,17 @@
 import android.view.LayoutInflater;
 import android.view.View;
 
+import com.dayu.baselibrary.activity.BaseNfcActivity;
 import com.dayu.baselibrary.tools.BcdUtil;
 import com.dayu.baselibrary.tools.HexUtil;
+import com.dayu.baselibrary.tools.nfc.BaseNfcReadHelper;
+import com.dayu.baselibrary.tools.nfc.CardCommonState;
 import com.dayu.baselibrary.utils.CRC8;
 import com.dayu.baselibrary.utils.MornyUtil;
 import com.dayu.baselibrary.utils.TipUtil;
-import com.dayu.henanlibrary.card.ConfigurationPowerCard;
+import com.dayu.henanlibrary.card.ConfigurationPowerCardHN;
 import com.dayu.henanlibrary.card.DomainCard;
-import com.dayu.henanlibrary.card.UserCard;
+import com.dayu.henanlibrary.card.UserCardHN;
 import com.dayu.henanlibrary.databinding.ActivityRedCardHnBinding;
 import com.dayu.henanlibrary.net.SocketCallBack;
 import com.dayu.henanlibrary.net.SocketData;
@@ -37,9 +40,9 @@
  * Date: 2023-11-10 19:52
  * Description: 璇诲崱鐣岄潰
  */
-public class ReadCardAcitivy extends BaseNfcActivity {
+public class ReadCardAcitivy extends HNBaseNfcActivity {
 
-    volatile UserCard userCard;
+    volatile UserCardHN userCard;
     ActivityRedCardHnBinding redCardBinding;
 
     Intent intent;
@@ -78,14 +81,13 @@
     }
 
 
+
     @Override
-    public void onNewIntent(Intent intent) {
-        this.intent = intent;
+    public void onNfcBack(Intent intent) {
         ProgressDialog.show(this);
         if (NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())) {
             readAllData(intent);
         }
-        super.onNewIntent(intent);
     }
 
     /**
@@ -94,7 +96,7 @@
 
     public void readAllData(Intent intent) {
         NfcReadHelper.getInstence(intent, this)
-                .getOneSectorData(new NfcReadHelper.NFCCallListback() {
+                .getOneSectorData(new BaseNfcReadHelper.NFCCallListback() {
                     @Override
                     public void callBack(List<byte[]> data) {
                         //鑾峰彇1鎵囧尯鏁版嵁
@@ -105,7 +107,7 @@
                                 case CardCommon.USER_CARD_TYPE_1:
                                 case CardCommon.USER_CARD_TYPE_2:
                                 case CardCommon.USER_CARD_TYPE_3:
-                                    userCard = UserCard.getBean(data);
+                                    userCard = new UserCardHN().getBean(data);
                                     selectBalance(userCard.getInitPeasantCode());
                                     break;
                                 case CardCommon.MANAGE_CRAD:
@@ -131,9 +133,20 @@
                                     break;
                                 case CardCommon.DOMAIN_CARD_TYPE:
                                     viweGone(false);
-                                    redCardBinding.readCardTypeTV.setText("褰撳墠涓鸿缃煙鍚嶅崱");
-                                    DomainCard domainCard = DomainCard.toBean(data);
-                                    redCardBinding.readCardDataTV.setText("搴忓彿锛�" + domainCard.getDomainNumber() + "\n" + "鍩熷悕锛�" + domainCard.getDomainName() + "\n" + "绔彛鍙凤細" + domainCard.getPort());
+                                    DomainCard domainXinXiangCard = DomainCard.toBean(data);
+                                    if (domainXinXiangCard.getType() == 0) {
+                                        redCardBinding.readCardTypeTV.setText("褰撳墠涓烘柊涔″煙鍚嶅崱");
+                                    } else {
+                                        redCardBinding.readCardTypeTV.setText("褰撳墠涓洪箍閭戝煙鍚嶅崱");
+                                    }
+                                    StringBuilder builder = new StringBuilder();
+                                    if (domainXinXiangCard.getType() == 0) {
+                                        builder.append("搴忓彿锛�" + domainXinXiangCard.getDomainNumber() + "\n");
+                                    }
+                                    builder.append("鍩熷悕锛�" + domainXinXiangCard.getDomainName());
+                                    builder.append("\n" + "绔彛鍙凤細" + domainXinXiangCard.getPort());
+
+                                    redCardBinding.readCardDataTV.setText(builder.toString());
                                     stopAnim();
                                     break;
                                 case CardCommon.TEST_CARD_TYPE:
@@ -149,12 +162,12 @@
                                 case CardCommon.CONFIGURATION_POWER_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠閰嶇疆姘存车鍔熺巼鍗�");
-                                    ConfigurationPowerCard powerCard = ConfigurationPowerCard.toBean(data.get(0));
+                                    ConfigurationPowerCardHN powerCard = ConfigurationPowerCardHN.toBean(data.get(0));
                                     redCardBinding.readCardDataTV.setText(powerCard.getPower());
                                     stopAnim();
                                     break;
                                 default:
-                                    TipUtil.show(ReadCardAcitivy.this, "鍗$墖鏃犳硶璇嗗埆");
+                                    TipUtil.show(ReadCardAcitivy.this, "褰撳墠鍗$墖涓虹櫧鍗★紝璇峰埗鍗″悗璇诲彇");
                                     stopAnim();
                                     break;
                             }
@@ -169,7 +182,7 @@
                     @Override
                     public void error(int code) {
                         switch (code) {
-                            case CardCommon.ERROR_MOVE:
+                            case CardCommonState.ERROR_MOVE:
                                 stopAnim();
                                 TipUtil.show("杩炴帴涓柇锛岃閲嶆柊璐村悎鍗$墖");
                                 break;

--
Gitblit v1.8.0