Blame view

Twear/Mine/Model/AdminHelper.swift 1.98 KB
75d24c15   yangbin   123
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
  //
  //  AdminHelper.swift
  //  Twear
  //
  //  Created by yangbin on 2021/12/18.
  //
  
  import UIKit
  import HandyJSON
  
  class AdminHelper: NSObject {
      static let shared = AdminHelper()
      
      func isFirstLaunch() -> Bool {
          if UserDefaults.standard.bool(forKey: "isFirstLaunch") {
              return false
          } else {
              UserDefaults.standard.set(true, forKey: "isFirstLaunch")
              return true
          }
      }
      
      
      func savaAdminInfo(_ adminInfo: AdminModel) {
          let jsonStr = adminInfo.toJSONString()
  //                print(jsonStr)
          UserDefaults.standard.set(jsonStr, forKey: UserKey)
          
      }
      
      func savaWeather(_ weathers: [WeatherModel]) {
          let jsonStr = weathers.toJSONString()
          UserDefaults.standard.set(jsonStr, forKey: WeatherKey)
      }
      
      func loadLocalWeatherData() -> [WeatherModel] {
          if let str = UserDefaults.standard.string(forKey: WeatherKey)
          {
              //            print(str)
              guard let result = [WeatherModel].deserialize(from: str) as? [WeatherModel] else {
                  print("WeatherModel数据解析错误")
                  return []
              }
              return result
          }
          return []
      }
      
      
      func loadLocalAdminData() -> AdminModel {
          if let str = UserDefaults.standard.string(forKey: UserKey)
          {
              //            print(str)
              guard let result = AdminModel.deserialize(from: str) else {
                  print("AdminInfoModel数据解析错误")
                  return AdminModel()
              }
              //            print(str)
              return result
          }
          return AdminModel()
      }
      
      func updateDevice(_ device: DeviceModel) {
          let admin = loadLocalAdminData()
          admin.device = device
          savaAdminInfo(admin)
      }
      
      
      func updateUser(_ user: UserInfoModel) {
          let admin = loadLocalAdminData()
          admin.userInfo = user
          savaAdminInfo(admin)
      }
  }