From ae6fff187b368385f8142a98da6067897201d544 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 29 四月 2024 15:47:22 +0800
Subject: [PATCH] 1.修改架构将河南版本提取成library 2.修复密码修改的bug 3.添加登录页选择模块功能

---
 qihealonelibrary/CMakeLists.txt                                                                    |    6 
 henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HNBaseActivity.java                      |    6 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/TestCard.java                                |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java                        |    4 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigureDeviceRegistrationCrad.java         |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegisteredCard.java                  |   10 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/BaseDaoSingleton.java                 |   22 
 henanlibrary/src/main/java/com/dayu/henanlibrary/net/SocketNet.java                                |    4 
 baselibrary/build.gradle                                                                           |    3 
 baselibrary/src/main/res/drawable/radio_select_off.xml                                             |   12 
 henanlibrary/src/main/java/com/dayu/henanlibrary/tools/NfcReadHelper.java                          |   24 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java                              |    4 
 qihealonelibrary/src/main/res/layout/activity_home.xml                                             |   13 
 baselibrary/src/main/java/com/dayu/baselibrary/dbbean/LibraryBean.java                             |    6 
 baselibrary/src/main/res/drawable/radio_select.xml                                                 |    5 
 baselibrary/src/main/res/layout/confirm_dialog.xml                                                 |   68 +++
 henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java                    |   15 
 qihealonelibrary/src/test/java/com/dayu/qihealonelibrary/ExampleUnitTest.java                      |   11 
 baselibrary/src/main/res/layout/edt_dialog.xml                                                     |   56 +-
 app/build.gradle                                                                                   |    3 
 henanlibrary/src/main/java/com/dayu/henanlibrary/utils/DeviceNumberUtils.java                      |    8 
 baselibrary/src/main/java/com/dayu/baselibrary/dao/BaseDaoSingleton.java                           |    8 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanCard.java                       |   10 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java             |   32 
 baselibrary/src/main/res/drawable/radio_select_on.xml                                              |   19 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/BaseCard.java                                |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java               |   10 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/PassWordCard.java                            |    4 
 henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java                 |   44 +-
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ManageCard.java                      |   10 
 baselibrary/src/main/res/drawable/radio_text_select.xml                                            |    7 
 baselibrary/src/main/res/values/colors.xml                                                         |    4 
 baselibrary/src/main/res/layout/library_dialog.xml                                                 |  100 ++++
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigurationPowerCard.java                  |    4 
 baselibrary/src/main/res/layout/password_dialog.xml                                                |   37 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanCard.java                               |    4 
 baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java                             |   95 ++++
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/PassWordCard.java                    |   10 
 baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java                             |   11 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/UserCard.java                                |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java         |    6 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/TestCard.java                        |   10 
 baselibrary/src/main/java/com/dayu/baselibrary/BaseApplication.java                                |    4 
 baselibrary/src/main/res/layout/text_dialog.xml                                                    |   26 
 qihealonelibrary/src/main/cpp/qihealone-native-lib.cpp                                             |    0 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/CardCommon.java                     |    4 
 henanlibrary/src/main/java/com/dayu/henanlibrary/dao/AppDatabase.java                              |    2 
 qihealonelibrary/src/androidTest/java/com/dayu/qihealonelibrary/ExampleInstrumentedTest.java       |   23 
 henanlibrary/src/main/java/com/dayu/henanlibrary/dao/HNBaseDaoSingleton.java                       |   15 
 app/src/main/java/com/dayu/recharge/activity/LoginActivity.java                                    |   82 +++
 henanlibrary/src/main/java/com/dayu/henanlibrary/HeNanApplication.java                             |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanUserCard.java                   |   10 
 baselibrary/src/main/java/com/dayu/baselibrary/dao/AppDatabase.java                                |   24 +
 baselibrary/src/main/java/com/dayu/baselibrary/view/PassWordDialog.java                            |   26 
 henanlibrary/CMakeLists.txt                                                                        |    6 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java         |   30 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/ManageCard.java                              |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/tools/NfcReadHelper.java                  |   24 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/RegisteredCard.java                          |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/QHAloneAppDatabase.java               |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigureDeviceRegistrationCrad.java |   10 
 henanlibrary/src/main/java/com/dayu/henanlibrary/utils/SocketUtil.java                             |    6 
 qihealonelibrary/src/main/AndroidManifest.xml                                                      |   78 +++
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BlackCard.java                       |   10 
 baselibrary/src/main/res/values/dimens.xml                                                         |    2 
 henanlibrary/src/main/java/com/dayu/henanlibrary/utils/CardCommon.java                             |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigurationPowerCard.java          |   10 
 henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java                     |   26 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BaseCard.java                        |    8 
 henanlibrary/src/main/cpp/henan-native-lib.cpp                                                     |    0 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegionCard.java                      |    4 
 app/src/main/java/com/dayu/recharge/MyApplication.java                                             |   35 +
 /dev/null                                                                                          |    4 
 henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanUserCard.java                           |    4 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/DomainCard.java                      |    4 
 baselibrary/src/main/java/com/dayu/baselibrary/utils/BaseCommon.java                               |   19 
 qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java            |   11 
 baselibrary/src/main/res/drawable/base_bg_dialog_top_stroke.xml                                    |    8 
 henanlibrary/src/main/res/layout/activity_home.xml                                                 |    2 
 baselibrary/src/main/res/drawable/editbg_dialog.xml                                                |   16 
 80 files changed, 885 insertions(+), 389 deletions(-)

diff --git a/app/build.gradle b/app/build.gradle
index 2e05031..2aedab6 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -71,6 +71,7 @@
 
     implementation project(':henanlibrary')
     implementation project(':baselibrary')
+    implementation project(':qihealonelibrary')
 
     implementation 'com.tencent.bugly:crashreport:4.1.9.3'
 //    澶勭悊鍥剧墖
@@ -86,4 +87,6 @@
     implementation 'androidx.recyclerview:recyclerview:1.2.0'//缁忓吀鍒锋柊澶�
 
     implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
+
+
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/dayu/recharge/MyApplication.java b/app/src/main/java/com/dayu/recharge/MyApplication.java
index 8c92736..a456cdf 100644
--- a/app/src/main/java/com/dayu/recharge/MyApplication.java
+++ b/app/src/main/java/com/dayu/recharge/MyApplication.java
@@ -1,23 +1,54 @@
 package com.dayu.recharge;
 
 import android.app.Application;
+import android.text.TextUtils;
 
 import com.dayu.baselibrary.BaseApplication;
-import com.dayu.baselibrary.utils.AidlUtil;
+import com.dayu.baselibrary.dao.BaseDaoSingleton;
+import com.dayu.baselibrary.dbbean.LibraryBean;
+import com.dayu.baselibrary.utils.BaseCommon;
 import com.dayu.henanlibrary.HeNanApplication;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
+import com.dayu.henanlibrary.dbBean.AdminDataBean;
+import com.dayu.qihealonelibrary.QHAloneApplication;
 import com.tencent.bugly.crashreport.CrashReport;
 
 public class MyApplication extends Application {
     public static String TAG = "MyApplication";
 
+    //褰撳墠鍔犺浇鐨刲ibrary妯″潡   //0锛氭渤鍗楃増鏈紝1榻愭渤鍗曟満鐗�
+    public int libraryType = BaseCommon.NoLibrary;
+    public static MyApplication myApplication;
 
     @Override
     public void onCreate() {
         super.onCreate();
+        myApplication = this;
+        initApplication();
         BaseApplication.getInstance().onCreat(this);
-        HeNanApplication.getInstance().application = this;
         CrashReport.initCrashReport(getApplicationContext(), "45551598b8", true);
     }
 
 
+    public void initApplication() {
+        //鍏煎鑰佺増鐨勶紝璁や负鏈塧ddressCode骞朵笖LibraryBean涓簄ull鐨勪负娌冲崡鐗堟湰鐨�
+        AdminDataBean adminDataBean = HNBaseDaoSingleton.getInstance(this).adminDao().findFirst();
+        LibraryBean libraryBean = BaseDaoSingleton.getInstance(this).libraryDao().findFirst();
+        if (adminDataBean != null && libraryBean == null && !TextUtils.isEmpty(adminDataBean.addressCode)) {
+            libraryType = BaseCommon.HeNanLibrary;
+            HeNanApplication.getInstance().application = this;
+        } else if (libraryBean != null) {
+            libraryType = libraryBean.getType();
+            switch (libraryType) {
+                case BaseCommon.HeNanLibrary:
+                    HeNanApplication.getInstance().application = this;
+                    break;
+                case BaseCommon.QHAloneLibrary:
+                    QHAloneApplication.getInstance().application = this;
+                    break;
+            }
+        }
+    }
+
+
 }
diff --git a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
index 4cc8b6c..c48f912 100644
--- a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
@@ -11,14 +11,16 @@
 import androidx.annotation.NonNull;
 
 import com.dayu.baselibrary.activity.BaseActivity;
+import com.dayu.baselibrary.utils.BaseCommon;
 import com.dayu.baselibrary.utils.TipUtil;
 import com.dayu.baselibrary.utils.WSMD5;
+import com.dayu.baselibrary.view.LibraryDialog;
 import com.dayu.henanlibrary.HeNanApplication;
-import com.dayu.henanlibrary.activity.HomeActivity;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 
 import com.dayu.henanlibrary.dbBean.PassWordBean;
 
+import com.dayu.recharge.MyApplication;
 import com.dayu.recharge.databinding.ActivityLoginBinding;
 import com.hjq.permissions.OnPermissionCallback;
 import com.hjq.permissions.Permission;
@@ -44,34 +46,54 @@
         super.onCreate(savedInstanceState);
         binding = ActivityLoginBinding.inflate(LayoutInflater.from(this));
         setContentView(binding.getRoot());
-        getPermission();
+
         initView();
     }
 
     private void initView() {
         binding.loginBtn.setOnClickListener(v -> {
             String psStr = binding.loginPw.getText().toString();
+            if (MyApplication.myApplication.libraryType == BaseCommon.NoLibrary) {
+                LibraryDialog dialog = new LibraryDialog(this, type -> {
+                    if (type == BaseCommon.HeNanLibrary) {
+                        getHNPermission();
+                    } else if (type == BaseCommon.QHAloneLibrary) {
+                        getQHAlonePermission();
+                    }
+                    MyApplication.myApplication.initApplication();
+                });
+                dialog.show();
+                //娌℃湁閫夋嫨鐗堟湰鍏堥�夋嫨鐗堟湰
+                return;
+            }
             if (TextUtils.isEmpty(psStr)) {
                 TipUtil.show("璇疯緭鍏ュ瘑鐮�");
                 return;
             }
             if ((passWordBean == null && psStr.equals("123456"))
                     || passWordBean != null && passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(psStr))) {
-                startActivity(new Intent(LoginActivity.this, HomeActivity.class));
+                if (MyApplication.myApplication.libraryType == 0) {
+                    startActivity(new Intent(LoginActivity.this, com.dayu.henanlibrary.activity.HomeActivity.class));
+                } else if (MyApplication.myApplication.libraryType == 1) {
+                    startActivity(new Intent(LoginActivity.this, com.dayu.qihealonelibrary.activity.HomeActivity.class));
+                }
                 LoginActivity.this.finish();
             } else {
                 Toast.makeText(LoginActivity.this, "瀵嗙爜閿欒", Toast.LENGTH_SHORT).show();
             }
         });
         try {
-            PackageInfo packageInfo=getPackageManager().getPackageInfo(getPackageName(), 0);
-            binding.versionName.setText("褰撳墠鐗堟湰锛歏"+packageInfo.versionName);
+            PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
+            binding.versionName.setText("褰撳墠鐗堟湰锛歏" + packageInfo.versionName);
         } catch (PackageManager.NameNotFoundException e) {
             throw new RuntimeException(e);
         }
     }
 
-    private void getPermission() {
+    /**
+     * 娌冲崡鐗堢殑鑾峰彇鏉冮檺
+     */
+    private void getHNPermission() {
         try {
 
 
@@ -95,11 +117,11 @@
 
                                     HeNanApplication.getInstance().initEasySocket(false, null);
                                     try {
-                                        File file = new File(BaseDaoSingleton.SqlitePath);
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
                                         if (!file.exists()) {
                                             file.mkdirs();
                                         }
-                                        passWordBean = BaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
+                                        passWordBean = HNBaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
                                     } catch (Exception e) {
                                         e.printStackTrace();
                                     }
@@ -120,4 +142,46 @@
             e.printStackTrace();
         }
     }
+
+    private void getQHAlonePermission() {
+        try {
+            XXPermissions.with(this)
+                    .permission(
+                            Permission.WRITE_EXTERNAL_STORAGE)
+                    .request(new OnPermissionCallback() {
+
+                        @Override
+                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
+                            if (allGranted) {
+                                if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
+
+                                    try {
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
+                                        if (!file.exists()) {
+                                            file.mkdirs();
+                                        }
+                                        passWordBean = HNBaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                        }
+
+                        @Override
+                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
+                            if (doNotAskAgain) {
+                                // 濡傛灉鏄姘镐箙鎷掔粷灏辫烦杞埌搴旂敤鏉冮檺绯荤粺璁剧疆椤甸潰
+                            } else {
+//                                toast("鑾峰彇褰曢煶鍜屾棩鍘嗘潈闄愬け璐�");
+                            }
+                        }
+                    });
+        } catch (
+                Throwable e) {
+            e.printStackTrace();
+        }
+    }
+
+
 }
