hl-core 0.0.7-beta.1 → 0.0.7-beta.11

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 (42) hide show
  1. package/.prettierrc +2 -1
  2. package/api/index.ts +545 -0
  3. package/api/interceptors.ts +38 -0
  4. package/components/Button/Btn.vue +57 -0
  5. package/components/Button/BtnIcon.vue +47 -0
  6. package/components/Button/SortArrow.vue +21 -0
  7. package/components/Complex/Content.vue +5 -0
  8. package/components/Complex/ContentBlock.vue +5 -0
  9. package/components/Complex/Page.vue +43 -0
  10. package/components/Input/FormInput.vue +136 -0
  11. package/components/Input/RoundedInput.vue +136 -0
  12. package/components/Layout/Dialog.vue +84 -0
  13. package/components/Layout/Drawer.vue +42 -0
  14. package/components/Layout/Header.vue +48 -0
  15. package/components/Layout/Loader.vue +35 -0
  16. package/components/Layout/SettingsPanel.vue +33 -0
  17. package/components/Menu/MenuNav.vue +125 -0
  18. package/components/Menu/MenuNavItem.vue +27 -0
  19. package/components/Panel/PanelItem.vue +5 -0
  20. package/components/Transitions/FadeTransition.vue +5 -0
  21. package/composables/axios.ts +11 -0
  22. package/composables/classes.ts +1081 -0
  23. package/composables/constants.ts +61 -0
  24. package/composables/index.ts +133 -2
  25. package/composables/models.ts +43 -0
  26. package/composables/styles.ts +34 -8
  27. package/layouts/clear.vue +3 -0
  28. package/layouts/default.vue +37 -0
  29. package/layouts/full.vue +6 -0
  30. package/nuxt.config.ts +23 -4
  31. package/package.json +15 -4
  32. package/pages/500.vue +48 -0
  33. package/plugins/helperFunctionsPlugins.ts +11 -2
  34. package/plugins/storePlugin.ts +0 -2
  35. package/plugins/vuetifyPlugin.ts +10 -0
  36. package/store/data.store.js +2632 -6
  37. package/store/form.store.js +8 -0
  38. package/store/messages.ts +118 -27
  39. package/store/rules.js +7 -26
  40. package/tailwind.config.js +10 -0
  41. package/components/Button/GreenBtn.vue +0 -33
  42. package/store/app.store.js +0 -12
