hl-core 0.0.8-beta.35 → 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/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/package.json +14 -10
- package/pages/500.vue +1 -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>
|