hl-core 0.0.9-beta.11 → 0.0.9-beta.12
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 +617 -0
- package/api/efo.api.ts +27 -0
- package/api/index.ts +3 -620
- package/components/Input/FileInput.vue +8 -3
- package/components/Pages/MemberForm.vue +1 -1
- package/components/Pages/ProductConditions.vue +86 -22
- package/components/Panel/PanelHandler.vue +48 -12
- package/composables/constants.ts +1 -0
- package/locales/ru.json +37 -9
- package/package.json +3 -3
- package/store/data.store.ts +18 -17
- package/types/enum.ts +6 -0
- package/types/index.ts +10 -3
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<section class="flex flex-col gap-4 px-[10px]">
|
|
3
3
|
<v-form ref="vForm" @submit="submitForm" class="max-h-[82svh] overflow-y-scroll">
|
|
4
4
|
<base-message-block
|
|
5
|
-
v-if="
|
|
5
|
+
v-if="isCalculator"
|
|
6
6
|
class="mt-4"
|
|
7
7
|
:color="$styles.blueBgLight"
|
|
8
8
|
:text="$dataStore.t('preliminaryCalculation')"
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
:maska="$maska.numbers"
|
|
69
69
|
:clearable="isRecalculationDisabled === false"
|
|
70
70
|
:label="$dataStore.t('percent') + `Life Additive`"
|
|
71
|
-
:readonly="
|
|
71
|
+
:readonly="readonlyLifeAdditive"
|
|
72
72
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
73
73
|
/>
|
|
74
74
|
<base-form-input
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
:maska="$maska.numbers"
|
|
95
95
|
:clearable="isRecalculationDisabled === false"
|
|
96
96
|
:label="$dataStore.t('percent') + `Disability Multiply`"
|
|
97
|
-
:readonly="
|
|
97
|
+
:readonly="readonlyDisabilityMultiply"
|
|
98
98
|
:rules="whichProduct === 'gons' ? [] : $dataStore.rules.recalculationMultiply"
|
|
99
99
|
/>
|
|
100
100
|
<base-form-input
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
:maska="$maska.numbers"
|
|
103
103
|
:clearable="isRecalculationDisabled === false"
|
|
104
104
|
:label="$dataStore.t('percent') + `Disability Additive`"
|
|
105
|
-
:readonly="
|
|
105
|
+
:readonly="readonlyDisabilityAdditive"
|
|
106
106
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
107
107
|
/>
|
|
108
108
|
<base-panel-input
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
/>
|
|
118
118
|
</base-form-section>
|
|
119
119
|
<base-form-section :title="$dataStore.t('generalConditions')">
|
|
120
|
-
<div v-if="
|
|
120
|
+
<div v-if="isCalculator && ($route.params.taskId === '0' || $dataStore.isCalculator)">
|
|
121
121
|
<base-form-input
|
|
122
122
|
v-model="productConditionsForm.signDate"
|
|
123
123
|
:maska="$maska.date"
|
|
@@ -127,6 +127,7 @@
|
|
|
127
127
|
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
128
128
|
/>
|
|
129
129
|
<base-form-input
|
|
130
|
+
v-if="hasBirthDate"
|
|
130
131
|
v-model="productConditionsForm.birthDate"
|
|
131
132
|
:maska="$maska.date"
|
|
132
133
|
:readonly="isDisabled"
|
|
@@ -136,6 +137,7 @@
|
|
|
136
137
|
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
137
138
|
/>
|
|
138
139
|
<base-panel-input
|
|
140
|
+
v-if="hasGender"
|
|
139
141
|
v-model="productConditionsForm.gender"
|
|
140
142
|
:value="productConditionsForm.gender?.nameRu"
|
|
141
143
|
:readonly="isDisabled"
|
|
@@ -149,10 +151,10 @@
|
|
|
149
151
|
<base-form-input
|
|
150
152
|
v-model="productConditionsForm.coverPeriod"
|
|
151
153
|
:maska="$maska.numbers"
|
|
152
|
-
:readonly="
|
|
154
|
+
:readonly="isDisabledCoverPeriod"
|
|
153
155
|
:clearable="!isDisabled"
|
|
154
156
|
:rules="coverPeriodRule"
|
|
155
|
-
:label="
|
|
157
|
+
:label="coverPeriodLabel"
|
|
156
158
|
/>
|
|
157
159
|
<base-panel-input
|
|
158
160
|
v-if="hasPaymentPeriod"
|
|
@@ -202,34 +204,34 @@
|
|
|
202
204
|
:readonly="isDisabled"
|
|
203
205
|
:clearable="!isDisabled"
|
|
204
206
|
:rules="insurancePremiumPerMonth"
|
|
205
|
-
:label="
|
|
207
|
+
:label="insurancePremiumPerMonthLabel"
|
|
206
208
|
:suffix="$constants.currencySymbols.kzt"
|
|
207
209
|
@input="onInputInsurancePremiumPerMonth"
|
|
208
210
|
@onClear="onClearPremium"
|
|
209
211
|
/>
|
|
210
212
|
<base-form-input
|
|
211
|
-
v-if="whichProduct === 'gons' &&
|
|
213
|
+
v-if="whichProduct === 'gons' && isCalculator"
|
|
212
214
|
v-model="productConditionsForm.totalAmount5"
|
|
213
215
|
:readonly="true"
|
|
214
216
|
:label="$dataStore.t('productConditionsForm.totalAmount5')"
|
|
215
217
|
:suffix="$constants.currencySymbols.kzt"
|
|
216
218
|
/>
|
|
217
219
|
<base-form-input
|
|
218
|
-
v-if="whichProduct === 'gons' &&
|
|
220
|
+
v-if="whichProduct === 'gons' && isCalculator"
|
|
219
221
|
v-model="productConditionsForm.statePremium5"
|
|
220
222
|
:readonly="true"
|
|
221
223
|
:label="$dataStore.t('productConditionsForm.statePremium5')"
|
|
222
224
|
:suffix="$constants.currencySymbols.kzt"
|
|
223
225
|
/>
|
|
224
226
|
<base-form-input
|
|
225
|
-
v-if="whichProduct === 'gons' &&
|
|
227
|
+
v-if="whichProduct === 'gons' && isCalculator"
|
|
226
228
|
v-model="productConditionsForm.totalAmount7"
|
|
227
229
|
:readonly="true"
|
|
228
230
|
:label="$dataStore.t('productConditionsForm.totalAmount7')"
|
|
229
231
|
:suffix="$constants.currencySymbols.kzt"
|
|
230
232
|
/>
|
|
231
233
|
<base-form-input
|
|
232
|
-
v-if="whichProduct === 'gons' &&
|
|
234
|
+
v-if="whichProduct === 'gons' && isCalculator"
|
|
233
235
|
v-model="productConditionsForm.statePremium7"
|
|
234
236
|
:readonly="true"
|
|
235
237
|
:label="$dataStore.t('productConditionsForm.statePremium7')"
|
|
@@ -332,7 +334,7 @@
|
|
|
332
334
|
</div>
|
|
333
335
|
</base-form-section>
|
|
334
336
|
</v-form>
|
|
335
|
-
<base-btn v-if="!$dataStore.isCalculator &&
|
|
337
|
+
<base-btn v-if="!$dataStore.isCalculator && isCalculator && hasCalculated" :btn="$styles.greenLightBtn" :text="$dataStore.t('buttons.toStatement')" @click="toStatement" />
|
|
336
338
|
<base-btn
|
|
337
339
|
v-if="$dataStore.isCalculator ? true : !isDisabled && isTask && ($dataStore.isInitiator() || $dataStore.isUnderwriter())"
|
|
338
340
|
:loading="isCalculating"
|
|
@@ -382,7 +384,7 @@ import { Member, Value } from '../../composables/classes';
|
|
|
382
384
|
|
|
383
385
|
export default defineComponent({
|
|
384
386
|
props: {
|
|
385
|
-
|
|
387
|
+
isCalculator: {
|
|
386
388
|
type: Boolean,
|
|
387
389
|
default: false,
|
|
388
390
|
},
|
|
@@ -415,7 +417,7 @@ export default defineComponent({
|
|
|
415
417
|
|
|
416
418
|
const additionalTerms = ref<AddCover[]>([]);
|
|
417
419
|
const isUnderwriterForm = computed(() => {
|
|
418
|
-
if (route.params.taskId === '0 ' || props.
|
|
420
|
+
if (route.params.taskId === '0 ' || props.isCalculator === true) {
|
|
419
421
|
return false;
|
|
420
422
|
} else {
|
|
421
423
|
return formStore.applicationData.statusCode === 'UnderwriterForm';
|
|
@@ -428,7 +430,7 @@ export default defineComponent({
|
|
|
428
430
|
}
|
|
429
431
|
return isDisabled.value;
|
|
430
432
|
});
|
|
431
|
-
const isTask = computed(() => (route.params.taskId === '0' && props.
|
|
433
|
+
const isTask = computed(() => (route.params.taskId === '0' && props.isCalculator === true) || dataStore.isTask());
|
|
432
434
|
const isRecalculationDisabled = computed(() => formStore.isDisabled.recalculationForm);
|
|
433
435
|
const isUnderwriterRole = computed(() => dataStore.isUnderwriter() || dataStore.isAdmin() || dataStore.isSupport());
|
|
434
436
|
const insurancePremiumPerMonth = computed(() => (!!productConditionsForm.insurancePremiumPerMonth ? dataStore.rules.required.concat(dataStore.rules.sums) : []));
|
|
@@ -436,7 +438,7 @@ export default defineComponent({
|
|
|
436
438
|
const hasCalculated = computed(() => !!productConditionsForm.requestedSumInsured && !!productConditionsForm.insurancePremiumPerMonth);
|
|
437
439
|
const amountAnnuityPayments = computed(() => (!!productConditionsForm.amountAnnuityPayments ? dataStore.rules.required.concat(dataStore.rules.sums) : []));
|
|
438
440
|
const hasProcessIndexRate = computed(() => {
|
|
439
|
-
if (whichProduct.value === 'gons' || whichProduct.value === 'halykkazyna' || whichProduct.value === 'liferenta') {
|
|
441
|
+
if (whichProduct.value === 'gons' || whichProduct.value === 'halykkazyna' || whichProduct.value === 'liferenta' || whichProduct.value === 'lifebusiness') {
|
|
440
442
|
return false;
|
|
441
443
|
}
|
|
442
444
|
return true;
|
|
@@ -471,6 +473,24 @@ export default defineComponent({
|
|
|
471
473
|
}
|
|
472
474
|
return true;
|
|
473
475
|
});
|
|
476
|
+
const readonlyLifeAdditive = computed(() => {
|
|
477
|
+
if (whichProduct.value === 'gons') {
|
|
478
|
+
return true;
|
|
479
|
+
}
|
|
480
|
+
return isRecalculationDisabled.value;
|
|
481
|
+
});
|
|
482
|
+
const readonlyDisabilityMultiply = computed(() => {
|
|
483
|
+
if (whichProduct.value === 'gons') {
|
|
484
|
+
return true;
|
|
485
|
+
}
|
|
486
|
+
return isRecalculationDisabled.value;
|
|
487
|
+
});
|
|
488
|
+
const readonlyDisabilityAdditive = computed(() => {
|
|
489
|
+
if (whichProduct.value === 'gons') {
|
|
490
|
+
return true;
|
|
491
|
+
}
|
|
492
|
+
return isRecalculationDisabled.value;
|
|
493
|
+
});
|
|
474
494
|
const hasAdbAdditive = computed(() => {
|
|
475
495
|
if (whichProduct.value === 'gons') {
|
|
476
496
|
return false;
|
|
@@ -489,6 +509,18 @@ export default defineComponent({
|
|
|
489
509
|
}
|
|
490
510
|
return false;
|
|
491
511
|
});
|
|
512
|
+
const hasBirthDate = computed(() => {
|
|
513
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
514
|
+
return false;
|
|
515
|
+
}
|
|
516
|
+
return true;
|
|
517
|
+
});
|
|
518
|
+
const hasGender = computed(() => {
|
|
519
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
520
|
+
return false;
|
|
521
|
+
}
|
|
522
|
+
return true;
|
|
523
|
+
});
|
|
492
524
|
const coverPeriodRule = computed(() => {
|
|
493
525
|
const baseCondition = dataStore.rules.required.concat(dataStore.rules.numbers);
|
|
494
526
|
if (whichProduct.value === 'gons') {
|
|
@@ -509,8 +541,26 @@ export default defineComponent({
|
|
|
509
541
|
if (whichProduct.value === 'halykkazyna') {
|
|
510
542
|
return dataStore.t('productConditionsForm.requestedSumInsuredInTenge');
|
|
511
543
|
}
|
|
544
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
545
|
+
return dataStore.t('productConditionsForm.totalRequestedSumInsured');
|
|
546
|
+
}
|
|
512
547
|
return dataStore.t('productConditionsForm.requestedSumInsured');
|
|
513
548
|
});
|
|
549
|
+
const coverPeriodLabel = computed(() => {
|
|
550
|
+
if (whichProduct.value === 'gons') {
|
|
551
|
+
return dataStore.t('productConditionsForm.coverPeriodFrom3to20');
|
|
552
|
+
}
|
|
553
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
554
|
+
return dataStore.t('productConditionsForm.coverPeriodMonth');
|
|
555
|
+
}
|
|
556
|
+
return dataStore.t('productConditionsForm.coverPeriod');
|
|
557
|
+
});
|
|
558
|
+
const insurancePremiumPerMonthLabel = computed(() => {
|
|
559
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
560
|
+
return dataStore.t('productConditionsForm.totalInsurancePremiumAmount');
|
|
561
|
+
}
|
|
562
|
+
return dataStore.t('productConditionsForm.insurancePremiumAmount');
|
|
563
|
+
});
|
|
514
564
|
const isDisabledSum = computed(() => {
|
|
515
565
|
if (whichProduct.value === 'halykkazyna') {
|
|
516
566
|
return true;
|
|
@@ -523,6 +573,12 @@ export default defineComponent({
|
|
|
523
573
|
}
|
|
524
574
|
return isDisabled.value;
|
|
525
575
|
});
|
|
576
|
+
const isDisabledCoverPeriod = computed(() => {
|
|
577
|
+
if (whichProduct.value === 'lifebusiness') {
|
|
578
|
+
return true;
|
|
579
|
+
}
|
|
580
|
+
return isDisabled.value;
|
|
581
|
+
});
|
|
526
582
|
|
|
527
583
|
const formatTermValue = (term: number) => {
|
|
528
584
|
if (term !== null) {
|
|
@@ -743,11 +799,11 @@ export default defineComponent({
|
|
|
743
799
|
}
|
|
744
800
|
if (productConditionsForm.requestedSumInsured !== '' && productConditionsForm.requestedSumInsured != null) {
|
|
745
801
|
productConditionsForm.insurancePremiumPerMonth = null;
|
|
746
|
-
if (props.
|
|
802
|
+
if (props.isCalculator) whichSum.value = 'requestedSumInsured';
|
|
747
803
|
}
|
|
748
804
|
if (productConditionsForm.insurancePremiumPerMonth !== '' && productConditionsForm.insurancePremiumPerMonth != null) {
|
|
749
805
|
productConditionsForm.requestedSumInsured = null;
|
|
750
|
-
if (props.
|
|
806
|
+
if (props.isCalculator) whichSum.value = 'insurancePremiumPerMonth';
|
|
751
807
|
}
|
|
752
808
|
|
|
753
809
|
if (!whichSum.value && isUnderwriterForm.value === false) {
|
|
@@ -805,7 +861,7 @@ export default defineComponent({
|
|
|
805
861
|
await dataStore.reCalculate(formStore.applicationData.processInstanceId, recalculationData, route.params.taskId as string, whichSum.value);
|
|
806
862
|
}
|
|
807
863
|
isCalculating.value = true;
|
|
808
|
-
if (props.
|
|
864
|
+
if (props.isCalculator) {
|
|
809
865
|
//@ts-ignore
|
|
810
866
|
await dataStore.calculateWithoutApplication(true, whichProduct.value);
|
|
811
867
|
additionalTerms.value = formStore.additionalInsuranceTermsWithout;
|
|
@@ -839,7 +895,7 @@ export default defineComponent({
|
|
|
839
895
|
};
|
|
840
896
|
|
|
841
897
|
onMounted(async () => {
|
|
842
|
-
if (props.
|
|
898
|
+
if (props.isCalculator === true) {
|
|
843
899
|
if (dataStore.isCalculator) {
|
|
844
900
|
clearFields();
|
|
845
901
|
}
|
|
@@ -864,7 +920,7 @@ export default defineComponent({
|
|
|
864
920
|
productConditionsForm.signDate = reformatDate(defaultData.signDate);
|
|
865
921
|
}
|
|
866
922
|
}
|
|
867
|
-
additionalTerms.value = props.
|
|
923
|
+
additionalTerms.value = props.isCalculator ? formStore.additionalInsuranceTermsWithout : formStore.additionalInsuranceTerms;
|
|
868
924
|
if (!!productConditionsForm.insurancePremiumPerMonth) {
|
|
869
925
|
whichSum.value = 'insurancePremiumPerMonth';
|
|
870
926
|
}
|
|
@@ -945,6 +1001,9 @@ export default defineComponent({
|
|
|
945
1001
|
hasInsurancePremiumPerMonthInDollar,
|
|
946
1002
|
hasCurrency,
|
|
947
1003
|
hasAdbMultiply,
|
|
1004
|
+
readonlyLifeAdditive,
|
|
1005
|
+
readonlyDisabilityMultiply,
|
|
1006
|
+
readonlyDisabilityAdditive,
|
|
948
1007
|
hasAdbAdditive,
|
|
949
1008
|
hasRiskGroup,
|
|
950
1009
|
hasCalculated,
|
|
@@ -954,6 +1013,11 @@ export default defineComponent({
|
|
|
954
1013
|
requestedSumInsuredLabel,
|
|
955
1014
|
isDisabledSum,
|
|
956
1015
|
isDisabledSumDollar,
|
|
1016
|
+
hasBirthDate,
|
|
1017
|
+
hasGender,
|
|
1018
|
+
coverPeriodLabel,
|
|
1019
|
+
insurancePremiumPerMonthLabel,
|
|
1020
|
+
isDisabledCoverPeriod,
|
|
957
1021
|
|
|
958
1022
|
// Rules
|
|
959
1023
|
coverPeriodRule,
|
|
@@ -28,7 +28,9 @@
|
|
|
28
28
|
<div :class="[$styles.blueBgLight]" class="rounded-lg p-4">
|
|
29
29
|
<v-expansion-panels v-if="formStore.signUrls && formStore.signUrls.length" variant="accordion" multiple>
|
|
30
30
|
<v-expansion-panel v-for="signUrl of formStore.signUrls" :key="signUrl.iin!" class="border-[1px]" elevation="0" bg-color="#FFF">
|
|
31
|
-
<v-expansion-panel-title class="h-[80px]" :class="$styles.textTitle">
|
|
31
|
+
<v-expansion-panel-title class="h-[80px]" :class="$styles.textTitle">
|
|
32
|
+
{{ `${signUrl.longName} - ${signUrl.iin}` }}
|
|
33
|
+
</v-expansion-panel-title>
|
|
32
34
|
<v-expansion-panel-text class="border-t-[1px]">
|
|
33
35
|
<section class="flex flex-col gap-4 py-3" :class="$styles.textSimple">
|
|
34
36
|
<base-btn :loading="loading" :text="$dataStore.t('sign.copyCloud')" @click="$dataStore.copyToClipboard(signUrl.uri)" />
|
|
@@ -55,8 +57,8 @@
|
|
|
55
57
|
placeholder="+7 7"
|
|
56
58
|
/>
|
|
57
59
|
</v-form>
|
|
58
|
-
<base-btn :text="$dataStore.t('buttons.sendSMS')" :loading="loading" @click="submitForm"
|
|
59
|
-
|
|
60
|
+
<base-btn :text="$dataStore.t('buttons.sendSMS')" :loading="loading" @click="submitForm" />
|
|
61
|
+
</base-form-section>
|
|
60
62
|
</div>
|
|
61
63
|
</base-fade-transition>
|
|
62
64
|
</div>
|
|
@@ -99,20 +101,37 @@
|
|
|
99
101
|
:maska="$maska.date"
|
|
100
102
|
:rules="$rules.required"
|
|
101
103
|
:label="$dataStore.t('form.date')"
|
|
102
|
-
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
104
|
+
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
105
|
+
/>
|
|
103
106
|
<base-file-input v-if="!affiliationDocument" @input.prevent="onFileChange($event)" />
|
|
104
107
|
<base-empty-form-field v-if="affiliationDocument" class="justify-between">
|
|
105
108
|
{{ `${affiliationDocument.fileTypeName} - ${affiliationDocument.fileName}` }}
|
|
106
|
-
<i class="cursor-pointer mdi mdi-file-document mr-6 text-[#a0b3d8] text-xl"></i
|
|
107
|
-
|
|
109
|
+
<i class="cursor-pointer mdi mdi-file-document mr-6 text-[#a0b3d8] text-xl"></i
|
|
110
|
+
></base-empty-form-field>
|
|
111
|
+
</base-content-block>
|
|
108
112
|
</v-form>
|
|
109
113
|
<base-btn :text="buttonText" :loading="loading" @click="submitForm" />
|
|
110
114
|
</div>
|
|
111
115
|
</section>
|
|
116
|
+
<section v-if="templateAction">
|
|
117
|
+
<div :class="[$styles.flexColNav]">
|
|
118
|
+
<base-content-block>
|
|
119
|
+
<base-panel-item class="cursor-pointer bg-white mb-4 border-b-0 rounded">
|
|
120
|
+
{{ $dataStore.t('downloadDocument') }}
|
|
121
|
+
<i class="mdi mdi-download text-2xl text-[#A0B3D8]"></i
|
|
122
|
+
></base-panel-item>
|
|
123
|
+
<v-form ref="vForm">
|
|
124
|
+
<base-form-input v-model.trim="actionCause" :label="$dataStore.t('form.email')" :rules="$rules.required" />
|
|
125
|
+
</v-form>
|
|
126
|
+
</base-content-block>
|
|
127
|
+
<base-btn :text="buttonText" :loading="loading" @click="submitForm" />
|
|
128
|
+
</div>
|
|
129
|
+
</section>
|
|
112
130
|
</template>
|
|
113
131
|
|
|
114
132
|
<script lang="ts">
|
|
115
133
|
import { DocumentItem } from '../../composables/classes';
|
|
134
|
+
|
|
116
135
|
export default defineComponent({
|
|
117
136
|
emits: ['task'],
|
|
118
137
|
setup(props, { emit }) {
|
|
@@ -199,11 +218,12 @@ export default defineComponent({
|
|
|
199
218
|
|
|
200
219
|
const handleTask = async () => {
|
|
201
220
|
loading.value = true;
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
221
|
+
// Пока не нужно, на всякий оставить
|
|
222
|
+
// if (needRecalculation.value) {
|
|
223
|
+
// dataStore.showToaster('info', dataStore.t('toaster.needToRecalculate'));
|
|
224
|
+
// loading.value = false;
|
|
225
|
+
// return;
|
|
226
|
+
// }
|
|
207
227
|
if (dataStore.isAML || dataStore.isCheckContract || dataStore.isCheckContragent) {
|
|
208
228
|
emit('task', [dataStore.panelAction, route.params.taskId as string, actionCause.value]);
|
|
209
229
|
} else {
|
|
@@ -228,20 +248,31 @@ export default defineComponent({
|
|
|
228
248
|
case constants.actions.register:
|
|
229
249
|
return dataStore.t('buttons.register');
|
|
230
250
|
case constants.actions.affiliate:
|
|
251
|
+
case constants.actions.template:
|
|
231
252
|
return dataStore.t('buttons.send');
|
|
253
|
+
default:
|
|
254
|
+
return dataStore.t('buttons.send');
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
|
|
258
|
+
const panelTitle = computed(() => {
|
|
259
|
+
if (dataStore.isLifeBusiness && dataStore.panelAction === constants.actions.template) {
|
|
260
|
+
return dataStore.t('template');
|
|
232
261
|
}
|
|
262
|
+
return buttonText.value;
|
|
233
263
|
});
|
|
234
264
|
|
|
235
265
|
watch(
|
|
236
266
|
() => dataStore.panelAction,
|
|
237
267
|
val => {
|
|
238
268
|
if (!!val) {
|
|
239
|
-
dataStore.panel.title =
|
|
269
|
+
dataStore.panel.title = panelTitle.value;
|
|
240
270
|
dataStore.panel.open = true;
|
|
241
271
|
}
|
|
242
272
|
},
|
|
243
273
|
{ immediate: true },
|
|
244
274
|
);
|
|
275
|
+
|
|
245
276
|
const needRecalculation = computed(
|
|
246
277
|
() =>
|
|
247
278
|
dataStore.isGons &&
|
|
@@ -253,6 +284,7 @@ export default defineComponent({
|
|
|
253
284
|
() => dataStore.panelAction === constants.actions.reject || dataStore.panelAction === constants.actions.return || dataStore.panelAction === constants.actions.rejectclient,
|
|
254
285
|
);
|
|
255
286
|
const acceptAction = computed(() => dataStore.panelAction === constants.actions.accept);
|
|
287
|
+
const templateAction = computed(() => dataStore.panelAction === constants.actions.template);
|
|
256
288
|
const signingActions = computed(() => dataStore.panelAction === constants.actions.sign);
|
|
257
289
|
const payingActions = computed(() => dataStore.panelAction === constants.actions.pay);
|
|
258
290
|
const affiliateActions = computed(() => dataStore.panelAction === constants.actions.affiliate);
|
|
@@ -296,6 +328,7 @@ export default defineComponent({
|
|
|
296
328
|
requestedSumInsured,
|
|
297
329
|
affiliationDocument,
|
|
298
330
|
hasConditionsInfo,
|
|
331
|
+
templateAction,
|
|
299
332
|
};
|
|
300
333
|
},
|
|
301
334
|
});
|
|
@@ -305,16 +338,19 @@ export default defineComponent({
|
|
|
305
338
|
.v-expansion-panel-title__overlay {
|
|
306
339
|
background: #ffffff;
|
|
307
340
|
}
|
|
341
|
+
|
|
308
342
|
.v-expansion-panel-title {
|
|
309
343
|
height: 70px !important;
|
|
310
344
|
padding: 10px 20px !important;
|
|
311
345
|
}
|
|
346
|
+
|
|
312
347
|
.v-expansion-panels--variant-accordion > :last-child {
|
|
313
348
|
border-top-left-radius: 0.5rem !important;
|
|
314
349
|
border-top-right-radius: 0.5rem !important;
|
|
315
350
|
border-top-left-radius: 0.5rem !important;
|
|
316
351
|
border-radius: 0.5rem !important;
|
|
317
352
|
}
|
|
353
|
+
|
|
318
354
|
.v-expansion-panel-text__wrapper {
|
|
319
355
|
padding: 10px 20px !important;
|
|
320
356
|
}
|
package/composables/constants.ts
CHANGED
package/locales/ru.json
CHANGED
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
"underageShouldBeLess18": "Несовершеннолетний не может быть старше 18 лет",
|
|
112
112
|
"needAgent": "Поле агент должно быть заполнено",
|
|
113
113
|
"tripInsuredAmountCalculated": "Высчитана страховая сумма для выбора",
|
|
114
|
-
"calcSumForUnder":"Внимание! Требуется пересчет страховой суммы андеррайтером. Заявка будет направлена Андеррайтеру"
|
|
114
|
+
"calcSumForUnder": "Внимание! Требуется пересчет страховой суммы андеррайтером. Заявка будет направлена Андеррайтеру"
|
|
115
115
|
},
|
|
116
116
|
"buttons": {
|
|
117
117
|
"dataInput": "Ввод данных",
|
|
@@ -263,7 +263,10 @@
|
|
|
263
263
|
"recalculation": "Перерасчет",
|
|
264
264
|
"survey": "Анкета",
|
|
265
265
|
"calculationAnnuityPayments": "Расчет аннуитетных выплат",
|
|
266
|
-
"preliminaryCalculation":"Расчет предварительный. Требуется заполнить все необходимые данные",
|
|
266
|
+
"preliminaryCalculation": "Расчет предварительный. Требуется заполнить все необходимые данные",
|
|
267
|
+
"createNewApp": "Создать новую заявку",
|
|
268
|
+
"template": "Шаблон",
|
|
269
|
+
"downloadDocument": "Скачать документ",
|
|
267
270
|
"productConditionsForm": {
|
|
268
271
|
"coverPeriod": "Срок страхования",
|
|
269
272
|
"payPeriod": "Период оплаты страховой премии",
|
|
@@ -272,10 +275,10 @@
|
|
|
272
275
|
"requestedSumInsured": "Страховая сумма",
|
|
273
276
|
"requestedSumInsuredInTenge": "Страховая сумма в тенге",
|
|
274
277
|
"requestedSumInsuredInDollar": "Страховая сумма в долларах",
|
|
275
|
-
"totalAmount5":"Общая сумма (страховая сумма с учетом Гос. премии 5 %)",
|
|
276
|
-
"totalAmount7":"Общая сумма (страховая сумма с учетом Гос. премии 7 %)",
|
|
277
|
-
"statePremium5":"Гос. премия (5 %)",
|
|
278
|
-
"statePremium7":"Гос. премия (7 %)",
|
|
278
|
+
"totalAmount5": "Общая сумма (страховая сумма с учетом Гос. премии 5 %)",
|
|
279
|
+
"totalAmount7": "Общая сумма (страховая сумма с учетом Гос. премии 7 %)",
|
|
280
|
+
"statePremium5": "Гос. премия (5 %)",
|
|
281
|
+
"statePremium7": "Гос. премия (7 %)",
|
|
279
282
|
"sumInsured": "Страховая сумма",
|
|
280
283
|
"insurancePremiumPerMonth": "Страховая премия",
|
|
281
284
|
"hint": "Сумма рассчитывается автоматически",
|
|
@@ -296,7 +299,10 @@
|
|
|
296
299
|
"typeAnnuityInsurance": "Запрашиваемый вид аннуитетного страхования",
|
|
297
300
|
"termAnnuityPayments": "Запрашиваемый срок аннуитетных выплат",
|
|
298
301
|
"periodAnnuityPayment": "Запрашиваемый период аннуитетной выплаты",
|
|
299
|
-
"amountAnnuityPayments": "Запрашиваемый размер аннуитетных выплат"
|
|
302
|
+
"amountAnnuityPayments": "Запрашиваемый размер аннуитетных выплат",
|
|
303
|
+
"coverPeriodMonth": "Срок страхования (в месяцах)",
|
|
304
|
+
"totalRequestedSumInsured": "Общая страховая сумма",
|
|
305
|
+
"totalInsurancePremiumAmount": "Общая страховая премия"
|
|
300
306
|
},
|
|
301
307
|
"calculatorForm": {
|
|
302
308
|
"country": "Страна поездки",
|
|
@@ -337,7 +343,15 @@
|
|
|
337
343
|
"contractSignDate": "Дата заключение контракта",
|
|
338
344
|
"contractEndDate": "Дата завершения контракта",
|
|
339
345
|
"insuranceEndPeriod": "Срок действия страховой защиты",
|
|
340
|
-
"payPeriods": "Период уплаты страховых взносов"
|
|
346
|
+
"payPeriods": "Период уплаты страховых взносов",
|
|
347
|
+
"citizenship": "Гражданство",
|
|
348
|
+
"branch": "Филиал",
|
|
349
|
+
"branchCode": "Код филиала",
|
|
350
|
+
"applicationStage": "Стадия заявки",
|
|
351
|
+
"generalApplicationNumber": "Внешний номер заявки",
|
|
352
|
+
"productCode": "Код продукта",
|
|
353
|
+
"contract": "Контракт",
|
|
354
|
+
"checks": "Проверки"
|
|
341
355
|
},
|
|
342
356
|
"agent": {
|
|
343
357
|
"currency": "Валюта",
|
|
@@ -590,7 +604,8 @@
|
|
|
590
604
|
"noResident": "Нерезидентам отказано",
|
|
591
605
|
"policyholderAgeLimit": "Возраст Застрахованного должен быть не менее 18-ти лет",
|
|
592
606
|
"beneficiaryAgeLimit": "На дату подписания полиса возраст Выгодоприобретателя должен быть не более 15 лет",
|
|
593
|
-
"guaranteedPeriodLimit": "Период гарантированного срока не может быть больше срока аннуитетных выплат"
|
|
607
|
+
"guaranteedPeriodLimit": "Период гарантированного срока не может быть больше срока аннуитетных выплат",
|
|
608
|
+
"calculationPreliminary": "Расчет предварительный. Требуется заполнить все необходимые данные"
|
|
594
609
|
},
|
|
595
610
|
"code": "КЭС",
|
|
596
611
|
"fontSize": "Размер шрифта",
|
|
@@ -684,6 +699,19 @@
|
|
|
684
699
|
"agent": "Агент",
|
|
685
700
|
"insurancePay": "Страховая выплата подлежит осуществлению"
|
|
686
701
|
},
|
|
702
|
+
"insurers": {
|
|
703
|
+
"listInsured": "Список Застрахованных",
|
|
704
|
+
"templateInsured": "Шаблон для заполнения данных Застрахованных",
|
|
705
|
+
"sendListToFill": "Отправить список Страхователю для заполнения",
|
|
706
|
+
"completedListInsured": "Заполненный список Застрахованных",
|
|
707
|
+
"userFullName": "ФИО",
|
|
708
|
+
"iin": "ИИН",
|
|
709
|
+
"gender": "Пол",
|
|
710
|
+
"birthDate": "Дата рождения",
|
|
711
|
+
"insuranceAmount": "Страховая сумма",
|
|
712
|
+
"totalInsurancePremium": "Страховая премия",
|
|
713
|
+
"position": "Должность"
|
|
714
|
+
},
|
|
687
715
|
"agreementBlock": {
|
|
688
716
|
"title": "Согласие на сбор и обработку пресональных данных",
|
|
689
717
|
"text": "Я, предоставляю АО «Халык-Life» (БИН 051140004354) и (или) организациям, входящими в состав финансовой Группы «Халык» (Акционеру АО «Халык-Life» (БИН 940140000385) и его дочерним организациям), перестраховочным организациям, организации по формированию и ведению базы данных по страхованию (БИН 120940011577), юридическому лицу, осуществляющему деятельность по привлечению пенсионных взносов и пенсионным выплатам (БИН 971240002115), юридическому лицу, осуществляющему по решению Правительства Республики Казахстан деятельность по оказанию государственных услуг (БИН 160440007161), операторам/владельцам государственных баз данных согласие на сбор и обработку, трансграничную передачу и распространение моих персональных данных и информации, связанных со мной и моими близкими родственниками, из всех источников и баз данных, в том числе содержащих врачебную, налоговую, банковскую тайну, тайну пенсионных накоплений, и иную охраняемую законом тайну, зафиксированных на электронном, бумажном и (или) ином материальном носителе, с целью оказания АО «Халык-Life» функций страховой организации и вышеуказанными организациями финансовых и иных услуг, в том числе необходимых для заполнения/формирования заявлений и договоров, а также моей надлежащей идентификации, включая, но не ограничиваясь: фамилия, имя, отчество, гражданство, данные документа, удостоверяющего личность, индивидуальный идентификационный номер, дата и данные о рождении, пол, национальность, фото, биометрические данные, состояние здоровья, банковские реквизиты, сведения о дееспособности, сведения, необходимые для поддержания связи, сведения о размере суммы пенсионных накоплений и размере выкупной суммы, иные данные/информация, полученные и переданные на текущий момент и которые могут быть получены и переданы в будущем, из всех/во все возможных(-хабарлама ые) источников(-хабарлама и), в том числе любых(-хабарлама е) баз(-хабарлама ы) данных, в том числе баз данных: владельцев государственных баз данных, организации по формированию и ведению базы данных по страхованию, юридического лица, осуществляющего деятельность по привлечению пенсионных взносов и пенсионным выплатам, юридического лица, осуществляющего по решению Правительства Республики Казахстан деятельность по оказанию государственных услуг, которые будут или стали известны АО «Халык-Life» в процессе его деятельности и/или в рамках гражданско-хабарлама правовых и иных отношений с контрагентами в рамках соответствующего договора, предоставляю АО «Халык-Life» возможность передачи моих персональных данных уполномоченным органам, Акционеру АО «Халык-Life» и его дочерним организациям, аффилированным лицам АО «Халык-Life», организации по формированию и ведению базы данных по страхованию, операторам государственных баз данных, и иным третьим лицам, связанным, как в настоящее время, так и в будущем, с АО «Халык-Life» обстоятельствами или правоотношениями, и любым третьим лицам, когда АО «Халык-Life» обязан или вправе совершить такие действия в соответствии с требованиями законодательства и (или) внутренними документами. Настоящее согласие действует в период правоспособности АО «Халык-Life» (его правопреемника)."
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hl-core",
|
|
3
|
-
"version": "0.0.9-beta.
|
|
3
|
+
"version": "0.0.9-beta.12",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
6
|
"main": "nuxt.config.ts",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"dev": "nuxt dev",
|
|
29
29
|
"generate": "nuxt generate",
|
|
30
30
|
"preview": "nuxt preview",
|
|
31
|
-
"tk:all": "cd .. && cd baiterek && yarn typecheck && cd .. && cd bolashak && yarn typecheck && cd .. && cd calculator && yarn typecheck && cd .. && cd efo && yarn typecheck && cd .. && cd gons && yarn typecheck && cd .. && cd kazyna && yarn typecheck && cd .. && cd lifebusiness && yarn typecheck && cd .. && cd liferenta && yarn typecheck && cd .. && cd lifetrip && yarn typecheck && cd .. && cd core",
|
|
32
|
-
"i:all": "cd .. && cd baiterek && yarn && cd .. && cd bolashak && yarn && cd .. && cd calculator && yarn && cd .. && cd efo && yarn && cd .. && cd gons && yarn && cd .. && cd kazyna && yarn && cd .. && cd lifebusiness && yarn && cd .. && cd liferenta && yarn && cd .. && cd lifetrip && yarn && cd .. && cd core",
|
|
31
|
+
"tk:all": "cd .. && cd baiterek && yarn typecheck && cd .. && cd bolashak && yarn typecheck && cd .. && cd calculator && yarn typecheck && cd .. && cd daskamkorlyk && yarn typecheck && cd .. && cd efo && yarn typecheck && cd .. && cd gons && yarn typecheck && cd .. && cd kazyna && yarn typecheck && cd .. && cd lifebusiness && yarn typecheck && cd .. && cd liferenta && yarn typecheck && cd .. && cd lifetrip && yarn typecheck && cd .. && cd core",
|
|
32
|
+
"i:all": "cd .. && cd baiterek && yarn && cd .. && cd bolashak && yarn && cd .. && cd calculator && yarn && cd .. && cd daskamkorlyk && yarn && cd .. && cd efo && yarn && cd .. && cd gons && yarn && cd .. && cd kazyna && yarn && cd .. && cd lifebusiness && yarn && cd .. && cd liferenta && yarn && cd .. && cd lifetrip && yarn && cd .. && cd core",
|
|
33
33
|
"update:core": "git checkout -b %npm_package_version% && git add . && git commit -m \"%npm_package_version%\" && git push && git checkout main",
|
|
34
34
|
"update:aml": "cd ../../aml/aml && yarn && cd ../checkcontract && yarn && cd ../checkcontragent && yarn && cd.. && git checkout -b %npm_package_version% && git add . && git commit -m \"%npm_package_version%\" && git push && git checkout main && cd ../efo/core",
|
|
35
35
|
"update:lka": "cd .. && cd lka && yarn && git checkout -b %npm_package_version% && git add . && git commit -m \"%npm_package_version%\" && git push && git checkout main && cd .. && cd core",
|