左晓为主开发手持机充值管理机
zuoxiao
2024-05-06 e79ced190337222c7475409363c8071c976c7de9
1.修复两个工程因layout名字一样导致的bug
44个文件已修改
4个文件已删除
3个文件已添加
87 文件已重命名
1693 ■■■■ 已修改文件
app/build.gradle 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/dayu/recharge/activity/LoginActivity.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/build.gradle 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/drawable/editbg.xml 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/drawable/ic_choose_gray_edge.xml 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/drawable/textview_select_bg.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/layout/confirm_dialog.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/layout/edt_dialog.xml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/layout/library_dialog.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/layout/password_dialog.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/layout/text_dialog.xml 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/values/colors.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/values/dimens.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
baselibrary/src/main/res/values/strings.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/build.gradle 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/AdminSetupActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/DomainActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ElectricPriceActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HomeActivity.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/MyActivity.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NewCardActivity.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NewCardListActivity.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ParameterActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PowerActivity.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeActivity.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeDetail.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeListActivity.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReplacementActivity.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysIpActivity.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/NewCardAdapter.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/RechargeAdapter.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/ReplacementAdapter.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_admin_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_admin_setup_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_domain_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_electric_meter_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_electric_price_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_electricty_price_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_home_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_identyfying_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_ip_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_location_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_main_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_manage_setup_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_my_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_new_card_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_newcard_list_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_parameter_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_patch_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_patch_list_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_power_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_psw_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_read_text_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_recharge_detail_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_recharge_ext_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_recharge_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_recharge_list_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_red_card_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_replacement_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_test.xml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_water_meter_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_water_num_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/activity_write_text_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/item_new_card_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/item_patch_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/item_recharge_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
henanlibrary/src/main/res/layout/item_replacement_hn.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/build.gradle 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/AndroidManifest.xml 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/AdminSetupActivity.java 207 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/AdminSetupActivityQHAlone.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/BaseActivityQHAlone.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/BaseNfcActivityQHAlone.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/DomainActivityQHAlone.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ElectricPriceActivityQHAlone.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/HomeActivityQHAlone.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivityQHAlone.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ManageSetUpActivityQHAlone.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/MyActivityQHAlone.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivityQHAlone.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardActivity.java 285 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardActivityQHAlone.java 308 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardListActivityQHAlone.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ParameterActivityQHAlone.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivityQHAlone.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PasswordCardActivityQHAlone.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PowerActivityQHAlone.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivityQHAlone.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeDetail.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeListActivityQHAlone.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RegionActivityQHAlone.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReplacementActivityQHAlone.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/SysActivityQHAlone.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/adapter/ReplacementAdapter.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dbBean/AdminDataBean.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dbBean/UserCardBean.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_admin_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_admin_setup_qha.xml 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_domain_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_electric_meter_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_electric_price_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_electricty_price_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_home_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_identyfying_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_ip_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_location_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_main_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_manage_setup_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_my_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_new_card_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_newcard_list_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_parameter_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_password_card_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_patch_list_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_patch_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_power_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_psw_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_read_text_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_recharge_detail_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_recharge_ext_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_recharge_list_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_recharge_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_red_card_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_region_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_replacement_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_test.xml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_water_meter_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_water_num_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/activity_write_text_qha.xml 补丁 | 查看 | 原始文档 | blame | 历史
qihealonelibrary/src/main/res/layout/qihe_item_replacements.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/build.gradle
app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
@@ -20,6 +20,7 @@
import com.dayu.henanlibrary.dbBean.PassWordBean;
import com.dayu.qihealonelibrary.activity.HomeActivityQHAlone;
import com.dayu.recharge.MyApplication;
import com.dayu.recharge.databinding.ActivityLoginBinding;
import com.hjq.permissions.OnPermissionCallback;
@@ -54,6 +55,7 @@
        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();
@@ -72,10 +74,10 @@
            }
            if ((passWordBean == null && psStr.equals("123456"))
                    || passWordBean != null && passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(psStr))) {
                if (MyApplication.myApplication.libraryType == 0) {
                if (MyApplication.myApplication.libraryType == BaseCommon.HeNanLibrary) {
                    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));
                } else if (MyApplication.myApplication.libraryType ==  BaseCommon.QHAloneLibrary) {
                    startActivity(new Intent(LoginActivity.this, HomeActivityQHAlone.class));
                }
                LoginActivity.this.finish();
            } else {
baselibrary/build.gradle
@@ -39,6 +39,9 @@
    compileOnly 'com.google.zxing:core:3.4.1'
    compileOnly 'com.tencent.bugly:crashreport:4.1.9.3'
    //loding
    implementation 'com.wang.avi:library:2.1.3'
    //滚动选择框
    compileOnly 'com.contrarywind:Android-PickerView:4.1.9'
baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java
@@ -22,6 +22,7 @@
    Activity mContext;
    View.OnClickListener mListner;
    String mData;
    public ConfirmDialog(@NonNull Activity context) {
        super(context, com.dayu.baselibrary.R.style.ws_pay_showSelfDialog);
@@ -36,10 +37,21 @@
        initView();
    }
    public ConfirmDialog(@NonNull Activity context, String data, View.OnClickListener listner) {
        super(context, com.dayu.baselibrary.R.style.ws_pay_showSelfDialog);
        mContext = context;
        mListner = listner;
        mData = data;
        initView();
    }
    private void initView() {
        getWindow().setGravity(Gravity.CENTER);
        setContentView(R.layout.confirm_dialog);
        setCanceledOnTouchOutside(false);
        TextView data = (TextView) this.findViewById(R.id.confirm_data);
        data.setText(mData);
        TextView cannel = (TextView) this.findViewById(R.id.confirm_cancel);
        TextView ok = (TextView) this.findViewById(R.id.confirm_ok);
        cannel.setOnClickListener(v -> ConfirmDialog.this.dismiss());
baselibrary/src/main/java/com/dayu/baselibrary/view/LibraryDialog.java
@@ -1,8 +1,9 @@
package com.dayu.baselibrary.view;
import static android.view.Gravity.CENTER;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
@@ -23,7 +24,6 @@
 */
public class LibraryDialog extends Dialog {
    Intent intent;
    Activity mContext;
    LibraryBean libraryBean;
    LibraryDao libraryDao;
@@ -31,17 +31,17 @@
    libraryBack mLibraryBack;
    int type;
    String data;
    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);
        getWindow().setGravity(CENTER);
        setContentView(R.layout.library_dialog);
        setCanceledOnTouchOutside(false);
        RadioGroup radioGroup = findViewById(R.id.radioLibrary);
@@ -57,16 +57,27 @@
            if (checkedId == R.id.henanLibrary) {
                type = 0;
                libraryBean.setType(type);
                data = "确认选择河南版本吗?";
            } else if (checkedId == R.id.qhAloneLibrary) {// 处理选中Option 2的逻辑
                type = 1;
                libraryBean.setType(type);
                data = "确认选择齐河单机版本吗?";
            }
        });
        TextView okBtn = findViewById(R.id.ok);
        okBtn.setOnClickListener(v -> {
            if (ischose) {
                //二次确认
                ConfirmDialog confirmDialog = new ConfirmDialog(mContext, data, new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                libraryDao.insert(libraryBean);
                mLibraryBack.listener(type);
                        LibraryDialog.this.dismiss();
                    }
                });
                confirmDialog.show();
            }
        });
@@ -81,7 +92,7 @@
         * 设置宽度全屏,要设置在show的后面
         */
        WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
        layoutParams.gravity = Gravity.CENTER;
        layoutParams.gravity = CENTER;
        layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;
        layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT;
        getWindow().getDecorView().setPadding(0, 0, 0, 0);
baselibrary/src/main/res/drawable/editbg.xml
baselibrary/src/main/res/drawable/ic_choose_gray_edge.xml
baselibrary/src/main/res/drawable/textview_select_bg.xml
New file
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- Pressed state -->
    <item android:drawable="@color/text_on" android:state_pressed="true" />
    <!-- Default state -->
    <item android:drawable="@android:color/white" />
</selector>
baselibrary/src/main/res/layout/confirm_dialog.xml
@@ -16,8 +16,9 @@
        <TextView
            android:id="@+id/confirm_data"
            android:layout_width="wrap_content"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:gravity="center"
            android:text="还未写卡!!!\n您确认退出吗?"
            android:textColor="@color/text_color"
@@ -32,13 +33,15 @@
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            android:orientation="horizontal"
            android:padding="5dp">
            <TextView
                android:id="@+id/confirm_cancel"
                android:layout_width="0dp"
                android:layout_height="@dimen/dialog_btn_height"
                android:layout_weight="1"
                android:background="@drawable/textview_select_bg"
                android:gravity="center"
                android:text="取    消"
                android:textColor="@color/text_color"
@@ -54,6 +57,7 @@
                android:layout_width="0dp"
                android:layout_height="@dimen/dialog_btn_height"
                android:layout_weight="1"
                android:background="@drawable/textview_select_bg"
                android:gravity="center"
                android:text="确    认"
                android:textColor="@color/dialog_btn"
baselibrary/src/main/res/layout/edt_dialog.xml
@@ -18,11 +18,11 @@
        <EditText
            android:id="@+id/pw_et"
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_height="@dimen/edt_height"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"
            android:layout_marginRight="20dp"
            android:background="@drawable/editbg_dialog"
            android:background="@drawable/editbg"
            android:hint="请输入信息"
            android:paddingLeft="10dp"
            android:textColor="#000000" />
@@ -36,6 +36,7 @@
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:gravity="center_horizontal"
            android:orientation="horizontal">
@@ -44,6 +45,7 @@
                android:layout_width="0dp"
                android:layout_height="@dimen/dialog_btn_height"
                android:layout_weight="1"
                android:background="@drawable/textview_select_bg"
                android:gravity="center"
                android:text="取    消"
                android:textColor="@color/text_color"
@@ -59,6 +61,7 @@
                android:layout_width="0dp"
                android:layout_height="@dimen/dialog_btn_height"
                android:layout_weight="1"
                android:background="@drawable/textview_select_bg"
                android:gravity="center"
                android:text="确    认"
                android:textColor="@color/dialog_btn"
baselibrary/src/main/res/layout/library_dialog.xml
@@ -46,6 +46,7 @@
                android:background="@drawable/radio_select"
                android:button="@null"
                android:gravity="center"
                android:padding="6dp"
                android:text="河南版本"
                android:textColor="@drawable/radio_text_select"
                android:textSize="20sp" />
@@ -60,6 +61,7 @@
                android:background="@drawable/radio_select"
                android:button="@null"
                android:gravity="center"
                android:padding="6dp"
                android:text="齐河单机版"
                android:textColor="@drawable/radio_text_select"
                android:textSize="20sp" />
@@ -75,12 +77,14 @@
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:padding="5dp"
            android:orientation="horizontal">
            <TextView
                android:id="@+id/ok"
                android:layout_width="match_parent"
                android:layout_height="@dimen/dialog_btn_height"
                android:background="@drawable/textview_select_bg"
                android:gravity="center"
                android:paddingLeft="15dp"
                android:paddingTop="5dp"
baselibrary/src/main/res/layout/password_dialog.xml
@@ -10,6 +10,7 @@
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/dialog_bg_margin"
        android:padding="5dp"
        android:background="@drawable/base_bg_dialog_top_stroke"
        android:gravity="center"
        android:orientation="vertical">
@@ -22,7 +23,7 @@
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"
            android:layout_marginRight="20dp"
            android:background="@drawable/editbg_dialog"
            android:background="@drawable/editbg"
            android:hint="请输入管理密码"
            android:inputType="textPassword"
            android:paddingLeft="15dp"
baselibrary/src/main/res/layout/text_dialog.xml
@@ -9,18 +9,33 @@
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="5dp"
        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/textData"
            android:layout_width="300dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"
            android:layout_marginRight="20dp"
            android:gravity="center"
            android:text="提  示"
            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" />
        <TextView
            android:id="@+id/textData"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="30dp"
            android:layout_marginRight="20dp"
            android:gravity="center"
            android:textColor="@color/text_color"
@@ -29,7 +44,7 @@
        <View
            android:layout_width="match_parent"
            android:layout_height="2px"
            android:layout_marginTop="20dp"
            android:layout_marginTop="30dp"
            android:background="@color/line_bg" />
        <LinearLayout
@@ -47,6 +62,7 @@
                android:paddingTop="5dp"
                android:paddingRight="15dp"
                android:paddingBottom="5dp"
                android:background="@drawable/textview_select_bg"
                android:text="确      认"
                android:textColor="@color/dialog_btn"
                android:textSize="20sp" />
