UserInfo.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. /**
  2. 这个类可以进一步优化。
  3. 直接用可变字典保存起来。因为大部分属性是只读得。并且json字段都是固定的。
  4. 所以可以直接用字典进行读取。扁平化
  5. 如果非要花一点,可以添加属性。重写get方法,从字典里读取即可。
  6. 如果还要添加属性,可以单独给它写set方法,添加进字典即可。
  7. */
  8. //核心方法
  9. #define defUser [UserInfo shareInfo]
  10. /**通过设置这个量。1表示连正式库。0表示连测试库。
  11. */
  12. ///@RQ-MARK
  13. #define isOfficial 1
  14. ///是否QM控制是否打印-默认0
  15. #define isOffQMConsole 0
  16. #import <Foundation/Foundation.h>
  17. @interface UserInfo : NSObject
  18. /**用户题库类型。数据库要用的。
  19. */
  20. @property(nonatomic,copy) NSString *car_type;
  21. /**是否资格证
  22. */
  23. @property(nonatomic,copy) NSString *isZhiGeZheng;
  24. /**驾校名称
  25. */
  26. @property(nonatomic,copy) NSString *userSchoolName;
  27. /**科目一的顺序练习题号
  28. */
  29. @property(nonatomic,copy) NSString *userSubj1Index;
  30. /**科目四的顺序练习题号
  31. */
  32. @property(nonatomic,copy) NSString *userSubj4Index;
  33. /**科目一的背题题号
  34. */
  35. @property(nonatomic,copy) NSString *user1Index;
  36. /**科目四的背题题号
  37. */
  38. @property(nonatomic,copy) NSString *user4Index;
  39. /**
  40. * 下面全是对题号的记录 客车 货车 摩托车 教练 货运 客运 危险品 出租车
  41. */
  42. @property(nonatomic,copy) NSString *A2Subj1Index;
  43. @property(nonatomic,copy) NSString *A2Subj4Index;
  44. @property(nonatomic,copy) NSString *A1Subj1Index;
  45. @property(nonatomic,copy) NSString *A1Subj4Index;
  46. @property(nonatomic,copy) NSString *DSubj1Index;
  47. @property(nonatomic,copy) NSString *DSubj4Index;
  48. @property(nonatomic,copy) NSString *coachIndex;
  49. @property(nonatomic,copy) NSString *A1Index;
  50. @property(nonatomic,copy) NSString *A2Index;
  51. @property(nonatomic,copy) NSString *dangerIndex;
  52. @property(nonatomic,copy) NSString *texiIndex;
  53. @property(nonatomic,copy) NSString *wycIndex;
  54. /**用户昵称.只是为了迎合界面而已,实际web系统里面没这个字段
  55. */
  56. @property(nonatomic,copy) NSString *userNickName;
  57. /**用户性别.只是为了迎合界面而已,实际web系统里面没这个字段
  58. */
  59. @property(nonatomic,copy) NSString *userSex;
  60. /**直接保存完整的用户信息字典
  61. */
  62. @property(nonatomic,strong) NSMutableDictionary *userDict;
  63. /**直接保存完整的用户驾校信息字典.
  64. 为什么要储存起来呢,因为需要显示letfVC需要显示学校信息
  65. */
  66. @property(nonatomic,strong) NSMutableDictionary *userSchDict;
  67. /**直接保存完整的用户教练 虽然没用到 因为保存本地后 不能保证信息的实时性 其实应该是没事的
  68. */
  69. @property(nonatomic,strong) NSArray *userCoach;
  70. /**显示欢迎页面。如果这个值不存在,表示第一次进入软件,要欢迎。
  71. 如否,说明已经欢迎过了。
  72. */
  73. @property(nonatomic,copy) NSString *isWelcomed;
  74. /**广告的图片地址。每次finishLaunch里面。会异步更新这个属性。
  75. 为什么要持久保存呢?是为了第一次加载广告时可以避免等待。
  76. */
  77. @property(nonatomic,strong) NSArray *adPaths;
  78. /////////////////////////////////////////////////需要持久保存的属性,请写在这条线的上面。/////////////
  79. /////////////////////////////////////////////////不需要保存写在下面///////////////////////////////
  80. #pragma mark -
  81. /**用户的驾校ID
  82. */
  83. @property(nonatomic,copy) NSString *userSchoolId;
  84. //用户姓名
  85. @property(nonatomic,copy) NSString *userName;
  86. //学员内部id 65000000
  87. @property(nonatomic,copy) NSString *userStuId;
  88. @property(nonatomic,copy) NSString *userTel;
  89. @property(nonatomic,copy) NSString *userAge;
  90. @property(nonatomic,copy) NSString *userHeadImg;
  91. @property(nonatomic,copy) NSString *cityId;
  92. /**主要是为了方便在测试服和正式服之间切换而设置的。
  93. 虽然是个方法。但也可以像属性一样调用。真方便。
  94. 以后。可以多写这种无参的方法。
  95. */
  96. - (NSString*) sfzmhm;
  97. /// 是否开启活体检测 0-不开启 1-开启
  98. - (NSInteger)isycbd;
  99. /// 活体检测比对动作数量
  100. - (NSInteger)ycbdFaceCount;
  101. /// sfzb 是否开启作弊 1开启 0不开启
  102. - (NSInteger)sfzb;
  103. /// qzgx 是否强制更新 1开启 0不开启
  104. - (NSInteger)qzgx;
  105. /// 验证等级 0 不验证 1 宽松 2 严格 3 困难
  106. - (NSInteger)verifyLevel;
  107. /// 实操扫码验证地市 1 开启 0 关闭
  108. - (NSInteger)isOpenScan;
  109. /// 11和12类型的就是从业 其他的或者为空的就是普通
  110. - (NSInteger)busitype;
  111. #pragma mark -
  112. +(UserInfo*)shareInfo;
  113. //弃用方法
  114. //-(id)setUserInfoByDict:(NSDictionary*)dict;
  115. /**当用户注销时,删除userDict,和userSchDict。
  116. */
  117. -(void)removeUserInfo;
  118. @end