51 lines
1.4 KiB
Kotlin
51 lines
1.4 KiB
Kotlin
package com.sw.platecabinet.utils
|
|
|
|
import com.google.gson.Gson
|
|
import com.sw.inbound.utils.GsonUtils
|
|
import com.sw.inbound.utils.SPUtil
|
|
import com.sw.inbound.utils.SPUtil.Companion.getInstance
|
|
import com.sw.platecabinet.MyApp
|
|
import com.sw.platecabinet.model.response.EquipmentUserInfo
|
|
|
|
object SpTool {
|
|
const val LAST_FACE_TIMESTAMP: String = "faceTimestamp"
|
|
const val PLATE_BOX_DATA: String = "plateBoxBind"
|
|
|
|
const val IS_FIRST_GET_FACE = "isFirstGetFace"
|
|
|
|
private var spUtil: SPUtil? = null
|
|
|
|
init {
|
|
spUtil = getInstance(MyApp.instance!!, "default_sp")
|
|
}
|
|
|
|
fun putString(key:String, value:String) {
|
|
spUtil?.put(key, value)
|
|
}
|
|
|
|
var lastFaceTimestamp: Long
|
|
get() = spUtil?.get<Long?>(SpTool.LAST_FACE_TIMESTAMP, 0L) ?: 0
|
|
set(timestamp) {
|
|
spUtil?.put(LAST_FACE_TIMESTAMP, timestamp)
|
|
}
|
|
|
|
fun savePlateData(items: List<EquipmentUserInfo>) {
|
|
val jsonData = Gson().toJson(items)
|
|
putString(PLATE_BOX_DATA, jsonData)
|
|
}
|
|
|
|
fun getPlateData(): List<EquipmentUserInfo>? {
|
|
val jsonData = spUtil?.get(PLATE_BOX_DATA, "")
|
|
if (jsonData.isNullOrBlank()) {
|
|
return null
|
|
}
|
|
return GsonUtils.fromJsonList(jsonData, EquipmentUserInfo::class.java)
|
|
}
|
|
|
|
fun getFirstGetFace() = spUtil?.get(IS_FIRST_GET_FACE, true)?:true
|
|
fun setFirstGetFace(state: Boolean) {
|
|
spUtil?.boolean(IS_FIRST_GET_FACE, state)
|
|
}
|
|
|
|
}
|