diff --git a/baselibrary/build.gradle b/baselibrary/build.gradle
index e7bb228..43d052c 100644
--- a/baselibrary/build.gradle
+++ b/baselibrary/build.gradle
@@ -46,4 +46,7 @@
     implementation "androidx.room:room-ktx:2.3.0"
     runtimeOnly("androidx.room:room-common:2.3.0")
     annotationProcessor "androidx.room:room-compiler:2.3.0"
+
+    //鏉冮檺鐢宠
+    compileOnly 'com.github.getActivity:XXPermissions:18.5'
 }
\ No newline at end of file
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/BaseApplication.java b/baselibrary/src/main/java/com/dayu/baselibrary/BaseApplication.java
index fb0b940..93ba6e0 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/BaseApplication.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/BaseApplication.java
@@ -1,7 +1,6 @@
 package com.dayu.baselibrary;
 
 import android.app.Application;
-import android.content.Context;
 
 import com.dayu.baselibrary.utils.AidlUtil;
 
@@ -24,7 +23,8 @@
 
 
     //鍒濆鍖栨墦鍗扮浉鍏虫湇鍔�
-    public void onCreat(Context context) {
+    public void onCreat(Application context) {
+        application = context;
         AidlUtil.getInstance().connectPrinterService(context);
     }
 
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/dao/AppDatabase.java b/baselibrary/src/main/java/com/dayu/baselibrary/dao/AppDatabase.java
new file mode 100644
index 0000000..3f0ef85
--- /dev/null
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/dao/AppDatabase.java
@@ -0,0 +1,24 @@
+package com.dayu.baselibrary.dao;
+
+import androidx.room.Database;
+import androidx.room.RoomDatabase;
+
+import com.dayu.baselibrary.dbbean.LibraryBean;
+
+
+/**
+ * Copyright (C), 2023,
+ * Author: zuo
+ * Date: 2023-11-05 16:23
+ * Description:
+ */
+@Database(entities = {LibraryBean.class}, version = AppDatabase.version, exportSchema = false)
+public abstract class AppDatabase extends RoomDatabase {
+
+    public final static int version = 3;
+
+
+    public abstract LibraryDao libraryDao();
+
+
+}
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java b/baselibrary/src/main/java/com/dayu/baselibrary/dao/BaseDaoSingleton.java
similarity index 83%
rename from henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java
rename to baselibrary/src/main/java/com/dayu/baselibrary/dao/BaseDaoSingleton.java
index 22b6306..3d09e8f 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/dao/BaseDaoSingleton.java
@@ -1,4 +1,4 @@
-package com.dayu.henanlibrary.dao;
+package com.dayu.baselibrary.dao;
 
 import android.content.Context;
 import android.os.Environment;
@@ -24,8 +24,8 @@
             baseDao = Room.databaseBuilder(
                     context,
                     AppDatabase.class,
-                    SqlitePath + "ConfigurationData"
-            ).allowMainThreadQueries().build();
+                    SqlitePath + "BaseData"
+            ).allowMainThreadQueries().fallbackToDestructiveMigration().build();
         }
         return baseDao;
     }
@@ -36,7 +36,7 @@
             AsynchBaseDao = Room.databaseBuilder(
                     context,
                     AppDatabase.class,
-                    SqlitePath + "ConfigurationData"
+                    SqlitePath + "BaseData"
             ).build();
         }
         return AsynchBaseDao;
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/dbbean/LibraryBean.java b/baselibrary/src/main/java/com/dayu/baselibrary/dbbean/LibraryBean.java
index 97718ad..4f17730 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/dbbean/LibraryBean.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/dbbean/LibraryBean.java
@@ -16,5 +16,11 @@
     //0锛氭渤鍗楃増鏈紝1榻愭渤鍗曟満鐗�
     private int type;
 
+    public int getType() {
+        return type;
+    }
 
+    public void setType(int type) {
+        this.type = type;
+    }
 }
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/utils/BaseCommon.java b/baselibrary/src/main/java/com/dayu/baselibrary/utils/BaseCommon.java
new file mode 100644
index 0000000..8350567
--- /dev/null
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/utils/BaseCommon.java
@@ -0,0 +1,19 @@
+package com.dayu.baselibrary.utils;
+
+/**
+ * author: zuo
+ * Date: 2024-04-29
+ * Time: 15:09
+ * 澶囨敞锛氬叕鍏卞弬鏁�
+ */
+public class BaseCommon {
+
+    /**
+     * 娌℃湁閫夋嫨妯″潡
+     */
+    public final static int NoLibrary = -1;
+    public final static int HeNanLibrary = 0;
+    public final static int QHAloneLibrary = 1;
+
+
+}
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/view/ConfirmDialog.java b/baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java
similarity index 83%
rename from henanlibrary/src/main/java/com/dayu/henanlibrary/view/ConfirmDialog.java
rename to baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java
index c8a9a75..fc5440a 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/view/ConfirmDialog.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java
@@ -1,14 +1,15 @@
-package com.dayu.henanlibrary.view;
+package com.dayu.baselibrary.view;
 
 import android.app.Activity;
 import android.app.Dialog;
 import android.view.Gravity;
 import android.view.View;
-import android.widget.Button;
+import android.widget.TextView;
 
 import androidx.annotation.NonNull;
 
-import com.dayu.henanlibrary.R;
+import com.dayu.baselibrary.R;
+
 
 /**
  * author: zuo
@@ -39,8 +40,8 @@
         getWindow().setGravity(Gravity.CENTER);
         setContentView(R.layout.confirm_dialog);
         setCanceledOnTouchOutside(false);
-        Button cannel = (Button) this.findViewById(R.id.confirm_cancel);
-        Button ok = (Button) this.findViewById(R.id.confirm_ok);
+        TextView cannel = (TextView) this.findViewById(R.id.confirm_cancel);
+        TextView ok = (TextView) this.findViewById(R.id.confirm_ok);
         cannel.setOnClickListener(v -> ConfirmDialog.this.dismiss());
         if (mListner == null) {
             ok.setOnClickListener((View v) -> {
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java b/baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java
new file mode 100644
index 0000000..cc587b9
--- /dev/null
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java
@@ -0,0 +1,95 @@
+package com.dayu.baselibrary.view;
+
+import android.app.Activity;
+import android.app.Dialog;
+import android.content.Intent;
+import android.view.Gravity;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.WindowManager;
+import android.widget.RadioGroup;
+import android.widget.TextView;
+
+import com.dayu.baselibrary.R;
+import com.dayu.baselibrary.dao.BaseDaoSingleton;
+import com.dayu.baselibrary.dao.LibraryDao;
+import com.dayu.baselibrary.dbbean.LibraryBean;
+
+/**
+ * author: zuo
+ * Date: 2024-04-26
+ * Time: 16:18
+ * 澶囨敞锛氶�夋嫨妯″潡
+ */
+public class LibraryDialog extends Dialog {
+
+    Intent intent;
+    Activity mContext;
+    LibraryBean libraryBean;
+    LibraryDao libraryDao;
+    boolean ischose = false;
+
+    libraryBack mLibraryBack;
+    int type;
+
+    public LibraryDialog(Activity context, libraryBack libraryBack) {
+        super(context, com.dayu.baselibrary.R.style.ws_pay_showSelfDialog);
+        this.intent = intent;
+        mContext = context;
+        mLibraryBack = libraryBack;
+        initView();
+    }
+
+    private void initView() {
+        getWindow().setGravity(Gravity.CENTER);
+        setContentView(R.layout.library_dialog);
+        setCanceledOnTouchOutside(false);
+        RadioGroup radioGroup = findViewById(R.id.radioLibrary);
+        libraryDao = BaseDaoSingleton.getInstance(mContext).libraryDao();
+        libraryBean = libraryDao.findFirst();
+        if (libraryBean == null) {
+            libraryBean = new LibraryBean();
+        }
+
+        radioGroup.setOnCheckedChangeListener((group, checkedId) -> {
+            ischose = true;
+            // 褰撻�変腑鐨凴adioButton鍙戠敓鍙樺寲鏃惰皟鐢�
+            if (checkedId == R.id.henanLibrary) {
+                type = 0;
+                libraryBean.setType(type);
+            } else if (checkedId == R.id.qhAloneLibrary) {// 澶勭悊閫変腑Option 2鐨勯�昏緫
+                type = 1;
+                libraryBean.setType(type);
+            }
+        });
+        TextView okBtn = findViewById(R.id.ok);
+        okBtn.setOnClickListener(v -> {
+            if (ischose) {
+                libraryDao.insert(libraryBean);
+                mLibraryBack.listener(type);
+            }
+        });
+
+
+    }
+
+    @Override
+    public void show() {
+
+        super.show();
+        /**
+         * 璁剧疆瀹藉害鍏ㄥ睆锛岃璁剧疆鍦╯how鐨勫悗闈�
+         */
+        WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
+        layoutParams.gravity = Gravity.CENTER;
+        layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
+        layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT;
+        getWindow().getDecorView().setPadding(0, 0, 0, 0);
+        getWindow().setAttributes(layoutParams);
+    }
+
+
+    public interface libraryBack {
+        void listener(int type);
+    }
+}
\ No newline at end of file
diff --git a/baselibrary/src/main/java/com/dayu/baselibrary/view/PassWordDialog.java b/baselibrary/src/main/java/com/dayu/baselibrary/view/PassWordDialog.java
index 49ea65f..5ca578d 100644
--- a/baselibrary/src/main/java/com/dayu/baselibrary/view/PassWordDialog.java
+++ b/baselibrary/src/main/java/com/dayu/baselibrary/view/PassWordDialog.java
@@ -4,7 +4,6 @@
 import android.app.Dialog;
 import android.content.Intent;
 import android.view.Gravity;
-import android.view.View;
 import android.view.ViewGroup;
 import android.view.WindowManager;
 import android.widget.EditText;
@@ -38,21 +37,18 @@
         setCanceledOnTouchOutside(false);
         TextView textView = (TextView) this.findViewById(R.id.pw_ok);
         final EditText editText = (EditText) this.findViewById(R.id.pw_et);
-        textView.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                try {
-                    //瀵嗙爜涓篸yjsczgl@2024
-                    if (WSMD5.getMD5Str(editText.getText().toString()).equalsIgnoreCase("c42da502706e47c7962cb539cbc87321")) {
-                        mContext.startActivity(intent);
-                        PassWordDialog.this.dismiss();
-                    } else {
-                        TipUtil.show(mContext, "瀵嗙爜閿欒");
-                    }
-                } catch (Exception e) {
-                    CrashReport.postCatchedException(e);
-                    e.printStackTrace();
+        textView.setOnClickListener(v -> {
+            try {
+                //瀵嗙爜涓篸yjsczgl@2024
+                if (WSMD5.getMD5Str(editText.getText().toString()).equalsIgnoreCase("c42da502706e47c7962cb539cbc87321")) {
+                    mContext.startActivity(intent);
+                    PassWordDialog.this.dismiss();
+                } else {
+                    TipUtil.show(mContext, "瀵嗙爜閿欒");
                 }
+            } catch (Exception e) {
+                CrashReport.postCatchedException(e);
+                e.printStackTrace();
             }
         });
     }
diff --git a/baselibrary/src/main/res/drawable/base_bg_dialog_top_stroke.xml b/baselibrary/src/main/res/drawable/base_bg_dialog_top_stroke.xml
index 90969f7..0f1fb78 100644
--- a/baselibrary/src/main/res/drawable/base_bg_dialog_top_stroke.xml
+++ b/baselibrary/src/main/res/drawable/base_bg_dialog_top_stroke.xml
@@ -22,10 +22,10 @@
         android:startColor="#ffffff" />
     <!-- 璁剧疆鍥涗釜瑙掔殑瑙掑害 -->
     <corners
-        android:bottomLeftRadius="15dp"
-        android:bottomRightRadius="15dp"
-        android:topLeftRadius="15dp"
-        android:topRightRadius="15dp" />
+        android:bottomLeftRadius="5dp"
+        android:bottomRightRadius="5dp"
+        android:topLeftRadius="5dp"
+        android:topRightRadius="5dp" />
     <!-- 璁剧疆padding -->
 
 </shape>
\ No newline at end of file
diff --git a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml b/baselibrary/src/main/res/drawable/editbg_dialog.xml
similarity index 64%
copy from henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
copy to baselibrary/src/main/res/drawable/editbg_dialog.xml
index 90969f7..f205448 100644
--- a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
+++ b/baselibrary/src/main/res/drawable/editbg_dialog.xml
@@ -3,7 +3,7 @@
     <!-- 杈圭紭绾跨殑瀹藉害鍜岄鑹� -->
     <stroke
         android:width="0px"
-        android:color="#ffffff" />
+        android:color="@color/edite_bg" />
     <!--
     涓棿娓愬彉锛岃搴�0浠庡乏寰�鍙筹紝姝e�间负閫嗘椂閽堬紝270搴︿负浠庝笂鍒颁笅
     <gradient
@@ -17,15 +17,15 @@
     <!-- 涓棿娓愬彉锛岃搴�0浠庡乏寰�鍙筹紝姝e�间负閫嗘椂閽堬紝270搴︿负浠庝笂鍒颁笅 -->
     <gradient
         android:angle="270"
