From dd2562d8dc2b01bcdfca3152f82f09efbbd09259 Mon Sep 17 00:00:00 2001 From: zuoxiao <lf_zuo@163.com> Date: 星期三, 25 六月 2025 19:49:48 +0800 Subject: [PATCH] fix(generallibrary): 优化卡片处理和支付方式获取逻辑- 修复地区卡处理逻辑,增加对"00"类型卡的特殊处理 - 优化用户卡数据解析和显示逻辑,提高容错性 - 改进支付方式获取方法,增加错误处理和日志记录 -调整充值接口调用参数,确保正确传递当前余额等信息- 修复 AreaCard 中 areaNumber 类型,改为字符串处理 --- generallibrary/src/main/java/com/dayu/general/BaseApplication.kt | 73 ++++++++++++++++++++++++++++++------ 1 files changed, 60 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..62bd69b 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,75 @@ @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 getMainActivity(): com.dayu.general.activity.MainActivity? { + return mainActivityInstance + } + + /** + * 璇锋眰鑾峰彇姘翠环锛屽鏋滀负绌哄垯璋冪敤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