baselibrary/src/main/res/values/colors.xml
@@ -35,4 +35,6 @@
    <color name="dialog_btn">#1FA9EC</color>
    <color name="edite_bg">#F5F5F5</color>
    <color name="text_color">#696969</color>
    <color name="text_on">#BEBEBE</color>
</resources>
baselibrary/src/main/res/values/dimens.xml
@@ -14,4 +14,5 @@
    <dimen name="date_unit_text_size">18sp</dimen>
    <dimen name="dialog_btn_height">45dp</dimen>
    <dimen name="dialog_bg_margin">30dp</dimen>
    <dimen name="edt_height">50dp</dimen>
</resources>
baselibrary/src/main/res/values/strings.xml
@@ -29,4 +29,6 @@
    <string name="login_title">大禹节水\n智能充值管理系统</string>
    <string name="company_name">大禹节水科技研究有限公司</string>
    <string name="eq_no">设备编号:</string>
    <string name="address_code">区域号:</string>
</resources>
henanlibrary/build.gradle
@@ -1,5 +1,6 @@
apply plugin: 'com.android.library'
android {
    namespace 'com.dayu.henanlibrary'
    compileSdk 33
    defaultConfig {
        minSdk 23
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/AdminSetupActivity.java
@@ -7,8 +7,8 @@
import android.view.inputmethod.InputMethodManager;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityAdminSetupBinding;
import com.dayu.henanlibrary.HeNanApplication;
import com.dayu.henanlibrary.databinding.ActivityAdminSetupHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.dbBean.IpBean;
import com.example.pickerviewlibrary.picker.TeaPickerView;
@@ -22,7 +22,7 @@
 */
public class AdminSetupActivity extends HNBaseActivity {
    ActivityAdminSetupBinding adminBinding;
    ActivityAdminSetupHnBinding adminBinding;
    public static AdminSetupActivity adminSetupActivity;
    AdminDataBean adminData = new AdminDataBean();
    TeaPickerView pickerView;
@@ -31,7 +31,7 @@
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            adminBinding = ActivityAdminSetupBinding.inflate(LayoutInflater.from(this));
            adminBinding = ActivityAdminSetupHnBinding.inflate(LayoutInflater.from(this));
            setContentView(adminBinding.getRoot());
            adminSetupActivity = this;
            setData();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/DomainActivity.java
@@ -6,7 +6,7 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityDomainBinding;
import com.dayu.henanlibrary.databinding.ActivityDomainHnBinding;
import com.dayu.henanlibrary.dbBean.DomainBean;
/**
@@ -17,13 +17,13 @@
 * 备注: 设置卡域名和ip
 */
public class DomainActivity extends HNBaseActivity {
    ActivityDomainBinding binding;
    ActivityDomainHnBinding binding;
    DomainBean domainBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityDomainBinding.inflate(LayoutInflater.from(this));
        binding = ActivityDomainHnBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initData();
        binding.electricOk.setOnClickListener(new View.OnClickListener() {
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ElectricPriceActivity.java
@@ -8,7 +8,7 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityElectricPriceBinding;
import com.dayu.henanlibrary.databinding.ActivityElectricPriceHnBinding;
import com.dayu.henanlibrary.dbBean.ElectricPriceBean;
/**
@@ -19,13 +19,13 @@
 */
public class ElectricPriceActivity extends HNBaseActivity {
    ActivityElectricPriceBinding electricPriceBinding;
    ActivityElectricPriceHnBinding electricPriceBinding;
    ElectricPriceBean electricPriceBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        electricPriceBinding = ActivityElectricPriceBinding.inflate(LayoutInflater.from(this));
        electricPriceBinding = ActivityElectricPriceHnBinding.inflate(LayoutInflater.from(this));
        setContentView(electricPriceBinding.getRoot());
        initView();
        initData();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HomeActivity.java
@@ -12,7 +12,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.PassWordDialog;
import com.dayu.henanlibrary.HeNanApplication;
import com.dayu.henanlibrary.databinding.ActivityHomeBinding;
import com.dayu.henanlibrary.databinding.ActivityHomeHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import java.lang.reflect.Method;
@@ -29,13 +29,14 @@
public class HomeActivity extends HNBaseActivity {
    public static HomeActivity homeActivity;
    ActivityHomeBinding homeBinding;
    ActivityHomeHnBinding homeBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        homeActivity = this;
        homeBinding = ActivityHomeBinding.inflate(LayoutInflater.from(this));
        homeBinding = ActivityHomeHnBinding.inflate(LayoutInflater.from(this));
        setContentView(homeBinding.getRoot());
        initView();
        rushState();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/IdentifyingActivity.java
@@ -6,7 +6,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.ChooseView;
import com.dayu.henanlibrary.databinding.ActivityIdentyfyingBinding;
import com.dayu.henanlibrary.databinding.ActivityIdentyfyingHnBinding;
import com.dayu.henanlibrary.dbBean.CardData;
import com.dayu.henanlibrary.utils.CardCommon;
@@ -21,7 +21,7 @@
 */
public class IdentifyingActivity extends HNBaseActivity {
    ActivityIdentyfyingBinding binding;
    ActivityIdentyfyingHnBinding binding;
    String[] nianfen = {"管理卡", "清零卡", "重新注册设备卡", "删除全部用户卡", "测试卡", "设备信息卡", "水泵功率卡"};
@@ -35,7 +35,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityIdentyfyingBinding.inflate(LayoutInflater.from(this));
        binding = ActivityIdentyfyingHnBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        binding.chooseCardType.setOnClickListener(v ->
                ChooseView.getIntence(IdentifyingActivity.this, Arrays.asList(nianfen.clone()), options1 -> {
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/MyActivity.java
@@ -11,15 +11,15 @@
import android.view.LayoutInflater;
import android.view.View;
import com.dayu.baselibrary.view.PassWordDialog;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.ExcelUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityMyBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.net.SocketNet;
import com.dayu.baselibrary.view.PassWordDialog;
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.henanlibrary.databinding.ActivityMyHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.net.SocketNet;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.ExcelUtil;
import java.io.File;
import java.util.ArrayList;
@@ -41,12 +41,12 @@
    long endTime;
    boolean isRechargeList = false;
    ActivityMyBinding myBinding;
    ActivityMyHnBinding myBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        myBinding = ActivityMyBinding.inflate(LayoutInflater.from(this));
        myBinding = ActivityMyHnBinding.inflate(LayoutInflater.from(this));
        setContentView(myBinding.getRoot());
        getVersion(this);
        setData();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
@@ -16,6 +16,7 @@
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.baselibrary.utils.MornyUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.ConfirmDialog;
import com.dayu.baselibrary.view.TitleBar;
import com.dayu.henanlibrary.card.CleanCard;
import com.dayu.henanlibrary.card.CleanUserCard;
@@ -26,7 +27,7 @@
import com.dayu.henanlibrary.card.RegisteredCard;
import com.dayu.henanlibrary.card.TestCard;
import com.dayu.henanlibrary.card.UserCard;
import com.dayu.henanlibrary.databinding.ActivityWriteTextBinding;
import com.dayu.henanlibrary.databinding.ActivityWriteTextHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.dbBean.ElectricPriceBean;
import com.dayu.henanlibrary.dbBean.RechargeBean;
@@ -39,10 +40,9 @@
import com.dayu.henanlibrary.tools.NFCWriteHelper;
import com.dayu.henanlibrary.tools.NfcReadHelper;
import com.dayu.henanlibrary.tools.WriteCardUtils;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.CardCommon;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.SocketUtil;
import com.dayu.baselibrary.view.ConfirmDialog;
import com.dayu.henanlibrary.view.ProgressDialog;
import com.tencent.bugly.crashreport.CrashReport;
@@ -109,14 +109,14 @@
    boolean isRecharge = false;
    //充值通信是否完成
    boolean rechargeIsOk = false;
    ActivityWriteTextBinding binding;
    ActivityWriteTextHnBinding binding;
    ConfirmDialog confirmDialog;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            binding = ActivityWriteTextBinding.inflate(LayoutInflater.from(this));
            binding = ActivityWriteTextHnBinding.inflate(LayoutInflater.from(this));
            setContentView(binding.getRoot());
            nfcWreatActivity = this;
            setData();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NewCardActivity.java
@@ -1,7 +1,5 @@
package com.dayu.henanlibrary.activity;
import static android.app.Activity.RESULT_OK;
import android.content.Intent;
import android.os.Bundle;
import android.text.InputFilter;
@@ -17,12 +15,11 @@
import com.dayu.baselibrary.tools.HexUtil;
import com.dayu.baselibrary.tools.Utils;
import com.dayu.baselibrary.utils.CRC8;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.utils.ToastUtil;
import com.dayu.henanlibrary.HeNanApplication;
import com.dayu.henanlibrary.card.UserCard;
import com.dayu.henanlibrary.databinding.ActivityNewCardBinding;
import com.dayu.henanlibrary.databinding.ActivityNewCardHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.dbBean.ElectricPriceBean;
import com.dayu.henanlibrary.dbBean.IpBean;
@@ -31,6 +28,7 @@
import com.dayu.henanlibrary.net.SocketData;
import com.dayu.henanlibrary.net.SocketNet;
import com.dayu.henanlibrary.socketBean.InitCardRequestBean;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.SocketUtil;
import com.dayu.henanlibrary.view.ProgressDialog;
import com.hjq.permissions.OnPermissionCallback;
@@ -59,7 +57,7 @@
    public static final int SCAN_IDCARD_REQUEST = 1;
    UserCardBean userCardBean;
    ActivityNewCardBinding newCardBinding;
    ActivityNewCardHnBinding newCardBinding;
    AdminDataBean adminData;
    static NewCardActivity newCardActivity;
@@ -68,7 +66,7 @@
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newCardActivity = this;
        newCardBinding = ActivityNewCardBinding.inflate(LayoutInflater.from(this));
        newCardBinding = ActivityNewCardHnBinding.inflate(LayoutInflater.from(this));
        setContentView(newCardBinding.getRoot());
        setData();
        initView();
@@ -78,14 +76,6 @@
    private void initView() {
        newCardBinding.newCardName.setFilters(new InputFilter[]{new ChineseInputFilter()});
        newCardBinding.newCardId.setFilters(new InputFilter[]{new AlphaNumericXFilter(), new InputFilter.LengthFilter(18)});
        //身份证识别
        newCardBinding.newCardScanBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                getPermission();
            }
        });
        newCardBinding.newCardRegistBtn.setOnClickListener(v -> {
@@ -221,41 +211,6 @@
        return false;
    }
    private void getPermission() {
        try {
            XXPermissions.with(this)
                    // 申请单个权限
//                    .permission(Permission.RECORD_AUDIO)
                    // 申请多个权限
                    .permission(Permission.CAMERA)
                    // 设置权限请求拦截器(局部设置)
                    //.interceptor(new PermissionInterceptor())
                    // 设置不触发错误检测机制(局部设置)
                    //.unchecked()
                    .request(new OnPermissionCallback() {
                        @Override
                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
                            if (allGranted) {
                            }
                        }
                        @Override
                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
                            if (doNotAskAgain) {
                                // 如果是被永久拒绝就跳转到应用权限系统设置页面
                            } else {
//                                toast("获取录音和日历权限失败");
                            }
                        }
                    });
        } catch (
                Throwable e) {
            e.printStackTrace();
        }
    }
    @Override
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NewCardListActivity.java
@@ -1,7 +1,6 @@
package com.dayu.henanlibrary.activity;
import static com.dayu.baselibrary.view.TitleBar.ClickType_RIGHT_TEXT;
import android.os.Bundle;
@@ -11,11 +10,11 @@
import androidx.recyclerview.widget.LinearLayoutManager;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.adapter.NewCardAdapter;
import com.dayu.henanlibrary.databinding.ActivityNewcardListBinding;
import com.dayu.henanlibrary.dbBean.UserCardBean;
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.henanlibrary.adapter.NewCardAdapter;
import com.dayu.henanlibrary.databinding.ActivityNewcardListHnBinding;
import com.dayu.henanlibrary.dbBean.UserCardBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
import com.scwang.smart.refresh.layout.listener.OnLoadMoreListener;
@@ -37,7 +36,7 @@
public class NewCardListActivity extends HNBaseActivity {
    ActivityNewcardListBinding newcardListBinding;
    ActivityNewcardListHnBinding newcardListBinding;
    List<UserCardBean> userCardBeanList = new ArrayList<>();
    NewCardAdapter adapter;
    private CustomDatePicker beginDatePicker;
@@ -54,7 +53,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newcardListBinding = ActivityNewcardListBinding.inflate(LayoutInflater.from(this));
        newcardListBinding = ActivityNewcardListHnBinding.inflate(LayoutInflater.from(this));
        setContentView(newcardListBinding.getRoot());
        setRightButton();
        initDatePicker();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ParameterActivity.java
@@ -6,7 +6,7 @@
import android.view.View;
import com.dayu.baselibrary.activity.BaseActivity;
import com.dayu.henanlibrary.databinding.ActivityParameterBinding;
import com.dayu.henanlibrary.databinding.ActivityParameterHnBinding;
/**
 * Copyright (C), 2023,
@@ -15,12 +15,12 @@
 * Description: 参数设置界面
 */
public class ParameterActivity extends BaseActivity {
    ActivityParameterBinding binding;
    ActivityParameterHnBinding binding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityParameterBinding.inflate(LayoutInflater.from(this));
        binding = ActivityParameterHnBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initView();
    }
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PassWordActivity.java
@@ -6,7 +6,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.utils.WSMD5;
import com.dayu.henanlibrary.databinding.ActivityPswBinding;
import com.dayu.henanlibrary.databinding.ActivityPswHnBinding;
import com.dayu.henanlibrary.dbBean.PassWordBean;
/**
@@ -17,14 +17,14 @@
 */
public class PassWordActivity extends HNBaseActivity {
    ActivityPswBinding pswBinding;
    ActivityPswHnBinding pswBinding;
    PassWordBean passWordBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        pswBinding = ActivityPswBinding.inflate(LayoutInflater.from(this));
        pswBinding = ActivityPswHnBinding.inflate(LayoutInflater.from(this));
        setContentView(pswBinding.getRoot());
        pswBinding.waterOk.setOnClickListener(v -> {
            try {
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/PowerActivity.java
@@ -5,9 +5,8 @@
import android.view.LayoutInflater;
import android.view.View;
import com.dayu.baselibrary.activity.BaseActivity;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityPowerBinding;
import com.dayu.henanlibrary.databinding.ActivityPowerHnBinding;
import com.dayu.henanlibrary.dbBean.PowerBean;
/**
@@ -17,13 +16,13 @@
 * Description: 功率设置
 */
public class PowerActivity extends HNBaseActivity {
    ActivityPowerBinding powerBinding;
    ActivityPowerHnBinding powerBinding;
    PowerBean powerBean = new PowerBean();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        powerBinding = ActivityPowerBinding.inflate(LayoutInflater.from(this));
        powerBinding = ActivityPowerHnBinding.inflate(LayoutInflater.from(this));
        setContentView(powerBinding.getRoot());
        initData();
        initView();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReadCardAcitivy.java
@@ -10,13 +10,12 @@
import com.dayu.baselibrary.tools.BcdUtil;
import com.dayu.baselibrary.tools.HexUtil;
import com.dayu.baselibrary.utils.CRC8;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.baselibrary.utils.MornyUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.card.ConfigurationPowerCard;
import com.dayu.henanlibrary.card.DomainCard;
import com.dayu.henanlibrary.card.UserCard;
import com.dayu.henanlibrary.databinding.ActivityRedCardBinding;
import com.dayu.henanlibrary.databinding.ActivityRedCardHnBinding;
import com.dayu.henanlibrary.net.SocketCallBack;
import com.dayu.henanlibrary.net.SocketData;
import com.dayu.henanlibrary.net.SocketNet;
@@ -24,6 +23,7 @@
import com.dayu.henanlibrary.tools.NfcReadHelper;
import com.dayu.henanlibrary.tools.WriteCardUtils;
import com.dayu.henanlibrary.utils.CardCommon;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.SocketUtil;
import com.dayu.henanlibrary.view.ProgressDialog;
@@ -40,14 +40,14 @@
public class ReadCardAcitivy extends BaseNfcActivity {
    volatile UserCard userCard;
    ActivityRedCardBinding redCardBinding;
    ActivityRedCardHnBinding redCardBinding;
    Intent intent;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        redCardBinding = ActivityRedCardBinding.inflate(LayoutInflater.from(this));
        redCardBinding = ActivityRedCardHnBinding.inflate(LayoutInflater.from(this));
        setContentView(redCardBinding.getRoot());
    }
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeActivity.java
@@ -11,10 +11,9 @@
import com.dayu.baselibrary.tools.BcdUtil;
import com.dayu.baselibrary.utils.CRC8;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.baselibrary.utils.MornyUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.databinding.ActivityRechargeBinding;
import com.dayu.henanlibrary.databinding.ActivityRechargeHnBinding;
import com.dayu.henanlibrary.dbBean.AdminDataBean;
import com.dayu.henanlibrary.net.SocketCallBack;
import com.dayu.henanlibrary.net.SocketData;
@@ -22,6 +21,7 @@
import com.dayu.henanlibrary.socketBean.BalanceSelecteRequestBean;
import com.dayu.henanlibrary.tools.NfcReadHelper;
import com.dayu.henanlibrary.tools.WriteCardUtils;
import com.dayu.henanlibrary.utils.DeviceNumberUtils;
import com.dayu.henanlibrary.utils.SocketUtil;
import com.dayu.henanlibrary.view.ProgressDialog;
import com.tencent.bugly.crashreport.CrashReport;
@@ -40,7 +40,7 @@
    Intent intent;
    boolean userFlag;
    ActivityRechargeBinding binding;
    ActivityRechargeHnBinding binding;
    public static RechargeActivity rechargeActivity;
    AdminDataBean adminData;
@@ -50,7 +50,7 @@
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            binding = ActivityRechargeBinding.inflate(LayoutInflater.from(this));
            binding = ActivityRechargeHnBinding.inflate(LayoutInflater.from(this));
            setContentView(binding.getRoot());
            setPricePoint(binding.rechargeWater);
            rechargeActivity = this;
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeDetail.java
@@ -7,7 +7,7 @@
import com.dayu.baselibrary.utils.MornyUtil;
import com.dayu.henanlibrary.card.UserCard;
import com.dayu.henanlibrary.databinding.ActivityRechargeDetailBinding;
import com.dayu.henanlibrary.databinding.ActivityRechargeDetailHnBinding;
import java.util.Calendar;
@@ -20,7 +20,7 @@
 */
public class RechargeDetail extends HNBaseActivity {
    ActivityRechargeDetailBinding binding;
    ActivityRechargeDetailHnBinding binding;
    UserCard userCard;
    String statu;
    String userName;
@@ -30,7 +30,7 @@
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityRechargeDetailBinding.inflate(LayoutInflater.from(this));
        binding = ActivityRechargeDetailHnBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        try {
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/RechargeListActivity.java
@@ -11,11 +11,11 @@
import com.dayu.baselibrary.utils.ArithUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.henanlibrary.adapter.RechargeAdapter;
import com.dayu.henanlibrary.databinding.ActivityRechargeListBinding;
import com.dayu.henanlibrary.dbBean.RechargeBean;
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.henanlibrary.adapter.RechargeAdapter;
import com.dayu.henanlibrary.databinding.ActivityRechargeListHnBinding;
import com.dayu.henanlibrary.dbBean.RechargeBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
import com.scwang.smart.refresh.layout.listener.OnLoadMoreListener;
@@ -35,7 +35,7 @@
 */
public class RechargeListActivity extends HNBaseActivity {
    ActivityRechargeListBinding rechargeListBinding;
    ActivityRechargeListHnBinding rechargeListBinding;
    RechargeAdapter adapter;
    List<RechargeBean> rechargeList = new ArrayList<>();
@@ -53,7 +53,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        rechargeListBinding = ActivityRechargeListBinding.inflate(LayoutInflater.from(this));
        rechargeListBinding = ActivityRechargeListHnBinding.inflate(LayoutInflater.from(this));
        setContentView(rechargeListBinding.getRoot());
        setRightButton();
        initDatePicker();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/ReplacementActivity.java
@@ -1,7 +1,6 @@
package com.dayu.henanlibrary.activity;
import static com.dayu.baselibrary.view.TitleBar.ClickType_RIGHT_TEXT;
import android.content.Intent;
@@ -14,7 +13,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.EdtDialog;
import com.dayu.henanlibrary.adapter.ReplacementAdapter;
import com.dayu.henanlibrary.databinding.ActivityReplacementBinding;
import com.dayu.henanlibrary.databinding.ActivityReplacementHnBinding;
import com.dayu.henanlibrary.dbBean.UserCardBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
@@ -35,7 +34,7 @@
 * 备注: 补卡界面
 */
public class ReplacementActivity extends HNBaseActivity {
    ActivityReplacementBinding newcardListBinding;
    ActivityReplacementHnBinding newcardListBinding;
    List<UserCardBean> userCardBeanList = new ArrayList<>();
    ReplacementAdapter adapter;
    long beginTime;
@@ -49,7 +48,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newcardListBinding = ActivityReplacementBinding.inflate(LayoutInflater.from(this));
        newcardListBinding = ActivityReplacementHnBinding.inflate(LayoutInflater.from(this));
        setContentView(newcardListBinding.getRoot());
        setRightButton();
        initList();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysActivity.java
@@ -13,7 +13,7 @@
import com.dayu.henanlibrary.card.ManageCard;
import com.dayu.henanlibrary.card.RegisteredCard;
import com.dayu.henanlibrary.card.TestCard;
import com.dayu.henanlibrary.databinding.ActivityAdminBinding;
import com.dayu.henanlibrary.databinding.ActivityAdminHnBinding;
import com.dayu.henanlibrary.dbBean.DomainBean;
import com.dayu.henanlibrary.dbBean.PowerBean;
@@ -25,12 +25,12 @@
 */
public class SysActivity extends HNBaseActivity {
    ActivityAdminBinding adminBinding;
    ActivityAdminHnBinding adminBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        adminBinding = ActivityAdminBinding.inflate(LayoutInflater.from(this));
        adminBinding = ActivityAdminHnBinding.inflate(LayoutInflater.from(this));
        setContentView(adminBinding.getRoot());
        initView();
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/SysIpActivity.java
@@ -5,11 +5,10 @@
import android.view.LayoutInflater;
import android.widget.Toast;
import com.dayu.baselibrary.activity.BaseActivity;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.utils.ToastUtil;
import com.dayu.henanlibrary.HeNanApplication;
import com.dayu.henanlibrary.databinding.ActivityIpBinding;
import com.dayu.henanlibrary.databinding.ActivityIpHnBinding;
import com.dayu.henanlibrary.dbBean.IpBean;
/**
@@ -21,13 +20,13 @@
public class SysIpActivity extends HNBaseActivity {
    ActivityIpBinding ipBinding;
    ActivityIpHnBinding ipBinding;
    IpBean ipBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ipBinding = ActivityIpBinding.inflate(LayoutInflater.from(this));
        ipBinding = ActivityIpHnBinding.inflate(LayoutInflater.from(this));
        setContentView(ipBinding.getRoot());
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/NewCardAdapter.java
@@ -11,8 +11,7 @@
import com.dayu.baselibrary.databinding.ItemNoMoreBinding;
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.henanlibrary.R;
import com.dayu.henanlibrary.databinding.ItemNewCardBinding;
import com.dayu.henanlibrary.databinding.ItemNewCardHnBinding;
import com.dayu.henanlibrary.dbBean.UserCardBean;
import java.util.List;
@@ -39,7 +38,7 @@
            ItemNoMoreBinding emptyView = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), com.dayu.baselibrary.R.layout.item_no_more, parent, false);
            return new ViewHolderEmpty(emptyView);
        } else {
            ItemNewCardBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_new_card, parent, false);
            ItemNewCardHnBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_new_card_hn, parent, false);
            return new ViewHolder(binding);
        }
@@ -78,17 +77,17 @@
    static class ViewHolder extends RecyclerView.ViewHolder {
        ItemNewCardBinding mBinding;
        ItemNewCardHnBinding mBinding;
        public ItemNewCardBinding getBinding() {
        public ItemNewCardHnBinding getBinding() {
            return mBinding;
        }
        public void setBinding(ItemNewCardBinding binding) {
        public void setBinding(ItemNewCardHnBinding binding) {
            this.mBinding = binding;
        }
        public ViewHolder(ItemNewCardBinding itemView) {
        public ViewHolder(ItemNewCardHnBinding itemView) {
            super(itemView.getRoot());
            this.mBinding = itemView;
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/RechargeAdapter.java
@@ -11,8 +11,7 @@
import com.dayu.baselibrary.databinding.ItemNoMoreBinding;
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.henanlibrary.R;
import com.dayu.henanlibrary.databinding.ItemRechargeBinding;
import com.dayu.henanlibrary.databinding.ItemRechargeHnBinding;
import com.dayu.henanlibrary.dbBean.RechargeBean;
import java.util.List;
@@ -39,7 +38,7 @@
            ItemNoMoreBinding emptyView = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), com.dayu.baselibrary.R.layout.item_no_more, parent, false);
            return new ViewHolderEmpty(emptyView);
        } else {
            ItemRechargeBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_recharge, parent, false);
            ItemRechargeHnBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_recharge_hn, parent, false);
            return new ViewHolder(binding);
        }
@@ -78,17 +77,17 @@
    static class ViewHolder extends RecyclerView.ViewHolder {
        ItemRechargeBinding mBinding;
        ItemRechargeHnBinding mBinding;
        public ItemRechargeBinding getBinding() {
        public ItemRechargeHnBinding getBinding() {
            return mBinding;
        }
        public void setBinding(ItemRechargeBinding binding) {
        public void setBinding(ItemRechargeHnBinding binding) {
            this.mBinding = binding;
        }
        public ViewHolder(ItemRechargeBinding itemView) {
        public ViewHolder(ItemRechargeHnBinding itemView) {
            super(itemView.getRoot());
            this.mBinding = itemView;
henanlibrary/src/main/java/com/dayu/henanlibrary/adapter/ReplacementAdapter.java
@@ -12,7 +12,7 @@
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.henanlibrary.R;
import com.dayu.henanlibrary.activity.ReplacementActivity;
import com.dayu.henanlibrary.databinding.ItemReplacementBinding;
import com.dayu.henanlibrary.databinding.ItemReplacementHnBinding;
import com.dayu.henanlibrary.dbBean.UserCardBean;
import java.util.List;
@@ -35,7 +35,7 @@
            ItemNoMoreBinding emptyView = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), com.dayu.baselibrary.R.layout.item_no_more, parent, false);
            return new ViewHolderEmpty(emptyView);
        } else {
            ItemReplacementBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_replacement, parent, false);
            ItemReplacementHnBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.item_replacement_hn, parent, false);
            return new ViewHolder(binding);
        }
@@ -76,17 +76,17 @@
    static class ViewHolder extends RecyclerView.ViewHolder {
        ItemReplacementBinding mBinding;
        ItemReplacementHnBinding mBinding;
        public ItemReplacementBinding getBinding() {
        public ItemReplacementHnBinding getBinding() {
            return mBinding;
        }
        public void setBinding(ItemReplacementBinding binding) {
        public void setBinding(ItemReplacementHnBinding binding) {
            this.mBinding = binding;
        }
        public ViewHolder(ItemReplacementBinding itemView) {
        public ViewHolder(ItemReplacementHnBinding itemView) {
            super(itemView.getRoot());
            this.mBinding = itemView;
henanlibrary/src/main/res/layout/activity_admin_hn.xml
henanlibrary/src/main/res/layout/activity_admin_setup_hn.xml
henanlibrary/src/main/res/layout/activity_domain_hn.xml
henanlibrary/src/main/res/layout/activity_electric_meter_hn.xml
henanlibrary/src/main/res/layout/activity_electric_price_hn.xml
henanlibrary/src/main/res/layout/activity_electricty_price_hn.xml
henanlibrary/src/main/res/layout/activity_home_hn.xml
henanlibrary/src/main/res/layout/activity_identyfying_hn.xml
henanlibrary/src/main/res/layout/activity_ip_hn.xml
henanlibrary/src/main/res/layout/activity_location_hn.xml
henanlibrary/src/main/res/layout/activity_main_hn.xml
henanlibrary/src/main/res/layout/activity_manage_setup_hn.xml
henanlibrary/src/main/res/layout/activity_my_hn.xml
henanlibrary/src/main/res/layout/activity_new_card_hn.xml
henanlibrary/src/main/res/layout/activity_newcard_list_hn.xml
henanlibrary/src/main/res/layout/activity_parameter_hn.xml
henanlibrary/src/main/res/layout/activity_patch_hn.xml
henanlibrary/src/main/res/layout/activity_patch_list_hn.xml
henanlibrary/src/main/res/layout/activity_power_hn.xml
henanlibrary/src/main/res/layout/activity_psw_hn.xml
henanlibrary/src/main/res/layout/activity_read_text_hn.xml
henanlibrary/src/main/res/layout/activity_recharge_detail_hn.xml
henanlibrary/src/main/res/layout/activity_recharge_ext_hn.xml
henanlibrary/src/main/res/layout/activity_recharge_hn.xml
henanlibrary/src/main/res/layout/activity_recharge_list_hn.xml
henanlibrary/src/main/res/layout/activity_red_card_hn.xml
henanlibrary/src/main/res/layout/activity_replacement_hn.xml
henanlibrary/src/main/res/layout/activity_test.xml
File was deleted
henanlibrary/src/main/res/layout/activity_water_meter_hn.xml
henanlibrary/src/main/res/layout/activity_water_num_hn.xml
henanlibrary/src/main/res/layout/activity_write_text_hn.xml
henanlibrary/src/main/res/layout/item_new_card_hn.xml
henanlibrary/src/main/res/layout/item_patch_hn.xml
henanlibrary/src/main/res/layout/item_recharge_hn.xml
henanlibrary/src/main/res/layout/item_replacement_hn.xml
qihealonelibrary/build.gradle
qihealonelibrary/src/main/AndroidManifest.xml
@@ -1,5 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.dayu.qihealonelibrary">
    >
    <application
        android:allowBackup="true"
@@ -8,18 +10,18 @@
        <activity
            android:name="com.dayu.qihealonelibrary.activity.AdminSetupActivity"
            android:name="com.dayu.qihealonelibrary.activity.AdminSetupActivityQHAlone"
            android:exported="true">
        </activity>
        <activity
            android:name="com.dayu.qihealonelibrary.activity.HomeActivity"
            android:name="com.dayu.qihealonelibrary.activity.HomeActivityQHAlone"
            android:exported="true">
        </activity>
        <activity
            android:name="com.dayu.qihealonelibrary.activity.NewCardActivity"
            android:name="com.dayu.qihealonelibrary.activity.NewCardActivityQHAlone"
            android:exported="true"
            android:launchMode="singleTop"
            android:screenOrientation="portrait">
@@ -29,15 +31,15 @@
            </intent-filter>
        </activity>
        <activity
            android:name="com.dayu.qihealonelibrary.activity.SysActivity"
            android:name="com.dayu.qihealonelibrary.activity.SysActivityQHAlone"
            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.PassWordActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.MyActivityQHAlone" />
        <activity
            android:name="com.dayu.qihealonelibrary.activity.RechargeActivity"
            android:name="com.dayu.qihealonelibrary.activity.RechargeActivityQHAlone"
            android:exported="true"
            android:launchMode="singleTop">
            <intent-filter>
@@ -57,7 +59,7 @@
            </intent-filter>
        </activity>
        <activity
            android:name="com.dayu.qihealonelibrary.activity.NFCWreatActivity"
            android:name="com.dayu.qihealonelibrary.activity.NFCWreatActivityQHAlone"
            android:exported="true"
            android:launchMode="singleTop">
            <intent-filter>
@@ -65,17 +67,17 @@
                <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.RechargeListActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.NewCardListActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.ParameterActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.PowerActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.DomainActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.ElectricPriceActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.IdentifyingActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.ReplacementActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.RechargeDetail" />
        <activity android:name="com.dayu.qihealonelibrary.activity.PasswordCardActivity" />
        <activity android:name="com.dayu.qihealonelibrary.activity.RegionActivity" />
        <activity android:name="com.dayu.qihealonelibrary.activity.PasswordCardActivityQHAlone" />
        <activity android:name="com.dayu.qihealonelibrary.activity.RegionActivityQHAlone" />
    </application>
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/AdminSetupActivity.java
File was deleted
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/AdminSetupActivityQHAlone.java
New file
@@ -0,0 +1,94 @@
package com.dayu.qihealonelibrary.activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityAdminSetupQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
import com.tencent.bugly.crashreport.CrashReport;
/**
 * Copyright (C), 2023,
 * Author: zuo
 * Date: 2023-11-10 19:52
 * Description: 管理员信息设置
 */
public class AdminSetupActivityQHAlone extends BaseActivityQHAlone {
    ActivityAdminSetupQhaBinding adminBinding;
    public static AdminSetupActivityQHAlone adminSetupActivity;
    AdminDataBean adminData = new AdminDataBean();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            adminBinding = ActivityAdminSetupQhaBinding.inflate(LayoutInflater.from(this));
            setContentView(adminBinding.getRoot());
            adminSetupActivity = this;
            setViewData();
            initView();
        } catch (Exception e) {
            CrashReport.postCatchedException(e);
            e.printStackTrace();
        }
    }
    private void initView() {
        adminBinding.setupOk.setOnClickListener(v -> {
            String strSerial = adminBinding.adminSerial.getText().toString();
            String strAddressCode = adminBinding.adminAddressCode.getText().toString();
            if (!TextUtils.isEmpty(strAddressCode)
                    && !TextUtils.isEmpty(strSerial)) {
                if (Integer.valueOf(adminBinding.adminSerial.getText().toString()) <= 65535) {
                    if (Integer.valueOf(adminBinding.adminSerial.getText().toString()) <= 65535) {
                        adminData.setAddressCode(strAddressCode);
                        adminData.setSerial(strSerial);
                        baseDao.adminDao().insert(adminData);
                        TipUtil.show(AdminSetupActivityQHAlone.this, "设置成功", new TipUtil.TipListener() {
                            @Override
                            public void onCancle() {
                                AdminSetupActivityQHAlone.this.finish();
                            }
                        });
                    } else {
                        TipUtil.show(AdminSetupActivityQHAlone.this, "输入的区域号不能超过65535");
                    }
                } else {
                    TipUtil.show(AdminSetupActivityQHAlone.this, "输入的设备编号不能超过65535");
                }
            } else {
                TipUtil.show(AdminSetupActivityQHAlone.this, "请输入完整内容");
            }
        });
    }
    private void setViewData() {
        try {
            AdminDataBean adminData = baseDao.adminDao().findFirst();
            if (adminData != null) {
                this.adminData = adminData;
                adminBinding.adminSerial.setText(adminData.getSerial());
                adminBinding.adminAddressCode.setText(adminData.getAddressCode());
            }
        } catch (Exception e) {
            CrashReport.postCatchedException(e);
            e.printStackTrace();
        }
    }
}
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/BaseActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/QHAloneBaseActivity.java
@@ -18,7 +18,7 @@
 * Created by zuoxiao on 2018/12/20.
 */
public class QHAloneBaseActivity extends BaseActivity {
public class BaseActivityQHAlone extends BaseActivity {
    private final String TAG = "BaseActivity";
    public TitleBar titleBar = null;
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/BaseNfcActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/BaseNfcActivity.java
@@ -1,15 +1,8 @@
package com.dayu.qihealonelibrary.activity;
/**
 * Created by zuo on 2018/12/2.
 */
import android.app.Activity;
import android.app.PendingIntent;
import android.content.Intent;
import android.nfc.NfcAdapter;
import android.nfc.Tag;
import android.os.Handler;
import com.dayu.baselibrary.utils.TipUtil;
@@ -17,7 +10,7 @@
/**
 * Author:Created by Ricky on 2017/8/25.
 * Author:Createdby zuo on 2018/12/2.
 * Email:584182977@qq.com
 * Description:
 * 子类在onNewIntent方法中进行NFC标签相关操作。
@@ -25,7 +18,7 @@
 * 在onNewIntent方法中执行intent传递过来的Tag数据
 * 将NFC标签卡靠近手机后部(NFC标签卡可网上自行购买)
 */
public class BaseNfcActivity extends QHAloneBaseActivity  {
public class BaseNfcActivityQHAlone extends BaseActivityQHAlone {
    protected NfcAdapter mNfcAdapter;
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/DomainActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/DomainActivity.java
@@ -6,7 +6,8 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityDomainBinding;
import com.dayu.qihealonelibrary.databinding.ActivityDomainQhaBinding;
import com.dayu.qihealonelibrary.dbBean.DomainBean;
@@ -17,14 +18,14 @@
 * Time: 10:19
 * 备注: 设置卡域名和ip
 */
public class DomainActivity extends QHAloneBaseActivity {
    ActivityDomainBinding binding;
public class DomainActivityQHAlone extends BaseActivityQHAlone {
    ActivityDomainQhaBinding binding;
    DomainBean domainBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityDomainBinding.inflate(LayoutInflater.from(this));
        binding = ActivityDomainQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initData();
        binding.electricOk.setOnClickListener(new View.OnClickListener() {
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ElectricPriceActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ElectricPriceActivity.java
@@ -8,7 +8,8 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityElectricPriceBinding;
import com.dayu.qihealonelibrary.databinding.ActivityElectricPriceQhaBinding;
import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean;
@@ -18,15 +19,15 @@
 * Date: 2023-11-10 10:18
 * Description: 电量单价设置
 */
public class ElectricPriceActivity extends QHAloneBaseActivity {
public class ElectricPriceActivityQHAlone extends BaseActivityQHAlone {
    ActivityElectricPriceBinding electricPriceBinding;
    ActivityElectricPriceQhaBinding electricPriceBinding;
    ElectricPriceBean electricPriceBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        electricPriceBinding = ActivityElectricPriceBinding.inflate(LayoutInflater.from(this));
        electricPriceBinding = ActivityElectricPriceQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(electricPriceBinding.getRoot());
        initData();
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/HomeActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/HomeActivity.java
@@ -8,7 +8,7 @@
import android.widget.Toast;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityHomeBinding;
import com.dayu.qihealonelibrary.databinding.ActivityHomeQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
@@ -19,16 +19,16 @@
 * Date: 2023-11-6 19:52
 * Description: 主界面
 */
public class HomeActivity extends QHAloneBaseActivity {
public class HomeActivityQHAlone extends BaseActivityQHAlone {
    public static HomeActivity homeActivity;
    ActivityHomeBinding homeBinding;
    public static HomeActivityQHAlone homeActivity;
    ActivityHomeQhaBinding homeBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        homeActivity = this;
        homeBinding = ActivityHomeBinding.inflate(LayoutInflater.from(this));
        homeBinding = ActivityHomeQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(homeBinding.getRoot());
        initView();
@@ -44,7 +44,7 @@
            public void onClick(View v) {
                AdminDataBean adminData = baseDao.adminDao().findFirst();
                if (adminData != null) {
                    startActivity(new Intent(HomeActivity.this, NewCardActivity.class));
                    startActivity(new Intent(HomeActivityQHAlone.this, NewCardActivityQHAlone.class));
                } else {
                    TipUtil.show("请先设置地址信息");
                }
@@ -56,7 +56,7 @@
            public void onClick(View v) {
                AdminDataBean adminData = baseDao.adminDao().findFirst();
                if (adminData != null) {
                    startActivity(new Intent(HomeActivity.this, RechargeActivity.class));
                    startActivity(new Intent(HomeActivityQHAlone.this, RechargeActivityQHAlone.class));
                } else {
                    TipUtil.show("请先设置地址信息");
                }
@@ -66,28 +66,28 @@
        homeBinding.homeRedCard.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(HomeActivity.this, ReadCardAcitivy.class));
                startActivity(new Intent(HomeActivityQHAlone.this, ReadCardAcitivy.class));
            }
        });
        //管理系统界面
        homeBinding.homeAdmin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(HomeActivity.this, SysActivity.class));
                startActivity(new Intent(HomeActivityQHAlone.this, SysActivityQHAlone.class));
            }
        });
        //参数设置
        homeBinding.homeParameter.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(HomeActivity.this, ParameterActivity.class));
                startActivity(new Intent(HomeActivityQHAlone.this, ParameterActivityQHAlone.class));
            }
        });
        homeBinding.homeMy.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(HomeActivity.this, MyActivity.class));
                startActivity(new Intent(HomeActivityQHAlone.this, MyActivityQHAlone.class));
            }
        });
@@ -107,10 +107,10 @@
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if ((System.currentTimeMillis() - mExitTime) > 2000) {
                Toast.makeText(HomeActivity.this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
                Toast.makeText(HomeActivityQHAlone.this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
                mExitTime = System.currentTimeMillis();
            } else {
                HomeActivity.this.finish();
                HomeActivityQHAlone.this.finish();
            }
            return true;
        }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/IdentifyingActivity.java
@@ -13,10 +13,9 @@
import com.dayu.qihealonelibrary.card.ManageCard;
import com.dayu.qihealonelibrary.card.RegisteredCard;
import com.dayu.qihealonelibrary.card.TestCard;
import com.dayu.qihealonelibrary.databinding.ActivityIdentyfyingBinding;
import com.dayu.qihealonelibrary.databinding.ActivityIdentyfyingQhaBinding;
import com.dayu.qihealonelibrary.dbBean.CardData;
import com.dayu.qihealonelibrary.dbBean.IdentityBean;
import com.dayu.qihealonelibrary.utils.CardCommon;
import java.util.Arrays;
@@ -28,9 +27,9 @@
 * Time: 10:21
 * 备注:卡标识设置
 */
public class IdentifyingActivity extends QHAloneBaseActivity {
public class IdentifyingActivityQHAlone extends BaseActivityQHAlone {
    ActivityIdentyfyingBinding binding;
    ActivityIdentyfyingQhaBinding binding;
    String[] nianfen = {"管理卡", "清零卡", "重新注册设备卡", "删除全部用户卡", "测试卡", "设备信息卡", "水泵功率卡"};
@@ -44,12 +43,12 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityIdentyfyingBinding.inflate(LayoutInflater.from(this));
        binding = ActivityIdentyfyingQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        binding.chooseCardType.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                ChooseView.getIntence(IdentifyingActivity.this, Arrays.asList(nianfen.clone()), new ChooseView.ChooseCallBack() {
                ChooseView.getIntence(IdentifyingActivityQHAlone.this, Arrays.asList(nianfen.clone()), new ChooseView.ChooseCallBack() {
                    @Override
                    public void onOptionsSelect(int options1) {
                        chooseData(nianfen[options1]);
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ManageSetUpActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ManageSetUpActivity.java
@@ -8,7 +8,7 @@
 * Date: 2023-11-08 16:52
 * Description:管理卡设置界面
 */
public class ManageSetUpActivity extends QHAloneBaseActivity {
public class ManageSetUpActivityQHAlone extends BaseActivityQHAlone {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/MyActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/MyActivity.java
@@ -18,13 +18,10 @@
import com.dayu.baselibrary.view.PassWordDialog;
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.qihealonelibrary.databinding.ActivityMyBinding;
import com.dayu.qihealonelibrary.databinding.ActivityMyQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
import com.dayu.qihealonelibrary.utils.DeviceNumberUtils;
import com.dayu.qihealonelibrary.utils.ExcelUtil;
import java.io.File;
import java.util.ArrayList;
@@ -37,7 +34,7 @@
 * Date: 2023-11-10 19:52
 * Description: 个人中心
 */
public class MyActivity extends QHAloneBaseActivity {
public class MyActivityQHAlone extends BaseActivityQHAlone {
    private CustomDatePicker beginDatePicker;
@@ -46,12 +43,12 @@
    long endTime;
    boolean isRechargeList = false;
    ActivityMyBinding myBinding;
    ActivityMyQhaBinding myBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        myBinding = ActivityMyBinding.inflate(LayoutInflater.from(this));
        myBinding = ActivityMyQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(myBinding.getRoot());
        getVersion(this);
        setData();
@@ -63,13 +60,13 @@
        myBinding.cardReplacement.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MyActivity.this, ReplacementActivity.class));
                startActivity(new Intent(MyActivityQHAlone.this, ReplacementActivityQHAlone.class));
            }
        });
        myBinding.myAdmin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                PassWordDialog passWordDialog = new PassWordDialog(MyActivity.this, new Intent(MyActivity.this, AdminSetupActivity.class));
                PassWordDialog passWordDialog = new PassWordDialog(MyActivityQHAlone.this, new Intent(MyActivityQHAlone.this, AdminSetupActivityQHAlone.class));
                passWordDialog.show();
//                startActivity(new Intent(MyActivity.this, AdminSetupActivity.class));
            }
@@ -77,19 +74,19 @@
        myBinding.myPsw.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MyActivity.this, PassWordActivity.class));
                startActivity(new Intent(MyActivityQHAlone.this, PassWordActivityQHAlone.class));
            }
        });
        myBinding.myRechargeListLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MyActivity.this, RechargeListActivity.class));
                startActivity(new Intent(MyActivityQHAlone.this, RechargeListActivityQHAlone.class));
            }
        });
        myBinding.myNewCardListLl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MyActivity.this, NewCardListActivity.class));
                startActivity(new Intent(MyActivityQHAlone.this, NewCardListActivityQHAlone.class));
            }
        });
        myBinding.myNewCardOut.setOnClickListener(new View.OnClickListener() {
@@ -116,13 +113,13 @@
        public boolean handleMessage(@NonNull Message msg) {
            switch (msg.what) {
                case 1:
                    TipUtil.show(MyActivity.this, "导出成功!");
                    TipUtil.show(MyActivityQHAlone.this, "导出成功!");
                    break;
                case 3:
                    TipUtil.show(MyActivity.this, "记录为空!");
                    TipUtil.show(MyActivityQHAlone.this, "记录为空!");
                    break;
                default:
                    TipUtil.show(MyActivity.this, "导出失败!");
                    TipUtil.show(MyActivityQHAlone.this, "导出失败!");
                    break;
            }
            stopAnim();
@@ -162,7 +159,7 @@
                        String[] title;
                        String fileName;
                        if (listData == null || listData.size() == 0) {
                            TipUtil.show(MyActivity.this, "记录为空");
                            TipUtil.show(MyActivityQHAlone.this, "记录为空");
                            return;
                        }
                        if (isRechargeList) {
@@ -173,7 +170,7 @@
                            fileName = file.toString() + "/" + ExcelUtil.outUserPathName;
                        }
                        ExcelUtil.initExcel(fileName, title);
                        ExcelUtil.writeObjListToExcel(listData, fileName, MyActivity.this);
                        ExcelUtil.writeObjListToExcel(listData, fileName, MyActivityQHAlone.this);
                        handler.sendEmptyMessage(1);
                    } catch (Exception e) {
                        handler.sendEmptyMessage(2);
@@ -262,7 +259,7 @@
            public void onTimeSelected(long timestamp) {
                endTime = timestamp;
                if ((endTime < beginTime) && endTime != beginTime) {
                    TipUtil.show(MyActivity.this, "结束时间不能晚于开始时间");
                    TipUtil.show(MyActivityQHAlone.this, "结束时间不能晚于开始时间");
                } else {
                    try {
                        endTime = endTime + (1000 * 60 * 60 * 24) - 1;
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
@@ -10,7 +10,6 @@
import com.dayu.baselibrary.utils.AidlUtil;
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.QHAloneApplication;
import com.dayu.qihealonelibrary.card.CleanCard;
import com.dayu.qihealonelibrary.card.CleanUserCard;
@@ -21,7 +20,7 @@
import com.dayu.qihealonelibrary.card.RegisteredCard;
import com.dayu.qihealonelibrary.card.TestCard;
import com.dayu.qihealonelibrary.card.UserCard;
import com.dayu.qihealonelibrary.databinding.ActivityWriteTextBinding;
import com.dayu.qihealonelibrary.databinding.ActivityWriteTextQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
import com.dayu.qihealonelibrary.dbBean.RechargeBean;
import com.dayu.qihealonelibrary.dbBean.UserCardBean;
@@ -37,7 +36,7 @@
 * Date: 2023-11-08 21:19
 * Description: nfc写卡界面
 */
public class NFCWreatActivity extends BaseNfcActivity {
public class NFCWreatActivityQHAlone extends BaseNfcActivityQHAlone {
    boolean cleanFlag = false;
@@ -78,7 +77,7 @@
    //打印
    QHAloneApplication baseApp;
    public static NFCWreatActivity nfcWreatActivity;
    public static NFCWreatActivityQHAlone nfcWreatActivity;
    /**
     * 是否是用户卡,假如是用户卡的话需要检测卡片是否已经开过户,假如已开户则报错不能再写卡
     */
@@ -88,13 +87,13 @@
    boolean isRecharge = false;
    //充值通信是否完成
    boolean rechargeIsOk = false;
    ActivityWriteTextBinding binding;
    ActivityWriteTextQhaBinding binding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            binding = ActivityWriteTextBinding.inflate(LayoutInflater.from(this));
            binding = ActivityWriteTextQhaBinding.inflate(LayoutInflater.from(this));
            setContentView(binding.getRoot());
            nfcWreatActivity = this;
            getData();
@@ -183,7 +182,7 @@
            binding.textView.setText("该卡已经写入用户信息,请更换卡片");
            binding.textView.setTextColor(getResources().getColor(com.dayu.baselibrary.R.color.red));
        } else if (cardType.equals("-1")) {
            TipUtil.show(NFCWreatActivity.this, "请勿移动卡片,读卡失败请重试!!");
            TipUtil.show(NFCWreatActivityQHAlone.this, "请勿移动卡片,读卡失败请重试!!");
        } else {
            Log.i("NFCWreatActivity", "olduserCard!=null  saveData");
            saveData();
@@ -235,9 +234,9 @@
                            //用户卡
                            startDetailActivity(userCardBean.getUserName(), "启用");
                        } else if (!TextUtils.isEmpty(morny)) {
                            TipUtil.show(NFCWreatActivity.this, "充值成功", () -> NFCWreatActivity.this.finish());
                            TipUtil.show(NFCWreatActivityQHAlone.this, "充值成功", () -> NFCWreatActivityQHAlone.this.finish());
                        } else {
                            TipUtil.show(NFCWreatActivity.this, "写卡成功", () -> NFCWreatActivity.this.finish());
                            TipUtil.show(NFCWreatActivityQHAlone.this, "写卡成功", () -> NFCWreatActivityQHAlone.this.finish());
                        }
                    } catch (Exception e) {
@@ -245,7 +244,7 @@
                        CrashReport.postCatchedException(e);
                    }
                } else {
                    TipUtil.show(NFCWreatActivity.this, "写卡失败");
                    TipUtil.show(NFCWreatActivityQHAlone.this, "写卡失败");
                }
                stopAnim();
            } else if (userCard == null && userCardBean != null) {
@@ -443,13 +442,13 @@
            detail.putExtra("morny", morny);
        }
        startActivity(detail);
        if (NewCardActivity.newCardActivity != null) {
            NewCardActivity.newCardActivity.finish();
        if (NewCardActivityQHAlone.newCardActivity != null) {
            NewCardActivityQHAlone.newCardActivity.finish();
        }
        if (RechargeActivity.rechargeActivity != null) {
            RechargeActivity.rechargeActivity.finish();
        if (RechargeActivityQHAlone.rechargeActivity != null) {
            RechargeActivityQHAlone.rechargeActivity.finish();
        }
        NFCWreatActivity.nfcWreatActivity.finish();
        NFCWreatActivityQHAlone.nfcWreatActivity.finish();
    }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardActivity.java
File was deleted
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardActivityQHAlone.java
New file
@@ -0,0 +1,308 @@
package com.dayu.qihealonelibrary.activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.InputFilter;
import android.text.Spanned;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import androidx.annotation.NonNull;
import com.dayu.baselibrary.tools.Utils;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.utils.ToastUtil;
import com.dayu.qihealonelibrary.card.UserCard;
import com.dayu.qihealonelibrary.databinding.ActivityNewCardQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
import com.dayu.qihealonelibrary.dbBean.UserCardBean;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import com.kernal.passportreader.sdk.CardsCameraActivity;
import com.kernal.passportreader.sdk.utils.DefaultPicSavePath;
import java.util.Calendar;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import kernal.idcard.android.ResultMessage;
import kernal.idcard.camera.CardOcrRecogConfigure;
import kernal.idcard.camera.SharedPreferencesHelper;
/**
 * Copyright (C), 2023,
 * Author: zuo
 * Date: 2023-11-10 19:52
 * Description: 新卡注册
 */
public class NewCardActivityQHAlone extends BaseActivityQHAlone {
    public static final int SCAN_IDCARD_REQUEST = 1;
    UserCardBean userCardBean;
    ActivityNewCardQhaBinding newCardBinding;
    AdminDataBean adminData;
    static NewCardActivityQHAlone newCardActivity;
    private int defValueMainId = 2;
    private int defValueSubId = 0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newCardActivity = this;
        newCardBinding = ActivityNewCardQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(newCardBinding.getRoot());
        setData();
        initView();
    }
    private void initView() {
        newCardBinding.newCardName.setFilters(new InputFilter[]{new ChineseInputFilter()});
        newCardBinding.newCardId.setFilters(new InputFilter[]{new AlphaNumericXFilter(), new InputFilter.LengthFilter(18)});
        //身份证识别
        newCardBinding.newCardScanBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                rxPermission();
            }
        });
        //开户
        newCardBinding.newCardRegistBtn.setOnClickListener(v -> {
            String userName = newCardBinding.newCardName.getText().toString();
            long date = System.currentTimeMillis();
            String phone = newCardBinding.newCardPhone.getText().toString();
            String userID = newCardBinding.newCardId.getText().toString().toUpperCase();
            if (!TextUtils.isEmpty(userName)
                    && !TextUtils.isEmpty(phone) && !TextUtils.isEmpty(userID)
            ) {
                if (userName.length() <= 1 || !validateName(userName)) {
                    TipUtil.show(NewCardActivityQHAlone.this, "请输入正确姓名");
                } else if (phone.length() < 11 || !isValidPhoneNumber(phone)) {
                    TipUtil.show(NewCardActivityQHAlone.this, "请输入正确手机号");
                } else if (!Utils.check(userID)) {
                    TipUtil.show(NewCardActivityQHAlone.this, "请输入正确身份证号");
                } else {
                    userCardBean = new UserCardBean();
                    userCardBean.setUserName(userName);
                    userCardBean.setDate(date);
                    userCardBean.setSerial(adminData.getSerial());
                    userCardBean.setPhone(phone);
                    userCardBean.setUserID(userID);
                    baseDao.userCardDao().insert(userCardBean);
                    UserCard userCard = new UserCard();
                    userCard.setArerNumber(Short.valueOf(adminData.getSerial()));
                    userCard.setDeviceNumberl(Short.valueOf(adminData.getAddressCode()));
                    userCard.setRechargeTimes((byte) 0);
                    userCard.setTotalWater(0);
                    userCard.setTotalElectric(0);
                    userCard.setBalance(0);
                    userCard.setSurplusWater(0);
                    userCard.setRechargeDate(Calendar.getInstance());
                    Intent intent = new Intent(NewCardActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                    intent.putExtra("userCard", userCard);
                    intent.putExtra("dbUserCard", userCardBean);
                    startActivity(intent);
                }
            } else {
                TipUtil.show(NewCardActivityQHAlone.this, "请输入完整内容");
            }
        });
    }
    private boolean isValidPhoneNumber(String phoneNumber) {
        // 定义手机号的正则表达式,确保数字部分没有连续6位相同的数字
        String phoneRegex = "^1[0-9]{10}$";
        // 创建 Pattern 对象
        Pattern pattern = Pattern.compile(phoneRegex);
        // 创建 matcher 对象
        Matcher matcher = pattern.matcher(phoneNumber);
        // 判断手机号是否匹配正则表达式
        return matcher.matches() && !hasSixConsecutiveSameDigits(phoneNumber);
    }
    /**
     * 判断是否有6个相同的连续数字
     *
     * @param input
     * @return
     */
    public static boolean hasSixConsecutiveSameDigits(String input) {
        char[] digits = input.toCharArray();
        for (int i = 0; i <= digits.length - 6; i++) {
            boolean consecutiveSame = true;
            for (int j = 1; j < 6; j++) {
                if (digits[i + j] != digits[i + j - 1]) {
                    consecutiveSame = false;
                    break;
                }
            }
            if (consecutiveSame) {
                return true;
            }
        }
        return false;
    }
    private void rxPermission() {
        XXPermissions.with(this)
                // 申请单个权限
//                    .permission(Permission.RECORD_AUDIO)
                // 申请多个权限
                .permission(Permission.CAMERA)
                .request(new OnPermissionCallback() {
                    @Override
                    public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
                        if (allGranted) {//所有申请的权限都已通过
                            startCamera();
                        }
                    }
                    @Override
                    public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
                        if (doNotAskAgain) {
                            // 如果是被永久拒绝就跳转到应用权限系统设置页面
                        } else {
//                                toast("获取录音和日历权限失败");
                        }
                    }
                });
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) {
            switch (requestCode) {
                case SCAN_IDCARD_REQUEST:
                    try {
                        //跳转扫描界面识别完成之后,数据回传
                        if (data != null) {
                            //数据回传的获取
                            Bundle bundle = data.getBundleExtra("resultbundle");
                            //bundle不为null,代表这识别成功
                            if (bundle != null) {
                                ResultMessage resultMessage = (ResultMessage) bundle.getSerializable("resultMessage");
                                newCardBinding.newCardName.setText(resultMessage.GetRecogResult[1]);
                                newCardBinding.newCardId.setText(resultMessage.GetRecogResult[6]);
                                newCardBinding.newCardIdTip.setVisibility(View.VISIBLE);
                            } else {
                                String error = data.getStringExtra("error");
                                String StrPath = data.getStringExtra("strpicpath");
                                ToastUtil.show(error);
                            }
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    break;
            }
        }
    }
    private void startCamera() {
        CardOcrRecogConfigure.getInstance()
                .initLanguage(getApplicationContext())
                .setSaveCut(true)
                .setOpenIDCopyFuction(true)
                .setnMainId(getSharedPreferencesStoreMainId())
                .setnSubID(getSharedPreferencesStoreSubId())
                .setFlag(0)
                .setnCropType(0)
                .setSavePath(new DefaultPicSavePath(this, true));
        Intent intent = new Intent(this, CardsCameraActivity.class);
        startActivityForResult(intent, SCAN_IDCARD_REQUEST);
    }
    public int getSharedPreferencesStoreMainId() {
        return SharedPreferencesHelper.getInt(
                getApplicationContext(), "nMainId", defValueMainId);
    }
    public int getSharedPreferencesStoreSubId() {
        return SharedPreferencesHelper.getInt(
                getApplicationContext(), "nSubID", defValueSubId);
    }
    private void setData() {
        try {
            adminData = baseDao.adminDao().findFirst();
            newCardBinding.newCardVillageNum.setText(adminData.getSerial());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public boolean validateName(String name) {
        // 使用正则表达式匹配姓名
        String regex = "^[\\u4e00-\\u9fa5]+$"; // 只允许中文字符
        return name.matches(regex);
    }
    private static class AlphaNumericXFilter implements InputFilter {
        // 正则表达式定义只能输入数字和字母 "X"(大写或小写)
        private final String regex = "[0-9Xx]*";
        @Override
        public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
            // 检查每个输入字符是否符合正则表达式
            for (int i = start; i < end; i++) {
                if (!String.valueOf(source.charAt(i)).matches(regex)) {
                    return ""; // 不符合规定的字符被过滤掉
                }
            }
            return null; // 允许输入字符
        }
    }
    public class ChineseInputFilter implements InputFilter {
        @Override
        public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
            StringBuilder builder = new StringBuilder();
            for (int i = start; i < end; i++) {
                char currentChar = source.charAt(i);
                // 只允许汉字
                if (isChineseCharacter(currentChar)) {
                    builder.append(currentChar);
                }
            }
            return builder.toString();
        }
        private boolean isChineseCharacter(char c) {
            // 这里使用Unicode范围判断是否为汉字
            // 汉字的Unicode范围是:0x4e00 - 0x9fa5
            return (c >= 0x4e00 && c <= 0x9fa5);
        }
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        newCardActivity = null;
    }
}
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardListActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NewCardListActivity.java
@@ -12,9 +12,8 @@
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.qihealonelibrary.adapter.NewCardAdapter;
import com.dayu.qihealonelibrary.databinding.ActivityNewcardListBinding;
import com.dayu.qihealonelibrary.databinding.ActivityNewcardListQhaBinding;
import com.dayu.qihealonelibrary.dbBean.UserCardBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
import com.scwang.smart.refresh.layout.listener.OnLoadMoreListener;
@@ -33,10 +32,10 @@
 * Description: 新卡注册列表界面
 */
public class NewCardListActivity extends QHAloneBaseActivity {
public class NewCardListActivityQHAlone extends BaseActivityQHAlone {
    ActivityNewcardListBinding newcardListBinding;
    ActivityNewcardListQhaBinding newcardListBinding;
    List<UserCardBean> userCardBeanList = new ArrayList<>();
    NewCardAdapter adapter;
    private CustomDatePicker beginDatePicker;
@@ -53,7 +52,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newcardListBinding = ActivityNewcardListBinding.inflate(LayoutInflater.from(this));
        newcardListBinding = ActivityNewcardListQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(newcardListBinding.getRoot());
        setRightButton();
        initDatePicker();
@@ -153,7 +152,7 @@
            public void onTimeSelected(long timestamp) {
                endTime = timestamp;
                if ((endTime < beginTime) && endTime != beginTime) {
                    TipUtil.show(NewCardListActivity.this, "结束时间不能晚于开始时间");
                    TipUtil.show(NewCardListActivityQHAlone.this, "结束时间不能晚于开始时间");
                } else {
//                    try {
//                        endTime = endTime + (1000 * 60 * 60 * 24) - 1;
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ParameterActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ParameterActivity.java
@@ -5,7 +5,7 @@
import android.view.LayoutInflater;
import android.view.View;
import com.dayu.qihealonelibrary.databinding.ActivityParameterBinding;
import com.dayu.qihealonelibrary.databinding.ActivityParameterQhaBinding;
/**
 * Copyright (C), 2023,
@@ -13,13 +13,13 @@
 * Date: 2023-11-06 11:47
 * Description: 参数设置界面
 */
public class ParameterActivity extends QHAloneBaseActivity {
    ActivityParameterBinding binding;
public class ParameterActivityQHAlone extends BaseActivityQHAlone {
    ActivityParameterQhaBinding binding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityParameterBinding.inflate(LayoutInflater.from(this));
        binding = ActivityParameterQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initView();
    }
@@ -29,7 +29,7 @@
        binding.parameterDomain.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, DomainActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, DomainActivityQHAlone.class);
                startActivity(intent);
            }
        });
@@ -37,7 +37,7 @@
        binding.parameterPower.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, PowerActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, PowerActivityQHAlone.class);
                startActivity(intent);
            }
        });
@@ -45,7 +45,7 @@
        binding.parameterElectricPrice.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, ElectricPriceActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, ElectricPriceActivityQHAlone.class);
                startActivity(intent);
            }
        });
@@ -53,7 +53,7 @@
        binding.parameterCardIdentifying.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, IdentifyingActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, IdentifyingActivityQHAlone.class);
                startActivity(intent);
            }
        });