-        android:centerColor="#ffffff"
-        android:endColor="#ffffff"
-        android:startColor="#ffffff" />
+        android:centerColor="@color/edite_bg"
+        android:endColor="@color/edite_bg"
+        android:startColor="@color/edite_bg" />
     <!-- 璁剧疆鍥涗釜瑙掔殑瑙掑害 -->
     <corners
-        android:bottomLeftRadius="15dp"
-        android:bottomRightRadius="15dp"
-        android:topLeftRadius="15dp"
-        android:topRightRadius="15dp" />
+        android:bottomLeftRadius="15px"
+        android:bottomRightRadius="15px"
+        android:topLeftRadius="15px"
+        android:topRightRadius="15px" />
     <!-- 璁剧疆padding -->
 
 </shape>
\ No newline at end of file
diff --git a/baselibrary/src/main/res/drawable/radio_select.xml b/baselibrary/src/main/res/drawable/radio_select.xml
new file mode 100644
index 0000000..b4a7117
--- /dev/null
+++ b/baselibrary/src/main/res/drawable/radio_select.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/radio_select_off" android:state_checked="false" />
+    <item android:drawable="@drawable/radio_select_on" android:state_checked="true" />
+</selector>
\ No newline at end of file
diff --git a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml b/baselibrary/src/main/res/drawable/radio_select_off.xml
similarity index 75%
rename from henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
rename to baselibrary/src/main/res/drawable/radio_select_off.xml
index 90969f7..83fad29 100644
--- a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
+++ b/baselibrary/src/main/res/drawable/radio_select_off.xml
@@ -2,8 +2,8 @@
 
     <!-- 杈圭紭绾跨殑瀹藉害鍜岄鑹� -->
     <stroke
-        android:width="0px"
-        android:color="#ffffff" />
+        android:width="2px"
+        android:color="@color/line_bg" />
     <!--
     涓棿娓愬彉锛岃搴�0浠庡乏寰�鍙筹紝姝e�间负閫嗘椂閽堬紝270搴︿负浠庝笂鍒颁笅
     <gradient
@@ -22,10 +22,10 @@
         android:startColor="#ffffff" />
     <!-- 璁剧疆鍥涗釜瑙掔殑瑙掑害 -->
     <corners
-        android:bottomLeftRadius="15dp"
-        android:bottomRightRadius="15dp"
-        android:topLeftRadius="15dp"
-        android:topRightRadius="15dp" />
+        android:bottomLeftRadius="15px"
+        android:bottomRightRadius="15px"
+        android:topLeftRadius="15px"
+        android:topRightRadius="15px" />
     <!-- 璁剧疆padding -->
 
 </shape>
\ No newline at end of file
diff --git a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml b/baselibrary/src/main/res/drawable/radio_select_on.xml
similarity index 61%
copy from henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
copy to baselibrary/src/main/res/drawable/radio_select_on.xml
index 90969f7..eba894d 100644
--- a/henanlibrary/src/main/res/drawable/ws_pay_bg_dialog_top_stroke.xml
+++ b/baselibrary/src/main/res/drawable/radio_select_on.xml
@@ -2,8 +2,8 @@
 
     <!-- 杈圭紭绾跨殑瀹藉害鍜岄鑹� -->
     <stroke
-        android:width="0px"
-        android:color="#ffffff" />
+        android:width="2px"
+        android:color="@color/title_bg" />
     <!--
     涓棿娓愬彉锛岃搴�0浠庡乏寰�鍙筹紝姝e�间负閫嗘椂閽堬紝270搴︿负浠庝笂鍒颁笅
     <gradient
@@ -16,16 +16,17 @@
     -->
     <!-- 涓棿娓愬彉锛岃搴�0浠庡乏寰�鍙筹紝姝e�间负閫嗘椂閽堬紝270搴︿负浠庝笂鍒颁笅 -->
     <gradient
+
         android:angle="270"
-        android:centerColor="#ffffff"
-        android:endColor="#ffffff"
-        android:startColor="#ffffff" />
+        android:centerColor="@color/title_bg"
+        android:endColor="@color/title_bg"
+        android:startColor="@color/title_bg" />
     <!-- 璁剧疆鍥涗釜瑙掔殑瑙掑害 -->
     <corners
-        android:bottomLeftRadius="15dp"
-        android:bottomRightRadius="15dp"
-        android:topLeftRadius="15dp"
-        android:topRightRadius="15dp" />
+        android:bottomLeftRadius="15px"
+        android:bottomRightRadius="15px"
+        android:topLeftRadius="15px"
+        android:topRightRadius="15px" />
     <!-- 璁剧疆padding -->
 
 </shape>
\ No newline at end of file
diff --git a/baselibrary/src/main/res/drawable/radio_text_select.xml b/baselibrary/src/main/res/drawable/radio_text_select.xml
new file mode 100644
index 0000000..e8f935d
--- /dev/null
+++ b/baselibrary/src/main/res/drawable/radio_text_select.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:color="@color/text_color"
+        android:state_checked="false" />
+    <item android:color="#ffffff"
+        android:state_checked="true" />
+</selector>
\ No newline at end of file
diff --git a/baselibrary/src/main/res/layout/confirm_dialog.xml b/baselibrary/src/main/res/layout/confirm_dialog.xml
new file mode 100644
index 0000000..a0d9d24
--- /dev/null
+++ b/baselibrary/src/main/res/layout/confirm_dialog.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="#00ffffff"
+    android:gravity="center"
+    android:orientation="vertical">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_margin="@dimen/dialog_bg_margin"
+        android:background="@drawable/base_bg_dialog_top_stroke"
+        android:gravity="center"
+        android:orientation="vertical">
+
+        <TextView
+            android:id="@+id/confirm_data"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:gravity="center"
+            android:text="杩樻湭鍐欏崱锛侊紒锛乗n鎮ㄧ‘璁ら��鍑哄悧锛�"
+            android:textColor="@color/text_color"
+            android:textSize="22sp" />
+
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="20dp"
+            android:background="@color/line_bg" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="horizontal">
+
+            <TextView
+                android:id="@+id/confirm_cancel"
+                android:layout_width="0dp"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:layout_weight="1"
+                android:gravity="center"
+                android:text="鍙�    娑�"
+                android:textColor="@color/text_color"
+                android:textSize="20sp" />
+
+            <View
+                android:layout_width="2px"
+                android:layout_height="match_parent"
+                android:background="@color/line_bg" />
+
+            <TextView
+                android:id="@+id/confirm_ok"
+                android:layout_width="0dp"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:layout_weight="1"
+                android:gravity="center"
+                android:text="纭�    璁�"
+                android:textColor="@color/dialog_btn"
+                android:textSize="20sp" />
+
+        </LinearLayout>
+
+
+    </LinearLayout>
+
+</LinearLayout>
+
diff --git a/baselibrary/src/main/res/layout/edt_dialog.xml b/baselibrary/src/main/res/layout/edt_dialog.xml
index 07f234d..4368e6a 100644
--- a/baselibrary/src/main/res/layout/edt_dialog.xml
+++ b/baselibrary/src/main/res/layout/edt_dialog.xml
@@ -7,22 +7,31 @@
     android:orientation="vertical">
 
     <LinearLayout
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_margin="@dimen/dialog_bg_margin"
         android:background="@drawable/base_bg_dialog_top_stroke"
         android:gravity="center"
-        android:orientation="vertical"
-        android:padding="20dp">
+        android:orientation="vertical">
 
 
         <EditText
             android:id="@+id/pw_et"
-            android:layout_width="300dp"
-            android:layout_height="wrap_content"
+            android:layout_width="match_parent"
+            android:layout_height="50dp"
+            android:layout_marginLeft="20dp"
             android:layout_marginTop="20dp"
+            android:layout_marginRight="20dp"
+            android:background="@drawable/editbg_dialog"
             android:hint="璇疯緭鍏ヤ俊鎭�"
+            android:paddingLeft="10dp"
             android:textColor="#000000" />
 
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="20dp"
+            android:background="@color/line_bg" />
 
         <LinearLayout
             android:layout_width="match_parent"
@@ -32,30 +41,27 @@
 
             <TextView
                 android:id="@+id/pw_cannel"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-
-                android:layout_marginTop="20dp"
-                android:background="@drawable/base_login_btn"
-                android:paddingLeft="15dp"
-                android:paddingTop="5dp"
-                android:paddingRight="15dp"
-                android:paddingBottom="5dp"
-                android:text="鍙栨秷"
+                android:layout_width="0dp"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:layout_weight="1"
+                android:gravity="center"
+                android:text="鍙�    娑�"
+                android:textColor="@color/text_color"
                 android:textSize="20sp" />
+
+            <View
+                android:layout_width="2px"
+                android:layout_height="match_parent"
+                android:background="@color/line_bg" />
 
             <TextView
                 android:id="@+id/pw_ok"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginLeft="20dp"
-                android:layout_marginTop="20dp"
-                android:background="@drawable/base_login_btn"
-                android:paddingLeft="15dp"
-                android:paddingTop="5dp"
-                android:paddingRight="15dp"
-                android:paddingBottom="5dp"
-                android:text="纭"
+                android:layout_width="0dp"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:layout_weight="1"
+                android:gravity="center"
+                android:text="纭�    璁�"
+                android:textColor="@color/dialog_btn"
                 android:textSize="20sp" />
 
 
diff --git a/baselibrary/src/main/res/layout/library_dialog.xml b/baselibrary/src/main/res/layout/library_dialog.xml
new file mode 100644
index 0000000..8d1abd9
--- /dev/null
+++ b/baselibrary/src/main/res/layout/library_dialog.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="#00ffffff"
+    android:gravity="center"
+    android:orientation="vertical">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_margin="@dimen/dialog_bg_margin"
+        android:background="@drawable/base_bg_dialog_top_stroke"
+        android:gravity="center"
+        android:orientation="vertical">
+
+        <TextView
+            android:layout_width="300dp"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="20dp"
+            android:gravity="center"
+            android:text="閫夋嫨鐗堟湰"
+            android:textColor="@color/dialog_btn"
+            android:textSize="23sp"
+            android:textStyle="bold" />
+
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="20dp"
+            android:background="@color/line_bg" />
+
+        <RadioGroup
+            android:id="@+id/radioLibrary"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content">
+
+
+            <RadioButton
+                android:id="@+id/henanLibrary"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="50dp"
+                android:layout_marginTop="25dp"
+                android:layout_marginRight="50dp"
+                android:background="@drawable/radio_select"
+                android:button="@null"
+                android:gravity="center"
+                android:text="娌冲崡鐗堟湰"
+                android:textColor="@drawable/radio_text_select"
+                android:textSize="20sp" />
+
+            <RadioButton
+                android:id="@+id/qhAloneLibrary"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="50dp"
+                android:layout_marginTop="25dp"
+                android:layout_marginRight="50dp"
+                android:background="@drawable/radio_select"
+                android:button="@null"
+                android:gravity="center"
+                android:text="榻愭渤鍗曟満鐗�"
+                android:textColor="@drawable/radio_text_select"
+                android:textSize="20sp" />
+        </RadioGroup>
+
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="35dp"
+            android:background="@color/line_bg" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:gravity="center_horizontal"
+            android:orientation="horizontal">
+
+            <TextView
+                android:id="@+id/ok"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:gravity="center"
+                android:paddingLeft="15dp"
+                android:paddingTop="5dp"
+                android:paddingRight="15dp"
+                android:paddingBottom="5dp"
+                android:text="纭�      璁�"
+                android:textColor="@color/dialog_btn"
+                android:textSize="20sp" />
+
+
+        </LinearLayout>
+
+
+    </LinearLayout>
+
+</LinearLayout>
+
diff --git a/baselibrary/src/main/res/layout/password_dialog.xml b/baselibrary/src/main/res/layout/password_dialog.xml
index 97e7ee7..0b56a45 100644
--- a/baselibrary/src/main/res/layout/password_dialog.xml
+++ b/baselibrary/src/main/res/layout/password_dialog.xml
@@ -7,35 +7,40 @@
     android:orientation="vertical">
 
     <LinearLayout
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_margin="@dimen/dialog_bg_margin"
         android:background="@drawable/base_bg_dialog_top_stroke"
         android:gravity="center"
-        android:orientation="vertical"
-        android:padding="20dp">
+        android:orientation="vertical">
 
 
         <EditText
             android:id="@+id/pw_et"
-            android:layout_width="300dp"
-            android:layout_height="wrap_content"
+            android:layout_width="match_parent"
+            android:layout_height="50dp"
+            android:layout_marginLeft="20dp"
             android:layout_marginTop="20dp"
+            android:layout_marginRight="20dp"
+            android:background="@drawable/editbg_dialog"
             android:hint="璇疯緭鍏ョ鐞嗗瘑鐮�"
-            android:textColor="#000000"
-            android:inputType="textPassword" />
+            android:inputType="textPassword"
+            android:paddingLeft="15dp"
+            android:textColor="#000000" />
 
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="20dp"
+            android:background="@color/line_bg" />
 
         <TextView
             android:id="@+id/pw_ok"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="20dp"
