hl-core 0.0.9-beta.54 → 0.0.9-beta.56
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 +66 -14
- package/api/interceptors.ts +1 -1
- package/components/Form/FormData.vue +2 -2
- package/components/Layout/SettingsPanel.vue +12 -5
- package/components/Menu/MenuNav.vue +1 -1
- package/components/Pages/Anketa.vue +38 -14
- package/components/Pages/Documents.vue +11 -4
- package/components/Pages/MemberForm.vue +96 -10
- package/components/Pages/ProductConditions.vue +39 -15
- package/components/Panel/PanelHandler.vue +27 -25
- package/components/Transitions/Animation.vue +2 -2
- package/components/Utilities/JsonViewer.vue +1 -1
- package/composables/classes.ts +10 -3
- package/composables/constants.ts +5 -2
- package/composables/fields.ts +3 -3
- package/composables/index.ts +3 -1
- package/configs/pwa.ts +49 -0
- package/layouts/clear.vue +21 -0
- package/layouts/default.vue +17 -0
- package/layouts/full.vue +21 -0
- package/locales/ru.json +12 -7
- package/nuxt.config.ts +1 -4
- package/package.json +2 -1
- package/store/data.store.ts +88 -42
- package/store/rules.ts +29 -0
- package/store/toast.ts +1 -1
- package/types/env.d.ts +1 -0
- package/types/index.ts +32 -8
package/nuxt.config.ts
CHANGED
|
@@ -6,7 +6,7 @@ import VueI18nVitePlugin from '@intlify/unplugin-vue-i18n/vite';
|
|
|
6
6
|
export default defineNuxtConfig({
|
|
7
7
|
ssr: false,
|
|
8
8
|
spaLoadingTemplate: false,
|
|
9
|
-
modules: ['@pinia/nuxt', '@nuxtjs/tailwindcss', '@nuxt/devtools', '@vueuse/nuxt'],
|
|
9
|
+
modules: ['@pinia/nuxt', '@nuxtjs/tailwindcss', '@nuxt/devtools', '@vueuse/nuxt', '@vite-pwa/nuxt'],
|
|
10
10
|
|
|
11
11
|
imports: {
|
|
12
12
|
dirs: ['store', 'composables'],
|
|
@@ -17,9 +17,6 @@ export default defineNuxtConfig({
|
|
|
17
17
|
},
|
|
18
18
|
|
|
19
19
|
vite: {
|
|
20
|
-
build: {
|
|
21
|
-
minify: false,
|
|
22
|
-
},
|
|
23
20
|
resolve: {
|
|
24
21
|
alias: [
|
|
25
22
|
{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hl-core",
|
|
3
|
-
"version": "0.0.9-beta.
|
|
3
|
+
"version": "0.0.9-beta.56",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
6
|
"main": "nuxt.config.ts",
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"@nuxtjs/tailwindcss": "6.8.0",
|
|
56
56
|
"@pinia/nuxt": "0.4.11",
|
|
57
57
|
"@regulaforensics/document-reader-webclient": "6.9.5",
|
|
58
|
+
"@vite-pwa/nuxt": "0.2.3",
|
|
58
59
|
"@vuepic/vue-datepicker": "7.2.0",
|
|
59
60
|
"animate.css": "4.1.1",
|
|
60
61
|
"axios": "1.4.0",
|
package/store/data.store.ts
CHANGED
|
@@ -40,6 +40,7 @@ export const useDataStore = defineStore('data', {
|
|
|
40
40
|
isAML: state => state.product === 'aml',
|
|
41
41
|
isLKA: state => state.product === 'lka',
|
|
42
42
|
isAULETTI: state => state.product === 'auletti',
|
|
43
|
+
isLKA_A: state => state.product === 'lka-auletti',
|
|
43
44
|
isAulettiParent: state => state.parentProduct === 'auletti',
|
|
44
45
|
isBridge: state => state.product === 'efo' || state.product === 'aml' || state.product === 'lka' || state.product === 'auletti',
|
|
45
46
|
isBaiterek: state => state.product === 'baiterek',
|
|
@@ -67,6 +68,20 @@ export const useDataStore = defineStore('data', {
|
|
|
67
68
|
!!state.formStore.additionalInsuranceTerms.find(i => i.coverTypeCode === 10 && i.coverSumCode === 'included'),
|
|
68
69
|
},
|
|
69
70
|
actions: {
|
|
71
|
+
async getProjectConfig() {
|
|
72
|
+
try {
|
|
73
|
+
const projectConfig = await this.api.getProjectConfig();
|
|
74
|
+
if (projectConfig) {
|
|
75
|
+
this.projectConfig = projectConfig;
|
|
76
|
+
return true;
|
|
77
|
+
} else {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
} catch (err) {
|
|
81
|
+
this.projectConfig = null;
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
},
|
|
70
85
|
isIframe() {
|
|
71
86
|
try {
|
|
72
87
|
return window.self !== window.top;
|
|
@@ -293,6 +308,19 @@ export const useDataStore = defineStore('data', {
|
|
|
293
308
|
isTask() {
|
|
294
309
|
return this.formStore.applicationData.processInstanceId !== 0 && this.formStore.applicationData.isTask;
|
|
295
310
|
},
|
|
311
|
+
validateAccess() {
|
|
312
|
+
try {
|
|
313
|
+
const hasAccess = this.hasAccess();
|
|
314
|
+
if (this.isAML) return hasAccess.toAML;
|
|
315
|
+
if (this.isLKA) return hasAccess.toLKA;
|
|
316
|
+
if (this.isEFO) return hasAccess.toEFO;
|
|
317
|
+
if (this.isAULETTI) return hasAccess.toAULETTI;
|
|
318
|
+
if (this.isLKA_A) return hasAccess.toLKA_A;
|
|
319
|
+
return false;
|
|
320
|
+
} catch (err) {
|
|
321
|
+
return ErrorHandler(err);
|
|
322
|
+
}
|
|
323
|
+
},
|
|
296
324
|
async loginUser(login: string, password: string, numAttempt: number) {
|
|
297
325
|
try {
|
|
298
326
|
const token = localStorage.getItem('accessToken') || null;
|
|
@@ -305,21 +333,12 @@ export const useDataStore = defineStore('data', {
|
|
|
305
333
|
password: password,
|
|
306
334
|
numAttempt: numAttempt,
|
|
307
335
|
});
|
|
308
|
-
|
|
309
336
|
this.accessToken = loginResponse.accessToken;
|
|
310
337
|
this.refreshToken = loginResponse.refreshToken;
|
|
311
338
|
this.getUserRoles();
|
|
312
339
|
}
|
|
313
|
-
const checkPermission = () => {
|
|
314
|
-
const hasAccess = this.hasAccess();
|
|
315
|
-
if (this.isAML) return hasAccess.toAML;
|
|
316
|
-
if (this.isLKA) return hasAccess.toLKA;
|
|
317
|
-
if (this.isEFO) return hasAccess.toEFO;
|
|
318
|
-
if (this.isAULETTI) return hasAccess.toAULETTI;
|
|
319
|
-
return false;
|
|
320
|
-
};
|
|
321
340
|
if (this.controls.onAuth) {
|
|
322
|
-
const hasPermission =
|
|
341
|
+
const hasPermission = this.validateAccess();
|
|
323
342
|
if (hasPermission) {
|
|
324
343
|
localStorage.setItem('accessToken', this.accessToken);
|
|
325
344
|
localStorage.setItem('refreshToken', String(this.refreshToken));
|
|
@@ -356,6 +375,15 @@ export const useDataStore = defineStore('data', {
|
|
|
356
375
|
}
|
|
357
376
|
this.isLoading = false;
|
|
358
377
|
},
|
|
378
|
+
async checkToken() {
|
|
379
|
+
try {
|
|
380
|
+
await this.api.checkToken();
|
|
381
|
+
return true;
|
|
382
|
+
} catch (err) {
|
|
383
|
+
ErrorHandler(err);
|
|
384
|
+
return false;
|
|
385
|
+
}
|
|
386
|
+
},
|
|
359
387
|
async resetSelected(route: RouteType) {
|
|
360
388
|
this.settings.open = false;
|
|
361
389
|
this.rightPanel.open = false;
|
|
@@ -901,7 +929,7 @@ export const useDataStore = defineStore('data', {
|
|
|
901
929
|
|
|
902
930
|
const personId = await this.api.saveContragent(data);
|
|
903
931
|
if (personId > 0) {
|
|
904
|
-
if (this.isLKA || whichForm === 'contragent') {
|
|
932
|
+
if (this.isLKA || this.isLKA_A || whichForm === 'contragent') {
|
|
905
933
|
return personId;
|
|
906
934
|
} else {
|
|
907
935
|
await this.getContragentById(personId, whichForm, false, whichIndex);
|
|
@@ -939,6 +967,7 @@ export const useDataStore = defineStore('data', {
|
|
|
939
967
|
data.profession = member.job;
|
|
940
968
|
data.position = member.jobPosition;
|
|
941
969
|
data.jobName = member.jobPlace;
|
|
970
|
+
data.positionCode = member.positionCode;
|
|
942
971
|
data.familyStatusId = member.familyStatus.id;
|
|
943
972
|
}
|
|
944
973
|
if (whichMember === 'Spokesman') {
|
|
@@ -994,6 +1023,7 @@ export const useDataStore = defineStore('data', {
|
|
|
994
1023
|
data.profession = member.job;
|
|
995
1024
|
data.position = member.jobPosition;
|
|
996
1025
|
data.jobName = member.jobPlace;
|
|
1026
|
+
data.positionCode = member.positionCode;
|
|
997
1027
|
data.familyStatusId = member.familyStatus.id;
|
|
998
1028
|
data.relationId = member.relationDegree.ids;
|
|
999
1029
|
data.relationName = member.relationDegree.nameRu;
|
|
@@ -1248,7 +1278,7 @@ export const useDataStore = defineStore('data', {
|
|
|
1248
1278
|
async getFromApi(whichField: string, whichRequest: string, parameter?: any, reset: boolean = false): Promise<Value[]> {
|
|
1249
1279
|
const storageValue = JSON.parse(localStorage.getItem(whichField) || 'null');
|
|
1250
1280
|
const currentHour = new Date().getHours();
|
|
1251
|
-
const currentMinutePart = Math.ceil((new Date().getMinutes() + 1) / (this.isLKA ? 60 : 15));
|
|
1281
|
+
const currentMinutePart = Math.ceil((new Date().getMinutes() + 1) / (this.isLKA || this.isLKA_A ? 60 : 15));
|
|
1252
1282
|
|
|
1253
1283
|
const getDataCondition = () => {
|
|
1254
1284
|
if (!storageValue) return true;
|
|
@@ -1496,6 +1526,15 @@ export const useDataStore = defineStore('data', {
|
|
|
1496
1526
|
async getAuthorityBasis() {
|
|
1497
1527
|
if (this.isDas || this.isLifeBusiness || this.isGns || this.isUU || this.isPrePension) return await this.getFromApi('authorityBasis', 'getArmDicts', 'DicAuthorityBasis');
|
|
1498
1528
|
},
|
|
1529
|
+
async getWorkPosition(search: string) {
|
|
1530
|
+
try {
|
|
1531
|
+
const workPositions = await this.api.getWorkPosition(search);
|
|
1532
|
+
return workPositions;
|
|
1533
|
+
} catch (err) {
|
|
1534
|
+
ErrorHandler(err);
|
|
1535
|
+
return [];
|
|
1536
|
+
}
|
|
1537
|
+
},
|
|
1499
1538
|
async getAllFormsData() {
|
|
1500
1539
|
await Promise.allSettled([
|
|
1501
1540
|
this.getCountries(),
|
|
@@ -1560,6 +1599,11 @@ export const useDataStore = defineStore('data', {
|
|
|
1560
1599
|
if (i.first.definedAnswers === 'Y' && i.second === null && secondaryQuestions.value) {
|
|
1561
1600
|
i.second = structuredClone(secondaryQuestions.value);
|
|
1562
1601
|
}
|
|
1602
|
+
if (i.first.definedAnswers === 'Y' && i.second && i.second.length) {
|
|
1603
|
+
i.second.forEach(second => {
|
|
1604
|
+
if (second.answerType === 'D') second.answerText = reformatDate(String(second.answerText));
|
|
1605
|
+
});
|
|
1606
|
+
}
|
|
1563
1607
|
});
|
|
1564
1608
|
}
|
|
1565
1609
|
}
|
|
@@ -1624,8 +1668,8 @@ export const useDataStore = defineStore('data', {
|
|
|
1624
1668
|
delete query.processCodes;
|
|
1625
1669
|
query.processCode = byOneProcess;
|
|
1626
1670
|
}
|
|
1627
|
-
if (byOneProcess === 19) {
|
|
1628
|
-
query.processCodes = [19, 2
|
|
1671
|
+
if (byOneProcess === 19 && !useEnv().isProduction) {
|
|
1672
|
+
query.processCodes = [19, 2];
|
|
1629
1673
|
delete query.processCode;
|
|
1630
1674
|
}
|
|
1631
1675
|
const taskList = await this.api.getTaskList(
|
|
@@ -2004,13 +2048,14 @@ export const useDataStore = defineStore('data', {
|
|
|
2004
2048
|
priceForm.endDate = formatDate(this.formStore.productConditionsForm.calculatorForm.endDate!)!.toISOString();
|
|
2005
2049
|
}
|
|
2006
2050
|
}
|
|
2007
|
-
const result = await this.api.getCalculator(priceForm);
|
|
2008
2051
|
if (this.isTask() && taskId) {
|
|
2009
2052
|
await this.api.setApplication(priceForm);
|
|
2053
|
+
await this.api.getCalculator(priceForm);
|
|
2010
2054
|
const applicationData = await this.api.getApplicationData(taskId);
|
|
2011
2055
|
this.formStore.applicationData = applicationData;
|
|
2012
2056
|
this.formStore.productConditionsForm.calculatorForm.price = `${Math.ceil(applicationData.lifeTripApp.totalPremiumKZT)} тг`;
|
|
2013
2057
|
} else {
|
|
2058
|
+
const result = await this.api.getCalculator(priceForm);
|
|
2014
2059
|
this.formStore.productConditionsForm.calculatorForm.price = `${Math.ceil(result)} тг`;
|
|
2015
2060
|
}
|
|
2016
2061
|
this.showToaster('success', this.t('toaster.calculated'), 1000);
|
|
@@ -2070,8 +2115,10 @@ export const useDataStore = defineStore('data', {
|
|
|
2070
2115
|
this.formStore.isActOwnBehalf = clientData.isActOwnBehalf;
|
|
2071
2116
|
this.formStore.hasRepresentative = !!applicationData.spokesmanApp;
|
|
2072
2117
|
|
|
2073
|
-
|
|
2074
|
-
|
|
2118
|
+
if (beneficiaryData) {
|
|
2119
|
+
const beneficiaryPolicyholderIndex = beneficiaryData.findIndex(i => i.insisId === clientData.insisId);
|
|
2120
|
+
this.formStore.isPolicyholderBeneficiary = beneficiaryPolicyholderIndex !== -1;
|
|
2121
|
+
}
|
|
2075
2122
|
|
|
2076
2123
|
if ('finCenterData' in applicationData && !!applicationData.finCenterData) {
|
|
2077
2124
|
this.formStore.finCenterData = applicationData.finCenterData;
|
|
@@ -2445,6 +2492,7 @@ export const useDataStore = defineStore('data', {
|
|
|
2445
2492
|
if (!!this.formStore.applicationData[whichMember].profession) this.formStore[whichForm].job = this.formStore.applicationData[whichMember].profession;
|
|
2446
2493
|
if (!!this.formStore.applicationData[whichMember].position) this.formStore[whichForm].jobPosition = this.formStore.applicationData[whichMember].position;
|
|
2447
2494
|
if (!!this.formStore.applicationData[whichMember].jobName) this.formStore[whichForm].jobPlace = this.formStore.applicationData[whichMember].jobName;
|
|
2495
|
+
if (!!this.formStore.applicationData[whichMember].positionCode) this.formStore[whichForm].positionCode = this.formStore.applicationData[whichMember].positionCode;
|
|
2448
2496
|
if (typeof this.formStore.applicationData[whichMember].isDisability === 'boolean')
|
|
2449
2497
|
this.formStore[whichForm].isDisability = this.formStore.applicationData[whichMember].isDisability;
|
|
2450
2498
|
if (!!this.formStore.applicationData[whichMember].disabilityGroupId) {
|
|
@@ -2481,6 +2529,9 @@ export const useDataStore = defineStore('data', {
|
|
|
2481
2529
|
if ('jobPlace' in this.formStore[whichForm][index] && !!this.formStore.applicationData[whichMember][index].jobName) {
|
|
2482
2530
|
this.formStore[whichForm][index].jobPlace = this.formStore.applicationData[whichMember][index].jobName;
|
|
2483
2531
|
}
|
|
2532
|
+
if ('positionCode' in this.formStore[whichForm][index] && !!this.formStore.applicationData[whichMember][index].positionCode) {
|
|
2533
|
+
this.formStore[whichForm][index].positionCode = this.formStore.applicationData[whichMember][index].positionCode;
|
|
2534
|
+
}
|
|
2484
2535
|
if (typeof this.formStore.applicationData[whichMember][index].isDisability === 'boolean') {
|
|
2485
2536
|
this.formStore[whichForm][index].isDisability = this.formStore.applicationData[whichMember][index].isDisability;
|
|
2486
2537
|
}
|
|
@@ -2567,12 +2618,12 @@ export const useDataStore = defineStore('data', {
|
|
|
2567
2618
|
await ncaLayerClient.connect();
|
|
2568
2619
|
activeTokens = await ncaLayerClient.getActiveTokens();
|
|
2569
2620
|
const storageType = activeTokens[0] || NCALayerClient.fileStorageType;
|
|
2570
|
-
if (this.formStore.applicationData.statusCode === '
|
|
2571
|
-
const document = await this.generatePDFDocument('
|
|
2621
|
+
if (this.formStore.applicationData.statusCode === 'ContractSignedFrom') {
|
|
2622
|
+
const document = await this.generatePDFDocument('PA_Contract', '38', 'pdf');
|
|
2572
2623
|
const base64EncodedSignature = await ncaLayerClient.basicsSignCMS(storageType, document, NCALayerClient.basicsCMSParams, NCALayerClient.basicsSignerSignAny);
|
|
2573
2624
|
const formData = formTemplate;
|
|
2574
2625
|
formData.append('base64EncodedSignature', base64EncodedSignature);
|
|
2575
|
-
formData.append('name', '
|
|
2626
|
+
formData.append('name', 'PA_Contract');
|
|
2576
2627
|
try {
|
|
2577
2628
|
await this.api.uploadDigitalCertifijcate(formData);
|
|
2578
2629
|
await this.handleTask('accept', String(this.formStore.applicationTaskId));
|
|
@@ -2580,14 +2631,14 @@ export const useDataStore = defineStore('data', {
|
|
|
2580
2631
|
this.showToaster('error', String(e));
|
|
2581
2632
|
return;
|
|
2582
2633
|
}
|
|
2583
|
-
} else if (this.formStore.applicationData.statusCode === '
|
|
2634
|
+
} else if (this.formStore.applicationData.statusCode === 'HeadManagerForm') {
|
|
2584
2635
|
const document = await this.generatePDFDocument('PA_Contract', '38', 'pdf');
|
|
2585
2636
|
const base64EncodedSignature = await ncaLayerClient.basicsSignCMS(storageType, document, NCALayerClient.basicsCMSParams, NCALayerClient.basicsSignerSignAny);
|
|
2586
2637
|
const formData = formTemplate;
|
|
2587
2638
|
formData.append('base64EncodedSignature', base64EncodedSignature);
|
|
2588
2639
|
formData.append('name', 'PA_Contract');
|
|
2589
2640
|
try {
|
|
2590
|
-
await this.api.
|
|
2641
|
+
await this.api.uploadDigitalCertificatePensionAnnuityNew(formData);
|
|
2591
2642
|
await this.handleTask('accept', String(this.formStore.applicationTaskId));
|
|
2592
2643
|
} catch (e) {
|
|
2593
2644
|
this.showToaster('error', String(e));
|
|
@@ -2960,6 +3011,11 @@ export const useDataStore = defineStore('data', {
|
|
|
2960
3011
|
if (this.controls.hasAttachment) {
|
|
2961
3012
|
const areValid = this.formStore.SaleChanellPolicy.nameRu && this.formStore.RegionPolicy.nameRu && this.formStore.ManagerPolicy.nameRu && this.formStore.AgentData.fullName;
|
|
2962
3013
|
if (areValid) {
|
|
3014
|
+
if (this.isLifetrip && this.formStore.AgentData.fullName === 'Без агента') {
|
|
3015
|
+
this.isLoading = false;
|
|
3016
|
+
this.showToaster('error', this.t('toaster.attachAgentError'), 3000);
|
|
3017
|
+
return false;
|
|
3018
|
+
}
|
|
2963
3019
|
if (this.isInitiator()) {
|
|
2964
3020
|
await this.setINSISWorkData();
|
|
2965
3021
|
}
|
|
@@ -3401,8 +3457,9 @@ export const useDataStore = defineStore('data', {
|
|
|
3401
3457
|
if (data[key] !== null) {
|
|
3402
3458
|
if (key === 'iin' || key === 'bin') data[key] = data[key].replace(/-/g, '');
|
|
3403
3459
|
if (key === 'phoneNumber') data[key] = formatPhone(data[key]);
|
|
3404
|
-
if (key === 'issuedOn' || key === 'validUntil' || key === 'birthDate') data[key] = formatDate(data[key])?.toISOString() ?? '';
|
|
3460
|
+
if (key === 'issuedOn' || key === 'validUntil' || key === 'birthDate' || key === 'date') data[key] = formatDate(data[key])?.toISOString() ?? '';
|
|
3405
3461
|
if (key === 'nameRu' && data['ids']) data['id'] = data['ids'];
|
|
3462
|
+
if (key === 'positionRu') data['positionKz'] = data['positionRu'];
|
|
3406
3463
|
}
|
|
3407
3464
|
}
|
|
3408
3465
|
});
|
|
@@ -3615,8 +3672,8 @@ export const useDataStore = defineStore('data', {
|
|
|
3615
3672
|
},
|
|
3616
3673
|
async saveInsuredList(insuredList: any) {
|
|
3617
3674
|
try {
|
|
3618
|
-
|
|
3619
|
-
return
|
|
3675
|
+
await this.api.saveInsuredList(this.formStore.applicationData.processInstanceId, insuredList);
|
|
3676
|
+
return true;
|
|
3620
3677
|
} catch (err) {
|
|
3621
3678
|
return ErrorHandler(err);
|
|
3622
3679
|
}
|
|
@@ -3636,7 +3693,7 @@ export const useDataStore = defineStore('data', {
|
|
|
3636
3693
|
id: index,
|
|
3637
3694
|
fullName: client.longName,
|
|
3638
3695
|
gender: client.gender,
|
|
3639
|
-
position: client.workDetails.
|
|
3696
|
+
position: client.workDetails.positionRu,
|
|
3640
3697
|
birthDate: client.birthDate,
|
|
3641
3698
|
iin: reformatIin(client.iin),
|
|
3642
3699
|
insSum: client.insuredPolicyData.insSum,
|
|
@@ -3859,11 +3916,13 @@ export const useDataStore = defineStore('data', {
|
|
|
3859
3916
|
return true;
|
|
3860
3917
|
},
|
|
3861
3918
|
hasAccess() {
|
|
3919
|
+
const baseAccessRoles = this.isAdmin() || this.isSupport() || this.isAnalyst() || this.isDrn();
|
|
3862
3920
|
return {
|
|
3863
3921
|
invoiceInfo: this.isAdmin(),
|
|
3864
|
-
toLKA: this.isAgent() ||
|
|
3865
|
-
toAML: this.isCompliance() ||
|
|
3866
|
-
toAULETTI: this.isAgentAuletti() ||
|
|
3922
|
+
toLKA: this.isAgent() || baseAccessRoles,
|
|
3923
|
+
toAML: this.isCompliance() || baseAccessRoles,
|
|
3924
|
+
toAULETTI: this.isAgentAuletti() || baseAccessRoles,
|
|
3925
|
+
toLKA_A: this.isAgentAuletti() || baseAccessRoles,
|
|
3867
3926
|
toEFO:
|
|
3868
3927
|
this.isManager() ||
|
|
3869
3928
|
this.isAgent() ||
|
|
@@ -3894,16 +3953,3 @@ export const useDataStore = defineStore('data', {
|
|
|
3894
3953
|
},
|
|
3895
3954
|
},
|
|
3896
3955
|
});
|
|
3897
|
-
|
|
3898
|
-
// Для карты клиента
|
|
3899
|
-
// export const useContragentStore = defineStore('contragent', {
|
|
3900
|
-
// state: () => ({
|
|
3901
|
-
// ...new Contragent(),
|
|
3902
|
-
// formatDate: new Contragent().formatDate,
|
|
3903
|
-
// getDateByKey: new Contragent().getDateByKey,
|
|
3904
|
-
// getBirthDate: new Contragent().getBirthDate,
|
|
3905
|
-
// getDocumentExpireDate: new Contragent().getDocumentExpireDate,
|
|
3906
|
-
// getDocumentDate: new Contragent().getDocumentDate,
|
|
3907
|
-
// getAgeByBirthDate: new Contragent().getAgeByBirthDate,
|
|
3908
|
-
// }),
|
|
3909
|
-
// });
|
package/store/rules.ts
CHANGED
|
@@ -248,6 +248,29 @@ export const rules = {
|
|
|
248
248
|
}
|
|
249
249
|
},
|
|
250
250
|
],
|
|
251
|
+
twoDayBeforeTodayDate: [
|
|
252
|
+
(v: any) => {
|
|
253
|
+
const now = new Date();
|
|
254
|
+
const today = new Date();
|
|
255
|
+
const yesterday = new Date(now.setDate(now.getDate() - 1));
|
|
256
|
+
const beforeYesterday = new Date(now.setDate(now.getDate() - 1));
|
|
257
|
+
const threeDaysAgo = new Date(now.setDate(now.getDate() - 1));
|
|
258
|
+
const fourDaysAgo = new Date(now.setDate(now.getDate() - 1));
|
|
259
|
+
const yourDate = new Date(formatDate(v)!);
|
|
260
|
+
|
|
261
|
+
if (
|
|
262
|
+
yourDate.toDateString() === today.toDateString() ||
|
|
263
|
+
yourDate.toDateString() === yesterday.toDateString() ||
|
|
264
|
+
yourDate.toDateString() === beforeYesterday.toDateString() ||
|
|
265
|
+
yourDate.toDateString() === threeDaysAgo.toDateString() ||
|
|
266
|
+
yourDate.toDateString() === fourDaysAgo.toDateString()
|
|
267
|
+
) {
|
|
268
|
+
return true;
|
|
269
|
+
} else {
|
|
270
|
+
return t('rules.checkDate');
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
],
|
|
251
274
|
fileRequired: [(v: any) => !!v || t('rules.fileRequired'), (v: any) => (v && v.length > 0) || t('rules.fileRequired')],
|
|
252
275
|
guaranteedPeriodLimit(v: any, termAnnuityPayments: any) {
|
|
253
276
|
if (Number(v) > Number(termAnnuityPayments)) {
|
|
@@ -255,4 +278,10 @@ export const rules = {
|
|
|
255
278
|
}
|
|
256
279
|
return true;
|
|
257
280
|
},
|
|
281
|
+
fixInsSumLimit(v: any, sum: any) {
|
|
282
|
+
if (Number(v) > Number(sum)) {
|
|
283
|
+
return t('rules.fixInsSumLimit', { sum }) as any;
|
|
284
|
+
}
|
|
285
|
+
return true;
|
|
286
|
+
},
|
|
258
287
|
};
|
package/store/toast.ts
CHANGED
package/types/env.d.ts
CHANGED
package/types/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { RouteLocationNormalizedLoaded, RouteLocationNormalized } from 'vue-router';
|
|
3
|
-
import { AxiosRequestConfig } from 'axios';
|
|
1
|
+
import { Value } from '../composables/classes';
|
|
2
|
+
import type { RouteLocationNormalizedLoaded, RouteLocationNormalized } from 'vue-router';
|
|
3
|
+
import type { AxiosRequestConfig } from 'axios';
|
|
4
4
|
import { Methods } from './enum';
|
|
5
5
|
|
|
6
6
|
export {};
|
|
@@ -29,6 +29,7 @@ declare global {
|
|
|
29
29
|
| 'dso'
|
|
30
30
|
| 'uu'
|
|
31
31
|
| 'auletti'
|
|
32
|
+
| 'lka-auletti'
|
|
32
33
|
| 'prepensionannuity';
|
|
33
34
|
type MemberKeys = keyof ReturnType<typeof useFormStore>;
|
|
34
35
|
type MemberFormTypes = 'policyholderForm' | 'insuredForm' | 'beneficiaryForm' | 'beneficialOwnerForm' | 'policyholdersRepresentativeForm' | 'productConditionsForm';
|
|
@@ -355,7 +356,18 @@ declare global {
|
|
|
355
356
|
|
|
356
357
|
type SignDataType = {
|
|
357
358
|
processInstanceId: string;
|
|
358
|
-
name:
|
|
359
|
+
name:
|
|
360
|
+
| 'Statement'
|
|
361
|
+
| 'Agreement'
|
|
362
|
+
| 'Contract'
|
|
363
|
+
| 'PA_Contract'
|
|
364
|
+
| 'PA_Statement'
|
|
365
|
+
| 'PA_RefundStatement'
|
|
366
|
+
| 'PA_RefundAgreement'
|
|
367
|
+
| 'PAEnpf_Agreement'
|
|
368
|
+
| 'InvoicePayment'
|
|
369
|
+
| 'RejectOSNS'
|
|
370
|
+
| 'RejectInsuredNotValid';
|
|
359
371
|
format: 'pdf' | 'xml';
|
|
360
372
|
};
|
|
361
373
|
|
|
@@ -728,10 +740,6 @@ declare global {
|
|
|
728
740
|
totalAmount7: number | null;
|
|
729
741
|
};
|
|
730
742
|
|
|
731
|
-
type LabelSize = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11;
|
|
732
|
-
|
|
733
|
-
type VuetifyAnimations = 'expand' | 'fab' | 'fade' | 'scale' | 'scroll-x' | 'scroll-y' | 'slide-x' | 'slide-x-r' | 'slide-y' | 'slide-y-r';
|
|
734
|
-
|
|
735
743
|
type InsuredPolicyType = {
|
|
736
744
|
insSum: number;
|
|
737
745
|
insSumWithLoad: number;
|
|
@@ -762,4 +770,20 @@ declare global {
|
|
|
762
770
|
signName: string;
|
|
763
771
|
code: string;
|
|
764
772
|
};
|
|
773
|
+
|
|
774
|
+
namespace Utils {
|
|
775
|
+
type ProjectConfig = {
|
|
776
|
+
version: string;
|
|
777
|
+
buildTime: string;
|
|
778
|
+
isDown: boolean;
|
|
779
|
+
};
|
|
780
|
+
|
|
781
|
+
type VuetifyAnimations = 'expand' | 'fab' | 'fade' | 'scale' | 'scroll-x' | 'scroll-y' | 'slide-x' | 'slide-x-r' | 'slide-y' | 'slide-y-r';
|
|
782
|
+
|
|
783
|
+
type LabelSize = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11;
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
namespace Dicts {
|
|
787
|
+
type WorkPosition = { workPositionClassCode: string; workPositionCode: string; workPositionName: string };
|
|
788
|
+
}
|
|
765
789
|
}
|