hl-core 0.0.10-beta.41-1 → 0.0.10-beta.41-3

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 (2) hide show
  1. package/composables/classes.ts +525 -526
  2. package/package.json +1 -1
@@ -412,327 +412,6 @@ export class Contragent extends Person {
412
412
  }
413
413
  }
414
414
 
415
- export class Member extends Person {
416
- response?: {
417
- contragent?: Types.ContragentType;
418
- questionnaires?: Types.ContragentQuestionaries[];
419
- contacts?: Types.ContragentContacts[];
420
- documents?: Types.ContragentDocuments[];
421
- addresses?: Types.ContragentAddress[];
422
- };
423
- verifyType: any;
424
- verifyDate: any;
425
- postIndex: string | null;
426
- isPdl: boolean;
427
- migrationCard: string | null;
428
- migrationCardIssueDate: string | null;
429
- migrationCardExpireDate: string | null;
430
- confirmDocType: string | null;
431
- confirmDocNumber: string | null;
432
- confirmDocIssueDate: string | null;
433
- confirmDocExpireDate: string | null;
434
- notaryLongName: string | null;
435
- notaryLicenseNumber: string | null;
436
- notaryLicenseDate: string | null;
437
- notaryLicenseIssuer: string | null;
438
- jurLongName: string | null;
439
- fullNameRod: string | null;
440
- confirmDocTypeKz: string | null;
441
- confirmDocTypeRod: string | null;
442
- isNotary: boolean;
443
- insurancePay: Value;
444
- job: string | null;
445
- jobPosition: string | null;
446
- jobPlace: string | null;
447
- positionCode: string | null;
448
- registrationCountry: Value;
449
- registrationProvince: Value;
450
- registrationRegion: Value;
451
- registrationRegionType: Value;
452
- registrationCity: Value;
453
- registrationQuarter?: string | null;
454
- registrationMicroDistrict?: string | null;
455
- registrationStreet?: string | null;
456
- registrationNumberHouse?: string | null;
457
- registrationNumberApartment?: string | null;
458
- birthRegion: Value;
459
- documentType: Value;
460
- documentNumber: string | null;
461
- documentIssuers: Types.Base.Document.IssuerOther;
462
- documentDate: string | null;
463
- documentExpire: string | null;
464
- signOfResidency: Value;
465
- signOfIPDL: Value;
466
- countryOfCitizenship: Value;
467
- countryOfTaxResidency: Value;
468
- addTaxResidency: Value;
469
- economySectorCode: Value;
470
- phoneNumber: string | null;
471
- homePhone: string | null;
472
- email: string | null;
473
- address: string | null;
474
- familyStatus: Value;
475
- isTerror: null;
476
- relationDegree: Value;
477
- isDisability: boolean;
478
- disabilityGroup: Value | null;
479
- percentageOfPayoutAmount: string | number | null;
480
- _cyrPattern: RegExp;
481
- _numPattern: RegExp;
482
- _phonePattern: RegExp;
483
- _emailPattern: RegExp;
484
- gotFromInsis: boolean | null;
485
- gosPersonData: Types.Api.GBD.Person | null;
486
- parsedDocument: any;
487
- hasAgreement: boolean | null;
488
- otpTokenId: string | null;
489
- otpCode: string;
490
- documentsList: Types.ContragentDocuments[];
491
- isInsuredUnderage?: boolean = false;
492
- bankInfo: BankInfoClass;
493
- transferContractCompany: Value;
494
- digitalDocument: IDocument | null;
495
- identityDocument: {
496
- documentType: Value;
497
- documentNumber: string | null;
498
- issuedOn: string | null;
499
- issuedBy: Value;
500
- validUntil: string | null;
501
- };
502
-
503
- constructor(
504
- id = 0,
505
- type = 1,
506
- iin = null,
507
- phoneNumber = null,
508
- longName = null,
509
- lastName = null,
510
- firstName = null,
511
- middleName = null,
512
- birthDate = null,
513
- gender = new Value(),
514
- genderName = null,
515
- birthPlace = new Value(),
516
- age = null,
517
- registrationDate = null,
518
- job = null,
519
- jobPosition = null,
520
- jobPlace = null,
521
- positionCode = null,
522
- registrationCountry = new Value(),
523
- registrationProvince = new Value(),
524
- registrationRegion = new Value(),
525
- registrationRegionType = new Value(),
526
- registrationCity = new Value(),
527
- registrationQuarter = null,
528
- registrationMicroDistrict = null,
529
- registrationStreet = null,
530
- registrationNumberHouse = null,
531
- registrationNumberApartment = null,
532
- birthRegion = new Value(),
533
- documentType = new Value(),
534
- documentNumber = null,
535
- documentIssuers = new Value(),
536
- documentDate = null,
537
- documentExpire = null,
538
- signOfResidency = new Value(),
539
- signOfIPDL = new Value(),
540
- isTerror = null,
541
- countryOfCitizenship = new Value(),
542
- countryOfTaxResidency = new Value(),
543
- addTaxResidency = new Value(),
544
- economySectorCode = new Value(),
545
- homePhone = null,
546
- email = null,
547
- address = null,
548
- familyStatus = new Value(),
549
- relationDegree = new Value(),
550
- isDisability = false,
551
- disabilityGroupId = new Value(),
552
- percentageOfPayoutAmount = null,
553
- migrationCard = null,
554
- migrationCardIssueDate = null,
555
- migrationCardExpireDate = null,
556
- confirmDocType = null,
557
- confirmDocNumber = null,
558
- confirmDocIssueDate = null,
559
- confirmDocExpireDate = null,
560
- notaryLongName = null,
561
- notaryLicenseNumber = null,
562
- notaryLicenseDate = null,
563
- notaryLicenseIssuer = null,
564
- jurLongName = null,
565
- fullNameRod = null,
566
- confirmDocTypeKz = null,
567
- confirmDocTypeRod = null,
568
- isNotary = false,
569
- ) {
570
- super(id, type, iin, longName, lastName, firstName, middleName, birthDate, gender, genderName, birthPlace, age);
571
- this.documentsList = [];
572
- this.postIndex = null;
573
- this.isPdl = false;
574
- this.migrationCard = migrationCard;
575
- this.migrationCardIssueDate = migrationCardIssueDate;
576
- this.migrationCardExpireDate = migrationCardExpireDate;
577
- this.confirmDocType = confirmDocType;
578
- this.confirmDocNumber = confirmDocNumber;
579
- this.confirmDocIssueDate = confirmDocIssueDate;
580
- this.confirmDocExpireDate = confirmDocExpireDate;
581
- this.notaryLongName = notaryLongName;
582
- this.notaryLicenseNumber = notaryLicenseNumber;
583
- this.notaryLicenseDate = notaryLicenseDate;
584
- this.notaryLicenseIssuer = notaryLicenseIssuer;
585
- this.jurLongName = jurLongName;
586
- this.fullNameRod = fullNameRod;
587
- this.confirmDocTypeKz = confirmDocTypeKz;
588
- this.confirmDocTypeRod = confirmDocTypeRod;
589
- this.isNotary = isNotary;
590
- this.insurancePay = new Value();
591
- this.job = job;
592
- this.jobPosition = jobPosition;
593
- this.jobPlace = jobPlace;
594
- this.positionCode = positionCode;
595
- this.registrationCountry = registrationCountry;
596
- this.registrationProvince = registrationProvince;
597
- this.registrationRegion = registrationRegion;
598
- this.registrationRegionType = registrationRegionType;
599
- this.registrationCity = registrationCity;
600
- this.registrationQuarter = registrationQuarter;
601
- this.registrationMicroDistrict = registrationMicroDistrict;
602
- this.registrationStreet = registrationStreet;
603
- this.registrationNumberHouse = registrationNumberHouse;
604
- this.registrationNumberApartment = registrationNumberApartment;
605
- this.birthRegion = birthRegion;
606
- this.documentType = documentType;
607
- this.documentNumber = documentNumber;
608
- this.documentIssuers = documentIssuers;
609
- this.documentDate = documentDate;
610
- this.documentExpire = documentExpire;
611
- this.signOfResidency = signOfResidency;
612
- this.signOfIPDL = signOfIPDL;
613
- this.countryOfCitizenship = countryOfCitizenship;
614
- this.countryOfTaxResidency = countryOfTaxResidency;
615
- this.addTaxResidency = addTaxResidency;
616
- this.economySectorCode = economySectorCode;
617
- this.phoneNumber = phoneNumber;
618
- this.homePhone = homePhone;
619
- this.email = email;
620
- this.otpTokenId = null;
621
- this.otpCode = '';
622
- this.address = address;
623
- this.familyStatus = familyStatus;
624
- this.isTerror = isTerror;
625
- this.relationDegree = relationDegree;
626
- this.isDisability = isDisability;
627
- this.disabilityGroup = disabilityGroupId;
628
- this.percentageOfPayoutAmount = percentageOfPayoutAmount;
629
- this._cyrPattern = /[\u0400-\u04FF -]+/;
630
- this._numPattern = /[0-9]+/;
631
- this._phonePattern = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/;
632
- this._emailPattern = /.+@.+\..+/;
633
- this.gotFromInsis = true;
634
- this.gosPersonData = null;
635
- this.parsedDocument = null;
636
- this.hasAgreement = null;
637
- this.bankInfo = new BankInfoClass();
638
- this.transferContractCompany = new Value();
639
- this.digitalDocument = null;
640
- this.identityDocument = {
641
- documentType: new Value(),
642
- documentNumber: null,
643
- issuedOn: null,
644
- issuedBy: new Value(),
645
- validUntil: null,
646
- };
647
- }
648
-
649
- resetMember(clearIinAndPhone: boolean = true) {
650
- super.resetPerson(clearIinAndPhone);
651
- this.job = null;
652
- this.jobPosition = null;
653
- this.jobPlace = null;
654
- this.positionCode = null;
655
- this.registrationCountry = new Value();
656
- this.registrationProvince = new Value();
657
- this.registrationRegion = new Value();
658
- this.registrationRegionType = new Value();
659
- this.registrationCity = new Value();
660
- this.registrationQuarter = null;
661
- this.registrationMicroDistrict = null;
662
- this.registrationStreet = null;
663
- this.registrationNumberHouse = null;
664
- this.registrationNumberApartment = null;
665
- this.birthRegion = new Value();
666
- this.documentType = new Value();
667
- this.documentNumber = null;
668
- this.documentIssuers = new Value();
669
- this.documentDate = null;
670
- this.documentExpire = null;
671
- this.signOfResidency = new Value();
672
- this.signOfIPDL = new Value();
673
- this.countryOfCitizenship = new Value();
674
- this.countryOfTaxResidency = new Value();
675
- this.economySectorCode = new Value();
676
- if (clearIinAndPhone === true) {
677
- this.phoneNumber = null;
678
- }
679
- this.homePhone = null;
680
- this.email = null;
681
- this.address = null;
682
- this.familyStatus = new Value();
683
- this.isTerror = null;
684
- this.relationDegree = new Value();
685
- this.isDisability = false;
686
- this.disabilityGroup = null;
687
- this.percentageOfPayoutAmount = null;
688
- this.gotFromInsis = true;
689
- this.gosPersonData = null;
690
- this.parsedDocument = null;
691
- this.hasAgreement = null;
692
- this.insurancePay = new Value();
693
- this.migrationCard = null;
694
- this.migrationCardIssueDate = null;
695
- this.migrationCardExpireDate = null;
696
- this.confirmDocType = null;
697
- this.confirmDocNumber = null;
698
- this.confirmDocIssueDate = null;
699
- this.confirmDocExpireDate = null;
700
- this.notaryLongName = null;
701
- this.notaryLicenseNumber = null;
702
- this.notaryLicenseDate = null;
703
- this.notaryLicenseIssuer = null;
704
- this.jurLongName = null;
705
- this.fullNameRod = null;
706
- this.confirmDocTypeKz = null;
707
- this.confirmDocTypeRod = null;
708
- this.isNotary = false;
709
- }
710
-
711
- getPattern(pattern: string) {
712
- const key = `_${pattern}Pattern` as keyof typeof this;
713
- return this[key];
714
- }
715
-
716
- validatedMessage(valid: any, msg = 'Обязательное поле') {
717
- return {
718
- error: valid,
719
- msg,
720
- };
721
- }
722
-
723
- validateFullName() {
724
- return this.lastName !== null && this.firstName !== null;
725
- }
726
-
727
- getFullNameShorted() {
728
- return this.validateFullName() ? `${this.lastName} ${this.firstName?.charAt(0)}. ${this.middleName != '' ? this.middleName?.charAt(0) + '.' : ''}` : null;
729
- }
730
-
731
- getFullName() {
732
- return this.validateFullName() ? (this.lastName + ' ' + this.firstName + ' ' + this.middleName != '' ? this.middleName?.charAt(0) : '') : null;
733
- }
734
- }
735
-
736
415
  export class CalculatorForm {
737
416
  country: Value;
738
417
  countries: CountryValue[] | null;
@@ -1602,236 +1281,556 @@ export class Address {
1602
1281
  }
1603
1282
  }