-            android:background="@drawable/base_login_btn"
-            android:paddingBottom="5dp"
-            android:paddingLeft="15dp"
-            android:paddingRight="15dp"
-            android:paddingTop="5dp"
-            android:text="纭"
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/dialog_btn_height"
+            android:gravity="center"
+            android:text="纭�      璁�"
+            android:textColor="@color/dialog_btn"
             android:textSize="@dimen/text_size" />
 
     </LinearLayout>
diff --git a/baselibrary/src/main/res/layout/text_dialog.xml b/baselibrary/src/main/res/layout/text_dialog.xml
index 371412f..4bff1ac 100644
--- a/baselibrary/src/main/res/layout/text_dialog.xml
+++ b/baselibrary/src/main/res/layout/text_dialog.xml
@@ -7,23 +7,30 @@
     android:orientation="vertical">
 
     <LinearLayout
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_margin="@dimen/dialog_bg_margin"
         android:background="@drawable/base_bg_dialog_top_stroke"
         android:gravity="center"
-        android:orientation="vertical"
-        android:padding="20dp">
+        android:orientation="vertical">
 
 
         <TextView
             android:id="@+id/textData"
             android:layout_width="300dp"
             android:layout_height="wrap_content"
+            android:layout_marginLeft="20dp"
             android:layout_marginTop="20dp"
+            android:layout_marginRight="20dp"
             android:gravity="center"
-            android:textColor="#000000"
+            android:textColor="@color/text_color"
             android:textSize="20sp" />
 
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="2px"
+            android:layout_marginTop="20dp"
+            android:background="@color/line_bg" />
 
         <LinearLayout
             android:layout_width="match_parent"
@@ -33,16 +40,15 @@
 
             <TextView
                 android:id="@+id/cannel"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginTop="20dp"
-                android:background="@drawable/base_login_btn"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/dialog_btn_height"
+                android:gravity="center"
                 android:paddingLeft="15dp"
                 android:paddingTop="5dp"
                 android:paddingRight="15dp"
                 android:paddingBottom="5dp"
-                android:textColor="#000000"
-                android:text="纭"
+                android:text="纭�      璁�"
+                android:textColor="@color/dialog_btn"
                 android:textSize="20sp" />
 
 
diff --git a/baselibrary/src/main/res/values/colors.xml b/baselibrary/src/main/res/values/colors.xml
index 2c3e493..066e6bf 100644
--- a/baselibrary/src/main/res/values/colors.xml
+++ b/baselibrary/src/main/res/values/colors.xml
@@ -31,4 +31,8 @@
     <color name="choose_grey">#cdcdcd</color>
 
     <color name="title_bar_bg">#ffffff</color>
+    <color name="line_bg">#DADADA</color>
+    <color name="dialog_btn">#1FA9EC</color>
+    <color name="edite_bg">#F5F5F5</color>
+    <color name="text_color">#696969</color>
 </resources>
\ No newline at end of file
diff --git a/baselibrary/src/main/res/values/dimens.xml b/baselibrary/src/main/res/values/dimens.xml
index 7f1ca6e..4437375 100644
--- a/baselibrary/src/main/res/values/dimens.xml
+++ b/baselibrary/src/main/res/values/dimens.xml
@@ -12,4 +12,6 @@
     <dimen name="dimen_title_text_size">19sp</dimen>
     <dimen name="picker_view_height">160dp</dimen>
     <dimen name="date_unit_text_size">18sp</dimen>
+    <dimen name="dialog_btn_height">45dp</dimen>
+    <dimen name="dialog_bg_margin">30dp</dimen>
 </resources>
diff --git a/henanlibrary/CMakeLists.txt b/henanlibrary/CMakeLists.txt
index f8e6e8b..9a81693 100644
--- a/henanlibrary/CMakeLists.txt
+++ b/henanlibrary/CMakeLists.txt
@@ -11,13 +11,13 @@
 # Gradle automatically packages shared libraries with your APK.
 
 add_library( # Sets the name of the library.
-             native-lib
+        henan-native-lib
 
              # Sets the library as a shared library.
              SHARED
 
              # Provides a relative path to your source file(s).
-             src/main/cpp/native-lib.cpp )
+             src/main/cpp/henan-native-lib.cpp )
 
 # Searches for a specified prebuilt library and stores the path as a
 # variable. Because CMake includes system libraries in the search path by
@@ -37,7 +37,7 @@
 # build script, prebuilt third-party libraries, or system libraries.
 
 target_link_libraries( # Specifies the target library.
-                       native-lib
+        henan-native-lib
 
                        # Links the target library to the log library
                        # included in the NDK.
diff --git a/henanlibrary/src/main/cpp/native-lib.cpp b/henanlibrary/src/main/cpp/henan-native-lib.cpp
similarity index 100%
rename from henanlibrary/src/main/cpp/native-lib.cpp
rename to henanlibrary/src/main/cpp/henan-native-lib.cpp
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/HeNanApplication.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/HeNanApplication.java
index fd42620..da8e2ad 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/HeNanApplication.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/HeNanApplication.java
@@ -11,7 +11,7 @@
 import com.dayu.baselibrary.utils.CRC8;
 import com.dayu.henanlibrary.utils.DeviceNumberUtils;
 import com.dayu.baselibrary.utils.ToastUtil;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 import com.dayu.henanlibrary.dbBean.IpBean;
 import com.dayu.henanlibrary.net.CallbackIDFactoryImpl;
 import com.dayu.henanlibrary.net.ScoketMessageProtocol;
@@ -60,7 +60,7 @@
         try {
 //            this.createBack = createBack;
             try {
-                ipBean = BaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).ipDao().findFirst();
+                ipBean = HNBaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).ipDao().findFirst();
             } catch (Exception e) {
                 e.printStackTrace();
             }
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HNBaseActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HNBaseActivity.java
index 30e5444..185b291 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HNBaseActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HNBaseActivity.java
@@ -7,7 +7,7 @@
 import com.dayu.baselibrary.view.TitleBar;
 import com.dayu.henanlibrary.R;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 
 /**
  * Created by zuoxiao on 2018/12/20.
@@ -25,8 +25,8 @@
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        baseDao = BaseDaoSingleton.getInstance(this);
-        asynchBaseDao = BaseDaoSingleton.getAsynchInstance(this);
+        baseDao = HNBaseDaoSingleton.getInstance(this);
+        asynchBaseDao = HNBaseDaoSingleton.getAsynchInstance(this);
     }
 
 
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java
index 1438c35..6ef2a30 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java
@@ -8,7 +8,7 @@
 import com.dayu.baselibrary.view.ChooseView;
 import com.dayu.henanlibrary.databinding.ActivityIdentyfyingBinding;
 import com.dayu.henanlibrary.dbBean.CardData;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.util.Arrays;
 
@@ -73,66 +73,66 @@
 
         switch (data) {
             case "绠$悊鍗�":
-                cardType = MyCommon.MANAGE_CRAD;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.MANAGE_CRAD);
+                cardType = CardCommon.MANAGE_CRAD;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.MANAGE_CRAD);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "娓呴浂鍗�":
-                cardType = MyCommon.CLEAN_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CLEAN_CARD_TYPE);
+                cardType = CardCommon.CLEAN_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CLEAN_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "閲嶆柊娉ㄥ唽璁惧鍗�":
-                cardType = MyCommon.REGISTERED_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.REGISTERED_CARD_TYPE);
+                cardType = CardCommon.REGISTERED_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.REGISTERED_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�":
-                cardType = MyCommon.CLEAN_ALL_USER_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CLEAN_ALL_USER_CARD_TYPE);
+                cardType = CardCommon.CLEAN_ALL_USER_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CLEAN_ALL_USER_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "娴嬭瘯鍗�":
-                cardType = MyCommon.TEST_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.TEST_CARD_TYPE);
+                cardType = CardCommon.TEST_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.TEST_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "璁惧淇℃伅鍗�":
-                cardType = MyCommon.CONFIGURATION_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CONFIGURATION_CARD_TYPE);
+                cardType = CardCommon.CONFIGURATION_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CONFIGURATION_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
             case "姘存车鍔熺巼鍗�":
-                cardType = MyCommon.CONFIGURATION_POWER_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CONFIGURATION_POWER_CARD_TYPE);
+                cardType = CardCommon.CONFIGURATION_POWER_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CONFIGURATION_POWER_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
-                    binding.electricOldNumber.setText(MyCommon.getDefaultCardData(cardType));
+                    binding.electricOldNumber.setText(CardCommon.getDefaultCardData(cardType));
                 }
                 break;
         }
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
index 61f6f6c..007bbb1 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
@@ -14,11 +14,9 @@
 import com.dayu.baselibrary.utils.AidlUtil;
 import com.dayu.baselibrary.utils.CRC8;
 import com.dayu.baselibrary.utils.DateUtil;
-import com.dayu.baselibrary.view.TitleBar;
-import com.dayu.henanlibrary.utils.DeviceNumberUtils;
 import com.dayu.baselibrary.utils.MornyUtil;
 import com.dayu.baselibrary.utils.TipUtil;
-import com.dayu.henanlibrary.HeNanApplication;
+import com.dayu.baselibrary.view.TitleBar;
 import com.dayu.henanlibrary.card.CleanCard;
 import com.dayu.henanlibrary.card.CleanUserCard;
 import com.dayu.henanlibrary.card.ConfigurationPowerCard;
@@ -41,9 +39,10 @@
 import com.dayu.henanlibrary.tools.NFCWriteHelper;
 import com.dayu.henanlibrary.tools.NfcReadHelper;
 import com.dayu.henanlibrary.tools.WriteCardUtils;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.DeviceNumberUtils;
+import com.dayu.henanlibrary.utils.CardCommon;
 import com.dayu.henanlibrary.utils.SocketUtil;
-import com.dayu.henanlibrary.view.ConfirmDialog;
+import com.dayu.baselibrary.view.ConfirmDialog;
 import com.dayu.henanlibrary.view.ProgressDialog;
 import com.tencent.bugly.crashreport.CrashReport;
 
@@ -248,9 +247,9 @@
 
         String cardType = NfcReadHelper.getInstence(intent, this).getCradType();
         Log.i("NFCWreatActivity", "cardType=" + cardType);
-        if (cardType.equals(MyCommon.USER_CARD_TYPE_1) ||
-                cardType.equals(MyCommon.USER_CARD_TYPE_2) ||
-                cardType.equals(MyCommon.USER_CARD_TYPE_3)
+        if (cardType.equals(CardCommon.USER_CARD_TYPE_1) ||
+                cardType.equals(CardCommon.USER_CARD_TYPE_2) ||
+                cardType.equals(CardCommon.USER_CARD_TYPE_3)
         ) {
             binding.textView.setText("璇ュ崱宸茬粡鍐欏叆鐢ㄦ埛淇℃伅锛岃鏇存崲鍗$墖");
             binding.textView.setTextColor(getResources().getColor(com.dayu.baselibrary.R.color.red));
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 b8b9448..59485dd 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
@@ -23,7 +23,7 @@
 import com.dayu.henanlibrary.socketBean.BalanceSelecteRequestBean;
 import com.dayu.henanlibrary.tools.NfcReadHelper;
 import com.dayu.henanlibrary.tools.WriteCardUtils;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 import com.dayu.henanlibrary.utils.SocketUtil;
 import com.dayu.henanlibrary.view.ProgressDialog;
 
@@ -102,51 +102,51 @@
                             byte cardType = data.get(0)[0];
                             String cardTypeStr = HexUtil.byteToHex(cardType);
                             switch (cardTypeStr) {
-                                case MyCommon.USER_CARD_TYPE_1:
-                                case MyCommon.USER_CARD_TYPE_2:
-                                case MyCommon.USER_CARD_TYPE_3:
+                                case CardCommon.USER_CARD_TYPE_1:
+                                case CardCommon.USER_CARD_TYPE_2:
+                                case CardCommon.USER_CARD_TYPE_3:
                                     userCard = UserCard.getBean(data);
                                     selectBalance(userCard.getInitPeasantCode());
                                     break;
-                                case MyCommon.MANAGE_CRAD:
+                                case CardCommon.MANAGE_CRAD:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓虹鐞嗗崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CLEAN_CARD_TYPE:
+                                case CardCommon.CLEAN_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓烘竻闆跺崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.REGISTERED_CARD_TYPE:
+                                case CardCommon.REGISTERED_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓洪噸鏂版敞鍐岃澶囧崱");
                                     stopAnim();
 
                                     break;
-                                case MyCommon.CLEAN_ALL_USER_CARD_TYPE:
+                                case CardCommon.CLEAN_ALL_USER_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓哄垹闄ゅ叏閮ㄧ敤鎴峰崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.DOMAIN_CARD_TYPE:
+                                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());
                                     stopAnim();
                                     break;
-                                case MyCommon.TEST_CARD_TYPE:
+                                case CardCommon.TEST_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓烘祴璇曞崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CONFIGURATION_CARD_TYPE:
+                                case CardCommon.CONFIGURATION_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓洪厤缃澶囨敞鍐屼俊鎭崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CONFIGURATION_POWER_CARD_TYPE:
+                                case CardCommon.CONFIGURATION_POWER_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠閰嶇疆姘存车鍔熺巼鍗�");
                                     ConfigurationPowerCard powerCard = ConfigurationPowerCard.toBean(data.get(0));
@@ -169,7 +169,7 @@
                     @Override
                     public void error(int code) {
                         switch (code) {
-                            case MyCommon.ERROR_MOVE:
+                            case CardCommon.ERROR_MOVE:
                                 stopAnim();
                                 TipUtil.show("杩炴帴涓柇锛岃閲嶆柊璐村悎鍗$墖");
                                 break;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/BaseCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/BaseCard.java
index e296bc0..005af9c 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/BaseCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/BaseCard.java
@@ -3,7 +3,7 @@
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
 import com.dayu.henanlibrary.dbBean.CardData;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -23,7 +23,7 @@
             if (cardDataBean != null) {
                 cardData = cardDataBean.getCardIdentifying();
             } else {
-                cardData= MyCommon.getDefaultCardData(cardType);
+                cardData= CardCommon.getDefaultCardData(cardType);
             }
         } catch (Exception e) {
             CrashReport.postCatchedException(e);
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanCard.java
index a12ee5b..e871a9c 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description:娓呴浂鍗�
  */
 public class CleanCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CLEAN_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CLEAN_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanUserCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanUserCard.java