@@ -61,14 +61,14 @@
        binding.parameterPassWordCard.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, PasswordCardActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, PasswordCardActivityQHAlone.class);
                startActivity(intent);
            }
        });
        binding.parameterRegion.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(ParameterActivity.this, RegionActivity.class);
                Intent intent = new Intent(ParameterActivityQHAlone.this, RegionActivityQHAlone.class);
                startActivity(intent);
            }
        });
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PassWordActivity.java
@@ -7,7 +7,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.utils.WSMD5;
import com.dayu.qihealonelibrary.databinding.ActivityPswBinding;
import com.dayu.qihealonelibrary.databinding.ActivityPswQhaBinding;
import com.dayu.qihealonelibrary.dbBean.PassWordBean;
@@ -17,16 +17,16 @@
 * Date: 2023-11-10 19:52
 * Description: 修改密码界面
 */
public class PassWordActivity extends QHAloneBaseActivity {
public class PassWordActivityQHAlone extends BaseActivityQHAlone {
    ActivityPswBinding pswBinding;
    ActivityPswQhaBinding pswBinding;
    PassWordBean passWordBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        pswBinding = ActivityPswBinding.inflate(LayoutInflater.from(this));
        pswBinding = ActivityPswQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(pswBinding.getRoot());
        pswBinding.waterOk.setOnClickListener(new View.OnClickListener() {
            @Override
@@ -44,18 +44,18 @@
                            if (pswBinding.pswNew.getText().toString().equals(pswBinding.pswNewAgin.getText().toString())) {
                                passWordBean.setPassWord(pswBinding.pswNewAgin.getText().toString());
                                baseDao.loginPsDao().insert(passWordBean);
                                TipUtil.show(PassWordActivity.this, "密码修改完成", () -> {
                                    PassWordActivity.this.finish();
                                TipUtil.show(PassWordActivityQHAlone.this, "密码修改完成", () -> {
                                    PassWordActivityQHAlone.this.finish();
                                });
                            } else {
                                TipUtil.show(PassWordActivity.this, "两次输入的密码不一致");
                                TipUtil.show(PassWordActivityQHAlone.this, "两次输入的密码不一致");
                            }
                        } else {
                            TipUtil.show(PassWordActivity.this, "旧密码输入错误");
                            TipUtil.show(PassWordActivityQHAlone.this, "旧密码输入错误");
                        }
                    } else {
                        TipUtil.show(PassWordActivity.this, "请输完内容");
                        TipUtil.show(PassWordActivityQHAlone.this, "请输完内容");
                    }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PasswordCardActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PasswordCardActivity.java
@@ -6,7 +6,7 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityPasswordCardBinding;
import com.dayu.qihealonelibrary.databinding.ActivityPasswordCardQhaBinding;
import com.dayu.qihealonelibrary.dbBean.PassWordCardBean;
/**
@@ -15,15 +15,15 @@
 * Time: 16:21
 * 备注:密码卡设置界面
 */
public class PasswordCardActivity extends QHAloneBaseActivity {
public class PasswordCardActivityQHAlone extends BaseActivityQHAlone {
    ActivityPasswordCardBinding binding;
    ActivityPasswordCardQhaBinding binding;
    PassWordCardBean cardBean;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityPasswordCardBinding.inflate(LayoutInflater.from(this));
        binding = ActivityPasswordCardQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initView();
        initData();
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PowerActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/PowerActivity.java
@@ -6,7 +6,7 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityPowerBinding;
import com.dayu.qihealonelibrary.databinding.ActivityPowerQhaBinding;
import com.dayu.qihealonelibrary.dbBean.PowerBean;
/**
@@ -15,14 +15,14 @@
 * Date: 2023-11-08 21:19
 * Description: 功率设置
 */
public class PowerActivity extends QHAloneBaseActivity {
    ActivityPowerBinding powerBinding;
public class PowerActivityQHAlone extends BaseActivityQHAlone {
    ActivityPowerQhaBinding powerBinding;
    PowerBean powerBean = new PowerBean();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        powerBinding = ActivityPowerBinding.inflate(LayoutInflater.from(this));
        powerBinding = ActivityPowerQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(powerBinding.getRoot());
        initData();
        initView();
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java
@@ -15,10 +15,8 @@
import com.dayu.qihealonelibrary.card.ElectricPriceCard;
import com.dayu.qihealonelibrary.card.RegionCard;
import com.dayu.qihealonelibrary.card.UserCard;
import com.dayu.qihealonelibrary.databinding.ActivityRedCardBinding;
import com.dayu.qihealonelibrary.databinding.ActivityRedCardQhaBinding;
import com.dayu.qihealonelibrary.tools.NfcReadHelper;
import com.dayu.qihealonelibrary.utils.CardCommon;
import com.dayu.qihealonelibrary.view.ProgressDialog;
@@ -31,10 +29,10 @@
 * Date: 2023-11-10 19:52
 * Description: 读卡界面
 */
public class ReadCardAcitivy extends BaseNfcActivity {
public class ReadCardAcitivy extends BaseNfcActivityQHAlone {
    volatile UserCard userCard;
    ActivityRedCardBinding redCardBinding;
    ActivityRedCardQhaBinding redCardBinding;
    Intent intent;
@@ -42,7 +40,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        redCardBinding = ActivityRedCardBinding.inflate(LayoutInflater.from(this));
        redCardBinding = ActivityRedCardQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(redCardBinding.getRoot());
    }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java
@@ -9,7 +9,7 @@
import android.widget.EditText;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeBinding;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeQhaBinding;
import com.dayu.qihealonelibrary.dbBean.AdminDataBean;
import com.dayu.qihealonelibrary.tools.NfcReadHelper;
import com.dayu.qihealonelibrary.utils.DeviceNumberUtils;
@@ -23,13 +23,13 @@
 * Date: 2023-11-5 09:52
 * Description: 充值界面
 */
public class RechargeActivity extends BaseNfcActivity {
public class RechargeActivityQHAlone extends BaseNfcActivityQHAlone {
    Intent intent;
    boolean userFlag;
    ActivityRechargeBinding binding;
    public static RechargeActivity rechargeActivity;
    ActivityRechargeQhaBinding binding;
    public static RechargeActivityQHAlone rechargeActivity;
    AdminDataBean adminData;
    String userName;
@@ -38,7 +38,7 @@
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            binding = ActivityRechargeBinding.inflate(LayoutInflater.from(this));
            binding = ActivityRechargeQhaBinding.inflate(LayoutInflater.from(this));
            setContentView(binding.getRoot());
            setPricePoint(binding.rechargeWater);
            rechargeActivity = this;
@@ -58,7 +58,7 @@
                ProgressDialog.show(this);
//                selectBalance(userCard.getInitPeasantCode());
            } else {
                TipUtil.show(RechargeActivity.this, "卡片读取失败");
                TipUtil.show(RechargeActivityQHAlone.this, "卡片读取失败");
            }
//            readAllData(intent);
@@ -81,16 +81,16 @@
            if (!TextUtils.isEmpty(morny)) {
                String initCode = DeviceNumberUtils.getDeviceNumber();
                if (TextUtils.isEmpty(initCode)) {
                    TipUtil.show(RechargeActivity.this, "设备注册号为空,请先设置IP和管理员地址");
                    TipUtil.show(RechargeActivityQHAlone.this, "设备注册号为空,请先设置IP和管理员地址");
                    return;
                }
                Intent intent = new Intent(RechargeActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(RechargeActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                intent.putExtra("morny", morny);
                intent.putExtra("userName", userName);
                intent.putExtra("userCard", userCard);
                startActivity(intent);
            } else {
                TipUtil.show(RechargeActivity.this, "请输入充值金额(元)");
                TipUtil.show(RechargeActivityQHAlone.this, "请输入充值金额(元)");
            }
        });
    }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeDetail.java
@@ -7,8 +7,7 @@
import com.dayu.baselibrary.utils.MornyUtil;
import com.dayu.qihealonelibrary.card.UserCard;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeDetailBinding;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeDetailQhaBinding;
import java.util.Calendar;
@@ -19,9 +18,9 @@
 * Time: 15:01
 * 备注:写卡后的详情页
 */
public class RechargeDetail extends QHAloneBaseActivity {
public class RechargeDetail extends BaseActivityQHAlone {
    ActivityRechargeDetailBinding binding;
    ActivityRechargeDetailQhaBinding binding;
    UserCard userCard;
    String statu;
    String userName;
@@ -31,7 +30,7 @@
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityRechargeDetailBinding.inflate(LayoutInflater.from(this));
        binding = ActivityRechargeDetailQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        try {
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeListActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeListActivity.java
@@ -1,7 +1,6 @@
package com.dayu.qihealonelibrary.activity;
import static com.dayu.baselibrary.view.TitleBar.ClickType_RIGHT_TEXT;
import android.os.Bundle;
@@ -15,9 +14,8 @@
import com.dayu.baselibrary.view.datepicker.CustomDatePicker;
import com.dayu.baselibrary.view.datepicker.DateFormatUtils;
import com.dayu.qihealonelibrary.adapter.RechargeAdapter;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeListBinding;
import com.dayu.qihealonelibrary.databinding.ActivityRechargeListQhaBinding;
import com.dayu.qihealonelibrary.dbBean.RechargeBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
import com.scwang.smart.refresh.layout.listener.OnLoadMoreListener;
@@ -35,9 +33,9 @@
 * Date: 2023-11-5 09:52
 * Description: 充值记录
 */
public class RechargeListActivity extends QHAloneBaseActivity {
public class RechargeListActivityQHAlone extends BaseActivityQHAlone {
    ActivityRechargeListBinding rechargeListBinding;
    ActivityRechargeListQhaBinding rechargeListBinding;
    RechargeAdapter adapter;
    List<RechargeBean> rechargeList = new ArrayList<>();
@@ -55,7 +53,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        rechargeListBinding = ActivityRechargeListBinding.inflate(LayoutInflater.from(this));
        rechargeListBinding = ActivityRechargeListQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(rechargeListBinding.getRoot());
        setRightButton();
        initDatePicker();
@@ -165,7 +163,7 @@
            public void onTimeSelected(long timestamp) {
                endTime = timestamp;
                if ((endTime < beginTime) && endTime != beginTime) {
                    TipUtil.show(RechargeListActivity.this, "结束时间不能晚于开始时间");
                    TipUtil.show(RechargeListActivityQHAlone.this, "结束时间不能晚于开始时间");
                } else {
                    endTime = endTime + (1000 * 60 * 60 * 24) - 1;
                    rechargeList.clear();
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RegionActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RegionActivity.java
@@ -6,7 +6,7 @@
import android.view.View;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.qihealonelibrary.databinding.ActivityRegionBinding;
import com.dayu.qihealonelibrary.databinding.ActivityRegionQhaBinding;
import com.dayu.qihealonelibrary.dbBean.RegionBean;
@@ -16,15 +16,15 @@
 * Time: 17:28
 * 备注:区域标号卡设置界面
 */
public class RegionActivity extends QHAloneBaseActivity {
public class RegionActivityQHAlone extends BaseActivityQHAlone {
    ActivityRegionBinding binding;
    ActivityRegionQhaBinding binding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = ActivityRegionBinding.inflate(LayoutInflater.from(this));
        binding = ActivityRegionQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        initView();
        initData();
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReplacementActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReplacementActivity.java
@@ -12,7 +12,7 @@
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.EdtDialog;
import com.dayu.qihealonelibrary.adapter.ReplacementAdapter;
import com.dayu.qihealonelibrary.databinding.ActivityReplacementBinding;
import com.dayu.qihealonelibrary.databinding.ActivityReplacementQhaBinding;
import com.dayu.qihealonelibrary.dbBean.UserCardBean;
import com.scwang.smart.refresh.footer.ClassicsFooter;
import com.scwang.smart.refresh.layout.api.RefreshLayout;
@@ -32,8 +32,8 @@
 * Time: 17:32
 * 备注: 补卡界面
 */
public class ReplacementActivity extends QHAloneBaseActivity {
    ActivityReplacementBinding newcardListBinding;
public class ReplacementActivityQHAlone extends BaseActivityQHAlone {
    ActivityReplacementQhaBinding newcardListBinding;
    List<UserCardBean> userCardBeanList = new ArrayList<>();
    ReplacementAdapter adapter;
    long beginTime;
@@ -47,7 +47,7 @@
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        newcardListBinding = ActivityReplacementBinding.inflate(LayoutInflater.from(this));
        newcardListBinding = ActivityReplacementQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(newcardListBinding.getRoot());
        setRightButton();
        initList();
@@ -57,7 +57,7 @@
    public void itemClick(View view) {
        UserCardBean userCardBean = userCardBeanList.get((int) view.getTag());
        Intent intent = new Intent(ReplacementActivity.this, NFCWreatActivity.class);
        Intent intent = new Intent(ReplacementActivityQHAlone.this, NFCWreatActivityQHAlone.class);
        intent.putExtra("dbUserCard", userCardBean);
        startActivity(intent);
    }
@@ -123,7 +123,7 @@
        titleBar.setOnItemclickListner(ClickType_RIGHT_TEXT, new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                edtDialog = new EdtDialog(ReplacementActivity.this, new EdtDialog.DialogBack() {
                edtDialog = new EdtDialog(ReplacementActivityQHAlone.this, new EdtDialog.DialogBack() {
                    @Override
                    public void onOk(String data) {
                        List<UserCardBean> beans = baseDao.userCardDao().findByData(data);
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/SysActivityQHAlone.java
File was renamed from qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/SysActivity.java
@@ -15,7 +15,7 @@
import com.dayu.qihealonelibrary.card.PassWordCard;
import com.dayu.qihealonelibrary.card.RegisteredCard;
import com.dayu.qihealonelibrary.card.TestCard;
import com.dayu.qihealonelibrary.databinding.ActivityAdminBinding;
import com.dayu.qihealonelibrary.databinding.ActivityAdminQhaBinding;
import com.dayu.qihealonelibrary.dbBean.DomainBean;
import com.dayu.qihealonelibrary.dbBean.PassWordCardBean;
import com.dayu.qihealonelibrary.dbBean.PowerBean;
@@ -27,14 +27,14 @@
 * Date: 2023-11-5 09:52
 * Description: 管理系统
 */
public class SysActivity extends QHAloneBaseActivity {
public class SysActivityQHAlone extends BaseActivityQHAlone {
    ActivityAdminBinding adminBinding;
    ActivityAdminQhaBinding adminBinding;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        adminBinding = ActivityAdminBinding.inflate(LayoutInflater.from(this));
        adminBinding = ActivityAdminQhaBinding.inflate(LayoutInflater.from(this));
        setContentView(adminBinding.getRoot());
        initView();
@@ -47,7 +47,7 @@
        adminBinding.adminAdmin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                ManageCard manageCard = new ManageCard();
                intent.putExtra("manageCard", manageCard);
                startActivity(intent);
@@ -57,7 +57,7 @@
        adminBinding.adminCleanZero.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                CleanCard cleanCard = new CleanCard();
                intent.putExtra("cleanCard", cleanCard);
                startActivity(intent);
@@ -66,7 +66,7 @@
        adminBinding.adminRegistered.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                RegisteredCard registeredCard = new RegisteredCard();
                intent.putExtra("registeredCard", registeredCard);
                startActivity(intent);
@@ -76,7 +76,7 @@
        adminBinding.adminCleanUser.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                CleanUserCard cleanUserCard = new CleanUserCard();
                intent.putExtra("cleanUserCard", cleanUserCard);
                startActivity(intent);
@@ -86,7 +86,7 @@
        adminBinding.adminDomain.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                DomainBean domainBean = baseDao.domainPortDao().findFirst();
                DomainCard domainCard = new DomainCard();
                if (domainBean != null) {
@@ -107,7 +107,7 @@
        adminBinding.adminTest.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                TestCard testCard = new TestCard();
                intent.putExtra("testCard", testCard);
                startActivity(intent);
@@ -118,7 +118,7 @@
        adminBinding.adminConfigDeviceRegistration.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                ConfigureDeviceRegistrationCrad configureDeviceRegistrationCrad = new ConfigureDeviceRegistrationCrad();
                intent.putExtra("configureDeviceRegistrationCrad", configureDeviceRegistrationCrad);
                startActivity(intent);
@@ -131,7 +131,7 @@
            public void onClick(View v) {
                PowerBean powerBean = baseDao.powerDao().findFirst();
                if (powerBean != null) {
                    Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                    Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                    ConfigurationPowerCard configurationPowerCard = new ConfigurationPowerCard();
                    configurationPowerCard.setPower(powerBean.getPower());
                    intent.putExtra("configurationPowerCard", configurationPowerCard);
@@ -149,7 +149,7 @@
            public void onClick(View v) {
                PassWordCardBean powerBean = baseDao.passWordCardDao().findFirst();
                if (powerBean != null) {
                    Intent intent = new Intent(SysActivity.this, NFCWreatActivity.class);
                    Intent intent = new Intent(SysActivityQHAlone.this, NFCWreatActivityQHAlone.class);
                    PassWordCard passWordCard = new PassWordCard();
                    passWordCard.setPassWord(powerBean.getPassWord());
                    intent.putExtra("passWordCard", passWordCard);
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/adapter/ReplacementAdapter.java
@@ -9,24 +9,20 @@
import androidx.recyclerview.widget.RecyclerView;
import com.dayu.baselibrary.databinding.ItemNoMoreBinding;
import com.dayu.baselibrary.utils.DateUtil;
import com.dayu.qihealonelibrary.R;
import com.dayu.qihealonelibrary.activity.ReplacementActivity;
import com.dayu.qihealonelibrary.activity.ReplacementActivityQHAlone;
import com.dayu.qihealonelibrary.databinding.QiheItemReplacementsBinding;
import com.dayu.qihealonelibrary.dbBean.UserCardBean;
import java.util.List;
public class ReplacementAdapter extends BaseRecyclerAdapter<RecyclerView.ViewHolder> {
    List<UserCardBean> rechargeList;
    ReplacementActivity mContext;
    ReplacementActivityQHAlone mContext;
    public ReplacementAdapter(ReplacementActivity context, List<UserCardBean> rechargeList) {
    public ReplacementAdapter(ReplacementActivityQHAlone context, List<UserCardBean> rechargeList) {
        mContext = context;
        this.rechargeList = rechargeList;
    }
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dbBean/AdminDataBean.java
@@ -13,7 +13,7 @@
    @PrimaryKey(autoGenerate = true)
    public long id;
    public String serial;//序列号
    public String serial;//序列号(设备编号)
    public String name;
qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/dbBean/UserCardBean.java
@@ -5,13 +5,17 @@
import java.io.Serializable;
@Entity
public class UserCardBean implements Serializable {
    @PrimaryKey(autoGenerate = true)
    public long id;
    private String serial ;//设备序列号(也是设备编号)
    private String userName ;
    private String userName ;//用户名称
    private String userID ;//身份证号
    private long date;
qihealonelibrary/src/main/res/layout/activity_admin_qha.xml
qihealonelibrary/src/main/res/layout/activity_admin_setup_qha.xml
File was renamed from qihealonelibrary/src/main/res/layout/activity_admin_setup.xml
@@ -22,6 +22,7 @@
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginTop="20dp"
            android:orientation="vertical">
            <LinearLayout
@@ -30,30 +31,57 @@
                android:layout_height="wrap_content">
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="@string/eq_no"
                    android:textSize="@dimen/new_card_size" />
                <EditText
                    android:id="@+id/admin_serial"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_width="0dp"
                    android:layout_height="@dimen/edt_height"
                    android:layout_weight="2"
                    android:background="@drawable/editbg"
                    android:inputType="number"
                    android:maxLength="11"
                    android:paddingLeft="10dp"
                    android:textSize="@dimen/new_card_size" />
            </LinearLayout>
            <LinearLayout
                android:id="@+id/chose_address_code"
                style="@style/newCardLL"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:text="@string/address_code"
                    android:textSize="@dimen/new_card_size" />
                <EditText
                    android:id="@+id/admin_address_code"
                    android:layout_width="0dp"
                    android:layout_height="@dimen/edt_height"
                    android:layout_weight="2"
                    android:background="@drawable/editbg"
                    android:inputType="number"
                    android:paddingLeft="10dp"
                    android:textSize="@dimen/new_card_size" />
            </LinearLayout>
            <LinearLayout
                android:id="@+id/chose_address"
                style="@style/newCardLL"
                android:visibility="gone"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
                android:layout_height="wrap_content"
                android:visibility="gone">
                <TextView
                    android:layout_width="wrap_content"
@@ -66,29 +94,8 @@
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:hint="请点击选择"
                    android:textSize="@dimen/new_card_size" />
            </LinearLayout>
            <LinearLayout
                android:id="@+id/chose_address_code"
                style="@style/newCardLL"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/address_code"
                    android:textSize="@dimen/new_card_size" />
                <EditText
                    android:id="@+id/admin_address_code"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textSize="@dimen/new_card_size" />
            </LinearLayout>
        </LinearLayout>
@@ -105,14 +112,5 @@
        android:text="确  定"
        android:textSize="@dimen/text_size" />
    <com.wang.avi.AVLoadingIndicatorView
        android:id="@+id/avi"
        style="@style/AVLoadingIndicatorView"
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:visibility="gone"
        app:indicatorColor="@color/title_bg"
        app:indicatorName="BallClipRotatePulseIndicator" />
</RelativeLayout>
qihealonelibrary/src/main/res/layout/activity_domain_qha.xml
qihealonelibrary/src/main/res/layout/activity_electric_meter_qha.xml
qihealonelibrary/src/main/res/layout/activity_electric_price_qha.xml
qihealonelibrary/src/main/res/layout/activity_electricty_price_qha.xml
qihealonelibrary/src/main/res/layout/activity_home_qha.xml
qihealonelibrary/src/main/res/layout/activity_identyfying_qha.xml
qihealonelibrary/src/main/res/layout/activity_ip_qha.xml
qihealonelibrary/src/main/res/layout/activity_location_qha.xml
qihealonelibrary/src/main/res/layout/activity_main_qha.xml
qihealonelibrary/src/main/res/layout/activity_manage_setup_qha.xml
qihealonelibrary/src/main/res/layout/activity_my_qha.xml
qihealonelibrary/src/main/res/layout/activity_new_card_qha.xml
qihealonelibrary/src/main/res/layout/activity_newcard_list_qha.xml
qihealonelibrary/src/main/res/layout/activity_parameter_qha.xml
qihealonelibrary/src/main/res/layout/activity_password_card_qha.xml
qihealonelibrary/src/main/res/layout/activity_patch_list_qha.xml
qihealonelibrary/src/main/res/layout/activity_patch_qha.xml
qihealonelibrary/src/main/res/layout/activity_power_qha.xml
qihealonelibrary/src/main/res/layout/activity_psw_qha.xml
qihealonelibrary/src/main/res/layout/activity_read_text_qha.xml
qihealonelibrary/src/main/res/layout/activity_recharge_detail_qha.xml
qihealonelibrary/src/main/res/layout/activity_recharge_ext_qha.xml
qihealonelibrary/src/main/res/layout/activity_recharge_list_qha.xml
qihealonelibrary/src/main/res/layout/activity_recharge_qha.xml
qihealonelibrary/src/main/res/layout/activity_red_card_qha.xml
qihealonelibrary/src/main/res/layout/activity_region_qha.xml
qihealonelibrary/src/main/res/layout/activity_replacement_qha.xml
qihealonelibrary/src/main/res/layout/activity_test.xml
File was deleted
qihealonelibrary/src/main/res/layout/activity_water_meter_qha.xml
qihealonelibrary/src/main/res/layout/activity_water_num_qha.xml
qihealonelibrary/src/main/res/layout/activity_write_text_qha.xml
qihealonelibrary/src/main/res/layout/qihe_item_replacements.xml
@@ -7,7 +7,7 @@
        <variable
            name="activity"
            type="com.dayu.qihealonelibrary.activity.ReplacementActivity" />
            type="com.dayu.qihealonelibrary.activity.ReplacementActivityQHAlone" />
    </data>