hl-core 0.0.8-beta.34 → 0.0.8-beta.36
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/index.ts +11 -1
- package/components/Button/Btn.vue +1 -1
- package/components/Button/ScrollButtons.vue +2 -2
- package/components/Complex/Page.vue +1 -1
- package/components/Dialog/Dialog.vue +3 -3
- package/components/Dialog/FamilyDialog.vue +7 -4
- package/components/Form/FormBlock.vue +10 -10
- package/components/Form/FormToggle.vue +2 -3
- package/components/Form/ManagerAttachment.vue +17 -17
- package/components/Form/ProductConditionsBlock.vue +8 -8
- package/components/Input/Datepicker.vue +1 -1
- package/components/Input/FileInput.vue +2 -2
- package/components/Input/FormInput.vue +3 -3
- package/components/Input/PanelInput.vue +1 -1
- package/components/Input/RoundedInput.vue +2 -2
- package/components/Input/RoundedSelect.vue +1 -1
- package/components/Layout/Drawer.vue +2 -2
- package/components/Layout/Loader.vue +1 -1
- package/components/Layout/SettingsPanel.vue +16 -10
- package/components/Menu/MenuHover.vue +1 -1
- package/components/Menu/MenuNav.vue +2 -3
- package/components/Menu/MenuNavItem.vue +1 -1
- package/components/Pages/Anketa.vue +13 -18
- package/components/Pages/Auth.vue +18 -25
- package/components/Pages/Documents.vue +3 -3
- package/components/Pages/InvoiceInfo.vue +4 -4
- package/components/Pages/MemberForm.vue +154 -151
- package/components/Pages/ProductAgreement.vue +4 -2
- package/components/Pages/ProductConditions.vue +117 -94
- package/components/Panel/PanelHandler.vue +22 -23
- package/components/Utilities/JsonViewer.vue +1 -1
- package/layouts/default.vue +3 -3
- package/locales/en.json +2 -1
- package/locales/kz.json +2 -1
- package/locales/ru.json +2 -1
- package/package.json +14 -1
- package/pages/500.vue +1 -1
- package/store/data.store.js +11 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<base-content :title="$t('agreementBlock.title')" class="!w-full">
|
|
3
|
-
<p class="h-full p-4 lg:p-8 leading-8 font-medium" :class="[$libStyles.scrollPage, $libStyles.textSimple]"
|
|
2
|
+
<base-content :title="$dataStore.t('agreementBlock.title')" class="!w-full">
|
|
3
|
+
<p class="h-full p-4 lg:p-8 leading-8 font-medium" :class="[$libStyles.scrollPage, $libStyles.textSimple]">
|
|
4
|
+
{{ $dataStore.t('agreementBlock.text') }}
|
|
5
|
+
</p>
|
|
4
6
|
</base-content>
|
|
5
7
|
</template>
|
|
6
8
|
|
|
@@ -1,144 +1,143 @@
|
|
|
1
1
|
<template>
|
|
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
|
-
<base-form-section v-if="whichProduct === 'gons'" :title="$t('productConditionsForm.requestedProductConditions')" :class="[$libStyles.textSimple]">
|
|
4
|
+
<base-form-section v-if="whichProduct === 'gons'" :title="$dataStore.t('productConditionsForm.requestedProductConditions')" :class="[$libStyles.textSimple]">
|
|
5
5
|
<base-form-text-section
|
|
6
6
|
class="mb-4"
|
|
7
7
|
title="Инвалидность I или II группы по причине несчастного случая, начиная с третьего года по любой причине, с освобождением от уплаты страховых взносов"
|
|
8
8
|
subtitle="Равна страховой сумме по основному покрытию"
|
|
9
|
-
|
|
9
|
+
/>
|
|
10
10
|
<base-form-text-section
|
|
11
11
|
title="Если лицо, назначенное Выгодоприобретателем, на дату осуществления Страховщиком страховой выплаты не достигло совершеннолетия (восемнадцатилетнего возраста), страховая
|
|
12
12
|
выплата подлежит осуществлению:"
|
|
13
13
|
subtitle="Если несовершеннолетний не достиг возраста 14 лет - законному представителю в соответствии с законодательством Республики Казахстан"
|
|
14
|
-
|
|
14
|
+
/>
|
|
15
15
|
</base-form-section>
|
|
16
|
-
<base-form-section v-if="isUnderwriterRole && $dataStore.hasClientAnketa && $dataStore.isClientAnketaCondition" :title="$t('policyholderForm')">
|
|
16
|
+
<base-form-section v-if="isUnderwriterRole && $dataStore.hasClientAnketa && $dataStore.isClientAnketaCondition" :title="$dataStore.t('policyholderForm')">
|
|
17
17
|
<base-form-input
|
|
18
18
|
v-model="productConditionsForm.lifeMultiplyClient"
|
|
19
19
|
:maska="$maska.numbers"
|
|
20
20
|
:clearable="isRecalculationDisabled === false"
|
|
21
|
-
:label="$t('percent') + `Life Multiply`"
|
|
21
|
+
:label="$dataStore.t('percent') + `Life Multiply`"
|
|
22
22
|
:readonly="isRecalculationDisabled"
|
|
23
23
|
:rules="$dataStore.rules.recalculationMultiply"
|
|
24
|
-
|
|
24
|
+
/>
|
|
25
25
|
<base-form-input
|
|
26
26
|
v-model="productConditionsForm.lifeAdditiveClient"
|
|
27
27
|
:maska="$maska.numbers"
|
|
28
28
|
:clearable="isRecalculationDisabled === false"
|
|
29
|
-
:label="$t('percent') + `Life Additive`"
|
|
29
|
+
:label="$dataStore.t('percent') + `Life Additive`"
|
|
30
30
|
:readonly="isRecalculationDisabled"
|
|
31
31
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
32
|
-
|
|
33
|
-
<base-form-input v-model="formStore.policyholderForm.longName" :label="$t('labels.policyholderLongName')" :readonly="true"
|
|
34
|
-
<base-form-input v-model="formStore.policyholderForm.job" :label="$t('form.job')" :readonly="true"
|
|
35
|
-
<base-form-input v-model="formStore.policyholderForm.jobPosition" :label="$t('form.jobPosition')" :readonly="true"
|
|
36
|
-
<base-form-input v-model="formStore.policyholderForm.birthDate" :label="$t('form.birthDate')" :readonly="true"
|
|
37
|
-
<base-form-input v-model="formStore.policyholderForm.age" :label="$t('form.age')" :readonly="true"
|
|
38
|
-
<base-form-input v-model="formStore.policyholderForm.gender.nameRu" class="mb-4" :label="$t('form.gender')" :readonly="true"
|
|
32
|
+
/>
|
|
33
|
+
<base-form-input v-model="formStore.policyholderForm.longName" :label="$dataStore.t('labels.policyholderLongName')" :readonly="true" />
|
|
34
|
+
<base-form-input v-model="formStore.policyholderForm.job" :label="$dataStore.t('form.job')" :readonly="true" />
|
|
35
|
+
<base-form-input v-model="formStore.policyholderForm.jobPosition" :label="$dataStore.t('form.jobPosition')" :readonly="true" />
|
|
36
|
+
<base-form-input v-model="formStore.policyholderForm.birthDate" :label="$dataStore.t('form.birthDate')" :readonly="true" />
|
|
37
|
+
<base-form-input v-model="formStore.policyholderForm.age" :label="$dataStore.t('form.age')" :readonly="true" />
|
|
38
|
+
<base-form-input v-model="formStore.policyholderForm.gender.nameRu" class="mb-4" :label="$dataStore.t('form.gender')" :readonly="true" />
|
|
39
39
|
</base-form-section>
|
|
40
|
-
<base-form-section v-if="isUnderwriterRole && $dataStore.members.insuredApp.has === true" :title="$t('insuredForm')">
|
|
40
|
+
<base-form-section v-if="isUnderwriterRole && $dataStore.members.insuredApp.has === true" :title="$dataStore.t('insuredForm')">
|
|
41
41
|
<div v-for="(insured, index) of formStore.insuredForm" :key="index">
|
|
42
|
-
<base-form-input v-model="insured.longName" :label="$t('labels.insurerLongName')" :readonly="true"
|
|
43
|
-
<base-form-input v-model="insured.job" :label="$t('form.job')" :readonly="true"
|
|
44
|
-
<base-form-input v-model="insured.jobPosition" :label="$t('form.jobPosition')" :readonly="true"
|
|
45
|
-
<base-form-input v-model="insured.birthDate" :label="$t('form.birthDate')" :readonly="true"
|
|
46
|
-
<base-form-input v-model="insured.age" :label="$t('form.age')" :readonly="true"
|
|
47
|
-
<base-form-input v-model="insured.gender.nameRu" class="mb-4" :label="$t('form.gender')" :readonly="true"
|
|
42
|
+
<base-form-input v-model="insured.longName" :label="$dataStore.t('labels.insurerLongName')" :readonly="true" />
|
|
43
|
+
<base-form-input v-model="insured.job" :label="$dataStore.t('form.job')" :readonly="true" />
|
|
44
|
+
<base-form-input v-model="insured.jobPosition" :label="$dataStore.t('form.jobPosition')" :readonly="true" />
|
|
45
|
+
<base-form-input v-model="insured.birthDate" :label="$dataStore.t('form.birthDate')" :readonly="true" />
|
|
46
|
+
<base-form-input v-model="insured.age" :label="$dataStore.t('form.age')" :readonly="true" />
|
|
47
|
+
<base-form-input v-model="insured.gender.nameRu" class="mb-4" :label="$dataStore.t('form.gender')" :readonly="true" />
|
|
48
48
|
</div>
|
|
49
49
|
</base-form-section>
|
|
50
|
-
<base-form-section v-if="isUnderwriterRole" :title="$t('recalculationInfo')">
|
|
50
|
+
<base-form-section v-if="isUnderwriterRole" :title="$dataStore.t('recalculationInfo')">
|
|
51
51
|
<base-form-input
|
|
52
52
|
v-model="productConditionsForm.lifeMultiply"
|
|
53
53
|
:maska="$maska.numbers"
|
|
54
54
|
:clearable="isRecalculationDisabled === false"
|
|
55
|
-
:label="$t('percent') + `Life Multiply`"
|
|
55
|
+
:label="$dataStore.t('percent') + `Life Multiply`"
|
|
56
56
|
:readonly="isRecalculationDisabled"
|
|
57
57
|
:rules="$dataStore.rules.recalculationMultiply"
|
|
58
|
-
|
|
58
|
+
/>
|
|
59
59
|
<base-form-input
|
|
60
60
|
v-model="productConditionsForm.lifeAdditive"
|
|
61
61
|
:maska="$maska.numbers"
|
|
62
62
|
:clearable="isRecalculationDisabled === false"
|
|
63
|
-
:label="$t('percent') + `Life Additive`"
|
|
63
|
+
:label="$dataStore.t('percent') + `Life Additive`"
|
|
64
64
|
:readonly="isRecalculationDisabled"
|
|
65
65
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
66
|
-
|
|
66
|
+
/>
|
|
67
67
|
<base-form-input
|
|
68
68
|
v-if="hasAdbMultiply"
|
|
69
69
|
v-model="productConditionsForm.adbMultiply"
|
|
70
70
|
:maska="$maska.numbers"
|
|
71
71
|
:clearable="isRecalculationDisabled === false"
|
|
72
|
-
:label="$t('percent') + `Adb Multiply`"
|
|
72
|
+
:label="$dataStore.t('percent') + `Adb Multiply`"
|
|
73
73
|
:readonly="isRecalculationDisabled"
|
|
74
74
|
:rules="$dataStore.rules.recalculationMultiply"
|
|
75
|
-
|
|
75
|
+
/>
|
|
76
76
|
<base-form-input
|
|
77
77
|
v-if="hasAdbAdditive"
|
|
78
78
|
v-model="productConditionsForm.adbAdditive"
|
|
79
79
|
:maska="$maska.numbers"
|
|
80
80
|
:clearable="isRecalculationDisabled === false"
|
|
81
|
-
:label="$t('percent') + `Adb Additive`"
|
|
81
|
+
:label="$dataStore.t('percent') + `Adb Additive`"
|
|
82
82
|
:readonly="isRecalculationDisabled"
|
|
83
83
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
84
|
-
|
|
84
|
+
/>
|
|
85
85
|
<base-form-input
|
|
86
86
|
v-model="productConditionsForm.disabilityMultiply"
|
|
87
87
|
:maska="$maska.numbers"
|
|
88
88
|
:clearable="isRecalculationDisabled === false"
|
|
89
|
-
:label="$t('percent') + `Disability Multiply`"
|
|
89
|
+
:label="$dataStore.t('percent') + `Disability Multiply`"
|
|
90
90
|
:readonly="isRecalculationDisabled"
|
|
91
91
|
:rules="$dataStore.rules.recalculationMultiply"
|
|
92
|
-
|
|
92
|
+
/>
|
|
93
93
|
<base-form-input
|
|
94
94
|
v-model="productConditionsForm.disabilityAdditive"
|
|
95
95
|
:maska="$maska.numbers"
|
|
96
96
|
:clearable="isRecalculationDisabled === false"
|
|
97
|
-
:label="$t('percent') + `Disability Additive`"
|
|
97
|
+
:label="$dataStore.t('percent') + `Disability Additive`"
|
|
98
98
|
:readonly="isRecalculationDisabled"
|
|
99
99
|
:rules="$dataStore.rules.recalculationAdditive"
|
|
100
|
-
|
|
101
|
-
</base-form-input>
|
|
100
|
+
/>
|
|
102
101
|
<base-panel-input
|
|
103
102
|
v-if="hasRiskGroup"
|
|
104
103
|
v-model="productConditionsForm.riskGroup"
|
|
105
104
|
:value="productConditionsForm.riskGroup.nameRu"
|
|
106
|
-
:label="$t('productConditionsForm.riskGroup')"
|
|
105
|
+
:label="$dataStore.t('productConditionsForm.riskGroup')"
|
|
107
106
|
:clearable="isRecalculationDisabled === false"
|
|
108
107
|
:readonly="isRecalculationDisabled"
|
|
109
108
|
append-inner-icon="mdi mdi-chevron-right"
|
|
110
|
-
@append="openPanel($t('productConditionsForm.riskGroup'), $dataStore.riskGroup, 'riskGroup')"
|
|
111
|
-
|
|
109
|
+
@append="openPanel($dataStore.t('productConditionsForm.riskGroup'), $dataStore.riskGroup, 'riskGroup')"
|
|
110
|
+
/>
|
|
112
111
|
</base-form-section>
|
|
113
|
-
<base-form-section :title="$t('generalConditions')">
|
|
112
|
+
<base-form-section :title="$dataStore.t('generalConditions')">
|
|
114
113
|
<div v-if="isRecalculation && ($route.params.taskId === '0' || $dataStore.isCalculator)">
|
|
115
114
|
<base-form-input
|
|
116
115
|
v-model="productConditionsForm.signDate"
|
|
117
116
|
:maska="$maska.date"
|
|
118
117
|
:clearable="false"
|
|
119
118
|
:readonly="true"
|
|
120
|
-
:label="$t('form.signDate')"
|
|
119
|
+
:label="$dataStore.t('form.signDate')"
|
|
121
120
|
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
122
|
-
|
|
121
|
+
/>
|
|
123
122
|
<base-form-input
|
|
124
123
|
v-model="productConditionsForm.birthDate"
|
|
125
124
|
:maska="$maska.date"
|
|
126
125
|
:readonly="isDisabled"
|
|
127
126
|
:clearable="!isDisabled"
|
|
128
|
-
:label="$t('form.birthDate')"
|
|
127
|
+
:label="$dataStore.t('form.birthDate')"
|
|
129
128
|
:rules="$rules.required.concat($rules.birthDate)"
|
|
130
129
|
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
131
|
-
|
|
130
|
+
/>
|
|
132
131
|
<base-panel-input
|
|
133
132
|
v-model="productConditionsForm.gender"
|
|
134
133
|
:value="productConditionsForm.gender.nameRu"
|
|
135
134
|
:readonly="isDisabled"
|
|
136
135
|
:clearable="!isDisabled"
|
|
137
|
-
:label="$t('form.gender')"
|
|
136
|
+
:label="$dataStore.t('form.gender')"
|
|
138
137
|
:rules="$rules.objectRequired"
|
|
139
138
|
append-inner-icon="mdi mdi-chevron-right"
|
|
140
|
-
@append="openPanel($t('form.gender'), $dataStore.gender, 'gender')"
|
|
141
|
-
|
|
139
|
+
@append="openPanel($dataStore.t('form.gender'), $dataStore.gender, 'gender')"
|
|
140
|
+
/>
|
|
142
141
|
</div>
|
|
143
142
|
<base-form-input
|
|
144
143
|
v-model="productConditionsForm.coverPeriod"
|
|
@@ -146,8 +145,8 @@
|
|
|
146
145
|
:readonly="isDisabled"
|
|
147
146
|
:clearable="!isDisabled"
|
|
148
147
|
:rules="coverPeriodRule"
|
|
149
|
-
:label="$t(whichProduct === 'gons' ? 'productConditionsForm.coverPeriodFrom3to20' : 'productConditionsForm.coverPeriod')"
|
|
150
|
-
|
|
148
|
+
:label="$dataStore.t(whichProduct === 'gons' ? 'productConditionsForm.coverPeriodFrom3to20' : 'productConditionsForm.coverPeriod')"
|
|
149
|
+
/>
|
|
151
150
|
<base-panel-input
|
|
152
151
|
v-if="hasPaymentPeriod"
|
|
153
152
|
v-model="productConditionsForm.paymentPeriod"
|
|
@@ -155,10 +154,10 @@
|
|
|
155
154
|
:readonly="isDisabled"
|
|
156
155
|
:clearable="!isDisabled"
|
|
157
156
|
:rules="$rules.objectRequired"
|
|
158
|
-
:label="$t('productConditionsForm.processPaymentPeriod')"
|
|
157
|
+
:label="$dataStore.t('productConditionsForm.processPaymentPeriod')"
|
|
159
158
|
append-inner-icon="mdi mdi-chevron-right"
|
|
160
|
-
@append="openPanel($t('productConditionsForm.processPaymentPeriod'), $dataStore.processPaymentPeriod, 'paymentPeriod', $dataStore.getProcessPaymentPeriod)"
|
|
161
|
-
|
|
159
|
+
@append="openPanel($dataStore.t('productConditionsForm.processPaymentPeriod'), $dataStore.processPaymentPeriod, 'paymentPeriod', $dataStore.getProcessPaymentPeriod)"
|
|
160
|
+
/>
|
|
162
161
|
<base-panel-input
|
|
163
162
|
v-if="hasProcessIndexRate"
|
|
164
163
|
v-model="productConditionsForm.processIndexRate"
|
|
@@ -166,67 +165,67 @@
|
|
|
166
165
|
:readonly="isDisabled"
|
|
167
166
|
:clearable="!isDisabled"
|
|
168
167
|
:rules="$rules.objectRequired"
|
|
169
|
-
:label="$t('productConditionsForm.processIndexRate')"
|
|
168
|
+
:label="$dataStore.t('productConditionsForm.processIndexRate')"
|
|
170
169
|
append-inner-icon="mdi mdi-chevron-right"
|
|
171
|
-
@append="openPanel($t('productConditionsForm.processIndexRate'), $dataStore.processIndexRate, 'processIndexRate', $dataStore.getProcessIndexRate)"
|
|
172
|
-
|
|
170
|
+
@append="openPanel($dataStore.t('productConditionsForm.processIndexRate'), $dataStore.processIndexRate, 'processIndexRate', $dataStore.getProcessIndexRate)"
|
|
171
|
+
/>
|
|
173
172
|
<base-form-input
|
|
174
173
|
v-model="productConditionsForm.requestedSumInsured"
|
|
175
|
-
:readonly="
|
|
174
|
+
:readonly="isDisabledSum"
|
|
176
175
|
:clearable="!isDisabled"
|
|
177
176
|
:rules="requestedSumInsured"
|
|
178
177
|
:label="requestedSumInsuredLabel"
|
|
179
178
|
:suffix="$constants.currencySymbols.kzt"
|
|
180
179
|
@input="onInputSum"
|
|
181
180
|
@onClear="onClearSum"
|
|
182
|
-
|
|
181
|
+
/>
|
|
183
182
|
<base-form-input
|
|
184
183
|
v-if="hasRequestedSumInsuredInDollar"
|
|
185
184
|
v-model="productConditionsForm.requestedSumInsuredInDollar"
|
|
186
|
-
:readonly="
|
|
185
|
+
:readonly="isDisabledSumDollar"
|
|
187
186
|
:clearable="!isDisabled"
|
|
188
187
|
:rules="requestedSumInsured"
|
|
189
|
-
:label="$t('productConditionsForm.requestedSumInsuredInDollar')"
|
|
188
|
+
:label="$dataStore.t('productConditionsForm.requestedSumInsuredInDollar')"
|
|
190
189
|
:suffix="$constants.currencySymbols.usd"
|
|
191
190
|
@input="onInputSumDollar"
|
|
192
191
|
@onClear="onClearSumDollar"
|
|
193
|
-
|
|
192
|
+
/>
|
|
194
193
|
<base-form-input
|
|
195
194
|
v-model="productConditionsForm.insurancePremiumPerMonth"
|
|
196
195
|
:readonly="isDisabled"
|
|
197
196
|
:clearable="!isDisabled"
|
|
198
197
|
:rules="insurancePremiumPerMonth"
|
|
199
|
-
:label="$t('productConditionsForm.insurancePremiumAmount')"
|
|
198
|
+
:label="$dataStore.t('productConditionsForm.insurancePremiumAmount')"
|
|
200
199
|
:suffix="$constants.currencySymbols.kzt"
|
|
201
200
|
@input="onInputInsurancePremiumPerMonth"
|
|
202
201
|
@onClear="onClearPremium"
|
|
203
|
-
|
|
202
|
+
/>
|
|
204
203
|
<base-form-input
|
|
205
204
|
v-if="hasInsurancePremiumPerMonthInDollar"
|
|
206
205
|
v-model="productConditionsForm.insurancePremiumPerMonthInDollar"
|
|
207
206
|
:readonly="isDisabled"
|
|
208
207
|
:clearable="!isDisabled"
|
|
209
208
|
:rules="insurancePremiumPerMonth"
|
|
210
|
-
:label="$t('productConditionsForm.insurancePremiumAmountInDollar')"
|
|
209
|
+
:label="$dataStore.t('productConditionsForm.insurancePremiumAmountInDollar')"
|
|
211
210
|
:suffix="$constants.currencySymbols.usd"
|
|
212
211
|
@input="onInputInsurancePremiumPerMonthInDollar"
|
|
213
212
|
@onClear="onClearPremiumDollar"
|
|
214
|
-
|
|
213
|
+
/>
|
|
215
214
|
<base-form-input
|
|
216
215
|
v-if="hasCurrency && $dataStore.currencies.usd"
|
|
217
216
|
v-model="$dataStore.currencies.usd"
|
|
218
217
|
:readonly="true"
|
|
219
|
-
:label="$t('productConditionsForm.dollarExchangeRateNBRK')"
|
|
218
|
+
:label="$dataStore.t('productConditionsForm.dollarExchangeRateNBRK')"
|
|
220
219
|
:suffix="$constants.currencySymbols.kzt"
|
|
221
|
-
|
|
220
|
+
/>
|
|
222
221
|
</base-form-section>
|
|
223
|
-
<base-form-section :title="$t('calculationAnnuityPayments')" v-if="hasAnnuityPayments">
|
|
222
|
+
<base-form-section :title="$dataStore.t('calculationAnnuityPayments')" v-if="hasAnnuityPayments">
|
|
224
223
|
<base-form-toggle
|
|
225
224
|
v-model="productConditionsForm.additionalConditionAnnuityPayments"
|
|
226
|
-
:title="$t('productConditionsForm.guaranteedTermAnnuityPayments')"
|
|
225
|
+
:title="$dataStore.t('productConditionsForm.guaranteedTermAnnuityPayments')"
|
|
227
226
|
:disabled="isDisabled"
|
|
228
227
|
:has-border="false"
|
|
229
|
-
|
|
228
|
+
/>
|
|
230
229
|
<base-form-input
|
|
231
230
|
v-if="productConditionsForm.additionalConditionAnnuityPayments"
|
|
232
231
|
v-model="productConditionsForm.guaranteedPeriod"
|
|
@@ -237,47 +236,52 @@
|
|
|
237
236
|
? [$dataStore.rules.guaranteedPeriodLimit(productConditionsForm.guaranteedPeriod, productConditionsForm.termAnnuityPayments)]
|
|
238
237
|
: []
|
|
239
238
|
"
|
|
240
|
-
:label="$t('productConditionsForm.guaranteedPeriod')"
|
|
241
|
-
|
|
239
|
+
:label="$dataStore.t('productConditionsForm.guaranteedPeriod')"
|
|
240
|
+
/>
|
|
242
241
|
<base-panel-input
|
|
243
242
|
v-model="productConditionsForm.typeAnnuityInsurance"
|
|
244
243
|
:value="productConditionsForm.typeAnnuityInsurance.nameRu"
|
|
245
244
|
:readonly="isDisabled"
|
|
246
245
|
:clearable="!isDisabled"
|
|
247
246
|
:rules="$rules.objectRequired"
|
|
248
|
-
:label="$t('productConditionsForm.typeAnnuityInsurance')"
|
|
247
|
+
:label="$dataStore.t('productConditionsForm.typeAnnuityInsurance')"
|
|
249
248
|
append-inner-icon="mdi mdi-chevron-right"
|
|
250
|
-
@append="openPanel($t('productConditionsForm.typeAnnuityInsurance'), $dataStore.dicAnnuityTypeList, 'typeAnnuityInsurance', $dataStore.getDicAnnuityTypeList)"
|
|
251
|
-
|
|
249
|
+
@append="openPanel($dataStore.t('productConditionsForm.typeAnnuityInsurance'), $dataStore.dicAnnuityTypeList, 'typeAnnuityInsurance', $dataStore.getDicAnnuityTypeList)"
|
|
250
|
+
/>
|
|
252
251
|
<base-form-input
|
|
253
252
|
v-if="productConditionsForm.typeAnnuityInsurance.code !== 'Lifelong'"
|
|
254
253
|
v-model="productConditionsForm.termAnnuityPayments"
|
|
255
254
|
:readonly="isDisabled"
|
|
256
255
|
:clearable="!isDisabled"
|
|
257
256
|
:rules="$dataStore.rules.required.concat($dataStore.rules.numbers)"
|
|
258
|
-
:label="$t('productConditionsForm.termAnnuityPayments')"
|
|
259
|
-
|
|
257
|
+
:label="$dataStore.t('productConditionsForm.termAnnuityPayments')"
|
|
258
|
+
/>
|
|
260
259
|
<base-panel-input
|
|
261
260
|
v-model="productConditionsForm.periodAnnuityPayment"
|
|
262
261
|
:value="productConditionsForm.periodAnnuityPayment.nameRu"
|
|
263
262
|
:readonly="isDisabled"
|
|
264
263
|
:clearable="!isDisabled"
|
|
265
264
|
:rules="$rules.objectRequired"
|
|
266
|
-
:label="$t('productConditionsForm.periodAnnuityPayment')"
|
|
265
|
+
:label="$dataStore.t('productConditionsForm.periodAnnuityPayment')"
|
|
267
266
|
append-inner-icon="mdi mdi-chevron-right"
|
|
268
267
|
@append="
|
|
269
|
-
openPanel(
|
|
268
|
+
openPanel(
|
|
269
|
+
$dataStore.t('productConditionsForm.processPaymentPeriod'),
|
|
270
|
+
$dataStore.processAnnuityPaymentPeriod,
|
|
271
|
+
'periodAnnuityPayment',
|
|
272
|
+
$dataStore.getProcessAnnuityPaymentPeriod,
|
|
273
|
+
)
|
|
270
274
|
"
|
|
271
|
-
|
|
275
|
+
/>
|
|
272
276
|
<base-form-input
|
|
273
277
|
v-model="productConditionsForm.amountAnnuityPayments"
|
|
274
278
|
:readonly="isDisabled"
|
|
275
279
|
:clearable="!isDisabled"
|
|
276
280
|
:rules="amountAnnuityPayments"
|
|
277
|
-
:label="$t('productConditionsForm.amountAnnuityPayments')"
|
|
278
|
-
|
|
281
|
+
:label="$dataStore.t('productConditionsForm.amountAnnuityPayments')"
|
|
282
|
+
/>
|
|
279
283
|
</base-form-section>
|
|
280
|
-
<base-form-section v-if="additionalTerms && additionalTerms.length" :title="$t('productConditionsForm.additional')">
|
|
284
|
+
<base-form-section v-if="additionalTerms && additionalTerms.length" :title="$dataStore.t('productConditionsForm.additional')">
|
|
281
285
|
<div v-for="(term, index) of additionalTerms" :key="index">
|
|
282
286
|
<base-panel-input
|
|
283
287
|
v-if="filterTermConditions(term)"
|
|
@@ -289,40 +293,45 @@
|
|
|
289
293
|
append-inner-icon="mdi mdi-chevron-right"
|
|
290
294
|
:suffix="!!term.amount ? `${formatTermValue(term.amount)} ${currencySymbolsAddTerm}` : ''"
|
|
291
295
|
@append="openTermPanel(term.coverTypeName, $dataStore.getAdditionalInsuranceTermsAnswers, term.coverTypeId, index)"
|
|
292
|
-
|
|
296
|
+
/>
|
|
293
297
|
</div>
|
|
294
298
|
</base-form-section>
|
|
295
299
|
</v-form>
|
|
296
|
-
<base-btn
|
|
300
|
+
<base-btn
|
|
301
|
+
v-if="!$dataStore.isCalculator && isRecalculation && hasCalculated"
|
|
302
|
+
:btn="$libStyles.greenLightBtn"
|
|
303
|
+
:text="$dataStore.t('buttons.toStatement')"
|
|
304
|
+
@click="toStatement"
|
|
305
|
+
/>
|
|
297
306
|
<base-btn
|
|
298
307
|
v-if="$dataStore.isCalculator ? true : !isDisabled && isTask && ($dataStore.isInitiator() || $dataStore.isUnderwriter())"
|
|
299
308
|
:loading="isCalculating"
|
|
300
|
-
:text="$t('buttons.calculate')"
|
|
309
|
+
:text="$dataStore.t('buttons.calculate')"
|
|
301
310
|
@click="submitForm"
|
|
302
|
-
|
|
311
|
+
/>
|
|
303
312
|
<div v-if="$dataStore.isTask() && $dataStore.isUnderwriter() && !isRecalculationDisabled" class="flex gap-3">
|
|
304
|
-
<base-btn :text="$t('buttons.calcSum')" type="submit" @click.prevent="underwriterCalculate('sum')" :loading="isCalculating" />
|
|
305
|
-
<base-btn :text="$t('buttons.calcPremium')" type="submit" @click.prevent="underwriterCalculate('premium')" :loading="isCalculating" />
|
|
313
|
+
<base-btn :text="$dataStore.t('buttons.calcSum')" type="submit" @click.prevent="underwriterCalculate('sum')" :loading="isCalculating" />
|
|
314
|
+
<base-btn :text="$dataStore.t('buttons.calcPremium')" type="submit" @click.prevent="underwriterCalculate('premium')" :loading="isCalculating" />
|
|
306
315
|
</div>
|
|
307
316
|
<Teleport v-if="isPanelOpen" to="#panel-actions">
|
|
308
317
|
<div :class="[$libStyles.scrollPage]" class="flex flex-col items-center">
|
|
309
|
-
<base-rounded-input v-model.trim="searchQuery" :label="$t('labels.search')" class="w-full p-2" :hide-details="true"
|
|
318
|
+
<base-rounded-input v-model.trim="searchQuery" :label="$dataStore.t('labels.search')" class="w-full p-2" :hide-details="true" />
|
|
310
319
|
<div v-if="panelList && isPanelLoading === false" class="w-full flex flex-col gap-2 p-2">
|
|
311
|
-
<base-panel-select-item :text="$t('form.notChosen')" :selected="panelValue.nameRu === null" @click="pickPanelValue(new Value())"
|
|
320
|
+
<base-panel-select-item :text="$dataStore.t('form.notChosen')" :selected="panelValue.nameRu === null" @click="pickPanelValue(new Value())" />
|
|
312
321
|
<base-panel-select-item
|
|
313
322
|
v-for="(item, index) of panelList.filter(i => i.nameRu && (i.nameRu as string).match(new RegExp(searchQuery, 'i')))"
|
|
314
323
|
:key="index"
|
|
315
324
|
:text="(item.nameRu as string)"
|
|
316
325
|
:selected="item.nameRu === panelValue.nameRu"
|
|
317
326
|
@click="pickPanelValue(item)"
|
|
318
|
-
|
|
327
|
+
/>
|
|
319
328
|
</div>
|
|
320
|
-
<base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50"
|
|
329
|
+
<base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50" />
|
|
321
330
|
</div>
|
|
322
331
|
</Teleport>
|
|
323
332
|
<Teleport v-if="isTermsPanelOpen" to="#panel-actions">
|
|
324
333
|
<div :class="[$libStyles.scrollPage]" class="flex flex-col items-center">
|
|
325
|
-
<base-rounded-input v-model.trim="searchQuery" :label="$t('labels.search')" class="w-full p-2" :hide-details="true"
|
|
334
|
+
<base-rounded-input v-model.trim="searchQuery" :label="$dataStore.t('labels.search')" class="w-full p-2" :hide-details="true" />
|
|
326
335
|
<div v-if="panelList && isPanelLoading === false" class="w-full flex flex-col gap-2 p-2">
|
|
327
336
|
<base-panel-select-item
|
|
328
337
|
v-for="(item, index) of panelList.filter(i => i.nameRu && (i.nameRu as string).match(new RegExp(searchQuery, 'i')))"
|
|
@@ -330,9 +339,9 @@
|
|
|
330
339
|
:text="(item.nameRu as string)"
|
|
331
340
|
:selected="item.nameRu === termValue?.coverSumName"
|
|
332
341
|
@click="pickTermValue(item)"
|
|
333
|
-
|
|
342
|
+
/>
|
|
334
343
|
</div>
|
|
335
|
-
<base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50"
|
|
344
|
+
<base-loader v-if="isPanelLoading" class="absolute mt-10" :size="50" />
|
|
336
345
|
</div>
|
|
337
346
|
</Teleport>
|
|
338
347
|
</section>
|
|
@@ -466,6 +475,18 @@ export default defineComponent({
|
|
|
466
475
|
}
|
|
467
476
|
return dataStore.t('productConditionsForm.requestedSumInsured');
|
|
468
477
|
});
|
|
478
|
+
const isDisabledSum = computed(() => {
|
|
479
|
+
if (whichProduct.value === 'halykkazyna') {
|
|
480
|
+
return true;
|
|
481
|
+
}
|
|
482
|
+
return isDisabled.value;
|
|
483
|
+
});
|
|
484
|
+
const isDisabledSumDollar = computed(() => {
|
|
485
|
+
if (whichProduct.value === 'halykkazyna') {
|
|
486
|
+
return true;
|
|
487
|
+
}
|
|
488
|
+
return isDisabled.value;
|
|
489
|
+
});
|
|
469
490
|
|
|
470
491
|
const formatTermValue = (term: number) => {
|
|
471
492
|
if (term !== null) {
|
|
@@ -885,6 +906,8 @@ export default defineComponent({
|
|
|
885
906
|
currencySymbolsAddTerm,
|
|
886
907
|
amountAnnuityPayments,
|
|
887
908
|
requestedSumInsuredLabel,
|
|
909
|
+
isDisabledSum,
|
|
910
|
+
isDisabledSumDollar,
|
|
888
911
|
|
|
889
912
|
// Rules
|
|
890
913
|
coverPeriodRule,
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
<section v-if="sendingActions">
|
|
3
3
|
<div :class="[$libStyles.flexColNav]">
|
|
4
4
|
<v-form ref="vForm">
|
|
5
|
-
<base-rounded-input v-model.trim="actionCause" placeholder="Причина" :rules="$rules.required"
|
|
5
|
+
<base-rounded-input v-model.trim="actionCause" placeholder="Причина" :rules="$rules.required" />
|
|
6
6
|
</v-form>
|
|
7
|
-
<base-btn :text="buttonText" :loading="loading" @click="submitForm"
|
|
7
|
+
<base-btn :text="buttonText" :loading="loading" @click="submitForm" />
|
|
8
8
|
</div>
|
|
9
9
|
</section>
|
|
10
10
|
<section v-if="acceptAction">
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
>{{ `Запрашиваемая страховая сумма: ` }} <b>{{ `${requestedSumInsured}₸` }}</b>
|
|
18
18
|
</span>
|
|
19
19
|
</base-content-block>
|
|
20
|
-
<base-btn :text="$t('confirm.yes')" @click="handleTask"
|
|
21
|
-
<base-btn :btn="$libStyles.blueLightBtn" :text="$t('confirm.no')" @click="closePanel"
|
|
20
|
+
<base-btn :text="$dataStore.t('confirm.yes')" @click="handleTask" />
|
|
21
|
+
<base-btn :btn="$libStyles.blueLightBtn" :text="$dataStore.t('confirm.no')" @click="closePanel" />
|
|
22
22
|
</div>
|
|
23
23
|
</section>
|
|
24
24
|
<section v-if="signingActions" class="relative">
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
<v-expansion-panel-title class="h-[80px]" :class="$libStyles.textTitle">{{ `${signUrl.longName} - ${signUrl.iin}` }}</v-expansion-panel-title>
|
|
32
32
|
<v-expansion-panel-text class="border-t-[1px]">
|
|
33
33
|
<section class="flex flex-col gap-4 py-3" :class="$libStyles.textSimple">
|
|
34
|
-
<base-btn :loading="loading" :text="$t('sign.copyCloud')" @click="$dataStore.copyToClipboard(signUrl.uri)"
|
|
35
|
-
<base-btn :loading="loading" :btn="$libStyles.blueLightBtn" :text="$t('sign.recipientNumber')" @click="openSmsPanel(signUrl)"
|
|
34
|
+
<base-btn :loading="loading" :text="$dataStore.t('sign.copyCloud')" @click="$dataStore.copyToClipboard(signUrl.uri)" />
|
|
35
|
+
<base-btn :loading="loading" :btn="$libStyles.blueLightBtn" :text="$dataStore.t('sign.recipientNumber')" @click="openSmsPanel(signUrl)" />
|
|
36
36
|
</section>
|
|
37
37
|
</v-expansion-panel-text>
|
|
38
38
|
</v-expansion-panel>
|
|
39
39
|
</v-expansion-panels>
|
|
40
|
-
<base-list-empty v-else
|
|
40
|
+
<base-list-empty v-else />
|
|
41
41
|
</div>
|
|
42
42
|
</div>
|
|
43
43
|
<div v-if="isSendNumberOpen" :class="[$libStyles.flexColNav]">
|
|
@@ -51,12 +51,12 @@
|
|
|
51
51
|
v-model="phoneNumber"
|
|
52
52
|
:maska="$maska.phone"
|
|
53
53
|
:rules="$rules.required.concat($rules.phoneFormat)"
|
|
54
|
-
:label="$t('form.phoneNumber')"
|
|
54
|
+
:label="$dataStore.t('form.phoneNumber')"
|
|
55
55
|
placeholder="+7 7"
|
|
56
|
-
|
|
56
|
+
/>
|
|
57
57
|
</v-form>
|
|
58
|
-
<base-btn :text="$t('buttons.sendSMS')" :loading="loading" @click="submitForm"
|
|
59
|
-
|
|
58
|
+
<base-btn :text="$dataStore.t('buttons.sendSMS')" :loading="loading" @click="submitForm"
|
|
59
|
+
/></base-form-section>
|
|
60
60
|
</div>
|
|
61
61
|
</base-fade-transition>
|
|
62
62
|
</div>
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
<div>
|
|
66
66
|
<base-fade-transition>
|
|
67
67
|
<div v-if="!isSendNumberOpen" :class="[$libStyles.flexColNav]">
|
|
68
|
-
<base-btn :loading="loading" :text="$t('payment.copyUrl')" @click="$dataStore.copyToClipboard(formStore.epayLink)"
|
|
69
|
-
<base-btn :loading="loading" :btn="$libStyles.blueLightBtn" :text="$t('payment.recipientNumber')" @click="openEpayPanel"
|
|
68
|
+
<base-btn :loading="loading" :text="$dataStore.t('payment.copyUrl')" @click="$dataStore.copyToClipboard(formStore.epayLink)" />
|
|
69
|
+
<base-btn :loading="loading" :btn="$libStyles.blueLightBtn" :text="$dataStore.t('payment.recipientNumber')" @click="openEpayPanel" />
|
|
70
70
|
</div>
|
|
71
71
|
<div v-if="isSendNumberOpen" :class="[$libStyles.flexColNav]">
|
|
72
72
|
<i
|
|
@@ -79,11 +79,11 @@
|
|
|
79
79
|
v-model="phoneNumber"
|
|
80
80
|
:maska="$maska.phone"
|
|
81
81
|
:rules="$rules.required.concat($rules.phoneFormat)"
|
|
82
|
-
:label="$t('form.phoneNumber')"
|
|
82
|
+
:label="$dataStore.t('form.phoneNumber')"
|
|
83
83
|
placeholder="+7 7"
|
|
84
|
-
|
|
84
|
+
/>
|
|
85
85
|
</v-form>
|
|
86
|
-
<base-btn :text="$t('buttons.sendSMS')" :loading="loading" @click="submitForm"
|
|
86
|
+
<base-btn :text="$dataStore.t('buttons.sendSMS')" :loading="loading" @click="submitForm" />
|
|
87
87
|
</base-form-section>
|
|
88
88
|
</div>
|
|
89
89
|
</base-fade-transition>
|
|
@@ -93,21 +93,20 @@
|
|
|
93
93
|
<div :class="[$libStyles.flexColNav]">
|
|
94
94
|
<v-form ref="vForm">
|
|
95
95
|
<base-content-block class="flex flex-col gap-3">
|
|
96
|
-
<base-form-input v-model.trim="formStore.affilationResolution.number" :rules="$rules.required" :label="$t('form.documentNumber')"
|
|
96
|
+
<base-form-input v-model.trim="formStore.affilationResolution.number" :rules="$rules.required" :label="$dataStore.t('form.documentNumber')" />
|
|
97
97
|
<base-form-input
|
|
98
98
|
v-model="formStore.affilationResolution.date"
|
|
99
99
|
:maska="$maska.date"
|
|
100
100
|
:rules="$rules.required"
|
|
101
|
-
:label="$t('form.date')"
|
|
102
|
-
append-inner-icon="mdi mdi-calendar-blank-outline"
|
|
103
|
-
|
|
104
|
-
<base-file-input v-if="!affiliationDocument" @input.prevent="onFileChange($event)"></base-file-input>
|
|
101
|
+
:label="$dataStore.t('form.date')"
|
|
102
|
+
append-inner-icon="mdi mdi-calendar-blank-outline" />
|
|
103
|
+
<base-file-input v-if="!affiliationDocument" @input.prevent="onFileChange($event)" />
|
|
105
104
|
<base-empty-form-field v-if="affiliationDocument" class="justify-between">
|
|
106
105
|
{{ `${affiliationDocument.fileTypeName} - ${affiliationDocument.fileName}` }}
|
|
107
|
-
<i class="cursor-pointer mdi mdi-file-document mr-6 text-[#a0b3d8] text-xl"></i
|
|
106
|
+
<i class="cursor-pointer mdi mdi-file-document mr-6 text-[#a0b3d8] text-xl"></i></base-empty-form-field
|
|
108
107
|
></base-content-block>
|
|
109
108
|
</v-form>
|
|
110
|
-
<base-btn :text="buttonText" :loading="loading" @click="submitForm"
|
|
109
|
+
<base-btn :text="buttonText" :loading="loading" @click="submitForm" />
|
|
111
110
|
</div>
|
|
112
111
|
</section>
|
|
113
112
|
</template>
|
package/layouts/default.vue
CHANGED
|
@@ -19,11 +19,11 @@
|
|
|
19
19
|
@onLink="onLink"
|
|
20
20
|
>
|
|
21
21
|
<template #end>
|
|
22
|
-
<base-loader v-if="$dataStore.menu.loading" class="self-center m-5 opacity-70"
|
|
22
|
+
<base-loader v-if="$dataStore.menu.loading" class="self-center m-5 opacity-70" />
|
|
23
23
|
</template>
|
|
24
24
|
</base-menu-nav>
|
|
25
|
-
<slot
|
|
26
|
-
<base-settings-panel
|
|
25
|
+
<slot></slot>
|
|
26
|
+
<base-settings-panel />
|
|
27
27
|
</section>
|
|
28
28
|
</div>
|
|
29
29
|
</template>
|
package/locales/en.json
CHANGED
|
@@ -98,7 +98,8 @@
|
|
|
98
98
|
"beneficiary": "выгодоприобретатель",
|
|
99
99
|
"beneficialOwner": "бенефициарный собственник",
|
|
100
100
|
"spokesman": "представитель страхователя",
|
|
101
|
-
"noPermission": "You have no permission on {text}"
|
|
101
|
+
"noPermission": "You have no permission on {text}",
|
|
102
|
+
"courseChanged": "The exchange rate of the NB RK has changed, it is necessary to return it for revision and make a recalculation"
|
|
102
103
|
},
|
|
103
104
|
"buttons": {
|
|
104
105
|
"dataInput": "Input",
|