index 952488e..9eb2109 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanUserCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/CleanUserCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description:鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�
  */
 public class CleanUserCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CLEAN_ALL_USER_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CLEAN_ALL_USER_CARD_TYPE;//鍗$被鍨�
 
     public byte[] toByte(AppDatabase appDatabase) {
         setCardData(appDatabase, cardType);
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigurationPowerCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigurationPowerCard.java
index 1e97bd5..fdb555f 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigurationPowerCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigurationPowerCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -19,7 +19,7 @@
 public class ConfigurationPowerCard extends BaseCard implements Serializable {
 
 
-    public String cardType = MyCommon.CONFIGURATION_POWER_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CONFIGURATION_POWER_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigureDeviceRegistrationCrad.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigureDeviceRegistrationCrad.java
index 2a720e5..8355a46 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigureDeviceRegistrationCrad.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ConfigureDeviceRegistrationCrad.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -16,7 +16,7 @@
  * 涓烘柟渚跨幇鍦烘洿鎹㈣澶囨椂閲嶆柊娉ㄥ唽鐨勯棶棰橈紝閰嶇疆璁惧淇℃伅鍗★紝棣栧厛鍒峰崱锛屾妸鍘熻澶囩殑娉ㄥ唽鍙峰拰ID鍙疯鍒板崱鍐咃紝鍚屾椂鍗$姸鎬佸垯00淇敼涓篎F锛屽啀鏂拌澶囦笂鍒锋鍗℃椂锛屾敞鍐屽彿鍜孖D鍙疯嚜鍔ㄥ啓鍒版帶鍒跺櫒鍐咃紝鍙互鐩存帴鍒峰崱浣跨敤
  */
 public class ConfigureDeviceRegistrationCrad extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CONFIGURATION_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CONFIGURATION_CARD_TYPE;//鍗$被鍨�
     public String cardData = "A0B1C289";//鏍囪瘑鐮�
 
     public String getCardData() {
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
index f395263..b686627 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/DomainCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.BcdUtil;
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -19,7 +19,7 @@
 public class DomainCard implements Serializable {
 
 
-    public String cardType = MyCommon.DOMAIN_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.DOMAIN_CARD_TYPE;//鍗$被鍨�
     public String domainNumber;//鍩熷悕搴忓彿 (BCD鏍煎紡)
     public int domainLength;//鍩熷悕闀垮害
 
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ManageCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ManageCard.java
index 932c3c0..9c570fa 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ManageCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/ManageCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description: 绠$悊鍗�  绗�1鎵囧尯 0鍧�
  */
 public class ManageCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.MANAGE_CRAD;//鍗$被鍨�
+    public String cardType = CardCommon.MANAGE_CRAD;//鍗$被鍨�
 //    public String cardData = "3668F7A30119";//鏍囪瘑鐮�
 
     public String getCardData() {
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/PassWordCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/PassWordCard.java
index 3a38290..921e870 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/PassWordCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/PassWordCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description:瀵嗙爜鍗�
  */
 public class PassWordCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.PASS_WORD_CRAD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.PASS_WORD_CRAD_TYPE;//鍗$被鍨�
 
     public byte[] toByte(AppDatabase appDatabase) {
         setCardData(appDatabase, cardType);
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/RegisteredCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/RegisteredCard.java
index c1e111b..03c7bf3 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/RegisteredCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/RegisteredCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description:閲嶆柊娉ㄥ唽璁惧鍗★細鐢ㄤ簬鍐欑敤鎴锋敞鍐屽彿
  */
 public class RegisteredCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.REGISTERED_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.REGISTERED_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/TestCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/TestCard.java
index a42c818..902471b 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/TestCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/TestCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.dao.AppDatabase;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description: 娴嬭瘯鍗�
  */
 public class TestCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.TEST_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.TEST_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/UserCard.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/UserCard.java
index dd5a379..f009b25 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/card/UserCard.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/card/UserCard.java
@@ -2,7 +2,7 @@
 
 import com.dayu.baselibrary.tools.BcdUtil;
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.Serializable;
 import java.util.Calendar;
@@ -15,7 +15,7 @@
  * Description: 鐢ㄦ埛鍗$粨鏋�
  */
 public class UserCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.USER_CARD_TYPE_1;//鍐欏崱鏍囧織 A1鍒峰崱寮�娉靛墠 A8鍒峰崱寮�娉靛悗  A2鍙犲姞鍏呭��
+    public String cardType = CardCommon.USER_CARD_TYPE_1;//鍐欏崱鏍囧織 A1鍒峰崱寮�娉靛墠 A8鍒峰崱寮�娉靛悗  A2鍙犲姞鍏呭��
 
     public int rechargeTimes;//鍏呭�兼鏁�
 
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/AppDatabase.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/AppDatabase.java
index 3f2fc02..e1dc339 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/AppDatabase.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/AppDatabase.java
@@ -21,7 +21,7 @@
  * Date: 2023-11-05 16:23
  * Description:
  */
-@Database(entities = {CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = 2, exportSchema = false)
+@Database(entities = {CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = com.dayu.baselibrary.dao.AppDatabase.version, exportSchema = false)
 public abstract class AppDatabase extends RoomDatabase {
 
 
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/HNBaseDaoSingleton.java
similarity index 64%
copy from henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java
copy to henanlibrary/src/main/java/com/dayu/henanlibrary/dao/HNBaseDaoSingleton.java
index 22b6306..f6da258 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/BaseDaoSingleton.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/dao/HNBaseDaoSingleton.java
@@ -3,7 +3,10 @@
 import android.content.Context;
 import android.os.Environment;
 
+import androidx.annotation.NonNull;
 import androidx.room.Room;
+import androidx.room.migration.Migration;
+import androidx.sqlite.db.SupportSQLiteDatabase;
 
 import java.io.File;
 
@@ -13,7 +16,7 @@
  * Date: 2023-11-06 16:58
  * Description: 鍒涘缓鏁版嵁搴撳疄渚�
  */
-public class BaseDaoSingleton {
+public class HNBaseDaoSingleton {
     public static AppDatabase baseDao;
     public static AppDatabase AsynchBaseDao;
     public static String SqlitePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + ".dayu" + File.separator + "data" + File.separator;
@@ -25,11 +28,19 @@
                     context,
                     AppDatabase.class,
                     SqlitePath + "ConfigurationData"
-            ).allowMainThreadQueries().build();
+            ).allowMainThreadQueries().addMigrations(migration_2_3).build();
         }
         return baseDao;
     }
+    static Migration migration_2_3 = new Migration(2, 3) {
+        @Override
+        public void migrate(@NonNull SupportSQLiteDatabase database) {
+            // 鍦ㄦ澶勭紪鍐欎粠鐗堟湰 2 鍒扮増鏈� 3 鐨勮縼绉婚�昏緫
+            // 渚嬪锛屼綘鍙互鎵ц SQL 鍛戒护鏉ヤ慨鏀硅〃缁撴瀯锛岃縼绉绘暟鎹瓑鎿嶄綔
 
+            // 濡傛灉闇�瑕侊紝浣犺繕鍙互鎵ц鍏朵粬鐨� SQL 鍛戒护鏉ヨ縼绉绘暟鎹瓑鎿嶄綔
+        }
+    };
     public static AppDatabase getAsynchInstance(Context context) {
 
         if (AsynchBaseDao == null) {
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/net/SocketNet.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/net/SocketNet.java
index 32089a3..b4c6079 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/net/SocketNet.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/net/SocketNet.java
@@ -8,7 +8,7 @@
 
 import com.dayu.henanlibrary.HeNanApplication;
 import com.dayu.henanlibrary.activity.HomeActivity;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 import com.dayu.henanlibrary.dbBean.AdminDataBean;
 import com.easysocket.EasySocket;
 import com.easysocket.callback.SimpleCallBack;
@@ -146,7 +146,7 @@
             Log.i("SocketActionListener1111", "杩炴帴鎴愬姛");
             HeNanApplication.myApplication.isConncet = true;
             try {
-                AdminDataBean adminData = BaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).adminDao().findFirst();
+                AdminDataBean adminData = HNBaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).adminDao().findFirst();
                 Log.i("SocketActionListener1111", "isDoInitMachine==" + HeNanApplication.myApplication.isDoInitMachine + "");
                 //姣忔杩炴帴鎴愬姛娉ㄥ唽涓�娆¤澶�
                 if (!HeNanApplication.myApplication.isDoInitMachine) {
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/tools/NfcReadHelper.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/tools/NfcReadHelper.java
index 05b26f1..171bd43 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/tools/NfcReadHelper.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/tools/NfcReadHelper.java
@@ -9,7 +9,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.henanlibrary.card.UserCard;
-import com.dayu.henanlibrary.utils.MyCommon;
+import com.dayu.henanlibrary.utils.CardCommon;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -198,13 +198,13 @@
                 if (flag) {
                     callback.callBack(map);
                 } else {
-                    callback.error(MyCommon.ERROR);
+                    callback.error(CardCommon.ERROR);
                 }
             } catch (IOException e) {
-                callback.error(MyCommon.ERROR_MOVE);
+                callback.error(CardCommon.ERROR_MOVE);
                 e.printStackTrace();
             } catch (Exception e) {
-                callback.error(MyCommon.ERROR);
+                callback.error(CardCommon.ERROR);
                 e.printStackTrace();
             } finally {
                 try {
@@ -265,13 +265,13 @@
                 if (flag) {
                     callback.callBack(list);
                 } else {
-                    callback.error(MyCommon.ERROR);
+                    callback.error(CardCommon.ERROR);
                 }
             } catch (IOException e) {
-                callback.error(MyCommon.ERROR_MOVE);
+                callback.error(CardCommon.ERROR_MOVE);
                 e.printStackTrace();
             } catch (Exception e) {
-                callback.error(MyCommon.ERROR);
+                callback.error(CardCommon.ERROR);
                 e.printStackTrace();
             } finally {
 
@@ -303,12 +303,12 @@
                         mfc.connect();
                         int count = mfc.getSectorCount();
                         if (a < 0 || a > count - 1) {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                             return;
                         }
                         int bCount = mfc.getBlockCountInSector(a);
                         if (b < 0 || b > bCount - 1) {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                             return;
                         }
 
@@ -337,13 +337,13 @@
                             byte[] data = mfc.readBlock(bIndex + b);
                             callback.callBack(data);
                         } else {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                         }
                     } catch (IOException e) {
-                        callback.error(MyCommon.ERROR_MOVE);
+                        callback.error(CardCommon.ERROR_MOVE);
                         e.printStackTrace();
                     } catch (Exception e) {
-                        callback.error(MyCommon.ERROR);
+                        callback.error(CardCommon.ERROR);
                     } finally {
                         try {
                             mfc.close();
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/MyCommon.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/CardCommon.java
similarity index 97%
rename from henanlibrary/src/main/java/com/dayu/henanlibrary/utils/MyCommon.java
rename to henanlibrary/src/main/java/com/dayu/henanlibrary/utils/CardCommon.java
index 1b7569a..28a4d09 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/MyCommon.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/CardCommon.java
@@ -4,9 +4,9 @@
  * Copyright (C), 2023,
  * Author: zuo
  * Date: 2023-11-06 20:22
- * Description:
+ * Description: 鍗$被鍨�
  */
-public class MyCommon {
+public class CardCommon {
 
     public static final int ERROR = -1;
     //杩炴帴涓柇 鎻愮ず鐢ㄦ埛閲嶆柊杩炴帴鎴栨彁绀虹敤鎴烽噸鏂伴潬杩戝崱鐗�
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/DeviceNumberUtils.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/DeviceNumberUtils.java
index 49a487c..744eb0b 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/DeviceNumberUtils.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/DeviceNumberUtils.java
@@ -1,7 +1,7 @@
 package com.dayu.henanlibrary.utils;
 
 import com.dayu.henanlibrary.HeNanApplication;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 import com.dayu.henanlibrary.dbBean.DeviceNumber;
 
 /**
@@ -15,7 +15,7 @@
 
     //   鑾峰彇鍏呭�兼満璁惧搴忓垪鍙�
     public static String getDeviceNumber() {
-        DeviceNumber deviceNumber = BaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().findFirst();
+        DeviceNumber deviceNumber = HNBaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().findFirst();
         if (deviceNumber != null) {
             return deviceNumber.getDeviceRegistrationNumber();
         } else {
@@ -25,13 +25,13 @@
 
     //    璁剧疆鍏呭�兼満璁惧搴忓垪鍙�
     public static void setDeviceNumber(String deviceRegistrationNumber) {
-        DeviceNumber deviceNumber = BaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().findFirst();
+        DeviceNumber deviceNumber = HNBaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().findFirst();
         if (deviceNumber != null) {
             deviceNumber.setDeviceRegistrationNumber(deviceRegistrationNumber);
         } else {
             deviceNumber = new DeviceNumber();
             deviceNumber.setDeviceRegistrationNumber(deviceRegistrationNumber);
         }
-        BaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().insert(deviceNumber);
+        HNBaseDaoSingleton.getInstance(HeNanApplication.myApplication.application).deviceNumberDao().insert(deviceNumber);
     }
 }
diff --git a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/SocketUtil.java b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/SocketUtil.java
index 7ecc31a..2698428 100644
--- a/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/SocketUtil.java
+++ b/henanlibrary/src/main/java/com/dayu/henanlibrary/utils/SocketUtil.java
@@ -5,7 +5,7 @@
 import android.os.Message;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.henanlibrary.dao.BaseDaoSingleton;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
 import com.dayu.henanlibrary.dbBean.AdminDataBean;
 
 import java.io.UnsupportedEncodingException;
@@ -223,7 +223,7 @@
 
         String xuLie = "";
         try {
-            AdminDataBean villageNo = BaseDaoSingleton.getInstance(context).adminDao().findFirst();
+            AdminDataBean villageNo = HNBaseDaoSingleton.getInstance(context).adminDao().findFirst();
             if (villageNo != null) {
                 xuLie = SocketUtil.get10to16LowHigh(Integer.valueOf(villageNo.getSerial()), 6);
             }
@@ -454,7 +454,7 @@
     public static String getOrderId(Context context) {
         String orderId = "000000000001";
         try {
-            AdminDataBean villageNo = BaseDaoSingleton.getInstance(context).adminDao().findFirst();
+            AdminDataBean villageNo = HNBaseDaoSingleton.getInstance(context).adminDao().findFirst();
 //            String orderNo = WSHelper.getInstance(context).get(OrderNo, 1) + "";
             String orderNo = generateNumber8();
             if (villageNo != null) {
diff --git a/henanlibrary/src/main/res/layout/activity_home.xml b/henanlibrary/src/main/res/layout/activity_home.xml
index a3e5a9b..9f99a4c 100644
--- a/henanlibrary/src/main/res/layout/activity_home.xml
+++ b/henanlibrary/src/main/res/layout/activity_home.xml
@@ -10,7 +10,7 @@
         android:layout_width="match_parent"
         android:layout_height="@dimen/dimen_title_height"
         android:background="@color/title_bar_bg"
-        app:centerText="棣栭〉" />
+        app:centerText="娌冲崡鐗堥椤�" />
 
     <LinearLayout
         android:layout_width="match_parent"
diff --git a/henanlibrary/src/main/res/layout/confirm_dialog.xml b/henanlibrary/src/main/res/layout/confirm_dialog.xml
deleted file mode 100644
index 811c8c2..0000000
--- a/henanlibrary/src/main/res/layout/confirm_dialog.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:background="#00ffffff"
-    android:gravity="center"
-    android:orientation="vertical">
-
-    <LinearLayout
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:background="@drawable/base_bg_dialog_top_stroke"
-        android:gravity="center"
-        android:orientation="vertical"
-        android:padding="20dp">
-
-        <TextView
-            android:id="@+id/confirm_data"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="杩樻湭鍐欏崱锛侊紒锛乗n鎮ㄧ‘璁ら��鍑哄悧锛�"
-            android:gravity="center"
-            android:textColor="#000000"
-            android:textSize="22sp" />
-
-
-        <LinearLayout
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:orientation="horizontal">
-
-            <Button
-                android:id="@+id/confirm_cancel"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_marginTop="20dp"
-                android:paddingLeft="30dp"
-                android:paddingTop="5dp"
-                android:background="@drawable/button_custom"
-                android:paddingRight="30dp"
-                android:paddingBottom="5dp"
-                android:text="鍙栨秷"
-                android:textColor="#000000"
-                android:textSize="@dimen/text_size" />
-
-            <Button
-                android:id="@+id/confirm_ok"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:background="@drawable/button_custom"
-                android:layout_marginLeft="70dp"
-                android:layout_marginTop="20dp"
-                android:paddingLeft="30dp"
-                android:paddingTop="5dp"
-                android:paddingRight="30dp"
-                android:paddingBottom="5dp"
-                android:text="纭"
-                android:textColor="#000000"
-                android:textSize="@dimen/text_size" />
-
-        </LinearLayout>
-
-
-    </LinearLayout>
-
-</LinearLayout>
-
diff --git a/qihealonelibrary/CMakeLists.txt b/qihealonelibrary/CMakeLists.txt
index f8e6e8b..6a1fdb0 100644
--- a/qihealonelibrary/CMakeLists.txt
+++ b/qihealonelibrary/CMakeLists.txt
@@ -11,13 +11,13 @@
 # Gradle automatically packages shared libraries with your APK.
 
 add_library( # Sets the name of the library.
-             native-lib
+        qihealone-native-lib
 
              # Sets the library as a shared library.
              SHARED
 
              # Provides a relative path to your source file(s).
-             src/main/cpp/native-lib.cpp )
+             src/main/cpp/qihealone-native-lib.cpp )
 
 # Searches for a specified prebuilt library and stores the path as a
 # variable. Because CMake includes system libraries in the search path by
@@ -37,7 +37,7 @@
 # build script, prebuilt third-party libraries, or system libraries.
 
 target_link_libraries( # Specifies the target library.
-                       native-lib
+        qihealone-native-lib
 
                        # Links the target library to the log library
                        # included in the NDK.
diff --git a/qihealonelibrary/src/androidTest/java/com/dayu/qihealonelibrary/ExampleInstrumentedTest.java b/qihealonelibrary/src/androidTest/java/com/dayu/qihealonelibrary/ExampleInstrumentedTest.java
index bb6b318..3206f8f 100644
--- a/qihealonelibrary/src/androidTest/java/com/dayu/qihealonelibrary/ExampleInstrumentedTest.java
+++ b/qihealonelibrary/src/androidTest/java/com/dayu/qihealonelibrary/ExampleInstrumentedTest.java
@@ -1,26 +1,17 @@
 package com.dayu.qihealonelibrary;
 
-import android.content.Context;
-
-import androidx.test.platform.app.InstrumentationRegistry;
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import static org.junit.Assert.*;
 
 /**
  * Instrumented test, which will execute on an Android device.
  *
  * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
  */
-@RunWith(AndroidJUnit4.class)
+//@RunWith(AndroidJUnit4.class)
 public class ExampleInstrumentedTest {
-    @Test
-    public void useAppContext() {
-        // Context of the app under test.
-        Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
-        assertEquals("com.dayu.qihealonelibrary", appContext.getPackageName());
-    }
+//    @Test
+//    public void useAppContext() {
+//        // Context of the app under test.
+//        Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
+//        assertEquals("com.dayu.qihealonelibrary", appContext.getPackageName());
+//    }
 }
\ No newline at end of file
diff --git a/qihealonelibrary/src/main/AndroidManifest.xml b/qihealonelibrary/src/main/AndroidManifest.xml
index f8bcd1e..4328df0 100644
--- a/qihealonelibrary/src/main/AndroidManifest.xml
+++ b/qihealonelibrary/src/main/AndroidManifest.xml
@@ -3,10 +3,80 @@
 
     <application
         android:allowBackup="true"
-        android:icon="@mipmap/ic_launcher"
         android:label="@string/app_name"
-        android:roundIcon="@mipmap/ic_launcher_round"
-        android:supportsRtl="true"
-         />
+        android:supportsRtl="true">
+
+
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.AdminSetupActivity"
+            android:exported="true">
+
+        </activity>
+
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.HomeActivity"
+            android:exported="true">
+
+        </activity>
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.NewCardActivity"
+            android:exported="true"
+            android:launchMode="singleTop"
+            android:screenOrientation="portrait">
+            <intent-filter>
+                <action android:name="android.nfc.action.TAG_DISCOVERED" />
+                <data android:mimeType="text/plain" />
+            </intent-filter>
+        </activity>
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.SysActivity"
+            android:exported="true">
+
+        </activity>
+
+        <activity android:name="com.dayu.qihealonelibrary.activity.PassWordActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.MyActivity" />
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.RechargeActivity"
+            android:exported="true"
+            android:launchMode="singleTop">
+            <intent-filter>
+                <action android:name="android.nfc.action.TAG_DISCOVERED" />
+                <data android:mimeType="text/plain" />
+            </intent-filter>
+        </activity>
+
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.ReadCardAcitivy"
+            android:exported="true"
+            android:launchMode="singleTop">
+            <intent-filter>
+                <action android:name="android.nfc.action.ACTION_NDEF_DISCOVERED" />
+                <category android:name="android.intent.category.DEFAULT" />
+                <data android:mimeType="text/plain" />
+            </intent-filter>
+        </activity>
+        <activity
+            android:name="com.dayu.qihealonelibrary.activity.NFCWreatActivity"
+            android:exported="true"
+            android:launchMode="singleTop">
+            <intent-filter>
+                <action android:name="android.nfc.action.TAG_DISCOVERED" />
+                <data android:mimeType="text/plain" />
+            </intent-filter>
+        </activity>
+        <activity android:name="com.dayu.qihealonelibrary.activity.RechargeListActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.NewCardListActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.ParameterActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.PowerActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.DomainActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.ElectricPriceActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.IdentifyingActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.ReplacementActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.RechargeDetail" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.PasswordCardActivity" />
+        <activity android:name="com.dayu.qihealonelibrary.activity.RegionActivity" />
+
+    </application>
 
 </manifest>
\ No newline at end of file
diff --git a/qihealonelibrary/src/main/cpp/native-lib.cpp b/qihealonelibrary/src/main/cpp/qihealone-native-lib.cpp
similarity index 100%
rename from qihealonelibrary/src/main/cpp/native-lib.cpp
rename to qihealonelibrary/src/main/cpp/qihealone-native-lib.cpp
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java
index 2cf4b1a..fcdf977 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java
@@ -17,7 +17,7 @@
 import com.dayu.qihealonelibrary.dbBean.CardData;
 import com.dayu.qihealonelibrary.dbBean.IdentityBean;
 
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.util.Arrays;
 
@@ -90,8 +90,8 @@
 
         switch (data) {
             case "绠$悊鍗�":
-                cardType = MyCommon.MANAGE_CRAD;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.MANAGE_CRAD);
+                cardType = CardCommon.MANAGE_CRAD;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.MANAGE_CRAD);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -99,8 +99,8 @@
                 }
                 break;
             case "娓呴浂鍗�":
-                cardType = MyCommon.CLEAN_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CLEAN_CARD_TYPE);
+                cardType = CardCommon.CLEAN_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CLEAN_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -108,8 +108,8 @@
                 }
                 break;
             case "閲嶆柊娉ㄥ唽璁惧鍗�":
-                cardType = MyCommon.REGISTERED_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.REGISTERED_CARD_TYPE);
+                cardType = CardCommon.REGISTERED_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.REGISTERED_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -117,8 +117,8 @@
                 }
                 break;
             case "鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�":
-                cardType = MyCommon.CLEAN_ALL_USER_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CLEAN_ALL_USER_CARD_TYPE);
+                cardType = CardCommon.CLEAN_ALL_USER_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CLEAN_ALL_USER_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -126,8 +126,8 @@
                 }
                 break;
             case "娴嬭瘯鍗�":
-                cardType = MyCommon.TEST_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.TEST_CARD_TYPE);
+                cardType = CardCommon.TEST_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.TEST_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -135,8 +135,8 @@
                 }
                 break;
             case "璁惧淇℃伅鍗�":
-                cardType = MyCommon.CONFIGURATION_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CONFIGURATION_CARD_TYPE);
+                cardType = CardCommon.CONFIGURATION_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CONFIGURATION_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
@@ -144,8 +144,8 @@
                 }
                 break;
             case "姘存车鍔熺巼鍗�":