@@ -0,0 +1,1081 @@
1
+ import { formatDate } from '.';
2
+ import { RouteLocationNormalized, RouteLocationNormalizedLoaded } from 'vue-router';
3
+
4
+ type LinkType = Partial<RouteLocationNormalized> | Partial<RouteLocationNormalizedLoaded> | string | null | boolean;
5
+
6
+ class MenuItemConfig {
7
+ id: any;
8
+ title: string | null;
9
+ link?: LinkType;
10
+ hasLine?: boolean;
11
+ description?: string | null;
12
+ url?: string | null;
13
+ initial?: object | null;
14
+ icon?: string | null;
15
+ action?: Function | void;
16
+ disabled?: typeof computed;
17
+ color?: string;
18
+ show?: typeof computed;
19
+
20
+ constructor(
21
+ id: any = null,
22
+ title: string | null = null,
23
+ link?: LinkType,
24
+ hasLine?: boolean,
25
+ description?: string | null,
26
+ url?: string | null,
27
+ initial?: object | null,
28
+ icon?: string | null,
29
+ action?: Function | void,
30
+ disabled?: typeof computed,
31
+ color?: string,
32
+ show?: typeof computed,
33
+ ) {
34
+ this.id = id;
35
+ this.title = title;
36
+ this.link = link;
37
+ this.hasLine = hasLine;
38
+ this.description = description;
39
+ this.url = url;
40
+ this.initial = initial;
41
+ this.icon = icon;
42
+ this.action = action;
43
+ this.disabled = disabled;
44
+ this.color = color;
45
+ this.show = show;
46
+ }
47
+ }
48
+
49
+ export class MenuItem extends MenuItemConfig {
50
+ constructor({ id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show }: MenuItemConfig = new MenuItemConfig()) {
51
+ super(id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show);
52
+ }
53
+ }
54
+
55
+ export class Value {
56
+ id: string | number | null;
57
+ code: string | number | null;
58
+ nameRu: string | number | null;
59
+ nameKz: string | number | null;
60
+ ids: string | number | null;
61
+
62
+ constructor(
63
+ id: string | number | null = null,
64
+ nameRu: string | number | null = null,
65
+ nameKz: string | number | null = null,
66
+ code: string | number | null = null,
67
+ ids: string | number | null = null,
68
+ ) {
69
+ this.id = id;
70
+ this.code = code;
71
+ this.nameRu = nameRu;
72
+ this.nameKz = nameKz;
73
+ this.ids = ids;
74
+ }
75
+ }
76
+
77
+ class IDocument {
78
+ id?: string;
79
+ processInstanceId?: string;
80
+ iin?: string;
81
+ fileTypeId?: string;
82
+ fileTypeName?: string;
83
+ fileId?: string;
84
+ page?: number;
85
+ fileName?: string;
86
+ fileTypeCode?: string;
87
+ sharedId?: string | null;
88
+ signed?: boolean | null;
89
+ signId?: string | null;
90
+ certificateDate?: string | null;
91
+ constructor(
92
+ id?: string,
93
+ processInstanceId?: string,
94
+ iin?: string,
95
+ fileTypeId?: string,
96
+ fileTypeName?: string,
97
+ fileId?: string,
98
+ page?: number,
99
+ fileName?: string,
100
+ fileTypeCode?: string,
101
+ sharedId?: string | null,
102
+ signed?: boolean | null,
103
+ signId?: string | null,
104
+ certificateDate?: string | null,
105
+ ) {
106
+ this.id = id;
107
+ this.processInstanceId = processInstanceId;
108
+ this.iin = iin;
109
+ this.fileTypeId = fileTypeId;
110
+ this.fileTypeName = fileTypeName;
111
+ this.fileId = fileId;
112
+ this.page = page;
113
+ this.fileName = fileName;
114
+ this.fileTypeCode = fileTypeCode;
115
+ this.sharedId = sharedId;
116
+ this.signed = signed;
117
+ this.signId = signId;
118
+ this.certificateDate = certificateDate;
119
+ }
120
+ }
121
+
122
+ export class DocumentItem extends IDocument {
123
+ constructor(
124
+ { id, processInstanceId, iin, fileTypeId, fileTypeName, fileId, page, fileName, fileTypeCode, sharedId, signed, signId, certificateDate }: IDocument = new IDocument(),
125
+ ) {
126
+ super(id, processInstanceId, iin, fileTypeId, fileTypeName, fileId, page, fileName, fileTypeCode, sharedId, signed, signId, certificateDate);
127
+ }
128
+ }
129
+
130
+ export class MenuOption {
131
+ text: string | null;
132
+ subtitle: string | null;
133
+ icon: string | null;
134
+ variant: string | null;
135
+ size: string | null;
136
+
137
+ constructor(text = 'Text', subtitle = 'Subtitle', icon = 'mdi-content-copy', variant = 'text', size = 'small') {
138
+ this.text = text;
139
+ this.subtitle = subtitle;
140
+ this.icon = icon;
141
+ this.variant = variant;
142
+ this.size = size;
143
+ }
144
+ }
145
+
146
+ export const InitialColumns = () => {
147
+ return {
148
+ addRegNumber: null,
149
+ number: null,
150
+ iin: null,
151
+ longName: null,
152
+ userName: null,
153
+ processCodeTitle: null,
154
+ historyStatusTitle: null,
155
+ dateCreated: null,
156
+ };
157
+ };
158
+
159
+ export class User {
160
+ login: string | null;
161
+ password: string | null;
162
+ roles: string[] | null;
163
+ id: string | null;
164
+ fullName: string | null;
165
+
166
+ constructor(login: string | null = null, password: string | null = null, roles: string[] = [], id: string | null = null, fullName: string | null = null) {
167
+ this.login = login;
168
+ this.password = password;
169
+ this.roles = roles;
170
+ this.id = id;
171
+ this.fullName = fullName;
172
+ }
173
+
174
+ resetUser() {
175
+ this.login = null;
176
+ this.password = null;
177
+ this.roles = [];
178
+ this.id = null;
179
+ this.fullName = null;
180
+ }
181
+ }
182
+
183
+ class Person {
184
+ id: string | number | null;
185
+ type: string | number | null;
186
+ iin: string | null;
187
+ longName: string | null;
188
+ lastName: string | null;
189
+ firstName: string | null;
190
+ middleName: string | null;
191
+ birthDate: string | null;
192
+ gender: Value;
193
+ genderName: string | null;
194
+ birthPlace: Value;
195
+ age: string | null;
196
+ registrationDate: string;
197
+
198
+ constructor(
199
+ id = 0,
200
+ type = 1,
201
+ iin = null,
202
+ longName = null,
203
+ lastName = null,
204
+ firstName = null,
205
+ middleName = null,
206
+ birthDate = null,
207
+ gender = new Value(),
208
+ genderName = null,
209
+ birthPlace = new Value(),
210
+ age = null,
211
+ ) {
212
+ this.id = id;
213
+ this.type = type;
214
+ this.iin = iin;
215
+ this.longName = !!lastName && !!firstName && !!middleName ? (((((lastName as string) + firstName) as string) + middleName) as string) : longName;
216
+ this.lastName = lastName;
217
+ this.firstName = firstName;
218
+ this.middleName = middleName;
219
+ this.birthDate = birthDate;
220
+ this.gender = gender;
221
+ this.genderName = gender && gender.nameRu !== null ? (gender.nameRu as string) : genderName;
222
+ this.birthPlace = birthPlace;
223
+ this.age = age;
224
+ this.registrationDate = new Date(Date.now() - new Date().getTimezoneOffset() * 60 * 1000).toISOString().slice(0, -1);
225
+ }
226
+
227
+ resetPerson(clearIinAndPhone = true) {
228
+ this.id = 0;
229
+ this.type = 1;
230
+ if (clearIinAndPhone === true) {
231
+ this.iin = null;
232
+ }
233
+ this.longName = null;
234
+ this.lastName = null;
235
+ this.firstName = null;
236
+ this.middleName = null;
237
+ this.birthDate = null;
238
+ this.gender = new Value();
239
+ this.genderName = null;
240
+ this.birthPlace = new Value();
241
+ this.age = null;
242
+ this.registrationDate = new Date(Date.now() - new Date().getTimezoneOffset() * 60 * 1000).toISOString().slice(0, -1);
243
+ }
244
+
245
+ formatDate(date: any): Date | null {
246
+ return formatDate(date);
247
+ }
248
+
249
+ getDateByKey(key: string): string | null {
250
+ const ctxKey = key as keyof typeof this;
251
+ if (this[ctxKey] && this[ctxKey] !== null) {
252
+ const formattedDate = this.formatDate(this[ctxKey]);
253
+ return formattedDate ? formattedDate.toISOString() : null;
254
+ } else {
255
+ return null;
256
+ }
257
+ }
258
+
259
+ getBirthDate() {
260
+ return this.getDateByKey('birthDate');
261
+ }
262
+
263
+ getDocumentExpireDate() {
264
+ return this.getDateByKey('documentExpire');
265
+ }
266
+
267
+ getDocumentDate() {
268
+ return this.getDateByKey('documentDate');
269
+ }
270
+
271
+ getAgeByBirthDate() {
272
+ const date = this.formatDate(this.birthDate);
273
+ if (date) {
274
+ const age = Math.abs(new Date(Date.now() - new Date(date).getTime()).getUTCFullYear() - 1970);
275
+ if (new Date(date) < new Date(Date.now()) && age > 0) {
276
+ return age;
277
+ }
278
+ } else {
279
+ return '';
280
+ }
281
+ }
282
+ }
283
+
284
+ export class Contragent extends Person {
285
+ economySectorCode: Value;
286
+ countryOfCitizenship: Value;
287
+ countryOfTaxResidency: Value;
288
+ registrationCountry: Value;
289
+ registrationProvince: Value;
290
+ registrationRegion: Value;
291
+ registrationRegionType: Value;
292
+ registrationCity: Value;
293
+ registrationQuarter: string | null;
294
+ registrationMicroDistrict: string | null;
295
+ registrationStreet: string | null;
296
+ registrationNumberHouse: string | null;
297
+ registrationNumberApartment: string | null;
298
+ phoneNumber: string | null;
299
+ homePhone: string | null;
300
+ email: string | null;
301
+ signOfResidency: Value;
302
+ documentType: Value;
303
+ documentNumber: string | null;
304
+ documentIssuers: Value;
305
+ documentDate: string | null;
306
+ documentExpire: string | null;
307
+ verifyDate: string | null;
308
+ verifyType: string | null;
309
+ otpTokenId: string | null;
310
+ constructor(
311
+ economySectorCode = new Value(),
312
+ countryOfCitizenship = new Value(),
313
+ countryOfTaxResidency = new Value(),
314
+ registrationCountry = new Value(),
315
+ registrationProvince = new Value(),
316
+ registrationRegion = new Value(),
317
+ registrationRegionType = new Value(),
318
+ registrationCity = new Value(),
319
+ registrationQuarter = null,
320
+ registrationMicroDistrict = null,
321
+ registrationStreet = null,
322
+ registrationNumberHouse = null,
323
+ registrationNumberApartment = null,
324
+ phoneNumber = null,
325
+ homePhone = null,
326
+ email = null,
327
+ signOfResidency = new Value(),
328
+ documentType = new Value(),
329
+ documentNumber = null,
330
+ documentIssuers = new Value(),
331
+ documentDate = null,
332
+ documentExpire = null,
333
+ ...args: any
334
+ ) {
335
+ super(...args);
336
+ this.economySectorCode = economySectorCode;
337
+ this.countryOfCitizenship = countryOfCitizenship;
338
+ this.countryOfTaxResidency = countryOfTaxResidency;
339
+ this.registrationCountry = registrationCountry;
340
+ this.registrationProvince = registrationProvince;
341
+ this.registrationRegion = registrationRegion;
342
+ this.registrationRegionType = registrationRegionType;
343
+ this.registrationCity = registrationCity;
344
+ this.registrationQuarter = registrationQuarter;
345
+ this.registrationMicroDistrict = registrationMicroDistrict;
346
+ this.registrationStreet = registrationStreet;
347
+ this.registrationNumberHouse = registrationNumberHouse;
348
+ this.registrationNumberApartment = registrationNumberApartment;
349
+ this.phoneNumber = phoneNumber;
350
+ this.homePhone = homePhone;
351
+ this.email = email;
352
+ this.signOfResidency = signOfResidency;
353
+ this.documentType = documentType;
354
+ this.documentNumber = documentNumber;
355
+ this.documentIssuers = documentIssuers;
356
+ this.documentDate = documentDate;
357
+ this.documentExpire = documentExpire;
358
+ this.verifyDate = null;
359
+ this.verifyType = null;
360
+ this.otpTokenId = null;
361
+ }
362
+ }
363
+
364
+ class Form extends Person {
365
+ job: string | null;
366
+ jobPosition: string | null;
367
+ jobPlace: string | null;
368
+ registrationCountry: Value;
369
+ registrationProvince: Value;
370
+ registrationRegion: Value;
371
+ registrationRegionType: Value;
372
+ registrationCity: Value;
373
+ registrationQuarter: string | null;
374
+ registrationMicroDistrict: string | null;
375
+ registrationStreet: string | null;
376
+ registrationNumberHouse: string | null;
377
+ registrationNumberApartment: string | null;
378
+ birthRegion: Value;
379
+ documentType: Value;
380
+ documentNumber: string | null;
381
+ documentIssuers: Value;
382
+ documentDate: string | null;
383
+ documentExpire: string | null;
384
+ signOfResidency: Value;
385
+ signOfIPDL: Value;
386
+ countryOfCitizenship: Value;
387
+ countryOfTaxResidency: Value;
388
+ addTaxResidency: Value;
389
+ economySectorCode: Value;
390
+ phoneNumber: string | null;
391
+ homePhone: string | null;
392
+ email: string | null;
393
+ address: string | null;
394
+ familyStatus: Value;
395
+ isTerror: Value | null;
396
+ relationDegree: Value;
397
+ isDisability: Value;
398
+ disabilityGroup: Value | null;
399
+ percentageOfPayoutAmount: string | number | null;
400
+ _cyrPattern: RegExp;
401
+ _numPattern: RegExp;
402
+ _phonePattern: RegExp;
403
+ _emailPattern: RegExp;
404
+ gotFromInsis: boolean | null;
405
+ gosPersonData: any;
406
+ hasAgreement: boolean | null;
407
+ constructor(
408
+ id = 0,
409
+ type = 1,
410
+ iin = null,
411
+ phoneNumber = null,
412
+ longName = null,
413
+ lastName = null,
414
+ firstName = null,
415
+ middleName = null,
416
+ birthDate = null,
417
+ gender = new Value(),
418
+ genderName = null,
419
+ birthPlace = new Value(),
420
+ age = null,
421
+ registrationDate = null,
422
+ job = null,
423
+ jobPosition = null,
424
+ jobPlace = null,
425
+ registrationCountry = new Value(),
426
+ registrationProvince = new Value(),
427
+ registrationRegion = new Value(),
428
+ registrationRegionType = new Value(),
429
+ registrationCity = new Value(),
430
+ registrationQuarter = null,
431
+ registrationMicroDistrict = null,
432
+ registrationStreet = null,
433
+ registrationNumberHouse = null,
434
+ registrationNumberApartment = null,
435
+ birthRegion = new Value(),
436
+ documentType = new Value(),
437
+ documentNumber = null,
438
+ documentIssuers = new Value(),
439
+ documentDate = null,
440
+ documentExpire = null,
441
+ signOfResidency = new Value(),
442
+ signOfIPDL = new Value(),
443
+ isTerror = null,
444
+ countryOfCitizenship = new Value(),
445
+ countryOfTaxResidency = new Value(),
446
+ addTaxResidency = new Value(),
447
+ economySectorCode = new Value(),
448
+ homePhone = null,
449
+ email = null,
450
+ address = null,
451
+ familyStatus = new Value(),
452
+ relationDegree = new Value(),
453
+ isDisability = new Value(),
454
+ disabilityGroupId = new Value(),
455
+ percentageOfPayoutAmount = null,
456
+ ) {
457
+ super(id, type, iin, longName, lastName, firstName, middleName, birthDate, gender, genderName, birthPlace, age);
458
+ this.job = job;
459
+ this.jobPosition = jobPosition;
460
+ this.jobPlace = jobPlace;
461
+ this.registrationCountry = registrationCountry;
462
+ this.registrationProvince = registrationProvince;
463
+ this.registrationRegion = registrationRegion;
464
+ this.registrationRegionType = registrationRegionType;
465
+ this.registrationCity = registrationCity;
466
+ this.registrationQuarter = registrationQuarter;
467
+ this.registrationMicroDistrict = registrationMicroDistrict;
468
+ this.registrationStreet = registrationStreet;
469
+ this.registrationNumberHouse = registrationNumberHouse;
470
+ this.registrationNumberApartment = registrationNumberApartment;
471
+ this.birthRegion = birthRegion;
472
+ this.documentType = documentType;
473
+ this.documentNumber = documentNumber;
474
+ this.documentIssuers = documentIssuers;
475
+ this.documentDate = documentDate;
476
+ this.documentExpire = documentExpire;
477
+ this.signOfResidency = signOfResidency;
478
+ this.signOfIPDL = signOfIPDL;
479
+ this.countryOfCitizenship = countryOfCitizenship;
480
+ this.countryOfTaxResidency = countryOfTaxResidency;
481
+ this.addTaxResidency = addTaxResidency;
482
+ this.economySectorCode = economySectorCode;
483
+ this.phoneNumber = phoneNumber;
484
+ this.homePhone = homePhone;
485
+ this.email = email;
486
+ this.address = address;
487
+ this.familyStatus = familyStatus;
488
+ this.isTerror = isTerror;
489
+ this.relationDegree = relationDegree;
490
+ this.isDisability = isDisability;
491
+ this.disabilityGroup = disabilityGroupId;
492
+ this.percentageOfPayoutAmount = percentageOfPayoutAmount;
493
+ this._cyrPattern = /[\u0400-\u04FF]+/;
494
+ this._numPattern = /[0-9]+/;
495
+ this._phonePattern = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/;
496
+ this._emailPattern = /.+@.+\..+/;
497
+ this.gotFromInsis = true;
498
+ this.gosPersonData = null;
499
+ this.hasAgreement = null;
500
+ }
501
+
502
+ resetForm(clearIinAndPhone = true) {
503
+ super.resetPerson(clearIinAndPhone);
504
+ this.job = null;
505
+ this.jobPosition = null;
506
+ this.jobPlace = null;
507
+ this.registrationCountry = new Value();
508
+ this.registrationProvince = new Value();
509
+ this.registrationRegion = new Value();
510
+ this.registrationRegionType = new Value();
511
+ this.registrationCity = new Value();
512
+ this.registrationQuarter = null;
513
+ this.registrationMicroDistrict = null;
514
+ this.registrationStreet = null;
515
+ this.registrationNumberHouse = null;
516
+ this.registrationNumberApartment = null;
517
+ this.birthRegion = new Value();
518
+ this.documentType = new Value();
519
+ this.documentNumber = null;
520
+ this.documentIssuers = new Value();
521
+ this.documentDate = null;
522
+ this.documentExpire = null;
523
+ this.signOfResidency = new Value();
524
+ this.signOfIPDL = new Value();
525
+ this.countryOfCitizenship = new Value();
526
+ this.countryOfTaxResidency = new Value();
527
+ this.economySectorCode = new Value();
528
+ if (clearIinAndPhone === true) {
529
+ this.phoneNumber = null;
530
+ }
531
+ this.homePhone = null;
532
+ this.email = null;
533
+ this.address = null;
534
+ this.familyStatus = new Value();
535
+ this.isTerror = new Value();
536
+ this.relationDegree = new Value();
537
+ this.isDisability = new Value();
538
+ this.disabilityGroup = null;
539
+ this.percentageOfPayoutAmount = null;
540
+ this.gotFromInsis = true;
541
+ this.gosPersonData = null;
542
+ this.hasAgreement = null;
543
+ }
544
+
545
+ getPattern(pattern: string) {
546
+ const key = `_${pattern}Pattern` as keyof typeof this;
547
+ return this[key];
548
+ }
549
+
550
+ validatedMessage(valid: any, msg = 'Обязательное поле') {
551
+ return {
552
+ error: valid,
553
+ msg,
554
+ };
555
+ }
556
+
557
+ validateFullName() {
558
+ return this.lastName !== null && this.firstName !== null;
559
+ }
560
+
561
+ getFullNameShorted() {
562
+ return this.validateFullName() ? `${this.lastName} ${this.firstName?.charAt(0)}. ${this.middleName != '' ? this.middleName?.charAt(0) + '.' : ''}` : null;
563
+ }
564
+
565
+ getFullName() {
566
+ return this.validateFullName() ? (this.lastName + ' ' + this.firstName + ' ' + this.middleName != '' ? this.middleName?.charAt(0) : '') : null;
567
+ }
568
+ }
569
+
570
+ export class PolicyholderForm extends Form {
571
+ constructor(...args: any) {
572
+ super(...args);
573
+ }
574
+ }
575
+
576
+ export class InsuredForm extends Form {
577
+ constructor(...args: any) {
578
+ super(...args);
579
+ }
580
+ }
581
+
582
+ export class BeneficiaryForm extends Form {
583
+ insurancePay: Value;
584
+ constructor(...args: any) {
585
+ super(...args);
586
+ this.insurancePay = new Value();
587
+ }
588
+ }
589
+
590
+ export class BeneficialOwnerForm extends Form {
591
+ constructor(...args: any) {
592
+ super(...args);
593
+ }
594
+ }
595
+
596
+ export class PolicyholdersRepresentativeForm extends Form {
597
+ migrationCard: string | null;
598
+ migrationCardIssueDate: string | null;
599
+ migrationCardExpireDate: string | null;
600
+ confirmDocType: string | null;
601
+ confirmDocNumber: string | null;
602
+ confirmDocIssueDate: string | null;
603
+ confirmDocExpireDate: string | null;
604
+ notaryLongName: string | null;
605
+ notaryLicenseNumber: string | null;
606
+ notaryLicenseDate: string | null;
607
+ notaryLicenseIssuer: string | null;
608
+ jurLongName: string | null;
609
+ fullNameRod: string | null;
610
+ confirmDocTypeKz: string | null;
611
+ confirmDocTypeRod: string | null;
612
+ isNotary: boolean | null;
613
+ constructor(
614
+ migrationCard = null,
615
+ migrationCardIssueDate = null,
616
+ migrationCardExpireDate = null,
617
+ confirmDocType = null,
618
+ confirmDocNumber = null,
619
+ confirmDocIssueDate = null,
620
+ confirmDocExpireDate = null,
621
+ notaryLongName = null,
622
+ notaryLicenseNumber = null,
623
+ notaryLicenseDate = null,
624
+ notaryLicenseIssuer = null,
625
+ jurLongName = null,
626
+ fullNameRod = null,
627
+ confirmDocTypeKz = null,
628
+ confirmDocTypeRod = null,
629
+ isNotary = false,
630
+ ...args: any
631
+ ) {
632
+ super(...args);
633
+ this.migrationCard = migrationCard;
634
+ this.migrationCardIssueDate = migrationCardIssueDate;
635
+ this.migrationCardExpireDate = migrationCardExpireDate;
636
+ this.confirmDocType = confirmDocType;
637
+ this.confirmDocNumber = confirmDocNumber;
638
+ this.confirmDocIssueDate = confirmDocIssueDate;
639
+ this.confirmDocExpireDate = confirmDocExpireDate;
640
+ this.notaryLongName = notaryLongName;
641
+ this.notaryLicenseNumber = notaryLicenseNumber;
642
+ this.notaryLicenseDate = notaryLicenseDate;
643
+ this.notaryLicenseIssuer = notaryLicenseIssuer;
644
+ this.jurLongName = jurLongName;
645
+ this.fullNameRod = fullNameRod;
646
+ this.confirmDocTypeKz = confirmDocTypeKz;
647
+ this.confirmDocTypeRod = confirmDocTypeRod;
648
+ this.isNotary = isNotary;
649
+ }
650
+
651
+ resetMember(clearIinAndPhone = true) {
652
+ super.resetForm(clearIinAndPhone);
653
+ this.migrationCard = null;
654
+ this.migrationCardIssueDate = null;
655
+ this.migrationCardExpireDate = null;
656
+ this.confirmDocType = null;
657
+ this.confirmDocNumber = null;
658
+ this.confirmDocIssueDate = null;
659
+ this.confirmDocExpireDate = null;
660
+ this.notaryLongName = null;
661
+ this.notaryLicenseNumber = null;
662
+ this.notaryLicenseDate = null;
663
+ this.notaryLicenseIssuer = null;
664
+ this.jurLongName = null;
665
+ this.fullNameRod = null;
666
+ this.confirmDocTypeKz = null;
667
+ this.confirmDocTypeRod = null;
668
+ this.isNotary = false;
669
+ }
670
+ }
671
+
672
+ export class ProductConditions {
673
+ insuranceCase: string | null;
674
+ coverPeriod: string | null;
675
+ payPeriod: string | null;
676
+ termsOfInsurance: string | null;
677
+ annualIncome: string | null;
678
+ processIndexRate: Value;
679
+ requestedSumInsured: string | null;
680
+ insurancePremiumPerMonth: string | null;
681
+ establishingGroupDisabilityFromThirdYear: string | null;
682
+ possibilityToChange: string | null;
683
+ deathOfInsuredDueToAccident: Value;
684
+ establishingGroupDisability: Value;
685
+ temporaryDisability: Value;
686
+ bodyInjury: Value;
687
+ criticalIllnessOfTheInsured: Value;
688
+ paymentPeriod: Value;
689
+ amountOfInsurancePremium: string | null;
690
+ lifeMultiply: string | null;
691
+ lifeAdditive: string | null;
692
+ lifeMultiplyClient: string | null;
693
+ lifeAdditiveClient: string | null;
694
+ adbMultiply: string | null;
695
+ adbAdditive: string | null;
696
+ disabilityMultiply: string | null;
697
+ disabilityAdditive: string | null;
698
+ processTariff: Value;
699
+ riskGroup: Value;
700
+ riskGroup2: Value;
701
+ constructor(
702
+ insuranceCase = null,
703
+ coverPeriod = null,
704
+ payPeriod = null,
705
+ termsOfInsurance = null,
706
+ annualIncome = null,
707
+ processIndexRate = new Value(),
708
+ requestedSumInsured = null,
709
+ insurancePremiumPerMonth = null,
710
+ establishingGroupDisabilityFromThirdYear = null,
711
+ possibilityToChange = null,
712
+ deathOfInsuredDueToAccident = new Value(),
713
+ establishingGroupDisability = new Value(),
714
+ temporaryDisability = new Value(),
715
+ bodyInjury = new Value(),
716
+ criticalIllnessOfTheInsured = new Value(),
717
+ paymentPeriod = new Value(),
718
+ amountOfInsurancePremium = null,
719
+ lifeMultiply = null,
720
+ lifeAdditive = null,
721
+ lifeMultiplyClient = null,
722
+ lifeAdditiveClient = null,
723
+ adbMultiply = null,
724
+ adbAdditive = null,
725
+ disabilityMultiply = null,
726
+ disabilityAdditive = null,
727
+ processTariff = new Value(),
728
+ riskGroup = new Value(),
729
+ riskGroup2 = new Value(),
730
+ ) {
731
+ this.insuranceCase = insuranceCase;
732
+ this.coverPeriod = coverPeriod;
733
+ this.payPeriod = payPeriod;
734
+ this.termsOfInsurance = termsOfInsurance;
735
+ this.annualIncome = annualIncome;
736
+ this.processIndexRate = processIndexRate;
737
+ this.requestedSumInsured = requestedSumInsured;
738
+ this.insurancePremiumPerMonth = insurancePremiumPerMonth;
739
+ this.establishingGroupDisabilityFromThirdYear = establishingGroupDisabilityFromThirdYear;
740
+ this.possibilityToChange = possibilityToChange;
741
+ this.deathOfInsuredDueToAccident = deathOfInsuredDueToAccident;
742
+ this.establishingGroupDisability = establishingGroupDisability;
743
+ this.temporaryDisability = temporaryDisability;
744
+ this.bodyInjury = bodyInjury;
745
+ this.criticalIllnessOfTheInsured = criticalIllnessOfTheInsured;
746
+ this.paymentPeriod = paymentPeriod;
747
+ this.amountOfInsurancePremium = amountOfInsurancePremium;
748
+ this.lifeMultiply = lifeMultiply;
749
+ this.lifeAdditive = lifeAdditive;
750
+ this.lifeMultiplyClient = lifeMultiplyClient;
751
+ this.lifeAdditiveClient = lifeAdditiveClient;
752
+ this.adbMultiply = adbMultiply;
753
+ this.adbAdditive = adbAdditive;
754
+ this.disabilityMultiply = disabilityMultiply;
755
+ this.disabilityAdditive = disabilityAdditive;
756
+ this.processTariff = processTariff;
757
+ this.riskGroup = riskGroup;
758
+ this.riskGroup2 = riskGroup2;
759
+ }
760
+ }
761
+
762
+ export class DataStoreClass {
763
+ hasLayoutMargins: boolean;
764
+ product: string | null;
765
+ showNav: boolean;
766
+ menuItems: MenuItem[];
767
+ menu: {
768
+ title: string;
769
+ hasBack: boolean;
770
+ loading: boolean;
771
+ backIcon: string;
772
+ onBack: any;
773
+ onLink: any;
774
+ selectedItem: MenuItem;
775
+ };
776
+ settings: {
777
+ open: boolean;
778
+ overlay: boolean;
779
+ items: MenuItem[];
780
+ };
781
+ buttons: MenuItem[];
782
+ panelAction: string | null;
783
+ panel: {
784
+ open: boolean;
785
+ overlay: boolean;
786
+ title: string;
787
+ };
788
+ historyPageIndex: number;
789
+ historyPageSize: number;
790
+ historyTotalItems: number;
791
+ isColumnAsc = { ...InitialColumns() };
792
+ idleKey: number;
793
+ processList: any[] | null;
794
+ countries: Value[];
795
+ citizenshipCountries: Value[];
796
+ taxCountries: Value[];
797
+ addTaxCountries: Value[];
798
+ states: Value[];
799
+ regions: Value[];
800
+ cities: Value[];
801
+ localityTypes: Value[];
802
+ dicFileTypeList: Value[];
803
+ documentTypes: Value[];
804
+ documentIssuers: Value[];
805
+ familyStatuses: Value[];
806
+ relations: Value[];
807
+ questionRefs: any[];
808
+ epayLink: string;
809
+ residents: Value[];
810
+ ipdl: Value[];
811
+ economySectorCode: Value[];
812
+ gender: Value[];
813
+ fontSize: number;
814
+ isFontChangerOpen: boolean = false;
815
+ isLoading: boolean = false;
816
+ userNotFound: boolean = false;
817
+ user: User;
818
+ accessToken: string | null = null;
819
+ refreshToken: string | null = null;
820
+ processCoverTypeSum: any[];
821
+ processIndexRate: any[];
822
+ processPaymentPeriod: any[];
823
+ additionalInsuranceTerms: any[];
824
+ taskList: any[];
825
+ processHistory: any[];
826
+ contragentList: any[];
827
+ contragentFormKey: string;
828
+ processCode: number | null;
829
+ groupCode: string;
830
+ userGroups: any[];
831
+ onMainPage: boolean;
832
+ signUrl: string | null;
833
+ SaleChanellPolicyList: any[];
834
+ RegionPolicyList: any[];
835
+ ManagerPolicyList: any[];
836
+ AgentDataList: any[];
837
+ affilationResolution: {
838
+ id: string | number | null;
839
+ processInstanceId: string | number | null;
840
+ number: string | number | null;
841
+ date: string | number | null;
842
+ };
843
+ signedDocumentList: any[];
844
+ surveyByHealthBase: any[];
845
+ surveyByCriticalBase: any[];
846
+ surveyByHealthSecond: any[];
847
+ surveyByCriticalSecond: any[];
848
+ definedAnswersId: {
849
+ surveyByHealthBase: any;
850
+ surveyByCriticalBase: any;
851
+ };
852
+ riskGroup: any[];
853
+ constructor() {
854
+ this.hasLayoutMargins = true;
855
+ this.processIndexRate = [];
856
+ this.processPaymentPeriod = [];
857
+ this.additionalInsuranceTerms = [];
858
+ this.definedAnswersId = {
859
+ surveyByHealthBase: {},
860
+ surveyByCriticalBase: {},
861
+ };
862
+ this.signedDocumentList = [];
863
+ this.affilationResolution = {
864
+ id: null,
865
+ processInstanceId: null,
866
+ number: null,
867
+ date: null,
868
+ };
869
+ this.SaleChanellPolicyList = [];
870
+ this.RegionPolicyList = [];
871
+ this.ManagerPolicyList = [];
872
+ this.AgentDataList = [];
873
+ this.signUrl = null;
874
+ this.product = null;
875
+ this.showNav = true;
876
+ this.menuItems = [];
877
+ this.menu = {
878
+ title: '',
879
+ hasBack: false,
880
+ loading: false,
881
+ backIcon: 'mdi-arrow-left',
882
+ onBack: {},
883
+ onLink: {},
884
+ selectedItem: new MenuItem(),
885
+ };
886
+ this.settings = {
887
+ open: false,
888
+ overlay: false,
889
+ items: [],
890
+ };
891
+ this.buttons = [];
892
+ this.panel = {
893
+ open: false,
894
+ overlay: false,
895
+ title: '',
896
+ };
897
+ this.panelAction = null;
898
+ this.historyPageIndex = 1;
899
+ this.historyPageSize = 10;
900
+ this.historyTotalItems = 0;
901
+ this.isColumnAsc = { ...InitialColumns() };
902
+ this.idleKey = 999;
903
+ this.processList = null;
904
+ this.countries = [];
905
+ this.citizenshipCountries = [];
906
+ this.taxCountries = [];
907
+ this.addTaxCountries = [];
908
+ this.states = [];
909
+ this.regions = [];
910
+ this.cities = [];
911
+ this.localityTypes = [];
912
+ this.dicFileTypeList = [];
913
+ this.documentTypes = [];
914
+ this.documentIssuers = [];
915
+ this.familyStatuses = [];
916
+ this.relations = [];
917
+ this.surveyByHealthBase = [];
918
+ this.surveyByCriticalBase = [];
919
+ this.surveyByHealthSecond = [];
920
+ this.surveyByCriticalSecond = [];
921
+ this.questionRefs = [];
922
+ this.epayLink = '';
923
+ this.residents = [];
924
+ this.ipdl = [new Value(1, null), new Value(2, 'Да'), new Value(3, 'Нет')];
925
+ this.economySectorCode = [];
926
+ this.gender = [new Value(0, null), new Value(1, 'Мужской'), new Value(2, 'Женский')];
927
+ this.fontSize = 14;
928
+ this.isFontChangerOpen = false;
929
+ this.isLoading = false;
930
+ this.userNotFound = false;
931
+ this.user = new User();
932
+ this.accessToken = null;
933
+ this.refreshToken = null;
934
+ this.processCoverTypeSum = [];
935
+ this.taskList = [];
936
+ this.processHistory = [];
937
+ this.contragentList = [];
938
+ this.contragentFormKey = 'contragentForm';
939
+ this.processCode = null;
940
+ this.groupCode = 'Work';
941
+ this.userGroups = [];
942
+ this.onMainPage = true;
943
+ this.riskGroup = [
944
+ {
945
+ id: '1',
946
+ nameKz: '',
947
+ nameRu: '1',
948
+ isDefault: true,
949
+ },
950
+ {
951
+ id: '2',
952
+ nameKz: '',
953
+ nameRu: '2',
954
+ },
955
+ {
956
+ id: '3',
957
+ nameKz: '',
958
+ nameRu: '3',
959
+ },
960
+ {
961
+ id: '4',
962
+ nameKz: '',
963
+ nameRu: '4',
964
+ },
965
+ {
966
+ id: '5',
967
+ nameKz: '',
968
+ nameRu: '5',
969
+ },
970
+ ];
971
+ }
972
+ }
973
+
974
+ export class FormStoreClass {
975
+ birthInfos: any[];
976
+ SaleChanellPolicy: Value;
977
+ AgentData: {
978
+ agentId: null;
979
+ manId: 0;
980
+ fullName: '';
981
+ officeId: null;
982
+ officeCode: null;
983
+ saleChannel: '';
984
+ managerName: '';
985
+ };
986
+ RegionPolicy: Value;
987
+ ManagerPolicy: Value;
988
+ isDisabled: {
989
+ policyholderForm: true;
990
+ beneficiaryForm: true;
991
+ beneficialOwnerForm: true;
992
+ insuredForm: true;
993
+ policyholdersRepresentativeForm: true;
994
+ productConditionsForm: true;
995
+ recalculationForm: true;
996
+ surveyByHealthBase: true;
997
+ surveyByCriticalBase: true;
998
+ surveyByHealthBasePolicyholder: true;
999
+ surveyByCriticalBasePolicyholder: true;
1000
+ insuranceDocument: true;
1001
+ };
1002
+ isPolicyholderInsured: boolean = false;
1003
+ isPolicyholderBeneficiary: boolean = false;
1004
+ isActOwnBehalf: boolean = true;
1005
+ hasRepresentative: boolean = false;
1006
+ applicationData: { processInstanceId: number | string };
1007
+ policyholderForm: PolicyholderForm;
1008
+ policyholderFormKey: string;
1009
+ policyholdersRepresentativeForm: PolicyholdersRepresentativeForm;
1010
+ policyholdersRepresentativeFormKey: string;
1011
+ beneficiaryForm: BeneficiaryForm[];
1012
+ beneficiaryFormKey: string;
1013
+ beneficiaryFormIndex: number;
1014
+ beneficialOwnerForm: BeneficialOwnerForm[];
1015
+ beneficialOwnerFormIndex: number;
1016
+ beneficialOwnerFormKey: string;
1017
+ insuredForm: InsuredForm[];
1018
+ insuredFormKey: string;
1019
+ insuredFormIndex: number;
1020
+ productConditionsForm: ProductConditions;
1021
+ productConditionsFormKey: string;
1022
+ questionnaireByHealth: any;
1023
+ questionnaireByCritical: any[];
1024
+ canBeClaimed: boolean | null;
1025
+ applicationTaskId: string | null;
1026
+ otpTokenId: string | null;
1027
+ constructor(procuctConditionsTitle: string) {
1028
+ this.birthInfos = [];
1029
+ this.SaleChanellPolicy = new Value();
1030
+ this.AgentData = {
1031
+ agentId: null,
1032
+ manId: 0,
1033
+ fullName: '',
1034
+ officeId: null,
1035
+ officeCode: null,
1036
+ saleChannel: '',
1037
+ managerName: '',
1038
+ };
1039
+ this.RegionPolicy = new Value();
1040
+ this.ManagerPolicy = new Value();
1041
+ this.isDisabled = {
1042
+ policyholderForm: true,
1043
+ beneficiaryForm: true,
1044
+ beneficialOwnerForm: true,
1045
+ insuredForm: true,
1046
+ policyholdersRepresentativeForm: true,
1047
+ productConditionsForm: true,
1048
+ recalculationForm: true,
1049
+ surveyByHealthBase: true,
1050
+ surveyByCriticalBase: true,
1051
+ surveyByHealthBasePolicyholder: true,
1052
+ surveyByCriticalBasePolicyholder: true,
1053
+ insuranceDocument: true,
1054
+ };
1055
+ this.isPolicyholderInsured = false;
1056
+ this.isPolicyholderBeneficiary = false;
1057
+ this.isActOwnBehalf = true;
1058
+ this.hasRepresentative = false;
1059
+ this.applicationData = { processInstanceId: 0 };
1060
+ this.policyholderForm = new PolicyholderForm();
1061
+ this.policyholderFormKey = 'policyholderForm';
1062
+ this.policyholdersRepresentativeForm = new PolicyholdersRepresentativeForm();
1063
+ this.policyholdersRepresentativeFormKey = 'policyholdersRepresentativeForm';
1064
+ this.beneficiaryForm = [new BeneficiaryForm()];
1065
+ this.beneficiaryFormKey = 'beneficiaryForm';
1066
+ this.beneficiaryFormIndex = 0;
1067
+ this.beneficialOwnerForm = [new BeneficialOwnerForm()];
1068
+ this.beneficialOwnerFormIndex = 0;
1069
+ this.beneficialOwnerFormKey = 'beneficialOwnerForm';
1070
+ this.insuredForm = [new InsuredForm()];
1071
+ this.insuredFormKey = 'insuredForm';
1072
+ this.insuredFormIndex = 0;
1073
+ this.productConditionsForm = new ProductConditions();
1074
+ this.productConditionsFormKey = 'productConditionsForm';
1075
+ this.questionnaireByHealth = {};
1076
+ this.questionnaireByCritical = [];
1077
+ this.canBeClaimed = null;
1078
+ this.applicationTaskId = null;
1079
+ this.otpTokenId = null;
1080
+ }
1081
+ }