fix
杨锴
2025-05-06 fdb1d18a0b4b941b986d55f66c589e29836494eb
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
//
//  UserViewModel.swift
//  DolphinEnglishLearnStudent
//
//  Created by 无故事王国 on 2024/5/30.
//
 
import Foundation
import UserDefaultsStore
import HandyJSON
 
struct UserInfoModel:HandyJSON,Identifiable,Codable{
                static let idKey = \UserInfoModel.id
                var id: Int = 0
                var user:UserInfoUserModel?
                var userStudy:UserInfoStudyModel?
 
}
 
struct UserInfoUserModel:HandyJSON,Codable{
                var id = 0
                var account: String = ""
                var birthday: String = ""
                var createBy: String = ""
                var createTime: String = ""
                var disabled: Bool = false
                var gender: Int = 0
                var headImg: String = ""
                var insertTime: String = ""
                var integral: Int = 0
                var isVip: Int = 0
                var name: String = ""
                var openId: String = ""
                var password: String = ""
                var phone: String = ""
                var state: Int = 0
                var updateBy: String = ""
                var updateTime: String = ""
                var vipEndTime: String = ""
                var vipPayTime: String = ""
}
 
struct UserInfoStudyModel:HandyJSON,Codable{
                var answer: Int = 0
                var day: Int = 0
                var id: Int = 0
                var induction: Int = 0
                var listen: Int = 0
                var look: Int = 0
                var monthStudy: Int = 0
                var pair: Int = 0
                var surplus: Int = 0
                var todayStudy: Int = 0
                var totalStudy: Int = 0
                var updateBy: String?
                var updateTime: String?
                var userId: Int = 0
                var week: Int = 0
                var weekStudy: Int = 0
}
 
class UserViewModel{
                private static let userInfo = UserDefaultsStore<UserInfoModel>(uniqueIdentifier: "UserInfoModel")!
 
                static func saveUserInfo(_ model:UserInfoModel){
                                do{
                                                try UserViewModel.userInfo.save(model)
                                }catch{
 
                                }
                }
 
                static func getUserInfo()->UserInfoModel?{
                                return UserViewModel.userInfo.allObjects().first
                }
 
                static func clearUserInfo(){
                                UserViewModel.userInfo.deleteAll()
                }
}