From 465c8abaa982fba6868a900d25316c70afc20fb7 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期三, 18 六月 2025 13:59:46 +0800 Subject: [PATCH] feat(card): 优化销卡功能并添加写卡操作 --- generallibrary/src/main/java/com/dayu/general/BaseApplication.kt | 65 ++++++++++++++++++++++++++++++-- 1 files changed, 61 insertions(+), 4 deletions(-) diff --git a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt index 8d924d2..dd81a63 100644 --- a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt +++ b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt @@ -1,6 +1,9 @@ package com.dayu.general import android.app.Application +import android.nfc.Tag +import com.dayu.general.dao.BaseDaoSingleton +import com.dayu.general.dao.ProjectDataDao class BaseApplication private constructor() { @@ -13,13 +16,67 @@ @Volatile private var myApplication: BaseApplication? = null + 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(): BaseApplication { - return myApplication ?: synchronized(this) { - myApplication ?: BaseApplication().also { - myApplication = it + fun getInstance(application: Application): BaseApplication { + if (myApplication == null) { + BaseApplication.application = application + myApplication = BaseApplication().apply { + // 閫氳繃瀹炰緥璋冪敤 init() + init() } } + 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() { + projectDataDao = application?.let { BaseDaoSingleton.getInstance(it).projectDataDao() } + if (projectDataDao != null) { + val projectDataBean = projectDataDao?.findFirst() + if (projectDataBean != null) { + tag = projectDataBean.projectTag + } } } -- Gitblit v1.8.0