1604
1283
 
1605
- export class PolicyholderActivity {
1606
- activityTypeName: string | null;
1607
- empoloyeeCount: string | null;
1284
+ export class PolicyholderActivity {
1285
+ activityTypeName: string | null;
1286
+ empoloyeeCount: string | null;
1287
+
1288
+ constructor() {
1289
+ this.activityTypeName = null;
1290
+ this.empoloyeeCount = null;
1291
+ }
1292
+ }
1293
+
1294
+ export class BaseGroupClass {
1295
+ id: string | number;
1296
+ longName: string;
1297
+ iin: string;
1298
+ phoneNumber: string;
1299
+ age: string;
1300
+ name: string;
1301
+ nameKz: string;
1302
+ longNameKz: string;
1303
+ citizenship: Value;
1304
+ email: string;
1305
+ resident: Value;
1306
+ taxResidentCountry: Value;
1307
+ addTaxResidency: Value;
1308
+ economySectorCode: Value;
1309
+ hasAttachedFile: boolean;
1310
+ actualAddress: Address;
1311
+ isActualAddressEqualLegalAddres: boolean;
1312
+ legalAddress: Address;
1313
+ identityDocument: {
1314
+ documentType: Value;
1315
+ documentNumber: string;
1316
+ series: string;
1317
+ issuedBy: Value;
1318
+ issuedOn: string;
1319
+ validUntil: string;
1320
+ };
1321
+ bankInfo: BankInfoClass;
1322
+ kbe: string;
1323
+
1324
+ constructor() {
1325
+ this.id = 0;
1326
+ this.longName = '';
1327
+ this.iin = '';
1328
+ this.phoneNumber = '';
1329
+ this.age = '';
1330
+ this.name = '';
1331
+ this.nameKz = '';
1332
+ this.longNameKz = '';
1333
+ this.citizenship = new Value();
1334
+ this.email = '';
1335
+ this.resident = new Value();
1336
+ this.taxResidentCountry = new Value();
1337
+ this.addTaxResidency = new Value();
1338
+ this.economySectorCode = new Value();
1339
+ this.hasAttachedFile = false;
1340
+ this.actualAddress = new Address();
1341
+ this.isActualAddressEqualLegalAddres = true;
1342
+ this.legalAddress = new Address();
1343
+ this.identityDocument = {
1344
+ documentType: new Value(),
1345
+ documentNumber: '',
1346
+ series: '',
1347
+ issuedBy: new Value(),
1348
+ issuedOn: '',
1349
+ validUntil: '',
1350
+ };
1351
+ this.bankInfo = new BankInfoClass();
1352
+ this.kbe = '';
1353
+ }
1354
+ }
1355
+
1356
+ export class PhysGroupClass extends BaseGroupClass {
1357
+ lastName: string;
1358
+ firstName: string;
1359
+ middleName: string;
1360
+ birthDate: string;
1361
+ gender: Value;
1362
+ placeOfBirth: Value;
1363
+ workDetails: { workplace: string; positionRu: string; positionKz: string; jobDuties: string };
1364
+ hasContactPerson: boolean;
1365
+ authorityDetails: {
1366
+ basis: Value;
1367
+ documentNumber: string | null;
1368
+ date: string | null;
1369
+ };
1370
+
1371
+ constructor() {
1372
+ super();
1373
+ this.lastName = '';
1374
+ this.firstName = '';
1375
+ this.middleName = '';
1376
+ this.birthDate = '';
1377
+ this.gender = new Value();
1378
+ this.placeOfBirth = new Value();
1379
+ this.workDetails = { workplace: '', positionRu: '', positionKz: '', jobDuties: '' };
1380
+ this.hasContactPerson = false;
1381
+ this.authorityDetails = {
1382
+ basis: new Value(),
1383
+ documentNumber: null,
1384
+ date: null,
1385
+ };
1386
+ }
1387
+ }
1388
+
1389
+ export class GroupMember extends PhysGroupClass {
1390
+ isLeader: boolean;
1391
+
1392
+ typeOfEconomicActivity: Value;
1393
+ activityTypes: { activityTypeName: string; empoloyeeCount: number }[];
1394
+ beneficalOwnerQuest: { order: number; text: string; answer: boolean | null }[];
1395
+ authoritedPerson: PhysGroupClass;
1396
+ insuredPolicyData: Types.InsuredPolicyType;
1397
+
1398
+ constructor() {
1399
+ super();
1400
+ // Client
1401
+ this.isLeader = false;
1402
+ this.typeOfEconomicActivity = new Value();
1403
+ this.activityTypes = [];
1404
+ this.beneficalOwnerQuest = [
1405
+ {
1406
+ order: 0,
1407
+ text: 'Отметка о наличии/отсутствии физического лица (лиц), которому прямо или косвенно принадлежат более 25 % долей участия в уставном капитале либо размещенных (за вычетом привилегированных и выкупленных обществом) акций юридического лица',
1408
+ answer: null,
1409
+ },
1410
+ {
1411
+ order: 1,
1412
+ text: 'Отметка о наличии/отсутствии физического лица (лиц), осуществляющего контроль над юридическим лицом по иным основаниям',
1413
+ answer: null,
1414
+ },
1415
+ {
1416
+ order: 2,
1417
+ text: 'Отметка о наличии/отсутствии физического лица (лиц) в интересах которого юридическим лицом устанавливаются деловые отношения (совершаются операции)',
1418
+ answer: null,
1419
+ },
1420
+ ];
1421
+ this.authoritedPerson = new PhysGroupClass();
1422
+ // Insured
1423
+ this.insuredPolicyData = {
1424
+ insSum: 0,
1425
+ insSumWithLoad: 0,
1426
+ premium: 0,
1427
+ premiumWithLoad: 0,
1428
+ insuredRisk: {
1429
+ lifeMultiply: 0,
1430
+ lifeAdditive: 0,
1431
+ disabilityMultiply: 0,
1432
+ disabilityAdditive: 0,
1433
+ traumaTableMultiple: 0,
1434
+ accidentalLifeMultiply: 0,
1435
+ accidentalLifeAdditive: 0,
1436
+ criticalMultiply: 0,
1437
+ criticalAdditive: 0,
1438
+ },
1439
+ insuredCoverData: [],
1440
+ };
1441
+ }
1442
+ }
1443
+
1444
+ export class BankInfoClass {
1445
+ bankName: Value;
1446
+ bin: string;
1447
+ iik: string;
1448
+ bik: string;
1449
+ kbe: string;
1450
+
1451
+ constructor() {
1452
+ this.bankName = new Value();
1453
+ this.bin = '';
1454
+ this.iik = '';
1455
+ this.bik = '';
1456
+ this.kbe = '';
1457
+ }
1458
+ }
1459
+
1460
+ export class PolicyholderClass {
1461
+ isIpdl: boolean;
1462
+ clientData: GroupMember;
1463
+
1464
+ constructor() {
1465
+ this.isIpdl = false;
1466
+ this.clientData = new GroupMember();
1467
+ }
1468
+ }
1469
+
1470
+ export class BeneficialOwner {
1471
+ id: string;
1472
+ isIpdl: boolean;
1473
+ beneficialOwnerData: GroupMember;
1474
+
1475
+ constructor() {
1476
+ this.isIpdl = false;
1477
+ this.beneficialOwnerData = new GroupMember();
1478
+ this.id = '';
1479
+ }
1480
+ }
1481
+
1482
+ export class TransferContract {
1483
+ id: string | null;
1484
+ transferContractIsOppv: boolean;
1485
+ transferContractFirstPaymentDate: string;
1486
+ transferContractAmount: number | string;
1487
+ transferContractDate: string;
1488
+ transferContractNumber: string;
1489
+ transferContractRegNumber: string;
1490
+ transferContract: boolean;
1491
+ transferContractCompany: Value;
1492
+ transferContractMonthCount: number | null;
1493
+
1494
+ constructor() {
1495
+ this.id = null;
1496
+ this.transferContractIsOppv = false;
1497
+ this.transferContractFirstPaymentDate = '';
1498
+ this.transferContractAmount = 0;
1499
+ this.transferContractDate = '';
1500
+ this.transferContractNumber = '';
1501
+ this.transferContract = false;
1502
+ this.transferContractRegNumber = '';
1503
+ this.transferContractCompany = new Value();
1504
+ this.transferContractMonthCount = null;
1505
+ }
1506
+ }
1507
+
1508
+ export class RequiredDocument extends Value {
1509
+ iin: string = '';
1510
+ }
1608
1511
 
1609
- constructor() {
1610
- this.activityTypeName = null;
1611
- this.empoloyeeCount = null;
1512
+ export class MenuItem extends MenuItemConfig {
1513
+ constructor({ id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show, chip }: MenuItemConfig = new MenuItemConfig()) {
1514
+ super(id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show, chip);
1612
1515
  }
1613
1516
  }
1614
-
1615
- export class BaseGroupClass {
1616
- id: string | number;
1617
- longName: string;
1618
- iin: string;
1619
- phoneNumber: string;
1620
- age: string;
1621
- name: string;
1622
- nameKz: string;
1623
- longNameKz: string;
1624
- citizenship: Value;
1625
- email: string;
1626
- resident: Value;
1627
- taxResidentCountry: Value;
1517
+ export class Member extends Person {
1518
+ response?: {
1519
+ contragent?: Types.ContragentType;
1520
+ questionnaires?: Types.ContragentQuestionaries[];
1521
+ contacts?: Types.ContragentContacts[];
1522
+ documents?: Types.ContragentDocuments[];
1523
+ addresses?: Types.ContragentAddress[];
1524
+ };
1525
+ verifyType: any;
1526
+ verifyDate: any;
1527
+ postIndex: string | null;
1528
+ isPdl: boolean;
1529
+ migrationCard: string | null;
1530
+ migrationCardIssueDate: string | null;
1531
+ migrationCardExpireDate: string | null;
1532
+ confirmDocType: string | null;
1533
+ confirmDocNumber: string | null;
1534
+ confirmDocIssueDate: string | null;
1535
+ confirmDocExpireDate: string | null;
1536
+ notaryLongName: string | null;
1537
+ notaryLicenseNumber: string | null;
1538
+ notaryLicenseDate: string | null;
1539
+ notaryLicenseIssuer: string | null;
1540
+ jurLongName: string | null;
1541
+ fullNameRod: string | null;
1542
+ confirmDocTypeKz: string | null;
1543
+ confirmDocTypeRod: string | null;
1544
+ isNotary: boolean;
1545
+ insurancePay: Value;
1546
+ job: string | null;
1547
+ jobPosition: string | null;
1548
+ jobPlace: string | null;
1549
+ positionCode: string | null;
1550
+ registrationCountry: Value;
1551
+ registrationProvince: Value;
1552
+ registrationRegion: Value;
1553
+ registrationRegionType: Value;
1554
+ registrationCity: Value;
1555
+ registrationQuarter?: string | null;
1556
+ registrationMicroDistrict?: string | null;
1557
+ registrationStreet?: string | null;
1558
+ registrationNumberHouse?: string | null;
1559
+ registrationNumberApartment?: string | null;
1560
+ birthRegion: Value;
1561
+ documentType: Value;
1562
+ documentNumber: string | null;
1563
+ documentIssuers: Types.Base.Document.IssuerOther;
1564
+ documentDate: string | null;
1565
+ documentExpire: string | null;
1566
+ signOfResidency: Value;
1567
+ signOfIPDL: Value;
1568
+ countryOfCitizenship: Value;
1569
+ countryOfTaxResidency: Value;
1628
1570
  addTaxResidency: Value;
1629
1571
  economySectorCode: Value;
1630
- hasAttachedFile: boolean;
1631
- actualAddress: Address;
1632
- isActualAddressEqualLegalAddres: boolean;
1633
- legalAddress: Address;
1572
+ phoneNumber: string | null;
1573
+ homePhone: string | null;
1574
+ email: string | null;
1575
+ address: string | null;
1576
+ familyStatus: Value;
1577
+ isTerror: null;
1578
+ relationDegree: Value;
1579
+ isDisability: boolean;
1580
+ disabilityGroup: Value | null;
1581
+ percentageOfPayoutAmount: string | number | null;
1582
+ _cyrPattern: RegExp;
1583
+ _numPattern: RegExp;
1584
+ _phonePattern: RegExp;
1585
+ _emailPattern: RegExp;
1586
+ gotFromInsis: boolean | null;
1587
+ gosPersonData: Types.Api.GBD.Person | null;
1588
+ parsedDocument: any;
1589
+ hasAgreement: boolean | null;
1590
+ otpTokenId: string | null;
1591
+ otpCode: string;
1592
+ documentsList: Types.ContragentDocuments[];
1593
+ isInsuredUnderage?: boolean = false;
1594
+ bankInfo: BankInfoClass;
1595
+ transferContractCompany: Value;
1596
+ digitalDocument: IDocument | null;
1634
1597
  identityDocument: {
1635
1598
  documentType: Value;
1636
- documentNumber: string;
1637
- series: string;
1599
+ documentNumber: string | null;
1600
+ issuedOn: string | null;
1638
1601
  issuedBy: Value;
1639
- issuedOn: string;
1640
- validUntil: string;
1602
+ validUntil: string | null;
1641
1603
  };
1642
- bankInfo: BankInfoClass;
1643
- kbe: string;
1644
1604
 
1645
- constructor() {
1646
- this.id = 0;
1647
- this.longName = '';
1648
- this.iin = '';
1649
- this.phoneNumber = '';
1650
- this.age = '';
1651
- this.name = '';
1652
- this.nameKz = '';
1653
- this.longNameKz = '';
1654
- this.citizenship = new Value();
1655
- this.email = '';
1656
- this.resident = new Value();
1657
- this.taxResidentCountry = new Value();
1658
- this.addTaxResidency = new Value();
1659
- this.economySectorCode = new Value();
1660
- this.hasAttachedFile = false;
1661
- this.actualAddress = new Address();
1662
- this.isActualAddressEqualLegalAddres = true;
1663
- this.legalAddress = new Address();
1605
+ constructor(
1606
+ id = 0,
1607
+ type = 1,
1608
+ iin = null,
1609
+ phoneNumber = null,
1610
+ longName = null,
1611
+ lastName = null,
1612
+ firstName = null,
1613
+ middleName = null,
1614
+ birthDate = null,
1615
+ gender = new Value(),
1616
+ genderName = null,
1617
+ birthPlace = new Value(),
1618
+ age = null,
1619
+ registrationDate = null,
1620
+ job = null,
1621
+ jobPosition = null,
1622
+ jobPlace = null,
1623
+ positionCode = null,
1624
+ registrationCountry = new Value(),
1625
+ registrationProvince = new Value(),
1626
+ registrationRegion = new Value(),
1627
+ registrationRegionType = new Value(),
1628
+ registrationCity = new Value(),
1629
+ registrationQuarter = null,
1630
+ registrationMicroDistrict = null,
1631
+ registrationStreet = null,
1632
+ registrationNumberHouse = null,
1633
+ registrationNumberApartment = null,
1634
+ birthRegion = new Value(),
1635
+ documentType = new Value(),
1636
+ documentNumber = null,
1637
+ documentIssuers = new Value(),
1638
+ documentDate = null,
1639
+ documentExpire = null,
1640
+ signOfResidency = new Value(),
1641
+ signOfIPDL = new Value(),
1642
+ isTerror = null,
1643
+ countryOfCitizenship = new Value(),
1644
+ countryOfTaxResidency = new Value(),
1645
+ addTaxResidency = new Value(),
1646
+ economySectorCode = new Value(),
1647
+ homePhone = null,
1648
+ email = null,
1649
+ address = null,
1650
+ familyStatus = new Value(),
1651
+ relationDegree = new Value(),
1652
+ isDisability = false,
1653
+ disabilityGroupId = new Value(),
1654
+ percentageOfPayoutAmount = null,
1655
+ migrationCard = null,
1656
+ migrationCardIssueDate = null,
1657
+ migrationCardExpireDate = null,
1658
+ confirmDocType = null,
1659
+ confirmDocNumber = null,
1660
+ confirmDocIssueDate = null,
1661
+ confirmDocExpireDate = null,
1662
+ notaryLongName = null,
1663
+ notaryLicenseNumber = null,
1664
+ notaryLicenseDate = null,
1665
+ notaryLicenseIssuer = null,
1666
+ jurLongName = null,
1667
+ fullNameRod = null,
1668
+ confirmDocTypeKz = null,
1669
+ confirmDocTypeRod = null,
1670
+ isNotary = false,
1671
+ ) {
1672
+ super(id, type, iin, longName, lastName, firstName, middleName, birthDate, gender, genderName, birthPlace, age);
1673
+ this.documentsList = [];
1674
+ this.postIndex = null;
1675
+ this.isPdl = false;
1676
+ this.migrationCard = migrationCard;
1677
+ this.migrationCardIssueDate = migrationCardIssueDate;
1678
+ this.migrationCardExpireDate = migrationCardExpireDate;
1679
+ this.confirmDocType = confirmDocType;
1680
+ this.confirmDocNumber = confirmDocNumber;
1681
+ this.confirmDocIssueDate = confirmDocIssueDate;
1682
+ this.confirmDocExpireDate = confirmDocExpireDate;
1683
+ this.notaryLongName = notaryLongName;
1684
+ this.notaryLicenseNumber = notaryLicenseNumber;
1685
+ this.notaryLicenseDate = notaryLicenseDate;
1686
+ this.notaryLicenseIssuer = notaryLicenseIssuer;
1687
+ this.jurLongName = jurLongName;
1688
+ this.fullNameRod = fullNameRod;
1689
+ this.confirmDocTypeKz = confirmDocTypeKz;
1690
+ this.confirmDocTypeRod = confirmDocTypeRod;
1691
+ this.isNotary = isNotary;
1692
+ this.insurancePay = new Value();
1693
+ this.job = job;
1694
+ this.jobPosition = jobPosition;
1695
+ this.jobPlace = jobPlace;
1696
+ this.positionCode = positionCode;
1697
+ this.registrationCountry = registrationCountry;
1698
+ this.registrationProvince = registrationProvince;
1699
+ this.registrationRegion = registrationRegion;
1700
+ this.registrationRegionType = registrationRegionType;
1701
+ this.registrationCity = registrationCity;
1702
+ this.registrationQuarter = registrationQuarter;
1703
+ this.registrationMicroDistrict = registrationMicroDistrict;
1704
+ this.registrationStreet = registrationStreet;
1705
+ this.registrationNumberHouse = registrationNumberHouse;
1706
+ this.registrationNumberApartment = registrationNumberApartment;
1707
+ this.birthRegion = birthRegion;
1708
+ this.documentType = documentType;
1709
+ this.documentNumber = documentNumber;
1710
+ this.documentIssuers = documentIssuers;
1711
+ this.documentDate = documentDate;
1712
+ this.documentExpire = documentExpire;
1713
+ this.signOfResidency = signOfResidency;
1714
+ this.signOfIPDL = signOfIPDL;
1715
+ this.countryOfCitizenship = countryOfCitizenship;
1716
+ this.countryOfTaxResidency = countryOfTaxResidency;
1717
+ this.addTaxResidency = addTaxResidency;
1718
+ this.economySectorCode = economySectorCode;
1719
+ this.phoneNumber = phoneNumber;
1720
+ this.homePhone = homePhone;
1721
+ this.email = email;
1722
+ this.otpTokenId = null;
1723
+ this.otpCode = '';
1724
+ this.address = address;
1725
+ this.familyStatus = familyStatus;
1726
+ this.isTerror = isTerror;
1727
+ this.relationDegree = relationDegree;
1728
+ this.isDisability = isDisability;
1729
+ this.disabilityGroup = disabilityGroupId;
1730
+ this.percentageOfPayoutAmount = percentageOfPayoutAmount;
1731
+ this._cyrPattern = /[\u0400-\u04FF -]+/;
1732
+ this._numPattern = /[0-9]+/;
1733
+ this._phonePattern = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/;
1734
+ this._emailPattern = /.+@.+\..+/;
1735
+ this.gotFromInsis = true;
1736
+ this.gosPersonData = null;
1737
+ this.parsedDocument = null;
1738
+ this.hasAgreement = null;
1739
+ this.bankInfo = new BankInfoClass();
1740
+ this.transferContractCompany = new Value();
1741
+ this.digitalDocument = null;
1664
1742
  this.identityDocument = {
1665
1743
  documentType: new Value(),
1666
- documentNumber: '',
1667
- series: '',
1668
- issuedBy: new Value(),
1669
- issuedOn: '',
1670
- validUntil: '',
1671
- };
1672
- this.bankInfo = new BankInfoClass();
1673
- this.kbe = '';
1674
- }
1675
- }
1676
-
1677
- export class PhysGroupClass extends BaseGroupClass {
1678
- lastName: string;
1679
- firstName: string;
1680
- middleName: string;
1681
- birthDate: string;
1682
- gender: Value;
1683
- placeOfBirth: Value;
1684
- workDetails: { workplace: string; positionRu: string; positionKz: string; jobDuties: string };
1685
- hasContactPerson: boolean;
1686
- authorityDetails: {
1687
- basis: Value;
1688
- documentNumber: string | null;
1689
- date: string | null;
1690
- };
1691
-
1692
- constructor() {
1693
- super();
1694
- this.lastName = '';
1695
- this.firstName = '';
1696
- this.middleName = '';
1697
- this.birthDate = '';
1698
- this.gender = new Value();
1699
- this.placeOfBirth = new Value();
1700
- this.workDetails = { workplace: '', positionRu: '', positionKz: '', jobDuties: '' };
1701
- this.hasContactPerson = false;
1702
- this.authorityDetails = {
1703
- basis: new Value(),
1704
1744
  documentNumber: null,
1705
- date: null,
1745
+ issuedOn: null,
1746
+ issuedBy: new Value(),
1747
+ validUntil: null,
1706
1748
  };
1707
1749
  }
1708
- }
1709
-
1710
- export class GroupMember extends PhysGroupClass {
1711
- isLeader: boolean;
1712
-
1713
- typeOfEconomicActivity: Value;
1714
- activityTypes: { activityTypeName: string; empoloyeeCount: number }[];
1715
- beneficalOwnerQuest: { order: number; text: string; answer: boolean | null }[];
1716
- authoritedPerson: PhysGroupClass;
1717
- insuredPolicyData: Types.InsuredPolicyType;
1718
1750
 
1719
- constructor() {
1720
- super();
1721
- // Client
1722
- this.isLeader = false;
1723
- this.typeOfEconomicActivity = new Value();
1724
- this.activityTypes = [];
1725
- this.beneficalOwnerQuest = [
1726
- {
1727
- order: 0,
1728
- text: 'Отметка о наличии/отсутствии физического лица (лиц), которому прямо или косвенно принадлежат более 25 % долей участия в уставном капитале либо размещенных (за вычетом привилегированных и выкупленных обществом) акций юридического лица',
1729
- answer: null,
1730
- },
1731
- {
1732
- order: 1,
1733
- text: 'Отметка о наличии/отсутствии физического лица (лиц), осуществляющего контроль над юридическим лицом по иным основаниям',
1734
- answer: null,
1735
- },
1736
- {
1737
- order: 2,
1738
- text: 'Отметка о наличии/отсутствии физического лица (лиц) в интересах которого юридическим лицом устанавливаются деловые отношения (совершаются операции)',
1739
- answer: null,
1740
- },
1741
- ];
1742
- this.authoritedPerson = new PhysGroupClass();
1743
- // Insured
1744
- this.insuredPolicyData = {
1745
- insSum: 0,
1746
- insSumWithLoad: 0,
1747
- premium: 0,
1748
- premiumWithLoad: 0,
1749
- insuredRisk: {
1750
- lifeMultiply: 0,
1751
- lifeAdditive: 0,
1752
- disabilityMultiply: 0,
1753
- disabilityAdditive: 0,
1754
- traumaTableMultiple: 0,
1755
- accidentalLifeMultiply: 0,
1756
- accidentalLifeAdditive: 0,
1757
- criticalMultiply: 0,
1758
- criticalAdditive: 0,
1759
- },
1760
- insuredCoverData: [],
1761
- };
1751
+ resetMember(clearIinAndPhone: boolean = true) {
1752
+ super.resetPerson(clearIinAndPhone);
1753
+ this.job = null;
1754
+ this.jobPosition = null;
1755
+ this.jobPlace = null;
1756
+ this.positionCode = null;
1757
+ this.registrationCountry = new Value();
1758
+ this.registrationProvince = new Value();
1759
+ this.registrationRegion = new Value();
1760
+ this.registrationRegionType = new Value();
1761
+ this.registrationCity = new Value();
1762
+ this.registrationQuarter = null;
1763
+ this.registrationMicroDistrict = null;
1764
+ this.registrationStreet = null;
1765
+ this.registrationNumberHouse = null;
1766
+ this.registrationNumberApartment = null;
1767
+ this.birthRegion = new Value();
1768
+ this.documentType = new Value();
1769
+ this.documentNumber = null;
1770
+ this.documentIssuers = new Value();
1771
+ this.documentDate = null;
1772
+ this.documentExpire = null;
1773
+ this.signOfResidency = new Value();
1774
+ this.signOfIPDL = new Value();
1775
+ this.countryOfCitizenship = new Value();
1776
+ this.countryOfTaxResidency = new Value();
1777
+ this.economySectorCode = new Value();
1778
+ if (clearIinAndPhone === true) {
1779
+ this.phoneNumber = null;
1780
+ }
1781
+ this.homePhone = null;
1782
+ this.email = null;
1783
+ this.address = null;
1784
+ this.familyStatus = new Value();
1785
+ this.isTerror = null;
1786
+ this.relationDegree = new Value();
1787
+ this.isDisability = false;
1788
+ this.disabilityGroup = null;
1789
+ this.percentageOfPayoutAmount = null;
1790
+ this.gotFromInsis = true;
1791
+ this.gosPersonData = null;
1792
+ this.parsedDocument = null;
1793
+ this.hasAgreement = null;
1794
+ this.insurancePay = new Value();
1795
+ this.migrationCard = null;
1796
+ this.migrationCardIssueDate = null;
1797
+ this.migrationCardExpireDate = null;
1798
+ this.confirmDocType = null;
1799
+ this.confirmDocNumber = null;
1800
+ this.confirmDocIssueDate = null;
1801
+ this.confirmDocExpireDate = null;
1802
+ this.notaryLongName = null;
1803
+ this.notaryLicenseNumber = null;
1804
+ this.notaryLicenseDate = null;
1805
+ this.notaryLicenseIssuer = null;
1806
+ this.jurLongName = null;
1807
+ this.fullNameRod = null;
1808
+ this.confirmDocTypeKz = null;
1809
+ this.confirmDocTypeRod = null;
1810
+ this.isNotary = false;
1762
1811
  }
1763
- }
1764
-
1765
- export class BankInfoClass {
1766
- bankName: Value;
1767
- bin: string;
1768
- iik: string;
1769
- bik: string;
1770
- kbe: string;
1771
1812
 
1772
- constructor() {
1773
- this.bankName = new Value();
1774
- this.bin = '';
1775
- this.iik = '';
1776
- this.bik = '';
1777
- this.kbe = '';
1813
+ getPattern(pattern: string) {
1814
+ const key = `_${pattern}Pattern` as keyof typeof this;
1815
+ return this[key];
1778
1816
  }
1779
- }
1780
-
1781
- export class PolicyholderClass {
1782
- isIpdl: boolean;
1783
- clientData: GroupMember;
1784
1817
 
1785
- constructor() {
1786
- this.isIpdl = false;
1787
- this.clientData = new GroupMember();
1818
+ validatedMessage(valid: any, msg = 'Обязательное поле') {
1819
+ return {
1820
+ error: valid,
1821
+ msg,
1822
+ };
1788
1823
  }
1789
- }
1790
-
1791
- export class BeneficialOwner {
1792
- id: string;
1793
- isIpdl: boolean;
1794
- beneficialOwnerData: GroupMember;
1795
1824
 
1796
- constructor() {
1797
- this.isIpdl = false;
1798
- this.beneficialOwnerData = new GroupMember();
1799
- this.id = '';
1825
+ validateFullName() {
1826
+ return this.lastName !== null && this.firstName !== null;
1800
1827
  }
1801
- }
1802
-
1803
- export class TransferContract {
1804
- id: string | null;
1805
- transferContractIsOppv: boolean;
1806
- transferContractFirstPaymentDate: string;
1807
- transferContractAmount: number | string;
1808
- transferContractDate: string;
1809
- transferContractNumber: string;
1810
- transferContractRegNumber: string;
1811
- transferContract: boolean;
1812
- transferContractCompany: Value;
1813
- transferContractMonthCount: number | null;
1814
1828
 
1815
- constructor() {
1816
- this.id = null;
1817
- this.transferContractIsOppv = false;
1818
- this.transferContractFirstPaymentDate = '';
1819
- this.transferContractAmount = 0;
1820
- this.transferContractDate = '';
1821
- this.transferContractNumber = '';
1822
- this.transferContract = false;
1823
- this.transferContractRegNumber = '';
1824
- this.transferContractCompany = new Value();
1825
- this.transferContractMonthCount = null;
1829
+ getFullNameShorted() {
1830
+ return this.validateFullName() ? `${this.lastName} ${this.firstName?.charAt(0)}. ${this.middleName != '' ? this.middleName?.charAt(0) + '.' : ''}` : null;
1826
1831
  }
1827
- }
1828
-
1829
- export class RequiredDocument extends Value {
1830
- iin: string = '';
1831
- }
1832
1832
 
1833
- export class MenuItem extends MenuItemConfig {
1834
- constructor({ id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show, chip }: MenuItemConfig = new MenuItemConfig()) {
1835
- super(id, title, link, hasLine, description, url, initial, icon, action, disabled, color, show, chip);
1833
+ getFullName() {
1834
+ return this.validateFullName() ? (this.lastName + ' ' + this.firstName + ' ' + this.middleName != '' ? this.middleName?.charAt(0) : '') : null;
1836
1835
  }
1837
1836
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hl-core",
3
- "version": "0.0.10-beta.41-1",
3
+ "version": "0.0.10-beta.41-3",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "nuxt.config.ts",