@tomei/sso 0.8.0 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/Jenkinsfile +2 -2
  2. package/__tests__/unit/components/login-history/login-history.repository.spec.ts +88 -88
  3. package/__tests__/unit/components/login-user/login-user.spec.ts +731 -731
  4. package/__tests__/unit/components/login-user/user.repository.spec.ts +75 -75
  5. package/__tests__/unit/components/password-hash/password-hash.service.spec.ts +26 -26
  6. package/__tests__/unit/components/system/system.repository.spec.ts +82 -82
  7. package/__tests__/unit/components/system-access/system-access.repository.spec.ts +72 -72
  8. package/dist/__tests__/unit/components/login-history/login-history.repository.spec.d.ts +0 -1
  9. package/dist/__tests__/unit/components/login-history/login-history.repository.spec.js +0 -98
  10. package/dist/__tests__/unit/components/login-history/login-history.repository.spec.js.map +1 -1
  11. package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +0 -1
  12. package/dist/__tests__/unit/components/login-user/login-user.spec.js +0 -659
  13. package/dist/__tests__/unit/components/login-user/login-user.spec.js.map +1 -1
  14. package/dist/__tests__/unit/components/login-user/user.repository.spec.d.ts +0 -1
  15. package/dist/__tests__/unit/components/login-user/user.repository.spec.js +0 -77
  16. package/dist/__tests__/unit/components/login-user/user.repository.spec.js.map +1 -1
  17. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.d.ts +0 -1
  18. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.js +0 -37
  19. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.js.map +1 -1
  20. package/dist/__tests__/unit/components/system/system.repository.spec.d.ts +0 -1
  21. package/dist/__tests__/unit/components/system/system.repository.spec.js +0 -84
  22. package/dist/__tests__/unit/components/system/system.repository.spec.js.map +1 -1
  23. package/dist/__tests__/unit/components/system-access/system-access.repository.spec.d.ts +0 -1
  24. package/dist/__tests__/unit/components/system-access/system-access.repository.spec.js +0 -74
  25. package/dist/__tests__/unit/components/system-access/system-access.repository.spec.js.map +1 -1
  26. package/dist/src/components/login-history/login-history.repository.d.ts +4 -8
  27. package/dist/src/components/login-history/login-history.repository.js +5 -43
  28. package/dist/src/components/login-history/login-history.repository.js.map +1 -1
  29. package/dist/src/components/login-user/login-user.d.ts +1 -0
  30. package/dist/src/components/login-user/login-user.js +61 -55
  31. package/dist/src/components/login-user/login-user.js.map +1 -1
  32. package/dist/src/components/login-user/user.repository.d.ts +4 -8
  33. package/dist/src/components/login-user/user.repository.js +5 -43
  34. package/dist/src/components/login-user/user.repository.js.map +1 -1
  35. package/dist/src/components/system/system.repository.d.ts +4 -8
  36. package/dist/src/components/system/system.repository.js +5 -43
  37. package/dist/src/components/system/system.repository.js.map +1 -1
  38. package/dist/src/components/system-access/system-access.repository.d.ts +4 -8
  39. package/dist/src/components/system-access/system-access.repository.js +5 -43
  40. package/dist/src/components/system-access/system-access.repository.js.map +1 -1
  41. package/dist/src/components/user-group/user-group.repository.d.ts +4 -8
  42. package/dist/src/components/user-group/user-group.repository.js +5 -43
  43. package/dist/src/components/user-group/user-group.repository.js.map +1 -1
  44. package/dist/src/components/user-user-group/user-user-group.repository.d.ts +4 -8
  45. package/dist/src/components/user-user-group/user-user-group.repository.js +5 -43
  46. package/dist/src/components/user-user-group/user-user-group.repository.js.map +1 -1
  47. package/dist/src/database.d.ts +4 -0
  48. package/dist/src/database.js +15 -0
  49. package/dist/src/database.js.map +1 -0
  50. package/dist/src/models/authorization-code.entity.d.ts +14 -0
  51. package/dist/src/models/authorization-code.entity.js +86 -0
  52. package/dist/src/models/authorization-code.entity.js.map +1 -0
  53. package/dist/src/models/bearer-token.entity.d.ts +11 -0
  54. package/dist/src/models/bearer-token.entity.js +72 -0
  55. package/dist/src/models/bearer-token.entity.js.map +1 -0
  56. package/dist/src/models/building-type.entity.d.ts +7 -0
  57. package/dist/src/models/building-type.entity.js +50 -0
  58. package/dist/src/models/building-type.entity.js.map +1 -0
  59. package/dist/src/models/building.entity.d.ts +28 -0
  60. package/dist/src/models/building.entity.js +218 -0
  61. package/dist/src/models/building.entity.js.map +1 -0
  62. package/dist/src/models/city.entity.d.ts +11 -0
  63. package/dist/src/models/city.entity.js +72 -0
  64. package/dist/src/models/city.entity.js.map +1 -0
  65. package/dist/src/models/company.entity.d.ts +18 -0
  66. package/dist/src/models/company.entity.js +114 -0
  67. package/dist/src/models/company.entity.js.map +1 -0
  68. package/dist/src/models/country.entity.d.ts +15 -0
  69. package/dist/src/models/country.entity.js +92 -0
  70. package/dist/src/models/country.entity.js.map +1 -0
  71. package/dist/src/models/department.entity.d.ts +19 -0
  72. package/dist/src/models/department.entity.js +112 -0
  73. package/dist/src/models/department.entity.js.map +1 -0
  74. package/dist/src/models/group-role-privilege.entity.d.ts +17 -0
  75. package/dist/src/models/group-role-privilege.entity.js +90 -0
  76. package/dist/src/models/group-role-privilege.entity.js.map +1 -0
  77. package/dist/src/models/group-system-access.entity.d.ts +11 -0
  78. package/dist/src/models/group-system-access.entity.js +62 -0
  79. package/dist/src/models/group-system-access.entity.js.map +1 -0
  80. package/dist/src/models/group-system-privilege.entity.d.ts +11 -0
  81. package/dist/src/models/group-system-privilege.entity.js +62 -0
  82. package/dist/src/models/group-system-privilege.entity.js.map +1 -0
  83. package/dist/src/models/group-system-role.entity.d.ts +11 -0
  84. package/dist/src/models/group-system-role.entity.js +62 -0
  85. package/dist/src/models/group-system-role.entity.js.map +1 -0
  86. package/dist/src/models/login-history.entity.d.ts +12 -0
  87. package/dist/src/models/login-history.entity.js +70 -0
  88. package/dist/src/models/login-history.entity.js.map +1 -0
  89. package/dist/src/models/oauth-token.entity.d.ts +14 -0
  90. package/dist/src/models/oauth-token.entity.js +86 -0
  91. package/dist/src/models/oauth-token.entity.js.map +1 -0
  92. package/dist/src/models/role.entity.d.ts +17 -0
  93. package/dist/src/models/role.entity.js +102 -0
  94. package/dist/src/models/role.entity.js.map +1 -0
  95. package/dist/src/models/staff-type.entity.d.ts +7 -0
  96. package/dist/src/models/staff-type.entity.js +50 -0
  97. package/dist/src/models/staff-type.entity.js.map +1 -0
  98. package/dist/src/models/staff.entity.d.ts +39 -0
  99. package/dist/src/models/staff.entity.js +250 -0
  100. package/dist/src/models/staff.entity.js.map +1 -0
  101. package/dist/src/models/state.entity.d.ts +10 -0
  102. package/dist/src/models/state.entity.js +64 -0
  103. package/dist/src/models/state.entity.js.map +1 -0
  104. package/dist/src/models/system-accesss.entity.d.ts +6 -0
  105. package/dist/src/models/system-accesss.entity.js +51 -0
  106. package/dist/src/models/system-accesss.entity.js.map +1 -0
  107. package/dist/src/models/system-privilege.entity.d.ts +16 -0
  108. package/dist/src/models/system-privilege.entity.js +90 -0
  109. package/dist/src/models/system-privilege.entity.js.map +1 -0
  110. package/dist/src/models/system-role-privilege.entity.d.ts +11 -0
  111. package/dist/src/models/system-role-privilege.entity.js +60 -0
  112. package/dist/src/models/system-role-privilege.entity.js.map +1 -0
  113. package/dist/src/models/system-role.entity.d.ts +11 -0
  114. package/dist/src/models/system-role.entity.js +83 -0
  115. package/dist/src/models/system-role.entity.js.map +1 -0
  116. package/dist/src/models/system.entity.d.ts +19 -0
  117. package/dist/src/models/system.entity.js +146 -0
  118. package/dist/src/models/system.entity.js.map +1 -0
  119. package/dist/src/models/user-group.entity.d.ts +23 -0
  120. package/dist/src/models/user-group.entity.js +140 -0
  121. package/dist/src/models/user-group.entity.js.map +1 -0
  122. package/dist/src/models/user-role.entity.d.ts +9 -0
  123. package/dist/src/models/user-role.entity.js +62 -0
  124. package/dist/src/models/user-role.entity.js.map +1 -0
  125. package/dist/src/models/user-system-privileges.entity.d.ts +13 -0
  126. package/dist/src/models/user-system-privileges.entity.js +80 -0
  127. package/dist/src/models/user-system-privileges.entity.js.map +1 -0
  128. package/dist/src/models/user-system-role.entity.d.ts +11 -0
  129. package/dist/src/models/user-system-role.entity.js +60 -0
  130. package/dist/src/models/user-system-role.entity.js.map +1 -0
  131. package/dist/src/models/user-user-group.entity.d.ts +14 -0
  132. package/dist/src/models/user-user-group.entity.js +73 -0
  133. package/dist/src/models/user-user-group.entity.js.map +1 -0
  134. package/dist/src/models/user.entity.d.ts +30 -0
  135. package/dist/src/models/user.entity.js +131 -0
  136. package/dist/src/models/user.entity.js.map +1 -0
  137. package/dist/tsconfig.tsbuildinfo +1 -1
  138. package/migrations/01-alter-system-privilege-table.js +13 -0
  139. package/migrations/02-alter-user-group-table.js +78 -0
  140. package/migrations/03-alter-user-system-privilege-table.js +38 -0
  141. package/migrations/04-create-user-user-group-table.js +55 -0
  142. package/migrations/05-create-login-history-table.js +49 -0
  143. package/package.json +8 -4
  144. package/src/components/index.ts +1 -0
  145. package/src/components/login-history/login-history.repository.ts +35 -23
  146. package/src/components/login-user/login-user.ts +65 -65
  147. package/src/components/login-user/user.repository.ts +35 -23
  148. package/src/components/system/system.repository.ts +34 -23
  149. package/src/components/system-access/system-access.repository.ts +35 -23
  150. package/src/components/user-group/user-group.repository.ts +35 -23
  151. package/src/components/user-user-group/user-user-group.repository.ts +35 -23
  152. package/src/database.ts +15 -0
  153. package/src/models/authorization-code.entity.ts +71 -0
  154. package/src/models/bearer-token.entity.ts +59 -0
  155. package/src/models/building-type.entity.ts +38 -0
  156. package/src/models/building.entity.ts +185 -0
  157. package/src/models/city.entity.ts +59 -0
  158. package/src/models/company.entity.ts +96 -0
  159. package/src/models/country.entity.ts +75 -0
  160. package/src/models/department.entity.ts +94 -0
  161. package/src/models/group-role-privilege.entity.ts +73 -0
  162. package/src/models/group-system-access.entity.ts +49 -0
  163. package/src/models/group-system-privilege.entity.ts +49 -0
  164. package/src/models/group-system-role.entity.ts +49 -0
  165. package/src/models/login-history.entity.ts +56 -0
  166. package/src/models/oauth-token.entity.ts +71 -0
  167. package/src/models/role.entity.ts +85 -0
  168. package/src/models/staff-type.entity.ts +38 -0
  169. package/src/models/staff.entity.ts +213 -0
  170. package/src/models/state.entity.ts +52 -0
  171. package/src/models/system-accesss.entity.ts +40 -0
  172. package/src/models/system-privilege.entity.ts +75 -0
  173. package/src/models/system-role-privilege.entity.ts +48 -0
  174. package/src/models/system-role.entity.ts +68 -0
  175. package/src/models/system.entity.ts +122 -0
  176. package/src/models/user-group.entity.ts +118 -0
  177. package/src/models/user-role.entity.ts +50 -0
  178. package/src/models/user-system-privileges.entity.ts +66 -0
  179. package/src/models/user-system-role.entity.ts +48 -0
  180. package/src/models/user-user-group.entity.ts +59 -0
  181. package/src/models/user.entity.ts +110 -0
  182. package/dist/src/mail/index.d.ts +0 -2
  183. package/dist/src/mail/index.js +0 -19
  184. package/dist/src/mail/index.js.map +0 -1
  185. package/dist/src/mail/interfaces/index.d.ts +0 -2
  186. package/dist/src/mail/interfaces/index.js +0 -19
  187. package/dist/src/mail/interfaces/index.js.map +0 -1
  188. package/dist/src/mail/interfaces/send-mail.interface.d.ts +0 -8
  189. package/dist/src/mail/interfaces/send-mail.interface.js +0 -3
  190. package/dist/src/mail/interfaces/send-mail.interface.js.map +0 -1
  191. package/dist/src/mail/interfaces/send-new-login-alert.interface.d.ts +0 -6
  192. package/dist/src/mail/interfaces/send-new-login-alert.interface.js +0 -3
  193. package/dist/src/mail/interfaces/send-new-login-alert.interface.js.map +0 -1
  194. package/dist/src/mail/mail.d.ts +0 -7
  195. package/dist/src/mail/mail.js +0 -49
  196. package/dist/src/mail/mail.js.map +0 -1
  197. package/dist/src/mail/mail.service.d.ts +0 -7
  198. package/dist/src/mail/mail.service.js +0 -42
  199. package/dist/src/mail/mail.service.js.map +0 -1