-                cardType = MyCommon.CONFIGURATION_POWER_CARD_TYPE;
-                cardData = baseDao.cardDataDao().findFirst(MyCommon.CONFIGURATION_POWER_CARD_TYPE);
+                cardType = CardCommon.CONFIGURATION_POWER_CARD_TYPE;
+                cardData = baseDao.cardDataDao().findFirst(CardCommon.CONFIGURATION_POWER_CARD_TYPE);
                 if (cardData != null) {
                     setData(cardData);
                 } else {
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
index e927b75..2fca011 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
@@ -12,7 +12,6 @@
 import com.dayu.baselibrary.utils.TipUtil;
 
 import com.dayu.qihealonelibrary.QHAloneApplication;
-import com.dayu.qihealonelibrary.R;
 import com.dayu.qihealonelibrary.card.CleanCard;
 import com.dayu.qihealonelibrary.card.CleanUserCard;
 import com.dayu.qihealonelibrary.card.ConfigurationPowerCard;
@@ -29,10 +28,8 @@
 import com.dayu.qihealonelibrary.tools.NFCWriteHelper;
 import com.dayu.qihealonelibrary.tools.NfcReadHelper;
 import com.dayu.qihealonelibrary.tools.WriteCardUtils;
-import com.dayu.qihealonelibrary.utils.DeviceNumberUtils;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
-import java.util.Arrays;
 
 /**
  * Copyright (C), 2023,
@@ -179,9 +176,9 @@
 
         String cardType = NfcReadHelper.getInstence(intent, this).getCradType();
         Log.i("NFCWreatActivity", "cardType=" + cardType);
-        if (cardType.equals(MyCommon.USER_CARD_TYPE_1) ||
-                cardType.equals(MyCommon.USER_CARD_TYPE_2) ||
-                cardType.equals(MyCommon.USER_CARD_TYPE_3)
+        if (cardType.equals(CardCommon.USER_CARD_TYPE_1) ||
+                cardType.equals(CardCommon.USER_CARD_TYPE_2) ||
+                cardType.equals(CardCommon.USER_CARD_TYPE_3)
         ) {
             binding.textView.setText("璇ュ崱宸茬粡鍐欏叆鐢ㄦ埛淇℃伅锛岃鏇存崲鍗$墖");
             binding.textView.setTextColor(getResources().getColor(com.dayu.baselibrary.R.color.red));
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java
index b55ab6e..510bcda 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java
@@ -10,7 +10,7 @@
 import com.dayu.baselibrary.activity.BaseActivity;
 import com.dayu.baselibrary.view.TitleBar;
 import com.dayu.qihealonelibrary.R;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
 import com.dayu.qihealonelibrary.dao.BaseDaoSingleton;
 
 
@@ -23,9 +23,9 @@
 
     public TitleBar titleBar = null;
     //z涓荤嚎绋嬫煡璇�
-    public AppDatabase baseDao;
+    public QHAloneAppDatabase baseDao;
     //寮傛绾跨▼鏌ヨ
-    public AppDatabase asynchBaseDao;
+    public QHAloneAppDatabase asynchBaseDao;
     public final String SIGN = "308202b8308201a0020101300d06092a864886f70d01010b05003022310f300d06035504030c06e5a4a7e7a6b9310f300d06035504070c06e5a4a9e6b4a5301e170d3233313132303035333131325a170d3438313131333035333131325a3022310f300d06035504030c06e5a4a7e7a6b9310f300d06035504070c06e5a4a9e6b4a530820122300d06092a864886f70d01010105000382010f003082010a0282010100a0924f3d618e4a622def691e16e54ce5bdfd035bd73e7cb947d2bf3bd0c00afa26e52963e0299fc06d76d153be696c5285d630577e1dcb2b740a72b6d904482217de308fb91c8435441ed05e844ced1e5c3446d82cb8f38751049df26a42adcfc33f1f12c2ce03f676e5d148aad800ace89670b87835e2c02a8570a0b6740d9c0669d4cb3c597d0b2dd49fc0904e885773b6d3a87d9f1e73eb526e0d1a9e9e3c48d986938286cd824151b5a6214faf89d3e699524511b23c86d3b110a7f0bb56a6d2436f69816538a62a38cb1fee6eb685d267cc200df8af51b936bd280beaa2023f75678d77a11ac6de734b30af63d394c8b63bccf2115a47ea15c9212c740d0203010001300d06092a864886f70d01010b05000382010100307cafa9b14be91ba6424cfcc6aed75b069a1c4d6eb646eab0de93f372f236f5f0a6097499df99391075d6ced18d419a2b15adb041890e2b56a3bfbd6be40efee99c5c713ba8ea1d45da09b67916106116e96eb735271c4d53e0739f753145cbc42e149ad3d9507d422ec1c6f1a7f792a4542f9a64f0de3d4f4af69f0fb3390ef3577dcf8844cf744426d173b0934d879148062c5ca64022dc99af370dbfeaf2b5d4a279b20c54a361bca12c25bf185c2885519bbbc36e46ddb083080f0cc5b1f2eafe964ebce5071b0ae7d92a34a9193861b996d2c0299b1993f41063a27038199365a6e3cb27a02ffa9facdc48a63713eb5fbf90e9fd73056aba16b28e5fee";
 
     @Override
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java
index ec3a42a..fcbe209 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java
@@ -19,7 +19,7 @@
 
 import com.dayu.qihealonelibrary.tools.NfcReadHelper;
 
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.dayu.qihealonelibrary.view.ProgressDialog;
 
 import java.util.Calendar;
@@ -96,33 +96,33 @@
                             byte cardType = data.get(0)[0];
                             String cardTypeStr = HexUtil.byteToHex(cardType);
                             switch (cardTypeStr) {
-                                case MyCommon.USER_CARD_TYPE_1:
-                                case MyCommon.USER_CARD_TYPE_2:
-                                case MyCommon.USER_CARD_TYPE_3:
+                                case CardCommon.USER_CARD_TYPE_1:
+                                case CardCommon.USER_CARD_TYPE_2:
+                                case CardCommon.USER_CARD_TYPE_3:
                                     userCard = UserCard.getBean(data);
                                     break;
-                                case MyCommon.MANAGE_CRAD:
+                                case CardCommon.MANAGE_CRAD:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓虹鐞嗗崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CLEAN_CARD_TYPE:
+                                case CardCommon.CLEAN_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓烘竻闆跺崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.REGISTERED_CARD_TYPE:
+                                case CardCommon.REGISTERED_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓洪噸鏂版敞鍐岃澶囧崱");
                                     stopAnim();
 
                                     break;
-                                case MyCommon.CLEAN_ALL_USER_CARD_TYPE:
+                                case CardCommon.CLEAN_ALL_USER_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓哄垹闄ゅ叏閮ㄧ敤鎴峰崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.DOMAIN_CARD_TYPE:
+                                case CardCommon.DOMAIN_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓鸿缃煙鍚嶅崱");
                                     DomainCard domainCard = DomainCard.toBean(data);
@@ -130,30 +130,30 @@
                                     redCardBinding.readCardDataTV.setText("搴忓彿锛�" + domainCard.getDomainNumber() + "\n" + "鍩熷悕锛�" + domainCard.getDomainName() + "\n" + "绔彛鍙凤細" + domainCard.getPort());
                                     stopAnim();
                                     break;
-                                case MyCommon.TEST_CARD_TYPE:
+                                case CardCommon.TEST_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓烘祴璇曞崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CONFIGURATION_CARD_TYPE:
+                                case CardCommon.CONFIGURATION_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓洪厤缃澶囨敞鍐屼俊鎭崱");
                                     stopAnim();
                                     break;
-                                case MyCommon.CONFIGURATION_POWER_CARD_TYPE:
+                                case CardCommon.CONFIGURATION_POWER_CARD_TYPE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠閰嶇疆姘存车鍔熺巼鍗�");
                                     ConfigurationPowerCard powerCard = ConfigurationPowerCard.toBean(data.get(0));
                                     redCardBinding.readCardDataTV.setText(powerCard.getPower());
                                     stopAnim();
                                     break;
-                                case MyCommon.BLACK:
+                                case CardCommon.BLACK:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓洪粦鍗�");
                                     BlackCard blackCard = BlackCard.getBean(data);
                                     redCardBinding.readCardDataTV.setText("褰撳墠榛戝崱鐢ㄦ埛鍙蜂负锛�" + blackCard.getBlackCard());
                                     break;
-                                case MyCommon.REGION:
+                                case CardCommon.REGION:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓哄尯鍩熻〃鍙峰崱");
                                     RegionCard regionCard = RegionCard.getBean(data);
@@ -162,7 +162,7 @@
                                     stringBuilder.append("鎺у埗鍣ㄧ紪鍙凤細").append(regionCard.getControllerCodel()).append("\n");
                                     redCardBinding.readCardDataTV.setText(stringBuilder.toString());
                                     break;
-                                case MyCommon.ELECTRIC_PRICE:
+                                case CardCommon.ELECTRIC_PRICE:
                                     viweGone(false);
                                     redCardBinding.readCardTypeTV.setText("褰撳墠涓虹數閲忓崟浠峰崱");
                                     ElectricPriceCard electricPriceCard = ElectricPriceCard.getBean(data);
@@ -186,7 +186,7 @@
                     @Override
                     public void error(int code) {
                         switch (code) {
-                            case MyCommon.ERROR_MOVE:
+                            case CardCommon.ERROR_MOVE:
                                 stopAnim();
                                 TipUtil.show("杩炴帴涓柇锛岃閲嶆柊璐村悎鍗$墖");
                                 break;
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BaseCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BaseCard.java
index c26bc5b..376f2ac 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BaseCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BaseCard.java
@@ -1,9 +1,9 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
 import com.dayu.qihealonelibrary.dbBean.CardData;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -17,13 +17,13 @@
 public class BaseCard implements Serializable {
     public String cardData;//鏍囪瘑鐮�
 
-    public void setCardData(AppDatabase baseDao, String cardType) {
+    public void setCardData(QHAloneAppDatabase baseDao, String cardType) {
         try {
             CardData cardDataBean = baseDao.cardDataDao().findFirst(cardType);
             if (cardDataBean != null) {
                 cardData = cardDataBean.getCardIdentifying();
             } else {
-                cardData=MyCommon.getDefaultCardData(cardType);
+                cardData= CardCommon.getDefaultCardData(cardType);
             }
         } catch (Exception e) {
             CrashReport.postCatchedException(e);
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BlackCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BlackCard.java
index c39eeb7..282a7d3 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BlackCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/BlackCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 import java.util.List;
@@ -15,7 +15,7 @@
  */
 public class BlackCard extends BaseCard implements Serializable {
 
-    public String cardType = MyCommon.BLACK;
+    public String cardType = CardCommon.BLACK;
 
     public String blackCard;//榛戞埛鍗″彿
 
@@ -27,8 +27,8 @@
         this.blackCard = blackCard;
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanCard.java
index 02aad52..c43f672 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,15 +13,15 @@
  * Description:娓呴浂鍗�
  */
 public class CleanCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CLEAN_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CLEAN_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
     }
 
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanUserCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanUserCard.java
index c774cc0..d4390e4 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanUserCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/CleanUserCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,10 +13,10 @@
  * Description:鍒犻櫎鍏ㄩ儴鐢ㄦ埛鍗�
  */
 public class CleanUserCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CLEAN_ALL_USER_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CLEAN_ALL_USER_CARD_TYPE;//鍗$被鍨�
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigurationPowerCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigurationPowerCard.java
index 269a152..4609d98 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigurationPowerCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigurationPowerCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -19,7 +19,7 @@
 public class ConfigurationPowerCard extends BaseCard implements Serializable {
 
 
-    public String cardType = MyCommon.CONFIGURATION_POWER_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CONFIGURATION_POWER_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
@@ -49,8 +49,8 @@
         }
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase,cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase,cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigureDeviceRegistrationCrad.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigureDeviceRegistrationCrad.java
index 35c536d..f5173c0 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigureDeviceRegistrationCrad.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ConfigureDeviceRegistrationCrad.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -16,15 +16,15 @@
  * 涓烘柟渚跨幇鍦烘洿鎹㈣澶囨椂閲嶆柊娉ㄥ唽鐨勯棶棰橈紝閰嶇疆璁惧淇℃伅鍗★紝棣栧厛鍒峰崱锛屾妸鍘熻澶囩殑娉ㄥ唽鍙峰拰ID鍙疯鍒板崱鍐咃紝鍚屾椂鍗$姸鎬佸垯00淇敼涓篎F锛屽啀鏂拌澶囦笂鍒锋鍗℃椂锛屾敞鍐屽彿鍜孖D鍙疯嚜鍔ㄥ啓鍒版帶鍒跺櫒鍐咃紝鍙互鐩存帴鍒峰崱浣跨敤
  */
 public class ConfigureDeviceRegistrationCrad extends BaseCard implements Serializable {
-    public String cardType = MyCommon.CONFIGURATION_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.CONFIGURATION_CARD_TYPE;//鍗$被鍨�
     public String cardData = "A0B1C289";//鏍囪瘑鐮�
 
     public String getCardData() {
         return cardData;
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/DomainCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/DomainCard.java
index 7003e73..e3a2133 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/DomainCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/DomainCard.java
@@ -3,7 +3,7 @@
 
 import com.dayu.baselibrary.tools.BcdUtil;
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -20,7 +20,7 @@
 public class DomainCard implements Serializable {
 
 
-    public String cardType = MyCommon.DOMAIN_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.DOMAIN_CARD_TYPE;//鍗$被鍨�
     public String domainNumber;//鍩熷悕搴忓彿 (BCD鏍煎紡)
     public int domainLength;//鍩熷悕闀垮害
 
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
index 8446d9a..39303bf 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ElectricPriceCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 import java.util.List;
@@ -14,7 +14,7 @@
  * 澶囨敞锛氱數閲忓崟浠峰崱
  */
 public class ElectricPriceCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.ELECTRIC_PRICE;
+    public String cardType = CardCommon.ELECTRIC_PRICE;
     public Float electricPrice;// 鐢甸噺鍗曚环(浣�)鍗曚綅鏄厓锛�3浣嶅皬鏁扮偣
 
     public Float getElectricPrice() {
@@ -25,8 +25,8 @@
         this.electricPrice = electricPrice;
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ManageCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ManageCard.java
index f1b8fa4..d01aea9 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ManageCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/ManageCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,7 +13,7 @@
  * Description: 绠$悊鍗�  绗�1鎵囧尯 0鍧�
  */
 public class ManageCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.MANAGE_CRAD;//鍗$被鍨�
+    public String cardType = CardCommon.MANAGE_CRAD;//鍗$被鍨�
 //    public String cardData = "A0B1C289";//鏍囪瘑鐮�
 
 
@@ -33,8 +33,8 @@
         return cardData;
     }
 
-    public byte[] toZeroByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toZeroByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/PassWordCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/PassWordCard.java
index 28f9bb8..97de506 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/PassWordCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/PassWordCard.java
@@ -1,9 +1,9 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
 
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 import java.util.List;
@@ -15,7 +15,7 @@
  * Description:瀵嗙爜鍗�
  */
 public class PassWordCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.PASS_WORD_CRAD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.PASS_WORD_CRAD_TYPE;//鍗$被鍨�
 
     public String passWord;//鍏綅鐨勫瘑鐮�
 
@@ -42,8 +42,8 @@
     }
 
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegionCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegionCard.java
index 3822c7d..222a0d4 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegionCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegionCard.java
@@ -1,7 +1,7 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 import java.util.List;
@@ -14,7 +14,7 @@
  */
 public class RegionCard extends BaseCard implements Serializable {
 
-    public String cardType = MyCommon.REGION;//鍗″懡浠�
+    public String cardType = CardCommon.REGION;//鍗″懡浠�
 
     public short region;//鍖哄煙鍦板潃(浣庡墠楂樺悗) 鍙互璇嗗埆鏌愬幙闀囨潙
 
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegisteredCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegisteredCard.java
index ed59a5e..4143887 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegisteredCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/RegisteredCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,14 +13,14 @@
  * Description:閲嶆柊娉ㄥ唽璁惧鍗★細鐢ㄤ簬鍐欑敤鎴锋敞鍐屽彿
  */
 public class RegisteredCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.REGISTERED_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.REGISTERED_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/TestCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/TestCard.java
index 13fa3cf..63302b1 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/TestCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/TestCard.java
@@ -1,8 +1,8 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.dao.AppDatabase;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.dao.QHAloneAppDatabase;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 import java.io.Serializable;
 
@@ -13,14 +13,14 @@
  * Description: 娴嬭瘯鍗�
  */
 public class TestCard extends BaseCard implements Serializable {
-    public String cardType = MyCommon.TEST_CARD_TYPE;//鍗$被鍨�
+    public String cardType = CardCommon.TEST_CARD_TYPE;//鍗$被鍨�
 
     public String getCardData() {
         return cardData;
     }
 
-    public byte[] toByte(AppDatabase appDatabase) {
-        setCardData(appDatabase, cardType);
+    public byte[] toByte(QHAloneAppDatabase QHAloneAppDatabase) {
+        setCardData(QHAloneAppDatabase, cardType);
         Zero zero = new Zero();
         return zero.toByte();
     }
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
index d15a081..d9bee63 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/card/UserCard.java
@@ -1,7 +1,7 @@
 package com.dayu.qihealonelibrary.card;
 
 import com.dayu.baselibrary.tools.HexUtil;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 import com.tencent.bugly.crashreport.CrashReport;
 
 import java.io.Serializable;
@@ -15,7 +15,7 @@
  * Description: 榻愭渤椤圭洰鐢ㄦ埛鍗$粨鏋�
  */
 public class UserCard implements Serializable {
-    public String cardType = MyCommon.USER_CARD_TYPE_1;//鍐欏崱鏍囧織 A1鍒峰崱寮�娉靛墠 A8鍒峰崱寮�娉靛悗  A2鍙犲姞鍏呭��
+    public String cardType = CardCommon.USER_CARD_TYPE_1;//鍐欏崱鏍囧織 A1鍒峰崱寮�娉靛墠 A8鍒峰崱寮�娉靛悗  A2鍙犲姞鍏呭��
 
     public short arerNumber;//鍖哄煙鍙�(搴曚綅鍦ㄥ墠楂樹綅鍦ㄥ悗)
 
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/BaseDaoSingleton.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/BaseDaoSingleton.java
index aa222d1..20cbfbf 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/BaseDaoSingleton.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/BaseDaoSingleton.java
@@ -14,30 +14,30 @@
  * Description: 鍒涘缓鏁版嵁搴撳疄渚�
  */
 public class BaseDaoSingleton {
-    public static AppDatabase baseDao;
-    public static AppDatabase AsynchBaseDao;
-    public static String SqlitePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + ".dayu" + File.separator + "data_qh" + File.separator;
+    public static QHAloneAppDatabase baseDao;
+    public static QHAloneAppDatabase AsynchBaseDao;
+    public static String SqlitePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + ".dayu" + File.separator + "data" + File.separator;
 
     //MyFileUtil.SqlitePath +
-    public static AppDatabase getInstance(Context context) {
+    public static QHAloneAppDatabase getInstance(Context context) {
         if (baseDao == null) {
             baseDao = Room.databaseBuilder(
                     context,
-                    AppDatabase.class,
-                    SqlitePath + "ConfigurationData"
-            ).allowMainThreadQueries().addMigrations(AppDatabase.MIGRATION_3_4).build();
+                    QHAloneAppDatabase.class,
+                    SqlitePath + "ConfigurationData_qiheAlone"
+            ).allowMainThreadQueries().addMigrations(QHAloneAppDatabase.MIGRATION_3_4).build();
         }
         return baseDao;
     }
 
-    public static AppDatabase getAsynchInstance(Context context) {
+    public static QHAloneAppDatabase getAsynchInstance(Context context) {
 
         if (AsynchBaseDao == null) {
             AsynchBaseDao = Room.databaseBuilder(
                     context,
-                    AppDatabase.class,
-                    SqlitePath + "ConfigurationData"
-            ).addMigrations(AppDatabase.MIGRATION_3_4).build();
+                    QHAloneAppDatabase.class,
+                    SqlitePath + "ConfigurationData_qiheAlone"
+            ).addMigrations(QHAloneAppDatabase.MIGRATION_3_4).build();
         }
         return AsynchBaseDao;
 
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/AppDatabase.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/QHAloneAppDatabase.java
similarity index 94%
rename from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/AppDatabase.java
rename to qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/QHAloneAppDatabase.java
index 085ef11..57c5699 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/AppDatabase.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dao/QHAloneAppDatabase.java
@@ -27,8 +27,8 @@
  * Date: 2023-11-05 16:23
  * Description:
  */
-@Database(entities = {RegionBean.class, PassWordCardBean.class, CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = 4, exportSchema = false)
-public abstract class AppDatabase extends RoomDatabase {
+@Database(entities = {RegionBean.class, PassWordCardBean.class, CardData.class, DeviceNumber.class, IdentityBean.class, DomainBean.class, ElectricPriceBean.class, IpBean.class, AdminDataBean.class, PassWordBean.class, UserCardBean.class, RechargeBean.class, PowerBean.class}, version = com.dayu.baselibrary.dao.AppDatabase.version, exportSchema = false)
+public abstract class QHAloneAppDatabase extends RoomDatabase {
 
 
     public abstract AdminDataDao adminDao();
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/tools/NfcReadHelper.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/tools/NfcReadHelper.java
index 0ff1ffe..2c8542f 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/tools/NfcReadHelper.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/tools/NfcReadHelper.java
@@ -9,7 +9,7 @@
 
 import com.dayu.baselibrary.tools.HexUtil;
 import com.dayu.qihealonelibrary.card.UserCard;
-import com.dayu.qihealonelibrary.utils.MyCommon;
+import com.dayu.qihealonelibrary.utils.CardCommon;
 
 
 import java.io.IOException;
@@ -198,13 +198,13 @@
                 if (flag) {
                     callback.callBack(map);
                 } else {
-                    callback.error(MyCommon.ERROR);
+                    callback.error(CardCommon.ERROR);
                 }
             } catch (IOException e) {
-                callback.error(MyCommon.ERROR_MOVE);
+                callback.error(CardCommon.ERROR_MOVE);
                 e.printStackTrace();
             } catch (Exception e) {
-                callback.error(MyCommon.ERROR);
+                callback.error(CardCommon.ERROR);
                 e.printStackTrace();
             } finally {
                 try {
@@ -265,13 +265,13 @@
                 if (flag) {
                     callback.callBack(list);
                 } else {
-                    callback.error(MyCommon.ERROR);
+                    callback.error(CardCommon.ERROR);
                 }
             } catch (IOException e) {
-                callback.error(MyCommon.ERROR_MOVE);
+                callback.error(CardCommon.ERROR_MOVE);
                 e.printStackTrace();
             } catch (Exception e) {
-                callback.error(MyCommon.ERROR);
+                callback.error(CardCommon.ERROR);
                 e.printStackTrace();
             } finally {
 
@@ -303,12 +303,12 @@
                         mfc.connect();
                         int count = mfc.getSectorCount();
                         if (a < 0 || a > count - 1) {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                             return;
                         }
                         int bCount = mfc.getBlockCountInSector(a);
                         if (b < 0 || b > bCount - 1) {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                             return;
                         }
 
@@ -337,13 +337,13 @@
                             byte[] data = mfc.readBlock(bIndex + b);
                             callback.callBack(data);
                         } else {
-                            callback.error(MyCommon.ERROR);
+                            callback.error(CardCommon.ERROR);
                         }
                     } catch (IOException e) {
-                        callback.error(MyCommon.ERROR_MOVE);
+                        callback.error(CardCommon.ERROR_MOVE);
                         e.printStackTrace();
                     } catch (Exception e) {
-                        callback.error(MyCommon.ERROR);
+                        callback.error(CardCommon.ERROR);
                     } finally {
                         try {
                             mfc.close();
diff --git a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/MyCommon.java b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/CardCommon.java
similarity index 98%
rename from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/MyCommon.java
rename to qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/CardCommon.java
index 74cbc2f..19cf718 100644
--- a/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/MyCommon.java
+++ b/qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/utils/CardCommon.java
@@ -4,9 +4,9 @@
  * Copyright (C), 2023,
  * Author: zuo
  * Date: 2023-11-06 20:22
- * Description:
+ * Description:鍗$被鍨�
  */
-public class MyCommon {
+public class CardCommon {
 
     public static final int ERROR = -1;
     //杩炴帴涓柇 鎻愮ず鐢ㄦ埛閲嶆柊杩炴帴鎴栨彁绀虹敤鎴烽噸鏂伴潬杩戝崱鐗�
diff --git a/qihealonelibrary/src/main/res/layout/activity_home.xml b/qihealonelibrary/src/main/res/layout/activity_home.xml
index a3e5a9b..3517f7d 100644
--- a/qihealonelibrary/src/main/res/layout/activity_home.xml
+++ b/qihealonelibrary/src/main/res/layout/activity_home.xml
@@ -10,7 +10,7 @@
         android:layout_width="match_parent"
         android:layout_height="@dimen/dimen_title_height"
         android:background="@color/title_bar_bg"
-        app:centerText="棣栭〉" />
+        app:centerText="榻愭渤鍗曟満鐗堥椤�" />
 
     <LinearLayout
         android:layout_width="match_parent"
@@ -88,17 +88,6 @@
             android:textSize="@dimen/home_text_size" />
     </LinearLayout>
 
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:gravity="bottom|center_horizontal">
 
-        <TextView
-            android:id="@+id/socketState"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginBottom="20dp"
-            android:text="宸茶繛鎺ユ暟鎹腑蹇�" />
-    </LinearLayout>
 
 </LinearLayout>
\ No newline at end of file
diff --git a/qihealonelibrary/src/main/res/values/strings.xml b/qihealonelibrary/src/main/res/values/strings.xml
deleted file mode 100644
index 6b30d8d..0000000
--- a/qihealonelibrary/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<resources>
-
-</resources>
\ No newline at end of file
diff --git a/qihealonelibrary/src/main/res/values/themes.xml b/qihealonelibrary/src/main/res/values/themes.xml
deleted file mode 100644
index fb883f9..0000000
--- a/qihealonelibrary/src/main/res/values/themes.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<resources xmlns:tools="http://schemas.android.com/tools">
-    <!-- Base application theme. -->
-
-</resources>
\ No newline at end of file
diff --git a/qihealonelibrary/src/test/java/com/dayu/qihealonelibrary/ExampleUnitTest.java b/qihealonelibrary/src/test/java/com/dayu/qihealonelibrary/ExampleUnitTest.java
index b5a47a5..bb73ddb 100644
--- a/qihealonelibrary/src/test/java/com/dayu/qihealonelibrary/ExampleUnitTest.java
+++ b/qihealonelibrary/src/test/java/com/dayu/qihealonelibrary/ExampleUnitTest.java
@@ -1,8 +1,5 @@
 package com.dayu.qihealonelibrary;
 
-import org.junit.Test;
-
-import static org.junit.Assert.*;
 
 /**
  * Example local unit test, which will execute on the development machine (host).
@@ -10,8 +7,8 @@
  * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
  */
 public class ExampleUnitTest {
-    @Test
-    public void addition_isCorrect() {
-        assertEquals(4, 2 + 2);
-    }
+//    @Test
+//    public void addition_isCorrect() {
+//        assertEquals(4, 2 + 2);
+//    }
 }
\ No newline at end of file

--
Gitblit v1.8.0