lmw
2023-04-03 16ea883d3c03fd8b910f9282aa1bc08378d40d54
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package com.zhaoyang.driver.utils.Cache
 
import cn.sinata.xldutils.utils.Md5
import com.zhaoyang.driver.bean.UserInfoBean
import com.zhaoyang.driver.ui.adapter.SearchSitedapter
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
 
object CacheKey {
 
    fun getUserInfo(): UserInfoBean {
        var userInfo = CacheUtil.get().getAsString("userInfo")
        if (userInfo.isNullOrEmpty()) {
            var user = UserInfoBean()
            user.isRegister = false
            return user
        }
        val bean = Gson().fromJson<UserInfoBean>(userInfo, UserInfoBean::class.java)
        return bean
    }
 
    fun saveUserInfo(bean: UserInfoBean) {
        CacheKey.putKeyStr("userInfo", Gson().toJson(bean))
    }
 
    fun getKeyStr(key: String): String {
        var cha = CacheUtil.get()
        var s = cha.getAsString(key)
        if (s == null){
            s = ""
        }
        return s
    }
 
    fun putKeyStr(key: String, value: String) {
        return CacheUtil.get().put(key, value)
    }
 
    fun cacheUserById(user: UserInfoBean) {
        if (user == null)
            return
        putKeyStr(Md5.getMd5Value(user.id.toString()), Gson().toJson(user))
    }
 
    fun getUserById(id: String): UserInfoBean {
        var userInfo = CacheUtil.get().getAsString(Md5.getMd5Value(id))
        return if (userInfo.isNullOrEmpty()) {
            UserInfoBean()
        } else {
            Gson().fromJson(userInfo, UserInfoBean::class.java)
        }
    }
 
    fun getUserId():String{
        return  getKeyStr("userId")
    }
    fun getAppId(){
        getKeyStr("appid")
    }
    fun getToken():String{
       return getKeyStr("token")
    }
    fun getServerId():String{
       return getKeyStr("serverId")
    }
    fun getTerminalName():String{
        return getKeyStr("terminalName")
    }
 
    /***
     * 保存以及获取缓存的搜索地址
     */
    fun saveSiteList(site: SearchSitedapter.SiteBean,type:String){
        site.type = type
        var data = getSiteList(type)
        var listData = mutableListOf<SearchSitedapter.SiteBean>()
        for (item in data){
            if (item.site != site.site){
                listData.add(item)
            }
        }
        listData.add(site)
        putKeyStr("searchSite",Gson().toJson(listData))
    }
 
    fun getSiteList(type:String): MutableList<SearchSitedapter.SiteBean> {
        var str = getKeyStr("searchSite")
        if (str.isNotEmpty()){
            var data = Gson().fromJson<MutableList<SearchSitedapter.SiteBean>>(str,object : TypeToken<MutableList<SearchSitedapter.SiteBean>>(){}.type)
            var over = mutableListOf<SearchSitedapter.SiteBean>()
            for (item in data){
                if (item.type == type){
                    over.add(item)
                }
            }
            return over
        }
        return mutableListOf()
    }
}