@@ -0,0 +1,85 @@
1
+ import {
2
+ BelongsTo,
3
+ BelongsToMany,
4
+ Column,
5
+ CreatedAt,
6
+ DataType,
7
+ ForeignKey,
8
+ HasMany,
9
+ Model,
10
+ Table,
11
+ UpdatedAt,
12
+ } from 'sequelize-typescript';
13
+ import UserRole from './user-role.entity';
14
+ import User from './user.entity';
15
+
16
+ @Table({
17
+ tableName: 'sso_roles',
18
+ timestamps: true,
19
+ createdAt: 'created_at',
20
+ updatedAt: 'updated_at',
21
+ underscored: true,
22
+ })
23
+ export default class Role extends Model {
24
+ @Column({
25
+ primaryKey: true,
26
+ allowNull: false,
27
+ autoIncrement: true,
28
+ type: DataType.INTEGER,
29
+ })
30
+ id: number;
31
+
32
+ @Column({
33
+ allowNull: false,
34
+ type: DataType.STRING,
35
+ field: 'name',
36
+ })
37
+ Name: string;
38
+
39
+ @Column({
40
+ allowNull: true,
41
+ type: DataType.TEXT,
42
+ field: 'description',
43
+ })
44
+ Description: string;
45
+
46
+ @Column({
47
+ allowNull: false,
48
+ type: DataType.BOOLEAN,
49
+ field: 'default_to_on',
50
+ })
51
+ DefaultToOn: boolean;
52
+
53
+ @ForeignKey(() => Role)
54
+ @Column({
55
+ allowNull: true,
56
+ type: DataType.INTEGER,
57
+ field: 'parent_id',
58
+ })
59
+ ParentId: number;
60
+
61
+ @CreatedAt
62
+ CreatedAt: Date;
63
+
64
+ @UpdatedAt
65
+ UpdatedAt: Date;
66
+
67
+ @HasMany(() => Role, 'parent_id')
68
+ Children: Role[];
69
+
70
+ @HasMany(() => UserRole)
71
+ UserRoles: UserRole[];
72
+
73
+ @BelongsTo(() => Role, 'parent_id')
74
+ Parent: Role;
75
+
76
+ @BelongsToMany(() => User, () => UserRole)
77
+ Users: User[];
78
+
79
+ @BelongsToMany(() => User, {
80
+ as: 'UpdatedBy',
81
+ through: () => UserRole,
82
+ foreignKey: 'role_id',
83
+ })
84
+ UpdatedBy: User[];
85
+ }
@@ -0,0 +1,38 @@
1
+ import {
2
+ Column,
3
+ CreatedAt,
4
+ DataType,
5
+ Model,
6
+ Table,
7
+ UpdatedAt,
8
+ } from 'sequelize-typescript';
9
+
10
+ @Table({
11
+ tableName: 'sso_staff_types',
12
+ timestamps: true,
13
+ createdAt: 'created_at',
14
+ updatedAt: 'updated_at',
15
+ underscored: true,
16
+ })
17
+ export default class StaffType extends Model {
18
+ @Column({
19
+ primaryKey: true,
20
+ allowNull: false,
21
+ autoIncrement: true,
22
+ type: DataType.INTEGER,
23
+ })
24
+ id: number;
25
+
26
+ @Column({
27
+ allowNull: false,
28
+ type: DataType.STRING,
29
+ field: 'name',
30
+ })
31
+ Name: string;
32
+
33
+ @CreatedAt
34
+ CreatedAt: Date;
35
+
36
+ @UpdatedAt
37
+ UpdatedAt: Date;
38
+ }
@@ -0,0 +1,213 @@
1
+ import {
2
+ BelongsTo,
3
+ Column,
4
+ CreatedAt,
5
+ DataType,
6
+ ForeignKey,
7
+ Model,
8
+ Table,
9
+ UpdatedAt,
10
+ } from 'sequelize-typescript';
11
+ import StaffType from './staff-type.entity';
12
+ import Company from './company.entity';
13
+ import Building from './building.entity';
14
+ import Department from './department.entity';
15
+ import User from './user.entity';
16
+
17
+ @Table({
18
+ tableName: 'sso_staffs',
19
+ timestamps: true,
20
+ createdAt: 'created_at',
21
+ updatedAt: 'updated_at',
22
+ underscored: true,
23
+ })
24
+ export default class Staff extends Model {
25
+ @Column({
26
+ primaryKey: true,
27
+ allowNull: false,
28
+ autoIncrement: true,
29
+ type: DataType.INTEGER,
30
+ })
31
+ id: number;
32
+
33
+ @Column({
34
+ allowNull: false,
35
+ type: DataType.STRING,
36
+ field: 'staff_id',
37
+ })
38
+ StaffId: string;
39
+
40
+ @Column({
41
+ allowNull: false,
42
+ type: DataType.STRING,
43
+ field: 'full_name',
44
+ })
45
+ FullName: string;
46
+
47
+ @Column({
48
+ allowNull: false,
49
+ type: DataType.STRING,
50
+ field: 'preferred_name',
51
+ })
52
+ PreferredName: string;
53
+
54
+ @Column({
55
+ allowNull: false,
56
+ type: DataType.STRING,
57
+ field: 'email',
58
+ })
59
+ Email: string;
60
+
61
+ @ForeignKey(() => StaffType)
62
+ @Column({
63
+ allowNull: false,
64
+ type: DataType.INTEGER,
65
+ field: 'staff_type_id',
66
+ })
67
+ StaffTypeId: number;
68
+
69
+ @Column({
70
+ allowNull: false,
71
+ type: DataType.STRING,
72
+ field: 'job_title',
73
+ })
74
+ JobTitle: string;
75
+
76
+ @Column({
77
+ allowNull: false,
78
+ type: DataType.STRING,
79
+ field: 'car_plate',
80
+ })
81
+ CarPlate: string;
82
+
83
+ @Column({
84
+ allowNull: true,
85
+ type: DataType.STRING,
86
+ field: 'mobile',
87
+ })
88
+ Mobile: string;
89
+
90
+ @Column({
91
+ allowNull: true,
92
+ type: DataType.STRING,
93
+ field: 'floor',
94
+ })
95
+ Floor: string;
96
+
97
+ @Column({
98
+ allowNull: true,
99
+ type: DataType.STRING,
100
+ field: 'extension',
101
+ })
102
+ Extension: string;
103
+
104
+ @Column({
105
+ allowNull: false,
106
+ type: DataType.BOOLEAN,
107
+ field: 'is_charge',
108
+ })
109
+ IsCharge: boolean;
110
+
111
+ @Column({
112
+ allowNull: false,
113
+ type: DataType.STRING,
114
+ field: 'status',
115
+ })
116
+ Status: string;
117
+
118
+ @ForeignKey(() => Company)
119
+ @Column({
120
+ allowNull: true,
121
+ type: DataType.INTEGER,
122
+ field: 'company_id',
123
+ })
124
+ CompanyId: number;
125
+
126
+ @ForeignKey(() => User)
127
+ @Column({
128
+ allowNull: true,
129
+ type: DataType.INTEGER,
130
+ field: 'user_id',
131
+ })
132
+ UserId: number;
133
+
134
+ @ForeignKey(() => Building)
135
+ @Column({
136
+ allowNull: false,
137
+ type: DataType.INTEGER,
138
+ field: 'building_id',
139
+ })
140
+ BuildingId: number;
141
+
142
+ @ForeignKey(() => Department)
143
+ @Column({
144
+ allowNull: false,
145
+ type: DataType.INTEGER,
146
+ field: 'department_id',
147
+ })
148
+ DepartmentId: number;
149
+
150
+ @ForeignKey(() => User)
151
+ @Column({
152
+ allowNull: true,
153
+ type: DataType.INTEGER,
154
+ field: 'created_by_id',
155
+ })
156
+ CreatedById: number;
157
+
158
+ @ForeignKey(() => User)
159
+ @Column({
160
+ allowNull: true,
161
+ type: DataType.INTEGER,
162
+ field: 'updated_by_id',
163
+ })
164
+ UpdatedById: number;
165
+
166
+ @Column({
167
+ allowNull: false,
168
+ type: DataType.INTEGER,
169
+ field: 'image',
170
+ })
171
+ Image: number;
172
+
173
+ @Column({
174
+ allowNull: false,
175
+ type: DataType.STRING(20),
176
+ field: 'IdNo',
177
+ })
178
+ IdNo: string;
179
+
180
+ @Column({
181
+ allowNull: false,
182
+ type: DataType.STRING(1000),
183
+ field: 'FullAddress',
184
+ })
185
+ FullAddress: string;
186
+
187
+ @CreatedAt
188
+ CreatedAt: Date;
189
+
190
+ @UpdatedAt
191
+ UpdatedAt: Date;
192
+
193
+ @BelongsTo(() => StaffType)
194
+ StaffType: StaffType;
195
+
196
+ @BelongsTo(() => Company)
197
+ Company: Company;
198
+
199
+ @BelongsTo(() => Building)
200
+ Building: Building;
201
+
202
+ @BelongsTo(() => Department)
203
+ Department: Department;
204
+
205
+ @BelongsTo(() => User, 'created_by_id')
206
+ CreatedBy: User;
207
+
208
+ @BelongsTo(() => User, 'updated_by_id')
209
+ UpdatedBy: User;
210
+
211
+ @BelongsTo(() => User, 'user_id')
212
+ User: User;
213
+ }
@@ -0,0 +1,52 @@
1
+ import {
2
+ BelongsTo,
3
+ Column,
4
+ CreatedAt,
5
+ DataType,
6
+ ForeignKey,
7
+ Model,
8
+ Table,
9
+ UpdatedAt,
10
+ } from 'sequelize-typescript';
11
+ import Country from './country.entity';
12
+
13
+ @Table({
14
+ tableName: 'sso_states',
15
+ timestamps: true,
16
+ createdAt: 'created_at',
17
+ updatedAt: 'updated_at',
18
+ underscored: true,
19
+ })
20
+ export default class State extends Model {
21
+ @Column({
22
+ primaryKey: true,
23
+ allowNull: false,
24
+ autoIncrement: true,
25
+ type: DataType.INTEGER,
26
+ })
27
+ id: number;
28
+
29
+ @Column({
30
+ allowNull: false,
31
+ type: DataType.STRING,
32
+ field: 'name',
33
+ })
34
+ Name: string;
35
+
36
+ @ForeignKey(() => Country)
37
+ @Column({
38
+ allowNull: false,
39
+ type: DataType.INTEGER,
40
+ field: 'country_id',
41
+ })
42
+ CountryId: number;
43
+
44
+ @CreatedAt
45
+ CreatedAt: Date;
46
+
47
+ @UpdatedAt
48
+ UpdatedAt: Date;
49
+
50
+ @BelongsTo(() => Country)
51
+ Country: Country;
52
+ }
@@ -0,0 +1,40 @@
1
+ import {
2
+ Column,
3
+ DataType,
4
+ ForeignKey,
5
+ Model,
6
+ Table,
7
+ UpdatedAt,
8
+ } from 'sequelize-typescript';
9
+ import User from './user.entity';
10
+ import System from './system.entity';
11
+
12
+ @Table({
13
+ tableName: 'sso_system_accesses',
14
+ timestamps: true,
15
+ underscored: true,
16
+ createdAt: false,
17
+ updatedAt: 'updated_at',
18
+ })
19
+ export default class SystemAccess extends Model {
20
+ @ForeignKey(() => User)
21
+ @Column({
22
+ primaryKey: true,
23
+ allowNull: false,
24
+ type: DataType.INTEGER,
25
+ field: 'user_id',
26
+ })
27
+ UserId: number;
28
+
29
+ @ForeignKey(() => System)
30
+ @Column({
31
+ allowNull: false,
32
+ primaryKey: true,
33
+ type: DataType.INTEGER,
34
+ field: 'system_id',
35
+ })
36
+ SystemId: number;
37
+
38
+ @UpdatedAt
39
+ UpdatedAt: Date;
40
+ }
@@ -0,0 +1,75 @@
1
+ import {
2
+ BelongsTo,
3
+ BelongsToMany,
4
+ Column,
5
+ CreatedAt,
6
+ DataType,
7
+ ForeignKey,
8
+ Model,
9
+ Table,
10
+ UpdatedAt,
11
+ } from 'sequelize-typescript';
12
+ import System from './system.entity';
13
+ import User from './user.entity';
14
+ import UserSystemPrivileges from './user-system-privileges.entity';
15
+ import SystemRole from './system-role.entity';
16
+ import SystemRolePrivilege from './system-role-privilege.entity';
17
+
18
+ @Table({
19
+ tableName: 'sso_SystemPrivilege',
20
+ timestamps: true,
21
+ createdAt: 'CreatedAt',
22
+ updatedAt: 'UpdatedAt',
23
+ })
24
+ export default class SystemPrivilege extends Model {
25
+ @Column({
26
+ primaryKey: true,
27
+ allowNull: true,
28
+ type: DataType.STRING,
29
+ field: 'PrivilegeId',
30
+ })
31
+ PrivilegeId: string;
32
+
33
+ @Column({
34
+ allowNull: true,
35
+ type: DataType.STRING,
36
+ field: 'Code',
37
+ })
38
+ Code: string;
39
+
40
+ @Column({
41
+ allowNull: true,
42
+ type: DataType.TEXT,
43
+ field: 'Description',
44
+ })
45
+ Description: string;
46
+
47
+ @ForeignKey(() => System)
48
+ @Column({
49
+ allowNull: true,
50
+ type: DataType.INTEGER,
51
+ field: 'SystemId',
52
+ })
53
+ SystemId: number;
54
+
55
+ @Column({
56
+ allowNull: true,
57
+ type: DataType.STRING(200),
58
+ })
59
+ Module: string;
60
+
61
+ @CreatedAt
62
+ CreatedAt: Date;
63
+
64
+ @UpdatedAt
65
+ UpdatedAt: Date;
66
+
67
+ @BelongsTo(() => System)
68
+ System: System;
69
+
70
+ @BelongsToMany(() => User, () => UserSystemPrivileges)
71
+ SystemPrivilege: User[];
72
+
73
+ @BelongsToMany(() => SystemRole, () => SystemRolePrivilege)
74
+ SystemRole: SystemRole[];
75
+ }
@@ -0,0 +1,48 @@
1
+ import {
2
+ BelongsTo,
3
+ Column,
4
+ CreatedAt,
5
+ DataType,
6
+ ForeignKey,
7
+ Model,
8
+ Table,
9
+ UpdatedAt,
10
+ } from 'sequelize-typescript';
11
+ import SystemRole from './system-role.entity';
12
+ import SystemPrivilege from './system-privilege.entity';
13
+
14
+ @Table({
15
+ tableName: 'sso_SystemRolePrivilege',
16
+ timestamps: true,
17
+ createdAt: 'CreatedAt',
18
+ updatedAt: 'UpdatedAt',
19
+ })
20
+ export default class SystemRolePrivilege extends Model {
21
+ @ForeignKey(() => SystemRole)
22
+ @Column({
23
+ primaryKey: true,
24
+ type: DataType.STRING(30),
25
+ field: 'RoleId',
26
+ })
27
+ RoleId: string;
28
+
29
+ @ForeignKey(() => SystemPrivilege)
30
+ @Column({
31
+ primaryKey: true,
32
+ type: DataType.STRING(30),
33
+ field: 'Name',
34
+ })
35
+ PrivilegeId: string;
36
+
37
+ @CreatedAt
38
+ CreatedAt: Date;
39
+
40
+ @UpdatedAt
41
+ UpdatedAt: Date;
42
+
43
+ @BelongsTo(() => SystemRole)
44
+ SystemRole: SystemRole;
45
+
46
+ @BelongsTo(() => SystemPrivilege)
47
+ SystemPrivilege: SystemPrivilege;
48
+ }
@@ -0,0 +1,68 @@
1
+ import {
2
+ Column,
3
+ CreatedAt,
4
+ DataType,
5
+ ForeignKey,
6
+ Model,
7
+ Table,
8
+ UpdatedAt,
9
+ } from 'sequelize-typescript';
10
+ import System from './system.entity';
11
+
12
+ @Table({
13
+ tableName: 'sso_SystemRole',
14
+ timestamps: true,
15
+ createdAt: 'CreatedAt',
16
+ updatedAt: 'UpdatedAt',
17
+ })
18
+ export default class SystemRole extends Model {
19
+ @Column({
20
+ primaryKey: true,
21
+ allowNull: true,
22
+ type: DataType.STRING,
23
+ field: 'RoleId',
24
+ })
25
+ RoleId: number;
26
+
27
+ @Column({
28
+ allowNull: true,
29
+ type: DataType.STRING(30),
30
+ field: 'Name',
31
+ })
32
+ Name: string;
33
+
34
+ @Column({
35
+ allowNull: true,
36
+ type: DataType.STRING(3000),
37
+ field: 'Description',
38
+ })
39
+ Description: string;
40
+
41
+ @Column({
42
+ allowNull: true,
43
+ type: DataType.INTEGER,
44
+ field: 'CreatedById',
45
+ })
46
+ CreatedById: string;
47
+
48
+ @Column({
49
+ allowNull: true,
50
+ type: DataType.INTEGER,
51
+ field: 'UpdatedById',
52
+ })
53
+ UpdatedById: string;
54
+
55
+ @ForeignKey(() => System)
56
+ @Column({
57
+ allowNull: true,
58
+ type: DataType.INTEGER,
59
+ field: 'SystemId',
60
+ })
61
+ SystemId: string;
62
+
63
+ @CreatedAt
64
+ CreatedAt: Date;
65
+
66
+ @UpdatedAt
67
+ UpdatedAt: Date;
68
+ }