From a8751388c9a86ae95714a15279994d8aa426a26d Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 13 六月 2025 14:59:02 +0800
Subject: [PATCH] feat(generallibrary): 优化充值功能并添加水价获取- 在 activity_recharge_detail.xml 中移除了不必要的 bold 样式- 在 EditText 中添加了金额输入限制(数字和小数点)- 在 BaseApplication 中添加了水价信息存储 - 在 MainActivity 中实现了延时获取水价的功能- 优化了 RechargeDetailActivity 中的水价检查和使用逻辑 - 在 README.md 中添加了金额格式化和水价获取的最佳实践指南

---
 generallibrary/src/main/java/com/dayu/general/BaseApplication.kt |   66 ++++++++++++++++++++++++++------
 1 files changed, 53 insertions(+), 13 deletions(-)

diff --git a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt
index 6349cfc..dd81a63 100644
--- a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt
+++ b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt
@@ -3,6 +3,7 @@
 import android.app.Application
 import android.nfc.Tag
 import com.dayu.general.dao.BaseDaoSingleton
+import com.dayu.general.dao.ProjectDataDao
 
 class BaseApplication private constructor() {
 
@@ -15,29 +16,68 @@
         @Volatile
         private var myApplication: BaseApplication? = null
 
-        private var Tag : String ?= ""
-        var projectDataDao = BaseDaoSingleton.getInstance(application)?.projectDataDao()
+        var tag: String = ""
+        var token: String = ""
+        var userId: String = ""
+
+        var userName: String = ""
+        var userPhone: String = ""
+
+        //鐗囧尯淇℃伅
+        var blockId:String=""
+        var blockName:String=""
+
+        // 姘翠环淇℃伅
+        var waterPrice: Double = 0.0
+        
+        // MainActivity鐨勫紩鐢紝鐢ㄤ簬璋冪敤姘翠环鑾峰彇鏂规硶
+        private var mainActivityInstance: com.dayu.general.activity.MainActivity? = null
+
+        var projectDataDao: ProjectDataDao? = null
+
         @JvmStatic
         fun getInstance(application: Application): BaseApplication {
             if (myApplication == null) {
-                myApplication = BaseApplication()
                 BaseApplication.application = application
+                myApplication = BaseApplication().apply {
+                    // 閫氳繃瀹炰緥璋冪敤 init()
+                    init()
+                }
             }
-           return myApplication as BaseApplication
+            return myApplication as BaseApplication
+        }
+
+        /**
+         * 璁剧疆MainActivity瀹炰緥
+         */
+        fun setMainActivity(activity: com.dayu.general.activity.MainActivity?) {
+            mainActivityInstance = activity
+        }
+
+        /**
+         * 璇锋眰鑾峰彇姘翠环锛屽鏋滀负绌哄垯璋冪敤MainActivity鐨勮幏鍙栨柟娉�
+         */
+        fun requestWaterPrice(): Double {
+            if (waterPrice <= 0.0) {
+                // 濡傛灉姘翠环涓虹┖涓擬ainActivity瀹炰緥瀛樺湪锛屽垯璋冪敤鑾峰彇鏂规硶
+                mainActivityInstance?.getWaterPriceFromActivity()
+            }
+            // 濡傛灉姘翠环浠嶄负0锛岃繑鍥為粯璁ゅ��
+            return if (waterPrice > 0.0) waterPrice else 0.9
         }
 
 
 
+
     }
-
-
-    fun init() {
-     if (projectDataDao!=null){
-         val projectDataBean = projectDataDao?.findFirst()
-         if (projectDataBean!=null){
-             Tag = projectDataBean.projectTag
-         }
-     }
+     fun init() {
+        projectDataDao = application?.let { BaseDaoSingleton.getInstance(it).projectDataDao() }
+        if (projectDataDao != null) {
+            val projectDataBean = projectDataDao?.findFirst()
+            if (projectDataBean != null) {
+                tag = projectDataBean.projectTag
+            }
+        }
     }
 
 }
\ No newline at end of file

--
Gitblit v1.8.0