hl-core 0.0.9-beta.5 → 0.0.9-beta.51
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.
- package/api/base.api.ts +1042 -0
- package/api/index.ts +2 -620
- package/api/interceptors.ts +53 -14
- package/components/Button/Btn.vue +2 -2
- package/components/Complex/MessageBlock.vue +2 -2
- package/components/Complex/Page.vue +1 -1
- package/components/Dialog/Dialog.vue +60 -15
- package/components/Form/DynamicForm.vue +100 -0
- package/components/Form/FormBlock.vue +12 -3
- package/components/Form/FormData.vue +110 -0
- package/components/Form/FormSection.vue +3 -3
- package/components/Form/FormToggle.vue +25 -5
- package/components/Form/ManagerAttachment.vue +150 -86
- package/components/Form/ProductConditionsBlock.vue +59 -6
- package/components/Input/Datepicker.vue +43 -7
- package/components/Input/DynamicInput.vue +23 -0
- package/components/Input/FileInput.vue +25 -5
- package/components/Input/FormInput.vue +7 -4
- package/components/Input/Monthpicker.vue +34 -0
- package/components/Input/PanelInput.vue +5 -1
- package/components/Input/RoundedEmptyField.vue +5 -0
- package/components/Input/RoundedSelect.vue +18 -0
- package/components/Input/SwitchInput.vue +64 -0
- package/components/Input/TextInput.vue +160 -0
- package/components/Layout/Drawer.vue +17 -4
- package/components/Layout/Header.vue +23 -2
- package/components/Layout/Loader.vue +1 -1
- package/components/Layout/SettingsPanel.vue +13 -7
- package/components/Menu/InfoMenu.vue +35 -0
- package/components/Menu/MenuNav.vue +17 -2
- package/components/Pages/Anketa.vue +140 -52
- package/components/Pages/Auth.vue +50 -9
- package/components/Pages/ContragentForm.vue +124 -50
- package/components/Pages/Documents.vue +179 -29
- package/components/Pages/InvoiceInfo.vue +1 -1
- package/components/Pages/MemberForm.vue +605 -116
- package/components/Pages/ProductAgreement.vue +1 -8
- package/components/Pages/ProductConditions.vue +1055 -183
- package/components/Panel/PanelHandler.vue +583 -46
- package/components/Panel/PanelSelectItem.vue +17 -2
- package/components/Panel/RightPanelCloser.vue +7 -0
- package/components/Transitions/Animation.vue +28 -0
- package/components/Utilities/Qr.vue +44 -0
- package/composables/axios.ts +1 -0
- package/composables/classes.ts +456 -8
- package/composables/constants.ts +114 -2
- package/composables/fields.ts +328 -0
- package/composables/index.ts +270 -19
- package/composables/styles.ts +29 -16
- package/layouts/default.vue +48 -3
- package/locales/ru.json +547 -14
- package/package.json +28 -24
- package/pages/Token.vue +1 -12
- package/plugins/vuetifyPlugin.ts +2 -0
- package/store/data.store.ts +1463 -275
- package/store/extractStore.ts +17 -0
- package/store/form.store.ts +13 -1
- package/store/member.store.ts +1 -1
- package/store/rules.ts +83 -5
- package/types/enum.ts +61 -0
- package/types/env.d.ts +1 -0
- package/types/form.ts +94 -0
- package/types/index.ts +259 -23
package/composables/classes.ts
CHANGED
|
@@ -71,6 +71,13 @@ export class Value {
|
|
|
71
71
|
this.ids = ids;
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
+
export class CountryValue extends Value {
|
|
75
|
+
countryTypeCode: string | number | null;
|
|
76
|
+
constructor(countryTypeCode = null, ...args: any) {
|
|
77
|
+
super(...args);
|
|
78
|
+
this.countryTypeCode = countryTypeCode;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
74
81
|
|
|
75
82
|
export class IDocument {
|
|
76
83
|
id?: string;
|
|
@@ -194,6 +201,8 @@ class Person {
|
|
|
194
201
|
longName: string | null;
|
|
195
202
|
lastName: string | null;
|
|
196
203
|
firstName: string | null;
|
|
204
|
+
firstNameLat?: string | null;
|
|
205
|
+
lastNameLat?: string | null;
|
|
197
206
|
middleName: string | null;
|
|
198
207
|
birthDate: string | null;
|
|
199
208
|
gender: Value;
|
|
@@ -438,10 +447,20 @@ export class Member extends Person {
|
|
|
438
447
|
_emailPattern: RegExp;
|
|
439
448
|
gotFromInsis: boolean | null;
|
|
440
449
|
gosPersonData: any;
|
|
450
|
+
parsedDocument: any;
|
|
441
451
|
hasAgreement: boolean | null;
|
|
442
452
|
otpTokenId: string | null;
|
|
443
453
|
otpCode: string | null;
|
|
444
454
|
documentsList: ContragentDocuments[];
|
|
455
|
+
isInsuredUnderage?: boolean = false;
|
|
456
|
+
bankInfo: BankInfoClass;
|
|
457
|
+
identityDocument: {
|
|
458
|
+
documentType: Value;
|
|
459
|
+
documentNumber: string | null;
|
|
460
|
+
issuedOn: string | null;
|
|
461
|
+
issuedBy: Value;
|
|
462
|
+
validUntil: string | null;
|
|
463
|
+
};
|
|
445
464
|
constructor(
|
|
446
465
|
id = 0,
|
|
447
466
|
type = 1,
|
|
@@ -566,13 +585,22 @@ export class Member extends Person {
|
|
|
566
585
|
this.isDisability = isDisability;
|
|
567
586
|
this.disabilityGroup = disabilityGroupId;
|
|
568
587
|
this.percentageOfPayoutAmount = percentageOfPayoutAmount;
|
|
569
|
-
this._cyrPattern = /[\u0400-\u04FF]+/;
|
|
588
|
+
this._cyrPattern = /[\u0400-\u04FF -]+/;
|
|
570
589
|
this._numPattern = /[0-9]+/;
|
|
571
590
|
this._phonePattern = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/;
|
|
572
591
|
this._emailPattern = /.+@.+\..+/;
|
|
573
592
|
this.gotFromInsis = true;
|
|
574
593
|
this.gosPersonData = null;
|
|
594
|
+
this.parsedDocument = null;
|
|
575
595
|
this.hasAgreement = null;
|
|
596
|
+
this.bankInfo = new BankInfoClass();
|
|
597
|
+
this.identityDocument = {
|
|
598
|
+
documentType: new Value(),
|
|
599
|
+
documentNumber: null,
|
|
600
|
+
issuedOn: null,
|
|
601
|
+
issuedBy: new Value(),
|
|
602
|
+
validUntil: null,
|
|
603
|
+
};
|
|
576
604
|
}
|
|
577
605
|
|
|
578
606
|
resetMember(clearIinAndPhone: boolean = true) {
|
|
@@ -615,6 +643,7 @@ export class Member extends Person {
|
|
|
615
643
|
this.percentageOfPayoutAmount = null;
|
|
616
644
|
this.gotFromInsis = true;
|
|
617
645
|
this.gosPersonData = null;
|
|
646
|
+
this.parsedDocument = null;
|
|
618
647
|
this.hasAgreement = null;
|
|
619
648
|
this.insurancePay = new Value();
|
|
620
649
|
this.migrationCard = null;
|
|
@@ -660,6 +689,43 @@ export class Member extends Person {
|
|
|
660
689
|
}
|
|
661
690
|
}
|
|
662
691
|
|
|
692
|
+
export class CalculatorForm {
|
|
693
|
+
country: Value;
|
|
694
|
+
countries: CountryValue[] | null;
|
|
695
|
+
purpose: Value;
|
|
696
|
+
workType: Value;
|
|
697
|
+
sportsType: Value;
|
|
698
|
+
type: Value;
|
|
699
|
+
days: string | number | null;
|
|
700
|
+
maxDays: Value;
|
|
701
|
+
age: string | null;
|
|
702
|
+
price: string | null;
|
|
703
|
+
professionType: Value;
|
|
704
|
+
amount: Value;
|
|
705
|
+
startDate: string | null;
|
|
706
|
+
endDate: string | null;
|
|
707
|
+
period: Value;
|
|
708
|
+
currency: string | null;
|
|
709
|
+
constructor() {
|
|
710
|
+
this.country = new Value();
|
|
711
|
+
this.countries = [];
|
|
712
|
+
this.purpose = new Value();
|
|
713
|
+
this.workType = new Value();
|
|
714
|
+
this.sportsType = new Value();
|
|
715
|
+
this.type = new Value();
|
|
716
|
+
this.days = null;
|
|
717
|
+
this.maxDays = new Value();
|
|
718
|
+
this.age = null;
|
|
719
|
+
this.price = null;
|
|
720
|
+
this.professionType = new Value();
|
|
721
|
+
this.amount = new Value();
|
|
722
|
+
this.startDate = null;
|
|
723
|
+
this.endDate = null;
|
|
724
|
+
this.period = new Value();
|
|
725
|
+
this.currency = null;
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
|
|
663
729
|
export class ProductConditions {
|
|
664
730
|
signDate: string | null;
|
|
665
731
|
birthDate: string | null;
|
|
@@ -670,6 +736,7 @@ export class ProductConditions {
|
|
|
670
736
|
termsOfInsurance: string | null;
|
|
671
737
|
annualIncome: string | null;
|
|
672
738
|
processIndexRate: Value;
|
|
739
|
+
processGfot: Value;
|
|
673
740
|
requestedSumInsured: number | string | null;
|
|
674
741
|
requestedSumInsuredInDollar: number | string | null;
|
|
675
742
|
insurancePremiumPerMonth: number | string | null;
|
|
@@ -700,6 +767,15 @@ export class ProductConditions {
|
|
|
700
767
|
termAnnuityPayments: number | string | null;
|
|
701
768
|
periodAnnuityPayment: Value;
|
|
702
769
|
amountAnnuityPayments: number | string | null;
|
|
770
|
+
isRecalculated: boolean;
|
|
771
|
+
totalAmount5: number | string | null;
|
|
772
|
+
totalAmount7: number | string | null;
|
|
773
|
+
statePremium5: number | string | null;
|
|
774
|
+
statePremium7: number | string | null;
|
|
775
|
+
calculatorForm: CalculatorForm;
|
|
776
|
+
agentCommission: number | null;
|
|
777
|
+
fixInsSum: number | string | null;
|
|
778
|
+
|
|
703
779
|
constructor(
|
|
704
780
|
insuranceCase = null,
|
|
705
781
|
coverPeriod = null,
|
|
@@ -707,6 +783,7 @@ export class ProductConditions {
|
|
|
707
783
|
termsOfInsurance = null,
|
|
708
784
|
annualIncome = null,
|
|
709
785
|
processIndexRate = new Value(),
|
|
786
|
+
processGfot = new Value(),
|
|
710
787
|
requestedSumInsured = null,
|
|
711
788
|
insurancePremiumPerMonth = null,
|
|
712
789
|
establishingGroupDisabilityFromThirdYear = null,
|
|
@@ -735,6 +812,14 @@ export class ProductConditions {
|
|
|
735
812
|
termAnnuityPayments = null,
|
|
736
813
|
periodAnnuityPayment = new Value(),
|
|
737
814
|
amountAnnuityPayments = null,
|
|
815
|
+
isRecalculated = false,
|
|
816
|
+
totalAmount5 = null,
|
|
817
|
+
totalAmount7 = null,
|
|
818
|
+
statePremium5 = null,
|
|
819
|
+
statePremium7 = null,
|
|
820
|
+
calculatorForm = new CalculatorForm(),
|
|
821
|
+
agentCommission = null,
|
|
822
|
+
fixInsSum = null,
|
|
738
823
|
) {
|
|
739
824
|
this.requestedSumInsuredInDollar = null;
|
|
740
825
|
this.insurancePremiumPerMonthInDollar = null;
|
|
@@ -747,6 +832,7 @@ export class ProductConditions {
|
|
|
747
832
|
this.termsOfInsurance = termsOfInsurance;
|
|
748
833
|
this.annualIncome = annualIncome;
|
|
749
834
|
this.processIndexRate = processIndexRate;
|
|
835
|
+
this.processGfot = processGfot;
|
|
750
836
|
this.requestedSumInsured = requestedSumInsured;
|
|
751
837
|
this.insurancePremiumPerMonth = insurancePremiumPerMonth;
|
|
752
838
|
this.establishingGroupDisabilityFromThirdYear = establishingGroupDisabilityFromThirdYear;
|
|
@@ -775,6 +861,27 @@ export class ProductConditions {
|
|
|
775
861
|
this.termAnnuityPayments = termAnnuityPayments;
|
|
776
862
|
this.periodAnnuityPayment = periodAnnuityPayment;
|
|
777
863
|
this.amountAnnuityPayments = amountAnnuityPayments;
|
|
864
|
+
this.isRecalculated = isRecalculated;
|
|
865
|
+
this.totalAmount5 = totalAmount5;
|
|
866
|
+
this.totalAmount7 = totalAmount7;
|
|
867
|
+
this.statePremium5 = statePremium5;
|
|
868
|
+
this.statePremium7 = statePremium7;
|
|
869
|
+
this.calculatorForm = calculatorForm;
|
|
870
|
+
this.agentCommission = agentCommission;
|
|
871
|
+
this.fixInsSum = fixInsSum;
|
|
872
|
+
}
|
|
873
|
+
getSingleTripDays() {
|
|
874
|
+
if (this.calculatorForm.startDate && this.calculatorForm.endDate) {
|
|
875
|
+
const date1 = formatDate(this.calculatorForm.startDate);
|
|
876
|
+
const date2 = formatDate(this.calculatorForm.endDate);
|
|
877
|
+
if (date1 && date2) {
|
|
878
|
+
const days = Math.ceil((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24)) + 1;
|
|
879
|
+
if (days > 0) {
|
|
880
|
+
return days;
|
|
881
|
+
}
|
|
882
|
+
}
|
|
883
|
+
}
|
|
884
|
+
return null;
|
|
778
885
|
}
|
|
779
886
|
}
|
|
780
887
|
|
|
@@ -804,6 +911,9 @@ export class DataStoreClass {
|
|
|
804
911
|
setDefaults: {
|
|
805
912
|
sectorCode: boolean;
|
|
806
913
|
percentage: boolean;
|
|
914
|
+
signOfResidency: boolean;
|
|
915
|
+
countryOfTaxResidency: boolean;
|
|
916
|
+
countryOfCitizenship: boolean;
|
|
807
917
|
};
|
|
808
918
|
// Проверка на роль при авторизации
|
|
809
919
|
onAuth: boolean;
|
|
@@ -811,6 +921,8 @@ export class DataStoreClass {
|
|
|
811
921
|
hasAgreement: boolean;
|
|
812
922
|
// Наличие анкеты
|
|
813
923
|
hasAnketa: boolean;
|
|
924
|
+
// Обязательность доп анкеты
|
|
925
|
+
isSecondAnketaRequired: boolean;
|
|
814
926
|
// Подтягивание с ГБДФЛ
|
|
815
927
|
hasGBDFL: boolean;
|
|
816
928
|
// Подтягивание с ГКБ
|
|
@@ -823,6 +935,10 @@ export class DataStoreClass {
|
|
|
823
935
|
hasAttachment: boolean;
|
|
824
936
|
// Решение АС
|
|
825
937
|
hasAffiliation: boolean;
|
|
938
|
+
// Выбор метода подписания
|
|
939
|
+
hasChooseSign: boolean;
|
|
940
|
+
// Выбор метода оплаты
|
|
941
|
+
hasChoosePay: boolean;
|
|
826
942
|
};
|
|
827
943
|
members: {
|
|
828
944
|
clientApp: MemberSettings;
|
|
@@ -834,6 +950,7 @@ export class DataStoreClass {
|
|
|
834
950
|
iframeLoading: boolean;
|
|
835
951
|
hasLayoutMargins: boolean;
|
|
836
952
|
readonly product: Projects | null;
|
|
953
|
+
readonly parentProduct: 'efo' | 'auletti';
|
|
837
954
|
showNav: boolean;
|
|
838
955
|
menuItems: MenuItem[];
|
|
839
956
|
menu: {
|
|
@@ -842,6 +959,9 @@ export class DataStoreClass {
|
|
|
842
959
|
loading: boolean;
|
|
843
960
|
backIcon: string;
|
|
844
961
|
moreIcon: string;
|
|
962
|
+
hasInfo: boolean;
|
|
963
|
+
infoIcon: string;
|
|
964
|
+
infoItems: MenuItem[];
|
|
845
965
|
onBack: any;
|
|
846
966
|
onLink: any;
|
|
847
967
|
selectedItem: MenuItem;
|
|
@@ -858,7 +978,13 @@ export class DataStoreClass {
|
|
|
858
978
|
open: boolean;
|
|
859
979
|
overlay: boolean;
|
|
860
980
|
title: string;
|
|
861
|
-
clear:
|
|
981
|
+
clear: () => void;
|
|
982
|
+
};
|
|
983
|
+
rightPanel: {
|
|
984
|
+
open: boolean;
|
|
985
|
+
overlay: boolean;
|
|
986
|
+
title: string;
|
|
987
|
+
clear: () => void;
|
|
862
988
|
};
|
|
863
989
|
historyPageIndex: number;
|
|
864
990
|
historyPageSize: number;
|
|
@@ -878,13 +1004,19 @@ export class DataStoreClass {
|
|
|
878
1004
|
documentTypes: Value[];
|
|
879
1005
|
documentIssuers: Value[];
|
|
880
1006
|
familyStatuses: Value[];
|
|
1007
|
+
disabilityGroups: Value[];
|
|
881
1008
|
relations: Value[];
|
|
1009
|
+
banks: Value[];
|
|
1010
|
+
insuranceCompanies: Value[];
|
|
1011
|
+
processTariff: Value[];
|
|
882
1012
|
insurancePay: Value[];
|
|
883
1013
|
questionRefs: Value[];
|
|
884
1014
|
residents: Value[];
|
|
885
1015
|
ipdl: Value[];
|
|
886
1016
|
economySectorCode: Value[];
|
|
1017
|
+
economicActivityType: Value[];
|
|
887
1018
|
gender: Value[];
|
|
1019
|
+
authorityBasis: Value[];
|
|
888
1020
|
fontSize: number;
|
|
889
1021
|
isFontChangerOpen: boolean = false;
|
|
890
1022
|
isLoading: boolean = false;
|
|
@@ -892,6 +1024,7 @@ export class DataStoreClass {
|
|
|
892
1024
|
accessToken: string | null = null;
|
|
893
1025
|
refreshToken: string | null = null;
|
|
894
1026
|
processIndexRate: Value[];
|
|
1027
|
+
processGfot: Value[];
|
|
895
1028
|
processPaymentPeriod: Value[];
|
|
896
1029
|
dicAnnuityTypeList: Value[];
|
|
897
1030
|
processAnnuityPaymentPeriod: Value[];
|
|
@@ -908,6 +1041,7 @@ export class DataStoreClass {
|
|
|
908
1041
|
ManagerPolicy: Value[];
|
|
909
1042
|
AgentData: AgentData[];
|
|
910
1043
|
riskGroup: Value[];
|
|
1044
|
+
DicCoverTypePeriod: Value[];
|
|
911
1045
|
currencies: {
|
|
912
1046
|
eur: number | null;
|
|
913
1047
|
usd: number | null;
|
|
@@ -916,6 +1050,17 @@ export class DataStoreClass {
|
|
|
916
1050
|
show: (item: MenuItem) => boolean;
|
|
917
1051
|
disabled: (item: MenuItem) => boolean;
|
|
918
1052
|
};
|
|
1053
|
+
amountArray: Value[];
|
|
1054
|
+
currency: string | number | null;
|
|
1055
|
+
periodArray: Value[];
|
|
1056
|
+
maxDaysAllArray: Value[];
|
|
1057
|
+
maxDaysFiltered: Value[];
|
|
1058
|
+
dicAllCountries: CountryValue[];
|
|
1059
|
+
dicCountries: CountryValue[];
|
|
1060
|
+
types: Value[];
|
|
1061
|
+
workTypes: Value[];
|
|
1062
|
+
sportsTypes: Value[];
|
|
1063
|
+
purposes: Value[];
|
|
919
1064
|
constructor() {
|
|
920
1065
|
this.filters = {
|
|
921
1066
|
show: (item: MenuItem) => {
|
|
@@ -946,9 +1091,13 @@ export class DataStoreClass {
|
|
|
946
1091
|
setDefaults: {
|
|
947
1092
|
sectorCode: true,
|
|
948
1093
|
percentage: true,
|
|
1094
|
+
signOfResidency: false,
|
|
1095
|
+
countryOfTaxResidency: false,
|
|
1096
|
+
countryOfCitizenship: false,
|
|
949
1097
|
},
|
|
950
1098
|
onAuth: false,
|
|
951
1099
|
hasAnketa: true,
|
|
1100
|
+
isSecondAnketaRequired: true,
|
|
952
1101
|
hasAgreement: true,
|
|
953
1102
|
hasGBDFL: true,
|
|
954
1103
|
hasGKB: false,
|
|
@@ -956,10 +1105,13 @@ export class DataStoreClass {
|
|
|
956
1105
|
hasCalculator: false,
|
|
957
1106
|
hasAttachment: true,
|
|
958
1107
|
hasAffiliation: true,
|
|
1108
|
+
hasChooseSign: false,
|
|
1109
|
+
hasChoosePay: false,
|
|
959
1110
|
};
|
|
960
1111
|
this.iframeLoading = false;
|
|
961
1112
|
this.hasLayoutMargins = true;
|
|
962
1113
|
this.processIndexRate = [];
|
|
1114
|
+
this.processGfot = [];
|
|
963
1115
|
this.processPaymentPeriod = [];
|
|
964
1116
|
this.dicAnnuityTypeList = [];
|
|
965
1117
|
this.processAnnuityPaymentPeriod = [];
|
|
@@ -968,7 +1120,9 @@ export class DataStoreClass {
|
|
|
968
1120
|
this.RegionPolicy = [];
|
|
969
1121
|
this.ManagerPolicy = [];
|
|
970
1122
|
this.AgentData = [];
|
|
1123
|
+
this.DicCoverTypePeriod = [];
|
|
971
1124
|
this.product = import.meta.env.VITE_PRODUCT ? (import.meta.env.VITE_PRODUCT as Projects) : null;
|
|
1125
|
+
this.parentProduct = import.meta.env.VITE_PARENT_PRODUCT ? import.meta.env.VITE_PARENT_PRODUCT : 'efo';
|
|
972
1126
|
this.showNav = true;
|
|
973
1127
|
this.menuItems = [];
|
|
974
1128
|
this.menu = {
|
|
@@ -977,6 +1131,9 @@ export class DataStoreClass {
|
|
|
977
1131
|
loading: false,
|
|
978
1132
|
backIcon: 'mdi-arrow-left',
|
|
979
1133
|
moreIcon: 'mdi-dots-vertical',
|
|
1134
|
+
hasInfo: false,
|
|
1135
|
+
infoIcon: 'mdi-information-outline',
|
|
1136
|
+
infoItems: [],
|
|
980
1137
|
onBack: {},
|
|
981
1138
|
onLink: {},
|
|
982
1139
|
selectedItem: new MenuItem(),
|
|
@@ -992,13 +1149,24 @@ export class DataStoreClass {
|
|
|
992
1149
|
open: false,
|
|
993
1150
|
overlay: false,
|
|
994
1151
|
title: '',
|
|
995
|
-
clear:
|
|
1152
|
+
clear: () => {
|
|
996
1153
|
const panelActions = document.getElementById('panel-actions');
|
|
997
1154
|
if (panelActions) {
|
|
998
1155
|
panelActions.innerHTML = '';
|
|
999
1156
|
}
|
|
1000
1157
|
},
|
|
1001
1158
|
};
|
|
1159
|
+
this.rightPanel = {
|
|
1160
|
+
open: false,
|
|
1161
|
+
overlay: false,
|
|
1162
|
+
title: '',
|
|
1163
|
+
clear: () => {
|
|
1164
|
+
const panelActions = document.getElementById('right-panel-actions');
|
|
1165
|
+
if (panelActions) {
|
|
1166
|
+
panelActions.innerHTML = '';
|
|
1167
|
+
}
|
|
1168
|
+
},
|
|
1169
|
+
};
|
|
1002
1170
|
this.panelAction = null;
|
|
1003
1171
|
this.historyPageIndex = 1;
|
|
1004
1172
|
this.historyPageSize = 10;
|
|
@@ -1018,12 +1186,18 @@ export class DataStoreClass {
|
|
|
1018
1186
|
this.documentTypes = [];
|
|
1019
1187
|
this.documentIssuers = [];
|
|
1020
1188
|
this.familyStatuses = [];
|
|
1189
|
+
this.disabilityGroups = [];
|
|
1021
1190
|
this.relations = [];
|
|
1191
|
+
this.processTariff = [];
|
|
1192
|
+
this.banks = [];
|
|
1193
|
+
this.insuranceCompanies = [];
|
|
1022
1194
|
this.insurancePay = [];
|
|
1023
1195
|
this.residents = [];
|
|
1024
1196
|
this.ipdl = [new Value(1, null), new Value(2, 'Да'), new Value(3, 'Нет')];
|
|
1025
1197
|
this.economySectorCode = [];
|
|
1198
|
+
this.economicActivityType = [];
|
|
1026
1199
|
this.gender = [new Value(0, null), new Value(1, 'Мужской'), new Value(2, 'Женский')];
|
|
1200
|
+
this.authorityBasis = [];
|
|
1027
1201
|
this.fontSize = 14;
|
|
1028
1202
|
this.isFontChangerOpen = false;
|
|
1029
1203
|
this.isLoading = false;
|
|
@@ -1075,10 +1249,41 @@ export class DataStoreClass {
|
|
|
1075
1249
|
ids: '',
|
|
1076
1250
|
},
|
|
1077
1251
|
];
|
|
1252
|
+
this.amountArray = [];
|
|
1253
|
+
this.currency = null;
|
|
1254
|
+
this.maxDaysAllArray = [];
|
|
1255
|
+
this.periodArray = [];
|
|
1256
|
+
this.maxDaysFiltered = [];
|
|
1257
|
+
this.dicCountries = [];
|
|
1258
|
+
this.dicAllCountries = [];
|
|
1259
|
+
this.types = [];
|
|
1260
|
+
this.purposes = [];
|
|
1261
|
+
this.workTypes = [];
|
|
1262
|
+
this.sportsTypes = [];
|
|
1078
1263
|
}
|
|
1079
1264
|
}
|
|
1080
1265
|
|
|
1081
1266
|
export class FormStoreClass {
|
|
1267
|
+
documentName: string | null;
|
|
1268
|
+
regNumber: string | null;
|
|
1269
|
+
policyNumber: string | null;
|
|
1270
|
+
contractDate: string | null;
|
|
1271
|
+
needToScanSignedContract: boolean;
|
|
1272
|
+
isUploadedSignedContract: boolean;
|
|
1273
|
+
signedContractFormData: any;
|
|
1274
|
+
lfb: {
|
|
1275
|
+
clients: ClientV2[];
|
|
1276
|
+
policyholder: PolicyholderClass;
|
|
1277
|
+
hasAccidentIncidents: boolean;
|
|
1278
|
+
accidentIncidents: AccidentIncidents[];
|
|
1279
|
+
policyholderActivities: PolicyholderActivity[];
|
|
1280
|
+
beneficialOwners: BeneficialOwner[];
|
|
1281
|
+
beneficialOwnersIndex: number;
|
|
1282
|
+
isPolicyholderBeneficialOwner: boolean;
|
|
1283
|
+
clientId: string | null;
|
|
1284
|
+
insuredFile: any;
|
|
1285
|
+
isPanelInside: boolean;
|
|
1286
|
+
};
|
|
1082
1287
|
additionalInsuranceTerms: AddCover[];
|
|
1083
1288
|
additionalInsuranceTermsWithout: AddCover[];
|
|
1084
1289
|
signUrls: SignUrlType[];
|
|
@@ -1100,8 +1305,6 @@ export class FormStoreClass {
|
|
|
1100
1305
|
surveyByHealthBasePolicyholder: AnketaFirst | null;
|
|
1101
1306
|
surveyByCriticalBase: AnketaFirst | null;
|
|
1102
1307
|
surveyByCriticalBasePolicyholder: AnketaFirst | null;
|
|
1103
|
-
surveyByHealthSecond: AnketaSecond[] | null;
|
|
1104
|
-
surveyByCriticalSecond: AnketaSecond[] | null;
|
|
1105
1308
|
definedAnswersId: {
|
|
1106
1309
|
surveyByHealthBase: any;
|
|
1107
1310
|
surveyByCriticalBase: any;
|
|
@@ -1120,12 +1323,15 @@ export class FormStoreClass {
|
|
|
1120
1323
|
insuredForm: boolean;
|
|
1121
1324
|
policyholdersRepresentativeForm: boolean;
|
|
1122
1325
|
productConditionsForm: boolean;
|
|
1326
|
+
calculatorForm: boolean;
|
|
1123
1327
|
recalculationForm: boolean;
|
|
1124
1328
|
surveyByHealthBase: boolean;
|
|
1125
1329
|
surveyByCriticalBase: boolean;
|
|
1126
1330
|
surveyByHealthBasePolicyholder: boolean;
|
|
1127
1331
|
surveyByCriticalBasePolicyholder: boolean;
|
|
1128
1332
|
insuranceDocument: boolean;
|
|
1333
|
+
policyholderActivitiesForm: boolean;
|
|
1334
|
+
accidentStatisticsForm: boolean;
|
|
1129
1335
|
};
|
|
1130
1336
|
isPolicyholderInsured: boolean = false;
|
|
1131
1337
|
isPolicyholderBeneficiary: boolean = false;
|
|
@@ -1134,13 +1340,17 @@ export class FormStoreClass {
|
|
|
1134
1340
|
isPolicyholderIPDL: boolean = false;
|
|
1135
1341
|
applicationData: {
|
|
1136
1342
|
processInstanceId: number | string;
|
|
1343
|
+
regNumber?: string;
|
|
1137
1344
|
statusCode?: keyof typeof Statuses;
|
|
1138
1345
|
clientApp?: any;
|
|
1346
|
+
processCode?: number;
|
|
1139
1347
|
insuredApp?: any;
|
|
1348
|
+
pensionApp?: any;
|
|
1140
1349
|
beneficiaryApp?: any;
|
|
1141
1350
|
beneficialOwnerApp?: any;
|
|
1142
1351
|
spokesmanApp?: any;
|
|
1143
1352
|
isTask?: boolean | null;
|
|
1353
|
+
createDate?: string | null;
|
|
1144
1354
|
policyAppDto?: PolicyAppDto;
|
|
1145
1355
|
insisWorkDataApp?: InsisWorkDataApp;
|
|
1146
1356
|
addCoverDto?: AddCover[];
|
|
@@ -1164,7 +1374,27 @@ export class FormStoreClass {
|
|
|
1164
1374
|
questionnaireByCritical: any[];
|
|
1165
1375
|
canBeClaimed: boolean | null;
|
|
1166
1376
|
applicationTaskId: string | null;
|
|
1167
|
-
constructor(
|
|
1377
|
+
constructor() {
|
|
1378
|
+
this.regNumber = null;
|
|
1379
|
+
this.policyNumber = null;
|
|
1380
|
+
this.contractDate = null;
|
|
1381
|
+
this.documentName = null;
|
|
1382
|
+
this.isUploadedSignedContract = false;
|
|
1383
|
+
this.needToScanSignedContract = false;
|
|
1384
|
+
this.signedContractFormData = null;
|
|
1385
|
+
this.lfb = {
|
|
1386
|
+
clients: [],
|
|
1387
|
+
policyholder: new PolicyholderClass(),
|
|
1388
|
+
hasAccidentIncidents: true,
|
|
1389
|
+
policyholderActivities: [new PolicyholderActivity()],
|
|
1390
|
+
beneficialOwners: [new BeneficialOwner()],
|
|
1391
|
+
beneficialOwnersIndex: 0,
|
|
1392
|
+
isPolicyholderBeneficialOwner: false,
|
|
1393
|
+
accidentIncidents: [],
|
|
1394
|
+
clientId: null,
|
|
1395
|
+
insuredFile: null,
|
|
1396
|
+
isPanelInside: false,
|
|
1397
|
+
};
|
|
1168
1398
|
this.additionalInsuranceTerms = [];
|
|
1169
1399
|
this.additionalInsuranceTermsWithout = [];
|
|
1170
1400
|
this.signUrls = [];
|
|
@@ -1186,8 +1416,6 @@ export class FormStoreClass {
|
|
|
1186
1416
|
this.surveyByHealthBasePolicyholder = null;
|
|
1187
1417
|
this.surveyByCriticalBase = null;
|
|
1188
1418
|
this.surveyByCriticalBasePolicyholder = null;
|
|
1189
|
-
this.surveyByHealthSecond = null;
|
|
1190
|
-
this.surveyByCriticalSecond = null;
|
|
1191
1419
|
this.definedAnswersId = {
|
|
1192
1420
|
surveyByHealthBase: {},
|
|
1193
1421
|
surveyByCriticalBase: {},
|
|
@@ -1214,12 +1442,15 @@ export class FormStoreClass {
|
|
|
1214
1442
|
insuredForm: true,
|
|
1215
1443
|
policyholdersRepresentativeForm: true,
|
|
1216
1444
|
productConditionsForm: true,
|
|
1445
|
+
calculatorForm: true,
|
|
1217
1446
|
recalculationForm: true,
|
|
1218
1447
|
surveyByHealthBase: true,
|
|
1219
1448
|
surveyByCriticalBase: true,
|
|
1220
1449
|
surveyByHealthBasePolicyholder: true,
|
|
1221
1450
|
surveyByCriticalBasePolicyholder: true,
|
|
1222
1451
|
insuranceDocument: true,
|
|
1452
|
+
policyholderActivitiesForm: true,
|
|
1453
|
+
accidentStatisticsForm: true,
|
|
1223
1454
|
};
|
|
1224
1455
|
this.isPolicyholderInsured = false;
|
|
1225
1456
|
this.isPolicyholderBeneficiary = false;
|
|
@@ -1247,3 +1478,220 @@ export class FormStoreClass {
|
|
|
1247
1478
|
this.applicationTaskId = null;
|
|
1248
1479
|
}
|
|
1249
1480
|
}
|
|
1481
|
+
|
|
1482
|
+
export class Address {
|
|
1483
|
+
country: Value;
|
|
1484
|
+
region: Value;
|
|
1485
|
+
regionType: Value;
|
|
1486
|
+
city: Value;
|
|
1487
|
+
square: string | null;
|
|
1488
|
+
microdistrict: string | null;
|
|
1489
|
+
street: string | null;
|
|
1490
|
+
houseNumber: string | null;
|
|
1491
|
+
kato: string | null;
|
|
1492
|
+
longName: string | null;
|
|
1493
|
+
longNameKz: string | null;
|
|
1494
|
+
constructor() {
|
|
1495
|
+
this.country = new Value();
|
|
1496
|
+
this.region = new Value();
|
|
1497
|
+
this.regionType = new Value();
|
|
1498
|
+
this.city = new Value();
|
|
1499
|
+
this.square = null;
|
|
1500
|
+
this.microdistrict = null;
|
|
1501
|
+
this.street = null;
|
|
1502
|
+
this.houseNumber = null;
|
|
1503
|
+
this.kato = null;
|
|
1504
|
+
this.longName = null;
|
|
1505
|
+
this.longNameKz = null;
|
|
1506
|
+
}
|
|
1507
|
+
}
|
|
1508
|
+
|
|
1509
|
+
export class PolicyholderActivity {
|
|
1510
|
+
activityTypeName: string | null;
|
|
1511
|
+
empoloyeeCount: string | null;
|
|
1512
|
+
constructor() {
|
|
1513
|
+
this.activityTypeName = null;
|
|
1514
|
+
this.empoloyeeCount = null;
|
|
1515
|
+
}
|
|
1516
|
+
}
|
|
1517
|
+
|
|
1518
|
+
export class BaseGroupClass {
|
|
1519
|
+
id: string | number;
|
|
1520
|
+
longName: string;
|
|
1521
|
+
iin: string;
|
|
1522
|
+
phoneNumber: string;
|
|
1523
|
+
age: string;
|
|
1524
|
+
name: string;
|
|
1525
|
+
nameKz: string;
|
|
1526
|
+
longNameKz: string;
|
|
1527
|
+
citizenship: Value;
|
|
1528
|
+
email: string;
|
|
1529
|
+
resident: Value;
|
|
1530
|
+
taxResidentCountry: Value;
|
|
1531
|
+
addTaxResidency: Value;
|
|
1532
|
+
economySectorCode: Value;
|
|
1533
|
+
hasAttachedFile: boolean;
|
|
1534
|
+
actualAddress: Address;
|
|
1535
|
+
isActualAddressEqualLegalAddres: boolean;
|
|
1536
|
+
legalAddress: Address;
|
|
1537
|
+
identityDocument: {
|
|
1538
|
+
documentType: Value;
|
|
1539
|
+
documentNumber: string;
|
|
1540
|
+
series: string;
|
|
1541
|
+
issuedBy: Value;
|
|
1542
|
+
issuedOn: string;
|
|
1543
|
+
validUntil: string;
|
|
1544
|
+
};
|
|
1545
|
+
bankInfo: BankInfoClass;
|
|
1546
|
+
kbe: string;
|
|
1547
|
+
constructor() {
|
|
1548
|
+
this.id = 0;
|
|
1549
|
+
this.longName = '';
|
|
1550
|
+
this.iin = '';
|
|
1551
|
+
this.phoneNumber = '';
|
|
1552
|
+
this.age = '';
|
|
1553
|
+
this.name = '';
|
|
1554
|
+
this.nameKz = '';
|
|
1555
|
+
this.longNameKz = '';
|
|
1556
|
+
this.citizenship = new Value();
|
|
1557
|
+
this.email = '';
|
|
1558
|
+
this.resident = new Value();
|
|
1559
|
+
this.taxResidentCountry = new Value();
|
|
1560
|
+
this.addTaxResidency = new Value();
|
|
1561
|
+
this.economySectorCode = new Value();
|
|
1562
|
+
this.hasAttachedFile = false;
|
|
1563
|
+
this.actualAddress = new Address();
|
|
1564
|
+
this.isActualAddressEqualLegalAddres = true;
|
|
1565
|
+
this.legalAddress = new Address();
|
|
1566
|
+
this.identityDocument = {
|
|
1567
|
+
documentType: new Value(),
|
|
1568
|
+
documentNumber: '',
|
|
1569
|
+
series: '',
|
|
1570
|
+
issuedBy: new Value(),
|
|
1571
|
+
issuedOn: '',
|
|
1572
|
+
validUntil: '',
|
|
1573
|
+
};
|
|
1574
|
+
this.bankInfo = new BankInfoClass();
|
|
1575
|
+
this.kbe = '';
|
|
1576
|
+
}
|
|
1577
|
+
}
|
|
1578
|
+
|
|
1579
|
+
export class PhysGroupClass extends BaseGroupClass {
|
|
1580
|
+
lastName: string;
|
|
1581
|
+
firstName: string;
|
|
1582
|
+
middleName: string;
|
|
1583
|
+
birthDate: string;
|
|
1584
|
+
gender: Value;
|
|
1585
|
+
placeOfBirth: Value;
|
|
1586
|
+
workDetails: { workplace: string; position: string; jobDuties: string };
|
|
1587
|
+
hasContactPerson: boolean;
|
|
1588
|
+
constructor() {
|
|
1589
|
+
super();
|
|
1590
|
+
this.lastName = '';
|
|
1591
|
+
this.firstName = '';
|
|
1592
|
+
this.middleName = '';
|
|
1593
|
+
this.birthDate = '';
|
|
1594
|
+
this.gender = new Value();
|
|
1595
|
+
this.placeOfBirth = new Value();
|
|
1596
|
+
this.workDetails = { workplace: '', position: '', jobDuties: '' };
|
|
1597
|
+
this.hasContactPerson = false;
|
|
1598
|
+
}
|
|
1599
|
+
}
|
|
1600
|
+
|
|
1601
|
+
export class GroupMember extends PhysGroupClass {
|
|
1602
|
+
isLeader: boolean;
|
|
1603
|
+
authorityDetails: {
|
|
1604
|
+
basis: Value;
|
|
1605
|
+
documentNumber: string | null;
|
|
1606
|
+
date: string | null;
|
|
1607
|
+
};
|
|
1608
|
+
typeOfEconomicActivity: Value;
|
|
1609
|
+
activityTypes: { activityTypeName: string; empoloyeeCount: number }[];
|
|
1610
|
+
beneficalOwnerQuest: { order: number; text: string; answer: boolean | null }[];
|
|
1611
|
+
authoritedPerson: PhysGroupClass;
|
|
1612
|
+
insuredPolicyData: InsuredPolicyType;
|
|
1613
|
+
constructor() {
|
|
1614
|
+
super();
|
|
1615
|
+
// Client
|
|
1616
|
+
this.isLeader = false;
|
|
1617
|
+
this.authorityDetails = {
|
|
1618
|
+
basis: new Value(),
|
|
1619
|
+
documentNumber: null,
|
|
1620
|
+
date: null,
|
|
1621
|
+
};
|
|
1622
|
+
this.typeOfEconomicActivity = new Value();
|
|
1623
|
+
this.activityTypes = [];
|
|
1624
|
+
this.beneficalOwnerQuest = [
|
|
1625
|
+
{
|
|
1626
|
+
order: 0,
|
|
1627
|
+
text: 'Отметка о наличии/отсутствии физического лица (лиц), которому прямо или косвенно принадлежат более 25 % долей участия в уставном капитале либо размещенных (за вычетом привилегированных и выкупленных обществом) акций юридического лица',
|
|
1628
|
+
answer: null,
|
|
1629
|
+
},
|
|
1630
|
+
{
|
|
1631
|
+
order: 1,
|
|
1632
|
+
text: 'Отметка о наличии/отсутствии физического лица (лиц), осуществляющего контроль над юридическим лицом по иным основаниям',
|
|
1633
|
+
answer: null,
|
|
1634
|
+
},
|
|
1635
|
+
{
|
|
1636
|
+
order: 2,
|
|
1637
|
+
text: 'Отметка о наличии/отсутствии физического лица (лиц) в интересах которого юридическим лицом устанавливаются деловые отношения (совершаются операции)',
|
|
1638
|
+
answer: null,
|
|
1639
|
+
},
|
|
1640
|
+
];
|
|
1641
|
+
this.authoritedPerson = new PhysGroupClass();
|
|
1642
|
+
// Insured
|
|
1643
|
+
this.insuredPolicyData = {
|
|
1644
|
+
insSum: 0,
|
|
1645
|
+
insSumWithLoad: 0,
|
|
1646
|
+
premium: 0,
|
|
1647
|
+
premiumWithLoad: 0,
|
|
1648
|
+
insuredRisk: {
|
|
1649
|
+
lifeMultiply: 0,
|
|
1650
|
+
lifeAdditive: 0,
|
|
1651
|
+
disabilityMultiply: 0,
|
|
1652
|
+
disabilityAdditive: 0,
|
|
1653
|
+
traumaTableMultiple: 0,
|
|
1654
|
+
accidentalLifeMultiply: 0,
|
|
1655
|
+
accidentalLifeAdditive: 0,
|
|
1656
|
+
criticalMultiply: 0,
|
|
1657
|
+
criticalAdditive: 0,
|
|
1658
|
+
},
|
|
1659
|
+
insuredCoverData: [],
|
|
1660
|
+
};
|
|
1661
|
+
}
|
|
1662
|
+
}
|
|
1663
|
+
|
|
1664
|
+
export class BankInfoClass {
|
|
1665
|
+
bankName: Value;
|
|
1666
|
+
bin: string;
|
|
1667
|
+
iik: string;
|
|
1668
|
+
bik: string;
|
|
1669
|
+
kbe: string;
|
|
1670
|
+
constructor() {
|
|
1671
|
+
this.bankName = new Value();
|
|
1672
|
+
this.bin = '';
|
|
1673
|
+
this.iik = '';
|
|
1674
|
+
this.bik = '';
|
|
1675
|
+
this.kbe = '';
|
|
1676
|
+
}
|
|
1677
|
+
}
|
|
1678
|
+
|
|
1679
|
+
export class PolicyholderClass {
|
|
1680
|
+
isIpdl: boolean;
|
|
1681
|
+
clientData: GroupMember;
|
|
1682
|
+
constructor() {
|
|
1683
|
+
this.isIpdl = false;
|
|
1684
|
+
this.clientData = new GroupMember();
|
|
1685
|
+
}
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
export class BeneficialOwner {
|
|
1689
|
+
id: string;
|
|
1690
|
+
isIpdl: boolean;
|
|
1691
|
+
beneficialOwnerData: GroupMember;
|
|
1692
|
+
constructor() {
|
|
1693
|
+
this.isIpdl = false;
|
|
1694
|
+
this.beneficialOwnerData = new GroupMember();
|
|
1695
|
+
this.id = '';
|
|
1696
|
+
}
|
|
1697
|
+
}
|