
- 移除订单详情页面的冗余代码和未使用的导入 - 简化订单详情页面的布局结构 - 更新项目版本号至 1.0.1.9.9.37 - 修复签名上传逻辑 -优化登录 token 存储和人脸识别相关代码
132 lines
2.9 KiB
Kotlin
132 lines
2.9 KiB
Kotlin
package com.za.common
|
|
|
|
import android.app.Application
|
|
import com.amap.api.location.AMapLocation
|
|
import com.blankj.utilcode.util.AppUtils
|
|
import com.tencent.mmkv.MMKV
|
|
import com.za.bean.db.order.OrderInfo
|
|
import com.za.common.log.LogUtil
|
|
import com.za.room.RoomHelper
|
|
import com.za.room.db.user.DriverInfoBean
|
|
|
|
object GlobalData : GlobalLocalData() {
|
|
lateinit var application : Application
|
|
private val mmkv : MMKV by lazy { MMKV.defaultMMKV() }
|
|
var activityCount : Int = 0
|
|
var isMaster = AppUtils.getAppPackageName() == "com.za.rescue.dealer"
|
|
|
|
var token : String? = null
|
|
get() {
|
|
return mmkv.decodeString("TOKEN", null)
|
|
}
|
|
set(value) {
|
|
mmkv.encode("TOKEN", value)
|
|
field = value
|
|
}
|
|
|
|
var regid : String? = null
|
|
get() {
|
|
return mmkv.decodeString("regid", null)
|
|
}
|
|
set(value) {
|
|
mmkv.encode("regid", value)
|
|
field = value
|
|
}
|
|
|
|
var aesKey : String? = null
|
|
get() {
|
|
return mmkv.decodeString("AES_KEY", null)
|
|
}
|
|
set(value) {
|
|
mmkv.encode("AES_KEY", value)
|
|
field = value
|
|
}
|
|
|
|
//新订单是否已经被处理
|
|
var isHandlerNewOrder : Boolean? = false
|
|
|
|
var driverInfoBean : DriverInfoBean? = null
|
|
get() {
|
|
if (field == null) {
|
|
field = localDriverInfoBean
|
|
}
|
|
LogUtil.print("get driverInfoBean", "获取司机信息: $field")
|
|
return field
|
|
}
|
|
set(value) {
|
|
localDriverInfoBean = value
|
|
field = value
|
|
LogUtil.print("set driverInfoBean", "司机信息: $field")
|
|
}
|
|
|
|
|
|
var lastLoginBean : DriverInfoBean? = null
|
|
get() {
|
|
val driverInfoBean = mmkv.decodeParcelable("lastLoginBean", DriverInfoBean::class.java)
|
|
field = driverInfoBean
|
|
return driverInfoBean
|
|
}
|
|
set(value) {
|
|
mmkv.encode("lastLoginBean", value)
|
|
}
|
|
|
|
//是否已经完成登录后的人脸识别
|
|
var isLoginRecognition : Boolean? = null
|
|
get() {
|
|
return mmkv.decodeBool("isLoginRecognition", false)
|
|
}
|
|
set(value) {
|
|
mmkv.encode("isLoginRecognition", value == true)
|
|
field = value
|
|
}
|
|
|
|
|
|
var currentOrder : OrderInfo? = null
|
|
get() {
|
|
if (field == null) {
|
|
field = localCurrentOrder
|
|
}
|
|
return field
|
|
}
|
|
set(value) {
|
|
localCurrentOrder = value
|
|
field = value
|
|
}
|
|
|
|
var currentLocation : AMapLocation? = null
|
|
get() {
|
|
return mmkv.decodeParcelable("currentLocation", AMapLocation::class.java)
|
|
}
|
|
set(value) {
|
|
value?.time = System.currentTimeMillis()
|
|
mmkv.encode("currentLocation", value)
|
|
field = value
|
|
}
|
|
|
|
var loginTime : Long? = null
|
|
get() {
|
|
return mmkv.decodeLong("loginTime", System.currentTimeMillis())
|
|
}
|
|
set(value) {
|
|
mmkv.encode("loginTime", value ?: System.currentTimeMillis())
|
|
field = value
|
|
}
|
|
|
|
fun clearUserCache() {
|
|
token = null
|
|
aesKey = null
|
|
currentLocation = null
|
|
driverInfoBean = null
|
|
loginTime = null
|
|
isLoginRecognition = null
|
|
}
|
|
|
|
fun clearAllOrderCache() {
|
|
currentOrder = null
|
|
RoomHelper.clearAll()
|
|
}
|
|
|
|
fun clearOrderCache(taskId : Int) {
|
|
RoomHelper.clearOrderFromTaskCode(taskId = taskId)
|
|
}
|
|
} |