From 2b02b6e854a56a511588e4865ddf2c6597675329 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期一, 16 六月 2025 16:04:54 +0800 Subject: [PATCH] feat(nfc): 添加读卡功能并优化写卡流程 --- generallibrary/src/main/java/com/dayu/general/BaseApplication.kt | 78 +++++++++++++++++++++++++++++++++++++- 1 files changed, 75 insertions(+), 3 deletions(-) diff --git a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt index 6fff4c2..dd81a63 100644 --- a/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt +++ b/generallibrary/src/main/java/com/dayu/general/BaseApplication.kt @@ -1,11 +1,83 @@ package com.dayu.general import android.app.Application +import android.nfc.Tag +import com.dayu.general.dao.BaseDaoSingleton +import com.dayu.general.dao.ProjectDataDao -public class BaseApplication : Application() { +class BaseApplication private constructor() { - override fun onCreate() { - super.onCreate() + companion object { + @JvmField + var application: Application? = null + + private const val TAG = "ApiManager" + + @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(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 + } + } + } + } \ No newline at end of file -- Gitblit v1.8.0