hl-core 0.0.10-beta.40 → 0.0.10-beta.41

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 CHANGED
@@ -642,6 +642,13 @@ export class ApiClass {
642
642
  url: `/Ekk/api/ContragentInsis/DictionaryItems/${dictName}?filter=${filterName}`,
643
643
  });
644
644
  }
645
+
646
+ async filterExecutorByRegion(dictName: string, filterName: string) {
647
+ return await this.axiosCall<Value[]>({
648
+ method: Methods.GET,
649
+ url: `/Ekk/api/ContragentInsis/DictionaryItems/${dictName}?filter=${filterName}`,
650
+ });
651
+ }
645
652
 
646
653
  async setINSISWorkData(data: Types.InsisWorkDataApp) {
647
654
  return await this.axiosCall({
@@ -55,6 +55,18 @@
55
55
  append-inner-icon="mdi mdi-chevron-right"
56
56
  @append="openPanel('AgentData', $dataStore.t('form.agent'))"
57
57
  />
58
+ <base-panel-input
59
+ v-if="isExecutorShown"
60
+ class="pl-1 pt-1"
61
+ v-model="formStore.ExecutorGPH"
62
+ :value="formStore.ExecutorGPH?.nameRu"
63
+ :readonly="isExecutorReadonly"
64
+ :clearable="!isExecutorReadonly"
65
+ :label="$dataStore.t('form.executor')"
66
+ :rules="$rules.objectRequired"
67
+ append-inner-icon="mdi mdi-chevron-right"
68
+ @append="openPanel('ExecutorGPH', $dataStore.t('form.executor'))"
69
+ />
58
70
  </v-form>
59
71
  </v-expansion-panel-text>
60
72
  </v-expansion-panel>
@@ -90,7 +102,10 @@
90
102
  </div>
91
103
  </div>
92
104
  </div>
93
- <div v-if="currentDictName === 'ManagerPolicy' || currentDictName === 'RegionPolicy' || currentDictName === 'SaleChanellPolicy'" class="w-full flex flex-col gap-2 p-2">
105
+ <div
106
+ v-if="currentDictName === 'ManagerPolicy' || currentDictName === 'RegionPolicy' || currentDictName === 'SaleChanellPolicy' || currentDictName === 'ExecutorGPH'"
107
+ class="w-full flex flex-col gap-2 p-2"
108
+ >
94
109
  <div v-for="(item, index) in $dataStore[currentDictName].filter(i => (i.nameRu as string).toLowerCase().includes(searchQuery.toLowerCase()))" :key="index">
95
110
  <base-panel-select-item :key="index" :text="item.nameRu ?? ''" :selected="item.ids === (panelValue as Value).ids" @click="pickPanelValue(item)" />
96
111
  </div>
@@ -120,7 +135,7 @@ export default defineComponent({
120
135
  },
121
136
  },
122
137
  setup(props) {
123
- type ManagerAttachmentFiels = 'SaleChanellPolicy' | 'RegionPolicy' | 'ManagerPolicy' | 'AgentData';
138
+ type ManagerAttachmentFiels = 'SaleChanellPolicy' | 'RegionPolicy' | 'ManagerPolicy' | 'AgentData' | 'ExecutorGPH';
124
139
  type FieldTypes = Value | AgentData;
125
140
  const route = useRoute();
126
141
  const dataStore = useDataStore();
@@ -163,6 +178,12 @@ export default defineComponent({
163
178
  }
164
179
  return isReadonly.value;
165
180
  });
181
+ const isExecutorReadonly = computed(() => {
182
+ if (!isReadonly.value) {
183
+ if (dataStore.isPension) return dataStore.isExecutor() || !dataStore.isInitiator();
184
+ }
185
+ return isReadonly.value;
186
+ });
166
187
  const isSaleChanellShown = computed(() => {
167
188
  if (dataStore.isGons) return !dataStore.isAgent();
168
189
  return true;
@@ -178,6 +199,7 @@ export default defineComponent({
178
199
  if (dataStore.isGons) return !dataStore.isAgent();
179
200
  return true;
180
201
  });
202
+ const isExecutorShown = dataStore.isPension;
181
203
  const openPanel = async (currentDict: ManagerAttachmentFiels, title: string) => {
182
204
  searchQuery.value = '';
183
205
  if (dataStore.isTask() && !props.disabled) {
@@ -190,6 +212,10 @@ export default defineComponent({
190
212
  isPanelLoading.value = true;
191
213
  await dataStore.filterManagerByRegion(formStore.RegionPolicy.ids as string);
192
214
  }
215
+ if (currentDict === 'ExecutorGPH' && formStore.RegionPolicy.ids) {
216
+ isPanelLoading.value = true;
217
+ await dataStore.filterExecutorByRegion(formStore.RegionPolicy.ids as string);
218
+ }
193
219
 
194
220
  isPanelOpen.value = true;
195
221
  panelValue.value = formStore[currentDict];
@@ -274,10 +300,13 @@ export default defineComponent({
274
300
  isRegionReadonly,
275
301
  isManagerReadonly,
276
302
  isAgentReadonly,
303
+ isExecutorReadonly,
277
304
  isSaleChanellShown,
278
305
  isRegionShown,
279
306
  isManagerShown,
280
307
  isAgentShown,
308
+ isExecutorShown,
309
+
281
310
  // Functions
282
311
  openPanel,
283
312
  searchAgent,
@@ -55,7 +55,7 @@
55
55
  <base-form-input v-model="insured.gender.nameRu" class="mb-4" :label="$dataStore.t('form.gender')" :readonly="true" />
56
56
  </div>
57
57
  </base-form-section>
58
- <base-form-section v-if="isUnderwriterRole && whichProduct !== 'pensionannuitynew' && whichProduct !== 'balam'" :title="$dataStore.t('recalculationInfo')">
58
+ <base-form-section v-if="isUnderwriterRole && whichProduct !== 'pensionannuitynew' && whichProduct !== 'balam' && whichProduct !== 'tumar'" :title="$dataStore.t('recalculationInfo')">
59
59
  <base-form-input
60
60
  v-model="productConditionsForm.lifeMultiply"
61
61
  :maska="$maska.numbers"
@@ -223,6 +223,7 @@
223
223
  @input="onInputFixInsSum"
224
224
  />
225
225
  <base-form-input
226
+ v-if="hasRequestedSumInsured"
226
227
  v-model="productConditionsForm.requestedSumInsured"
227
228
  :readonly="isDisabledSum"
228
229
  :clearable="!isDisabledSum"
@@ -244,6 +245,7 @@
244
245
  @onClear="onClearSumDollar"
245
246
  />
246
247
  <base-form-input
248
+ v-if="hasInsurancePremiumPerMonth"
247
249
  v-model="productConditionsForm.insurancePremiumPerMonth"
248
250
  :readonly="insurancePremiumPerMonthDisabled"
249
251
  :clearable="!insurancePremiumPerMonthDisabled"
@@ -253,6 +255,22 @@
253
255
  @input="onInputInsurancePremiumPerMonth"
254
256
  @onClear="onClearPremium"
255
257
  />
258
+ <base-form-input
259
+ v-if="hasPaidOrRefund"
260
+ v-model="productConditionsForm.amountRefunded"
261
+ :readonly="isDisabledSum"
262
+ :clearable="!isDisabledSum"
263
+ :label="$dataStore.t('productConditionsForm.amountRefunded')"
264
+ :suffix="$constants.currencySymbols.kzt"
265
+ />
266
+ <base-form-input
267
+ v-if="hasPaidOrRefund"
268
+ v-model="productConditionsForm.amountPaid"
269
+ :readonly="insurancePremiumPerMonthDisabled"
270
+ :clearable="!insurancePremiumPerMonthDisabled"
271
+ :label="$dataStore.t('productConditionsForm.amountPaid')"
272
+ :suffix="$constants.currencySymbols.kzt"
273
+ />
256
274
  <base-form-input
257
275
  v-if="hasInsurancePremiumPerMonthInDollar"
258
276
  v-model="productConditionsForm.insurancePremiumPerMonthInDollar"
@@ -896,6 +914,8 @@ export default defineComponent({
896
914
  const whichSum = ref<'insurancePremiumPerMonth' | 'requestedSumInsured' | ''>('');
897
915
  const panelCodeList = ['processcovertypesum', 'fixedinssum'];
898
916
  const enabled = 'включено';
917
+ const amountRefunded = ref<string | number | null>(null);
918
+ const amountPaid = ref<string | number | null>(null);
899
919
 
900
920
  const additionalTerms = ref<AddCover[]>([]);
901
921
 
@@ -1016,6 +1036,13 @@ export default defineComponent({
1016
1036
  }
1017
1037
  return true;
1018
1038
  });
1039
+
1040
+ const hasRequestedSumInsured = computed(() => {
1041
+ if (formStore.lfb.add && (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns')) {
1042
+ return false;
1043
+ }
1044
+ return true;
1045
+ });
1019
1046
  const hasRequestedSumInsuredInDollar = computed(() => {
1020
1047
  if (whichProduct.value === 'halykkazyna') {
1021
1048
  return true;
@@ -1025,6 +1052,12 @@ export default defineComponent({
1025
1052
  }
1026
1053
  return false;
1027
1054
  });
1055
+ const hasInsurancePremiumPerMonth = computed(() => {
1056
+ if (formStore.lfb.add && (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns')) {
1057
+ return false;
1058
+ }
1059
+ return true;
1060
+ });
1028
1061
  const hasInsurancePremiumPerMonthInDollar = computed(() => {
1029
1062
  if (whichProduct.value === 'halykkazyna') {
1030
1063
  return true;
@@ -1135,9 +1168,6 @@ export default defineComponent({
1135
1168
  if (whichProduct.value === 'halykkazyna') {
1136
1169
  return dataStore.t('productConditionsForm.requestedSumInsuredInTenge');
1137
1170
  }
1138
- if (formStore.lfb.add && (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns')) {
1139
- return dataStore.t('productConditionsForm.amountRefunded');
1140
- }
1141
1171
  if (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns') {
1142
1172
  return dataStore.t('productConditionsForm.totalRequestedSumInsured');
1143
1173
  }
@@ -1150,9 +1180,6 @@ export default defineComponent({
1150
1180
  return dataStore.t('productConditionsForm.coverPeriod');
1151
1181
  });
1152
1182
  const insurancePremiumPerMonthLabel = computed(() => {
1153
- if (formStore.lfb.add && (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns')) {
1154
- return dataStore.t('productConditionsForm.amountPaid');
1155
- }
1156
1183
  if (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns') {
1157
1184
  return dataStore.t('productConditionsForm.totalInsurancePremiumAmountWithCommission');
1158
1185
  }
@@ -1267,6 +1294,12 @@ export default defineComponent({
1267
1294
  }
1268
1295
  return false;
1269
1296
  });
1297
+ const hasPaidOrRefund = computed(() => {
1298
+ if (formStore.lfb.add && (whichProduct.value === 'lifebusiness' || whichProduct.value === 'gns')) {
1299
+ return true;
1300
+ }
1301
+ return false;
1302
+ });
1270
1303
  const hasDeathInsFromNS = computed(() => {
1271
1304
  if (whichProduct.value === 'gns') {
1272
1305
  return true;
@@ -2348,6 +2381,8 @@ export default defineComponent({
2348
2381
  transferContractFirstPaymentDate,
2349
2382
  enabled,
2350
2383
  maxDate,
2384
+ amountPaid,
2385
+ amountRefunded,
2351
2386
  transferMaxDate,
2352
2387
  guaranteedPeriodList,
2353
2388
  isEnpfSum,
@@ -2375,9 +2410,12 @@ export default defineComponent({
2375
2410
  isUnderwriterRole,
2376
2411
  hasProcessIndexRate,
2377
2412
  hasPaymentPeriod,
2413
+ hasRequestedSumInsured,
2414
+ hasInsurancePremiumPerMonth,
2378
2415
  hasRequestedSumInsuredInDollar,
2379
2416
  hasInsurancePremiumPerMonthInDollar,
2380
2417
  hasCurrency,
2418
+ hasPaidOrRefund,
2381
2419
  hasContragentData,
2382
2420
  hasAdbMultiply,
2383
2421
  readonlyLifeAdditive,
@@ -826,6 +826,8 @@ export class ProductConditions {
826
826
  calculatorForm: CalculatorForm;
827
827
  agentCommission: number | null;
828
828
  fixInsSum: number | string | null;
829
+ amountRefunded: number | string | null;
830
+ amountPaid: number | string | null;
829
831
  calcDate: string | null;
830
832
  contractEndDate: string | null;
831
833
  currency: Value;
@@ -874,6 +876,8 @@ export class ProductConditions {
874
876
  calculatorForm = new CalculatorForm(),
875
877
  agentCommission = null,
876
878
  fixInsSum = null,
879
+ amountRefunded = null,
880
+ amountPaid = null,
877
881
  calcDate = null,
878
882
  contractEndDate = null,
879
883
  currency = new Value(),
@@ -926,6 +930,8 @@ export class ProductConditions {
926
930
  this.calculatorForm = calculatorForm;
927
931
  this.agentCommission = agentCommission;
928
932
  this.fixInsSum = fixInsSum;
933
+ this.amountRefunded = amountRefunded;
934
+ this.amountPaid = amountPaid;
929
935
  this.calcDate = calcDate;
930
936
  this.contractEndDate = contractEndDate;
931
937
  this.currency = currency;
@@ -1101,6 +1107,7 @@ export class DataStoreClass {
1101
1107
  SaleChanellPolicy: Value[];
1102
1108
  RegionPolicy: Value[];
1103
1109
  ManagerPolicy: Value[];
1110
+ ExecutorGPH: Value[];
1104
1111
  AgentData: Types.AgentData[];
1105
1112
  riskGroup: Value[];
1106
1113
  DicCoverTypePeriod: Value[];
@@ -1184,6 +1191,7 @@ export class DataStoreClass {
1184
1191
  this.SaleChanellPolicy = [];
1185
1192
  this.RegionPolicy = [];
1186
1193
  this.ManagerPolicy = [];
1194
+ this.ExecutorGPH = [];
1187
1195
  this.AgentData = [];
1188
1196
  this.DicCoverTypePeriod = [];
1189
1197
  this.product = import.meta.env.VITE_PRODUCT ? (import.meta.env.VITE_PRODUCT as Types.Projects) : null;
@@ -1383,6 +1391,7 @@ export class FormStoreClass {
1383
1391
  AgentData: Types.AgentData;
1384
1392
  RegionPolicy: Value;
1385
1393
  ManagerPolicy: Value;
1394
+ ExecutorGPH: Value;
1386
1395
  isDisabled: {
1387
1396
  policyholderForm: boolean;
1388
1397
  beneficiaryForm: boolean;
@@ -1513,6 +1522,7 @@ export class FormStoreClass {
1513
1522
  };
1514
1523
  this.RegionPolicy = new Value();
1515
1524
  this.ManagerPolicy = new Value();
1525
+ this.ExecutorGPH = new Value();
1516
1526
  this.isDisabled = {
1517
1527
  policyholderForm: true,
1518
1528
  beneficiaryForm: true,
@@ -24,6 +24,7 @@ export const constants = Object.freeze({
24
24
  pensionannuityrefundnew: 24,
25
25
  pensionannuityjointnew: 25,
26
26
  gonsadd: 26,
27
+ tumar: 27,
27
28
  criticalillness: 29,
28
29
  },
29
30
  amlProducts: {
@@ -733,7 +733,7 @@ export class RoleController {
733
733
  const hasAccessByProduct = (() => {
734
734
  const product = productFromExternal as Projects;
735
735
  if (dataStore.isLifetrip || product === 'lifetrip') return this.isBranchDirector();
736
- if (dataStore.isPension || product === 'pensionannuitynew') return this.isBranchDirector();
736
+ if (dataStore.isPension || product === 'pensionannuitynew') return this.isBranchDirector() || this.isExecutor();
737
737
  if (dataStore.isLifeBusiness || product === 'lifebusiness') return this.isHeadManager() || this.isBranchDirector();
738
738
  return false;
739
739
  })();
@@ -841,6 +841,9 @@ export class RoleController {
841
841
  isUrsp = () => {
842
842
  return this.isRole(constants.roles.URSP);
843
843
  };
844
+ isExecutor = () => {
845
+ return this.isRole(constants.roles.ExecutorGPH);
846
+ };
844
847
  hasAccess = () => {
845
848
  const baseAccessRoles = this.isAdmin() || this.isSupport() || this.isAnalyst() || this.isDrn();
846
849
  return {
@@ -849,7 +852,7 @@ export class RoleController {
849
852
  toAML: this.isCompliance() || baseAccessRoles,
850
853
  toAULETTI: this.isAgentAuletti() || this.isManagerAuletti() || baseAccessRoles,
851
854
  toLKA_A: this.isAgentAuletti() || baseAccessRoles,
852
- toUU: this.isServiceManager() || this.isAccountant() || this.isAdjuster() || this.isHeadAdjuster() || baseAccessRoles,
855
+ toUU: this.isServiceManager() || this.isAccountant() || this.isAdjuster() || this.isHeadAdjuster() || this.isArchivist() || baseAccessRoles,
853
856
  toDSO:
854
857
  this.isDsuio() ||
855
858
  this.isActuary() ||
@@ -891,7 +894,9 @@ export class RoleController {
891
894
  this.isAccountantDirector() ||
892
895
  this.isHeadAdjuster() ||
893
896
  this.isHeadOfDso() ||
894
- this.isUrsp(),
897
+ this.isUrsp() ||
898
+ this.isExecutor() ||
899
+ this.isArchivist(),
895
900
  };
896
901
  };
897
902
  }
package/locales/ru.json CHANGED
@@ -1002,6 +1002,7 @@
1002
1002
  "otpCode": "Код подтверждения",
1003
1003
  "salesChanell": "Канал продаж",
1004
1004
  "manager": "Менеджер",
1005
+ "executor": "Исполнитель",
1005
1006
  "attachManager": "Менеджер",
1006
1007
  "agent": "Агент",
1007
1008
  "insurancePay": "Страховая выплата подлежит осуществлению",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hl-core",
3
- "version": "0.0.10-beta.40",
3
+ "version": "0.0.10-beta.41",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "nuxt.config.ts",
@@ -65,6 +65,7 @@ export const useDataStore = defineStore('data', {
65
65
  isPrePension: state => state.product === 'prepensionannuity',
66
66
  isCritical: state => state.product === 'criticalillness',
67
67
  isBalam: state => state.product === 'balam',
68
+ isTumar: state => state.product === 'tumar',
68
69
  isDSO: state => state.product === 'dso',
69
70
  isUU: state => state.product === 'uu',
70
71
  hasClientAnketa: state => Array.isArray(state.formStore.additionalInsuranceTerms) && state.formStore.additionalInsuranceTerms.find(i => i.coverTypeCode === 10),
@@ -1130,6 +1131,14 @@ export const useDataStore = defineStore('data', {
1130
1131
  this.formStore.productConditionsForm.currency.code === 'KZT' ? null : getNumber(String(this.formStore.productConditionsForm.requestedSumInsuredInDollar));
1131
1132
  conditionsData.policyAppDto.currencyExchangeRate = this.formStore.productConditionsForm.currency.code === 'KZT' ? null : this.currencies.usd;
1132
1133
  conditionsData.policyAppDto.currency = this.formStore.productConditionsForm.currency.code as string;
1134
+ //@ts-ignore
1135
+ if (isNaN(String(this.formStore.productConditionsForm.requestedSumInsured).replace(/\s/g, ''))) {
1136
+ conditionsData.policyAppDto.amount = parseFloat(String(this.formStore.productConditionsForm.requestedSumInsured).replace(/\s/g, '').replace(',', '.'));
1137
+ }
1138
+ //@ts-ignore
1139
+ if (isNaN(String(this.formStore.productConditionsForm.insurancePremiumPerMonth).replace(/\s/g, ''))) {
1140
+ conditionsData.policyAppDto.premium = parseFloat(String(this.formStore.productConditionsForm.insurancePremiumPerMonth).replace(/\s/g, '').replace(',', '.'));
1141
+ }
1133
1142
  }
1134
1143
  if (this.isLiferenta) {
1135
1144
  conditionsData.policyAppDto.guaranteedPaymentPeriod = this.formStore.productConditionsForm.guaranteedPeriod || 0;
@@ -1252,6 +1261,8 @@ export const useDataStore = defineStore('data', {
1252
1261
  regionPolicyName: this.formStore.RegionPolicy.nameRu ?? '',
1253
1262
  managerPolicy: this.formStore.ManagerPolicy.ids as string,
1254
1263
  managerPolicyName: this.formStore.ManagerPolicy.nameRu ?? '',
1264
+ executorGPH: (this.formStore.ExecutorGPH.ids as string) ?? undefined,
1265
+ executorGPHName: this.formStore.ExecutorGPH.nameRu ?? undefined,
1255
1266
  insuranceProgramType: this.formStore.applicationData.insisWorkDataApp.insuranceProgramType,
1256
1267
  };
1257
1268
  try {
@@ -1791,6 +1802,13 @@ export const useDataStore = defineStore('data', {
1791
1802
  console.log(err);
1792
1803
  }
1793
1804
  },
1805
+ async filterExecutorByRegion(filterName: string) {
1806
+ try {
1807
+ this.ExecutorGPH = await this.api.filterExecutorByRegion('ExecutorGPH', filterName);
1808
+ } catch (err) {
1809
+ console.log(err);
1810
+ }
1811
+ },
1794
1812
  async getUnderwritingCouncilData(id: string | number) {
1795
1813
  try {
1796
1814
  const response: any = await this.api.getUnderwritingCouncilData(id);
@@ -1909,6 +1927,14 @@ export const useDataStore = defineStore('data', {
1909
1927
  calculationData.currencyExchangeRate = this.formStore.productConditionsForm.currency.code === 'KZT' ? null : this.currencies.usd;
1910
1928
 
1911
1929
  calculationData.currency = this.formStore.productConditionsForm.currency.code as string;
1930
+ //@ts-ignore
1931
+ if (isNaN(String(this.formStore.productConditionsForm.requestedSumInsured).replace(/\s/g, ''))) {
1932
+ calculationData.amount = parseFloat(String(this.formStore.productConditionsForm.requestedSumInsured).replace(/\s/g, '').replace(',', '.'));
1933
+ }
1934
+ //@ts-ignore
1935
+ if (isNaN(String(this.formStore.productConditionsForm.insurancePremiumPerMonth).replace(/\s/g, ''))) {
1936
+ calculationData.premium = parseFloat(String(this.formStore.productConditionsForm.insurancePremiumPerMonth).replace(/\s/g, '').replace(',', '.'));
1937
+ }
1912
1938
  }
1913
1939
  if (this.isLiferenta || product === 'liferenta') {
1914
1940
  calculationData.guaranteedPaymentPeriod = this.formStore.productConditionsForm.guaranteedPeriod || 0;
@@ -2018,12 +2044,14 @@ export const useDataStore = defineStore('data', {
2018
2044
  this.formStore.lfb.clients = res;
2019
2045
  }
2020
2046
  if (this.formStore.lfb.add) {
2021
- if (result.value > 0) {
2022
- this.formStore.productConditionsForm.insurancePremiumPerMonth = this.getNumberWithSpaces(result.value);
2023
- this.formStore.productConditionsForm.requestedSumInsured = null;
2047
+ this.formStore.productConditionsForm.insurancePremiumPerMonth = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.premium);
2048
+ this.formStore.productConditionsForm.requestedSumInsured = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.amount);
2049
+ if (applicationData.policyAppDto.mainPremiumWithCommission > 0) {
2050
+ this.formStore.productConditionsForm.amountPaid = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.mainPremiumWithCommission);
2051
+ this.formStore.productConditionsForm.amountRefunded = null;
2024
2052
  } else {
2025
- this.formStore.productConditionsForm.requestedSumInsured = this.getNumberWithSpaces(result.value);
2026
- this.formStore.productConditionsForm.insurancePremiumPerMonth = null;
2053
+ this.formStore.productConditionsForm.amountRefunded = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.mainPremiumWithCommission);
2054
+ this.formStore.productConditionsForm.amountPaid = null;
2027
2055
  }
2028
2056
  }
2029
2057
  }
@@ -2162,6 +2190,8 @@ export const useDataStore = defineStore('data', {
2162
2190
  this.formStore.RegionPolicy.ids = applicationData.insisWorkDataApp.regionPolicy;
2163
2191
  this.formStore.ManagerPolicy.nameRu = applicationData.insisWorkDataApp.managerPolicyName;
2164
2192
  this.formStore.ManagerPolicy.ids = applicationData.insisWorkDataApp.managerPolicy;
2193
+ this.formStore.ExecutorGPH.nameRu = applicationData.insisWorkDataApp.executorGPHName;
2194
+ this.formStore.ExecutorGPH.ids = applicationData.insisWorkDataApp.executorGPH;
2165
2195
  this.formStore.SaleChanellPolicy.nameRu = applicationData.insisWorkDataApp.saleChanellPolicyName;
2166
2196
  this.formStore.SaleChanellPolicy.ids = applicationData.insisWorkDataApp.saleChanellPolicy;
2167
2197
  this.formStore.AgentData.fullName = applicationData.insisWorkDataApp.agentName;
@@ -3155,7 +3185,11 @@ export const useDataStore = defineStore('data', {
3155
3185
  }
3156
3186
  }
3157
3187
  if (this.controls.hasAttachment) {
3158
- const areValid = this.formStore.SaleChanellPolicy.nameRu && this.formStore.RegionPolicy.nameRu && this.formStore.ManagerPolicy.nameRu && this.formStore.AgentData.fullName;
3188
+ const areValid =
3189
+ this.formStore.SaleChanellPolicy.nameRu &&
3190
+ this.formStore.RegionPolicy.nameRu &&
3191
+ this.formStore.AgentData.fullName &&
3192
+ (this.isPension && this.isServiceManager() ? true : this.formStore.ManagerPolicy.nameRu);
3159
3193
  if (areValid) {
3160
3194
  if (this.isLifetrip && this.formStore.AgentData.fullName === 'Без агента') {
3161
3195
  this.isLoading = false;
@@ -3770,12 +3804,14 @@ export const useDataStore = defineStore('data', {
3770
3804
  this.formStore.productConditionsForm.contractEndDate = reformatDate(applicationData.parentPolicyDto.contractInsrEnd);
3771
3805
  }
3772
3806
  if (this.formStore.lfb.add) {
3807
+ this.formStore.productConditionsForm.insurancePremiumPerMonth = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.premium);
3808
+ this.formStore.productConditionsForm.requestedSumInsured = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.amount);
3773
3809
  if (applicationData.policyAppDto.mainPremiumWithCommission > 0) {
3774
- this.formStore.productConditionsForm.insurancePremiumPerMonth = this.getNumberWithSpaces(applicationData.policyAppDto.mainPremiumWithCommission);
3775
- this.formStore.productConditionsForm.requestedSumInsured = null;
3810
+ this.formStore.productConditionsForm.amountPaid = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.mainPremiumWithCommission);
3811
+ this.formStore.productConditionsForm.amountRefunded = null;
3776
3812
  } else {
3777
- this.formStore.productConditionsForm.requestedSumInsured = this.getNumberWithSpaces(applicationData.policyAppDto.mainPremiumWithCommission);
3778
- this.formStore.productConditionsForm.insurancePremiumPerMonth = null;
3813
+ this.formStore.productConditionsForm.amountRefunded = this.getNumberWithSpacesAfterComma(applicationData.policyAppDto.mainPremiumWithCommission);
3814
+ this.formStore.productConditionsForm.amountPaid = null;
3779
3815
  }
3780
3816
  }
3781
3817
  } catch (err) {
@@ -4131,7 +4167,7 @@ export const useDataStore = defineStore('data', {
4131
4167
  }
4132
4168
  },
4133
4169
  hasJobSection(whichForm: keyof typeof StoreMembers) {
4134
- if (this.isLifetrip || this.isPension || this.isBalam) return false;
4170
+ if (this.isLifetrip || this.isPension || this.isBalam || this.isTumar) return false;
4135
4171
  switch (whichForm) {
4136
4172
  case this.formStore.beneficiaryFormKey:
4137
4173
  case this.formStore.beneficialOwnerFormKey:
package/types/enum.ts CHANGED
@@ -117,6 +117,7 @@ export enum Roles {
117
117
  ManagerAuletti = 'ManagerAuletti',
118
118
  HeadOfDso = 'HeadOfDso',
119
119
  URSP = 'URSP',
120
+ ExecutorGPH = 'ExecutorGPH'
120
121
  }
121
122
 
122
123
  export enum Statuses {
package/types/index.ts CHANGED
@@ -32,7 +32,8 @@ export type Projects =
32
32
  | 'lka-auletti'
33
33
  | 'prepensionannuity'
34
34
  | 'balam'
35
- | 'criticalillness';
35
+ | 'criticalillness'
36
+ | 'tumar';
36
37
  export type MemberKeys = keyof ReturnType<typeof useFormStore>;
37
38
  export type MemberFormTypes = 'policyholderForm' | 'insuredForm' | 'beneficiaryForm' | 'beneficialOwnerForm' | 'policyholdersRepresentativeForm' | 'productConditionsForm';
38
39
  export type SingleMember = 'policyholderForm' | 'policyholdersRepresentativeForm';
@@ -584,6 +585,8 @@ export type InsisWorkDataApp = {
584
585
  regionPolicyName?: string;
585
586
  managerPolicy?: string;
586
587
  managerPolicyName?: string;
588
+ executorGPH?: string;
589
+ executorGPHName?: string;
587
590
  insuranceProgramType?: string;
588
591
  };
589
592