LoginModel.h 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. //
  2. // JDJSONModel.h
  3. // kneet
  4. //
  5. // Created by Jason Lee on 2/9/15.
  6. // Copyright (c) 2015 ntels. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <CoreLocation/CoreLocation.h>
  10. #import "JDJSONModel.h"
  11. #import "DeviceModel.h"
  12. @protocol InvitationModel;
  13. @interface InvitationModel : JDJSONModel
  14. @property (copy, nonatomic) NSString *homegrpId;
  15. @property (copy, nonatomic) NSString *homegrpName;
  16. @property (copy, nonatomic) NSString *nickname;
  17. @property (copy, nonatomic) NSString *authorizationQuestion;
  18. @property (copy, nonatomic) NSString *imageFileName;
  19. //temp
  20. @property (copy, nonatomic) NSString *sdate;
  21. @end
  22. @interface InvitationListModel : JDJSONModel
  23. @property (copy, nonatomic) NSMutableArray<InvitationModel> *list;
  24. @end
  25. @protocol QuizModel;
  26. @interface QuizModel : JDJSONModel
  27. @property (copy, nonatomic) NSString *quiz;
  28. @property (copy, nonatomic) NSString *quizId;
  29. @property (copy, nonatomic) NSString *statusCode;
  30. -(BOOL)isUserEditQuiz;
  31. @end
  32. @interface QuizListModel : JDJSONModel
  33. @property (copy, nonatomic) NSMutableArray<QuizModel> *quizList;
  34. @end
  35. @protocol HomeMemberModel;
  36. @interface HomeMemberModel : JDJSONModel
  37. @property (copy, nonatomic) NSString *memberTypeCode;
  38. @property (copy, nonatomic) NSString *nickname;
  39. @property (copy, nonatomic) NSString *imageFileName;
  40. @property (copy, nonatomic) NSString *gradeCode;
  41. @property (copy, nonatomic) NSString *memberId;
  42. @property (copy, nonatomic) NSString *permissionTransferFlag;
  43. //temp
  44. @property (strong, nonatomic) NSString *targetEmail;
  45. @property (strong, nonatomic) NSString *targetPhone;
  46. @end
  47. @interface HomeMemberListModel : JDJSONModel
  48. @property (copy, nonatomic) NSString *limitCnt; //멤버 등록 제한 숫자(Default : 10)
  49. @property (copy, nonatomic) NSArray<HomeMemberModel> *ctrtGrpMemberList; //홈그룹 멤버 목록
  50. @property (assign, nonatomic, readonly) BOOL isRemainInvite;
  51. @end
  52. @protocol MemberIconModel;
  53. @interface MemberIconModel : JDJSONModel
  54. @property (copy, nonatomic) NSString *imageFileName;
  55. @property (copy, nonatomic) NSString *imageFilePath;
  56. @end
  57. @interface MemberIconListModel : JDJSONModel
  58. @property (copy, nonatomic) NSArray<MemberIconModel> *iconList;
  59. @end
  60. @interface MobileDeviceListModel : JDJSONModel
  61. @property (strong, nonatomic) NSMutableArray<MobileDeviceModel> *deviceList;
  62. @end
  63. @protocol ContractGroupModel;
  64. @interface ContractGroupModel : JDJSONModel
  65. @property (copy, nonatomic) NSString *deviceExistYn;
  66. @property (copy, nonatomic) NSString *firmwareUpdateYn;
  67. @property (copy, nonatomic) NSString *pushTypeModeChgYn;
  68. @property (copy, nonatomic) NSString *ctrtGrpId;
  69. @property (copy, nonatomic) NSString *ctrtGrpName;
  70. @property (copy, nonatomic) NSString *gradeCode;
  71. @property (copy, nonatomic) NSString *masterTransferPopupYn;
  72. @end
  73. @interface LoginModel : SocketModel
  74. //회원 번호
  75. //이메일 ID
  76. //서비스 ID
  77. //국가 코드 (ex: KR)
  78. //타임존 ID
  79. //타임존 시간 (ex: +09:00)
  80. //언어 코드 (ex: en)
  81. //인증 토큰
  82. //회원 여부
  83. //회원 이미지
  84. //회원 닉네임
  85. @property (copy, nonatomic) NSString *memberId;
  86. @property (copy, nonatomic) NSString *emailId;
  87. @property (copy, nonatomic) NSString *serviceId;
  88. @property (copy, nonatomic) NSString *authToken; //인증 토큰
  89. @property (copy, nonatomic) NSString *profileImage; //(회원) 이미지 파일 명
  90. @property (copy, nonatomic) NSString *member;
  91. @property (copy, nonatomic) NSString *quiz;
  92. @property (copy, nonatomic) NSString *nickname; //(회원) 닉네임
  93. @property (copy, nonatomic) NSString *tempPasswordYn; //임시 비밀번호 여부 (Y : 임시 비밀번호, N : 기존 비밀번호)
  94. @property (copy, nonatomic) NSString *pushTypeModeChgYn; //모드가 바뀔 때 알림 설정 여부 (Y : 사용, N : 미사용)
  95. @property (copy, nonatomic) NSString *pushTypePrsncChgYn;
  96. @property (copy, nonatomic) NSString *custId; //고객 ID
  97. @property (copy, nonatomic) NSString *ctrtGrpId; //계약그룹ID(고객 ID와 동일)
  98. @property (copy, nonatomic) NSString *selectCtrtGrpId; //가장 마지막 선택된 계약그룹 ID
  99. @property (assign, nonatomic, readonly) ContractGroupModel *ctrtGrp; //선택된 계약그룹
  100. @property (copy, nonatomic) NSString *homegrpId;
  101. @property (copy, nonatomic) NSString *homegrpName;
  102. @property (copy, nonatomic) NSString *homegrpImageFileName;
  103. @property (copy, nonatomic) NSString *hoemgrpName;
  104. @property (copy, nonatomic) NSString *gradeCode;
  105. @property (copy, nonatomic) NSString *homehubDeviceId;
  106. @property (copy, nonatomic) NSString *homehubOnlineState;
  107. @property (copy, nonatomic) NSString *homehubCreateDatetime;
  108. @property (copy, nonatomic) NSString *invitationsCount;
  109. @property (copy, nonatomic) NSString *servicehubApplicationId;
  110. @property (strong, nonatomic) NSMutableArray<ContractGroupModel> *ctrtGrpList; //계약그룹 목록
  111. @property (strong, nonatomic) NSMutableArray<DeviceModel> *deviceList; //디바이스 목록
  112. @property (copy, nonatomic) NSString *selectedHomeHubID;
  113. //@property (copy, nonatomic) NSString *deviceOnline;
  114. //@property (copy, nonatomic) NSString *deviceOnlineLastDatetime;
  115. //@property (copy, nonatomic) NSString *deviceConn;
  116. //local store
  117. @property (strong, nonatomic) NSMutableDictionary *localStorage;
  118. @property (strong, nonatomic) NSString *newEmailId; //로컬에 저장 - 임시 이메일
  119. @property (strong, nonatomic) NSString *modeChange; //로컬에 저장 - 모드 최초 실행 여부
  120. @property (strong, nonatomic) NSString *noticeReadTime; //로컬에 저장 - 세션 공지 읽음 날짜
  121. @property (strong, nonatomic) NSString *personalNoticeReadTime; //로컬에 저장 - 세션 알림 읽음 날짜
  122. //권한
  123. @property (assign, nonatomic) NSInteger level;
  124. //local transition
  125. @property (assign, nonatomic, readonly) BOOL isHomehubOnline;
  126. @property (assign, nonatomic, readonly) BOOL hasHomeHub;
  127. @property (assign, nonatomic, readonly) NSString *authorization;
  128. @end