Newer
Older
SmartKitchen / app / src / main / java / com / casic / br / utils / DeserializeModel.kt
package com.casic.br.utils

import com.casic.br.model.UserDetailModel
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import com.pengxh.kt.lite.utils.SaveKeyValues

object DeserializeModel {

    private val gson by lazy { Gson() }

    fun getUserModel(): UserDetailModel.DataModel? {
        val userJson = SaveKeyValues.getValue(LocaleConstant.USER_MODEL, "") as String
        if (userJson == "") {
            return null
        }
        val userDetailModel = gson.fromJson<UserDetailModel>(
            userJson, object : TypeToken<UserDetailModel>() {}.type
        )
        return userDetailModel.data
    }

    fun isLogin(): Boolean {
        val loginTime = SaveKeyValues.getValue(LocaleConstant.LOGIN_TIME, 0L) as Long
        return if (loginTime == 0L) {
            false
        } else {
            if (System.currentTimeMillis() - loginTime > 84600 * 1000L) {
                false
            } else {
                SaveKeyValues.getValue(LocaleConstant.USER_IS_LOGIN, false) as Boolean
            }
        }
    }
}