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

---
 app/src/main/java/com/dayu/recharge/activity/LoginActivity.java |  125 ++++++++++++++++++++++++++++++++---------
 1 files changed, 98 insertions(+), 27 deletions(-)

diff --git a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
index 8d0138b..c48f912 100644
--- a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
@@ -1,22 +1,27 @@
 package com.dayu.recharge.activity;
 
-import android.Manifest;
 import android.content.Intent;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
 import android.os.Bundle;
 import android.text.TextUtils;
 import android.view.LayoutInflater;
-import android.view.View;
 import android.widget.Toast;
 
 import androidx.annotation.NonNull;
-import androidx.appcompat.app.AppCompatActivity;
+
+import com.dayu.baselibrary.activity.BaseActivity;
+import com.dayu.baselibrary.utils.BaseCommon;
+import com.dayu.baselibrary.utils.TipUtil;
+import com.dayu.baselibrary.utils.WSMD5;
+import com.dayu.baselibrary.view.LibraryDialog;
+import com.dayu.henanlibrary.HeNanApplication;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
+
+import com.dayu.henanlibrary.dbBean.PassWordBean;
 
 import com.dayu.recharge.MyApplication;
-import com.dayu.recharge.dao.BaseDaoSingleton;
 import com.dayu.recharge.databinding.ActivityLoginBinding;
-import com.dayu.recharge.dbBean.PassWordBean;
-import com.dayu.recharge.utils.TipUtil;
-import com.dayu.recharge.utils.WSMD5;
 import com.hjq.permissions.OnPermissionCallback;
 import com.hjq.permissions.Permission;
 import com.hjq.permissions.XXPermissions;
@@ -37,35 +42,58 @@
     PassWordBean passWordBean;
 
     @Override
-    public void onCreate(Bundle savedInstanceState) {
+    protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         binding = ActivityLoginBinding.inflate(LayoutInflater.from(this));
         setContentView(binding.getRoot());
-        getPermission();
+
         initView();
     }
 
     private void initView() {
-        binding.loginBtn.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                String psStr = binding.loginPw.getText().toString();
-                if (TextUtils.isEmpty(psStr)) {
-                    TipUtil.show("璇疯緭鍏ュ瘑鐮�");
-                    return;
+        binding.loginBtn.setOnClickListener(v -> {
+            String psStr = binding.loginPw.getText().toString();
+            if (MyApplication.myApplication.libraryType == BaseCommon.NoLibrary) {
+                LibraryDialog dialog = new LibraryDialog(this, type -> {
+                    if (type == BaseCommon.HeNanLibrary) {
+                        getHNPermission();
+                    } else if (type == BaseCommon.QHAloneLibrary) {
+                        getQHAlonePermission();
+                    }
+                    MyApplication.myApplication.initApplication();
+                });
+                dialog.show();
+                //娌℃湁閫夋嫨鐗堟湰鍏堥�夋嫨鐗堟湰
+                return;
+            }
+            if (TextUtils.isEmpty(psStr)) {
+                TipUtil.show("璇疯緭鍏ュ瘑鐮�");
+                return;
+            }
+            if ((passWordBean == null && psStr.equals("123456"))
+                    || passWordBean != null && passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(psStr))) {
+                if (MyApplication.myApplication.libraryType == 0) {
+                    startActivity(new Intent(LoginActivity.this, com.dayu.henanlibrary.activity.HomeActivity.class));
+                } else if (MyApplication.myApplication.libraryType == 1) {
+                    startActivity(new Intent(LoginActivity.this, com.dayu.qihealonelibrary.activity.HomeActivity.class));
                 }
-                if ((passWordBean == null && psStr.equals("123456"))
-                        || passWordBean != null && passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(psStr))) {
-                    startActivity(new Intent(LoginActivity.this, HomeActivity.class));
-                    LoginActivity.this.finish();
-                } else {
-                    Toast.makeText(LoginActivity.this, "瀵嗙爜閿欒", Toast.LENGTH_SHORT).show();
-                }
+                LoginActivity.this.finish();
+            } else {
+                Toast.makeText(LoginActivity.this, "瀵嗙爜閿欒", Toast.LENGTH_SHORT).show();
             }
         });
+        try {
+            PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
+            binding.versionName.setText("褰撳墠鐗堟湰锛歏" + packageInfo.versionName);
+        } catch (PackageManager.NameNotFoundException e) {
+            throw new RuntimeException(e);
+        }
     }
 
-    private void getPermission() {
+    /**
+     * 娌冲崡鐗堢殑鑾峰彇鏉冮檺
+     */
+    private void getHNPermission() {
         try {
 
 
@@ -86,13 +114,14 @@
                         public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
                             if (allGranted) {
                                 if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
-                                    MyApplication.myApplication.initEasySocket(false, null);
+
+                                    HeNanApplication.getInstance().initEasySocket(false, null);
                                     try {
-                                        File file = new File(BaseDaoSingleton.SqlitePath);
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
                                         if (!file.exists()) {
                                             file.mkdirs();
                                         }
-                                        passWordBean = BaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
+                                        passWordBean = HNBaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
                                     } catch (Exception e) {
                                         e.printStackTrace();
                                     }
@@ -113,4 +142,46 @@
             e.printStackTrace();
         }
     }
+
+    private void getQHAlonePermission() {
+        try {
+            XXPermissions.with(this)
+                    .permission(
+                            Permission.WRITE_EXTERNAL_STORAGE)
+                    .request(new OnPermissionCallback() {
+
+                        @Override
+                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
+                            if (allGranted) {
+                                if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
+
+                                    try {
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
+                                        if (!file.exists()) {
+                                            file.mkdirs();
+                                        }
+                                        passWordBean = HNBaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                        }
+
+                        @Override
+                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
+                            if (doNotAskAgain) {
+                                // 濡傛灉鏄姘镐箙鎷掔粷灏辫烦杞埌搴旂敤鏉冮檺绯荤粺璁剧疆椤甸潰
+                            } else {
+//                                toast("鑾峰彇褰曢煶鍜屾棩鍘嗘潈闄愬け璐�");
+                            }
+                        }
+                    });
+        } catch (
+                Throwable e) {
+            e.printStackTrace();
+        }
+    }
+
+
 }

--
Gitblit v1.8.0