hl-core 0.0.7-beta.2 → 0.0.7-beta.21
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/.prettierrc +2 -1
- package/api/index.ts +323 -31
- package/api/interceptors.ts +10 -1
- package/components/Button/Btn.vue +7 -2
- package/components/Button/BtnIcon.vue +47 -0
- package/components/Button/ScrollButtons.vue +6 -0
- package/components/Complex/Content.vue +1 -1
- package/components/Complex/ContentBlock.vue +5 -0
- package/components/Complex/Page.vue +13 -2
- package/components/{Layout → Dialog}/Dialog.vue +7 -11
- package/components/Dialog/FamilyDialog.vue +39 -0
- package/components/Form/FormBlock.vue +114 -0
- package/components/Form/FormSection.vue +18 -0
- package/components/Form/FormTextSection.vue +20 -0
- package/components/Form/FormToggle.vue +52 -0
- package/components/Form/ProductConditionsBlock.vue +68 -0
- package/components/Input/EmptyFormField.vue +5 -0
- package/components/Input/FileInput.vue +71 -0
- package/components/Input/FormInput.vue +171 -0
- package/components/Input/PanelInput.vue +133 -0
- package/components/Input/RoundedInput.vue +40 -36
- package/components/Layout/Drawer.vue +44 -0
- package/components/Layout/Header.vue +26 -12
- package/components/Layout/Loader.vue +9 -6
- package/components/Layout/SettingsPanel.vue +48 -0
- package/components/List/ListEmpty.vue +22 -0
- package/components/Menu/MenuNav.vue +70 -30
- package/components/Menu/MenuNavItem.vue +8 -1
- package/components/Pages/Anketa.vue +333 -0
- package/components/Pages/Auth.vue +91 -0
- package/components/Pages/Documents.vue +108 -0
- package/components/Pages/MemberForm.vue +1138 -0
- package/components/Pages/ProductAgreement.vue +18 -0
- package/components/Pages/ProductConditions.vue +349 -0
- package/components/Panel/PanelItem.vue +5 -0
- package/components/Panel/PanelSelectItem.vue +20 -0
- package/components/Transitions/FadeTransition.vue +5 -0
- package/composables/classes.ts +413 -207
- package/composables/constants.ts +27 -12
- package/composables/index.ts +73 -35
- package/composables/styles.ts +31 -7
- package/layouts/clear.vue +1 -1
- package/layouts/default.vue +72 -6
- package/layouts/full.vue +6 -0
- package/nuxt.config.ts +5 -2
- package/package.json +17 -11
- package/pages/500.vue +85 -0
- package/plugins/helperFunctionsPlugins.ts +10 -2
- package/plugins/storePlugin.ts +6 -5
- package/store/data.store.js +1858 -527
- package/store/member.store.ts +291 -0
- package/store/messages.ts +152 -34
- package/store/rules.js +26 -28
- package/tailwind.config.js +10 -0
- package/types/index.ts +250 -0
- package/models/index.ts +0 -23
- /package/store/{form.store.js → form.store.ts} +0 -0
package/.prettierrc
CHANGED
package/api/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useAxios } from '@/composables/axios';
|
|
2
|
+
import { Value, IDocument } from '@/composables/classes';
|
|
2
3
|
import { AxiosRequestConfig } from 'axios';
|
|
3
4
|
|
|
4
5
|
enum Methods {
|
|
@@ -7,21 +8,21 @@ enum Methods {
|
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
export class ApiClass {
|
|
10
|
-
baseURL: string
|
|
11
|
-
|
|
12
|
-
this.baseURL = baseURL;
|
|
13
|
-
}
|
|
11
|
+
private readonly baseURL: string = import.meta.env.VITE_BASE_URL as string;
|
|
12
|
+
private readonly productUrl: string = import.meta.env.VITE_PRODUCT_URL as string;
|
|
14
13
|
|
|
15
14
|
private async axiosCall(config: AxiosRequestConfig) {
|
|
16
|
-
const
|
|
17
|
-
|
|
15
|
+
const dataStore = useDataStore();
|
|
16
|
+
if ((dataStore.isEFO && this.baseURL) || (!dataStore.isEFO && this.baseURL && this.productUrl)) {
|
|
17
|
+
const { data } = await useAxios(this.baseURL as string).request(config);
|
|
18
|
+
return data;
|
|
19
|
+
} else {
|
|
20
|
+
console.error('No Axios baseURL or productURL');
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
18
23
|
}
|
|
19
24
|
|
|
20
|
-
async loginUser(data: {
|
|
21
|
-
login: string;
|
|
22
|
-
password: string;
|
|
23
|
-
numAttempt: number;
|
|
24
|
-
}) {
|
|
25
|
+
async loginUser(data: { login: string; password: string; numAttempt: number }): Promise<{ refreshToken: string; accessToken: string }> {
|
|
25
26
|
return this.axiosCall({
|
|
26
27
|
method: Methods.POST,
|
|
27
28
|
url: '/identity/api/Account/login',
|
|
@@ -29,13 +30,7 @@ export class ApiClass {
|
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
async getNewAccessToken({
|
|
33
|
-
refreshToken,
|
|
34
|
-
accessToken,
|
|
35
|
-
}: {
|
|
36
|
-
refreshToken: string;
|
|
37
|
-
accessToken: string;
|
|
38
|
-
}) {
|
|
33
|
+
async getNewAccessToken({ refreshToken, accessToken }: { refreshToken: string; accessToken: string }): Promise<{ refreshToken: string; accessToken: string }> {
|
|
39
34
|
return this.axiosCall({
|
|
40
35
|
method: Methods.POST,
|
|
41
36
|
url: '/identity/api/Account/refresh',
|
|
@@ -70,6 +65,13 @@ export class ApiClass {
|
|
|
70
65
|
});
|
|
71
66
|
}
|
|
72
67
|
|
|
68
|
+
async getAdditionalTaxCountries() {
|
|
69
|
+
return this.axiosCall({
|
|
70
|
+
method: Methods.GET,
|
|
71
|
+
url: '/Ekk/api/Contragentinsis/DictionaryItems/Questionary?filter=507777',
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
73
75
|
// Область
|
|
74
76
|
async getStates() {
|
|
75
77
|
return this.axiosCall({
|
|
@@ -157,6 +159,63 @@ export class ApiClass {
|
|
|
157
159
|
});
|
|
158
160
|
}
|
|
159
161
|
|
|
162
|
+
async getQuestionList(surveyType: string, processInstanceId: string, insuredId: number | string): Promise<AnketaFirst> {
|
|
163
|
+
return this.axiosCall({
|
|
164
|
+
method: Methods.GET,
|
|
165
|
+
url: `/Baiterek/api/Application/Anketa/${surveyType}/${processInstanceId}/${insuredId}`,
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
async getQuestionListSecond(surveyType: string, processInstanceId: string, insuredId: number | string): Promise<AnketaSecond[]> {
|
|
170
|
+
return this.axiosCall({
|
|
171
|
+
method: Methods.GET,
|
|
172
|
+
url: `/Baiterek/api/Application/Anketa/${surveyType}/${processInstanceId}/${insuredId}`,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
async definedAnswers(filter: string) {
|
|
177
|
+
return this.axiosCall({
|
|
178
|
+
method: Methods.GET,
|
|
179
|
+
url: `/ekk/api/Contragentinsis/DictionaryItems/Questionary?filter=${filter}`,
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
async setSurvey(surveyData: AnketaFirst) {
|
|
184
|
+
return this.axiosCall({
|
|
185
|
+
method: Methods.POST,
|
|
186
|
+
data: surveyData,
|
|
187
|
+
url: `/${this.productUrl}/api/Application/SetAnketa`,
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
async getQuestionRefs(id: string | number): Promise<Value[]> {
|
|
192
|
+
return this.axiosCall({
|
|
193
|
+
method: Methods.GET,
|
|
194
|
+
url: `/Ekk/api/Contragentinsis/DictionaryItems/Questionary?filter=${id}`,
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
async getProcessIndexRate(processCode: string | number) {
|
|
199
|
+
return this.axiosCall({
|
|
200
|
+
method: Methods.GET,
|
|
201
|
+
url: `/Arm/api/Dictionary/ProcessIndexRate/${processCode}`,
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
async getAdditionalInsuranceTermsAnswers(processCode: string | number, questionId: string) {
|
|
206
|
+
return this.axiosCall({
|
|
207
|
+
method: Methods.GET,
|
|
208
|
+
url: `/Arm/api/Dictionary/ProcessCoverTypeSum/${processCode}/${questionId}`,
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
async getProcessPaymentPeriod(processCode: string | number) {
|
|
213
|
+
return this.axiosCall({
|
|
214
|
+
method: Methods.GET,
|
|
215
|
+
url: `/Arm/api/Dictionary/ProcessPaymentPeriod/${processCode}`,
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
|
|
160
219
|
async getContragentById(id: any) {
|
|
161
220
|
return this.axiosCall({
|
|
162
221
|
method: Methods.GET,
|
|
@@ -172,7 +231,7 @@ export class ApiClass {
|
|
|
172
231
|
});
|
|
173
232
|
}
|
|
174
233
|
|
|
175
|
-
async getFile(id:
|
|
234
|
+
async getFile(id: string) {
|
|
176
235
|
return await this.axiosCall({
|
|
177
236
|
method: Methods.GET,
|
|
178
237
|
url: `/Arm/api/File/DownloadFile/${id}`,
|
|
@@ -190,35 +249,35 @@ export class ApiClass {
|
|
|
190
249
|
});
|
|
191
250
|
}
|
|
192
251
|
|
|
193
|
-
async getContrAgentData(personId:
|
|
252
|
+
async getContrAgentData(personId: string | number) {
|
|
194
253
|
return this.axiosCall({
|
|
195
254
|
method: Methods.GET,
|
|
196
255
|
url: `/Ekk/api/Contragentinsis/Questionaries?PersonId=${personId}`,
|
|
197
256
|
});
|
|
198
257
|
}
|
|
199
258
|
|
|
200
|
-
async getContrAgentContacts(personId:
|
|
259
|
+
async getContrAgentContacts(personId: string | number) {
|
|
201
260
|
return this.axiosCall({
|
|
202
261
|
method: Methods.GET,
|
|
203
262
|
url: `/Ekk/api/Contragentinsis/Contacts?PersonId=${personId}`,
|
|
204
263
|
});
|
|
205
264
|
}
|
|
206
265
|
|
|
207
|
-
async getContrAgentDocuments(personId:
|
|
266
|
+
async getContrAgentDocuments(personId: string | number) {
|
|
208
267
|
return this.axiosCall({
|
|
209
268
|
method: Methods.GET,
|
|
210
269
|
url: `/Ekk/api/Contragentinsis/Documents?PersonId=${personId}`,
|
|
211
270
|
});
|
|
212
271
|
}
|
|
213
272
|
|
|
214
|
-
async getContrAgentAddress(personId:
|
|
273
|
+
async getContrAgentAddress(personId: string | number) {
|
|
215
274
|
return this.axiosCall({
|
|
216
275
|
method: Methods.GET,
|
|
217
276
|
url: `/Ekk/api/Contragentinsis/Address?PersonId=${personId}`,
|
|
218
277
|
});
|
|
219
278
|
}
|
|
220
279
|
|
|
221
|
-
async getTaskList(data: any) {
|
|
280
|
+
async getTaskList(data: any): Promise<{ items: TaskListItem[]; totalItems: number }> {
|
|
222
281
|
return this.axiosCall({
|
|
223
282
|
method: Methods.POST,
|
|
224
283
|
url: `/Arm/api/Bpm/TaskList`,
|
|
@@ -226,13 +285,13 @@ export class ApiClass {
|
|
|
226
285
|
});
|
|
227
286
|
}
|
|
228
287
|
|
|
229
|
-
async getProcessHistory(id:
|
|
288
|
+
async getProcessHistory(id: string): Promise<TaskHistory[]> {
|
|
230
289
|
return this.axiosCall({
|
|
231
290
|
url: `/Arm/api/Bpm/GetProcessHistory?processInstanceId=${id}`,
|
|
232
291
|
});
|
|
233
292
|
}
|
|
234
293
|
|
|
235
|
-
async sendSms(data:
|
|
294
|
+
async sendSms(data: { phone: string; template: string; tempFlags: { url: string } }): Promise<void> {
|
|
236
295
|
return this.axiosCall({
|
|
237
296
|
baseURL: import.meta.env.VITE_SMS_SERVICE as string,
|
|
238
297
|
method: Methods.POST,
|
|
@@ -241,7 +300,7 @@ export class ApiClass {
|
|
|
241
300
|
});
|
|
242
301
|
}
|
|
243
302
|
|
|
244
|
-
async getUserGroups() {
|
|
303
|
+
async getUserGroups(): Promise<Item[]> {
|
|
245
304
|
return this.axiosCall({
|
|
246
305
|
method: Methods.GET,
|
|
247
306
|
url: '/Arm/api/Bpm/TaskGroups',
|
|
@@ -255,7 +314,7 @@ export class ApiClass {
|
|
|
255
314
|
});
|
|
256
315
|
}
|
|
257
316
|
|
|
258
|
-
async getOtpStatus(data:
|
|
317
|
+
async getOtpStatus(data: OtpDataType): Promise<boolean> {
|
|
259
318
|
return this.axiosCall({
|
|
260
319
|
method: Methods.POST,
|
|
261
320
|
url: '/Arm/api/Otp/OtpLifeStatus',
|
|
@@ -263,7 +322,7 @@ export class ApiClass {
|
|
|
263
322
|
});
|
|
264
323
|
}
|
|
265
324
|
|
|
266
|
-
async sendOtp(data:
|
|
325
|
+
async sendOtp(data: OtpDataType): Promise<SendOtpResponse> {
|
|
267
326
|
return this.axiosCall({
|
|
268
327
|
method: Methods.POST,
|
|
269
328
|
url: '/Arm/api/Otp/Get',
|
|
@@ -271,7 +330,7 @@ export class ApiClass {
|
|
|
271
330
|
});
|
|
272
331
|
}
|
|
273
332
|
|
|
274
|
-
async checkOtp(data:
|
|
333
|
+
async checkOtp(data: { tokenId: string; phoneNumber: string; code: string }): Promise<SendOtpResponse> {
|
|
275
334
|
return this.axiosCall({
|
|
276
335
|
method: Methods.POST,
|
|
277
336
|
url: '/Arm/api/Otp/Check',
|
|
@@ -279,10 +338,243 @@ export class ApiClass {
|
|
|
279
338
|
});
|
|
280
339
|
}
|
|
281
340
|
|
|
282
|
-
async getProcessList() {
|
|
341
|
+
async getProcessList(): Promise<Item[]> {
|
|
283
342
|
return this.axiosCall({
|
|
284
343
|
method: Methods.GET,
|
|
285
344
|
url: '/Arm/api/Bpm/ProcessList',
|
|
345
|
+
timeout: 10000,
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
async startApplication(data: StartApplicationType): Promise<{
|
|
350
|
+
processInstanceId: string;
|
|
351
|
+
}> {
|
|
352
|
+
return this.axiosCall({
|
|
353
|
+
method: Methods.POST,
|
|
354
|
+
url: `/${this.productUrl}/api/Application/StartApplication`,
|
|
355
|
+
data: data,
|
|
356
|
+
});
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
async getApplicationData(id: string) {
|
|
360
|
+
return this.axiosCall({
|
|
361
|
+
url: `/${this.productUrl}/api/Application/applicationData?Id=${id} `,
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
async getCalculation(id: string) {
|
|
366
|
+
return this.axiosCall({
|
|
367
|
+
method: Methods.POST,
|
|
368
|
+
url: `/${this.productUrl}/api/Application/Calculator?processInstanceId=${id}`,
|
|
369
|
+
});
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
async setApplication(data: any) {
|
|
373
|
+
return this.axiosCall({
|
|
374
|
+
method: Methods.POST,
|
|
375
|
+
url: `/${this.productUrl}/api/Application/SetApplicationData`,
|
|
376
|
+
data,
|
|
377
|
+
responseType: 'blob',
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
async generatePdfDocument(data: any) {
|
|
382
|
+
return await this.axiosCall({
|
|
383
|
+
method: Methods.POST,
|
|
384
|
+
url: `/Arm/api/Bpm/GeneratePdfDocument`,
|
|
385
|
+
responseType: 'blob',
|
|
386
|
+
data: data,
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
async deleteFile(data: any) {
|
|
391
|
+
return this.axiosCall({
|
|
392
|
+
method: Methods.POST,
|
|
393
|
+
url: '/Arm/api/File/DeleteFiles',
|
|
394
|
+
data: data,
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
async uploadFiles(data: any) {
|
|
399
|
+
return this.axiosCall({
|
|
400
|
+
method: Methods.POST,
|
|
401
|
+
url: '/Arm/api/File/UploadFiles',
|
|
402
|
+
headers: {
|
|
403
|
+
'Content-Type': 'multipart/form-data',
|
|
404
|
+
},
|
|
405
|
+
data: data,
|
|
406
|
+
});
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
async sendTask(data: any) {
|
|
410
|
+
return this.axiosCall({
|
|
411
|
+
method: Methods.POST,
|
|
412
|
+
url: `/${this.productUrl}/api/Application/SendTask`,
|
|
413
|
+
data: data,
|
|
414
|
+
});
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
async setMember(whichMember: string, data: any) {
|
|
418
|
+
return this.axiosCall({
|
|
419
|
+
method: Methods.POST,
|
|
420
|
+
url: `/Arm/api/BpmMembers/Set${whichMember}`,
|
|
421
|
+
data: data,
|
|
422
|
+
});
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
async deleteMember(whichMember: string, id: number | string) {
|
|
426
|
+
return this.axiosCall({
|
|
427
|
+
method: Methods.POST,
|
|
428
|
+
url: `/Arm/api/BpmMembers/Delete${whichMember}/${id}`,
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
async getInvoiceData(processInstanceId: string) {
|
|
433
|
+
return this.axiosCall({
|
|
434
|
+
method: Methods.GET,
|
|
435
|
+
url: `/Arm/api/Invoice/InvoiceData?processInstanceId=${processInstanceId}`,
|
|
436
|
+
});
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
async createInvoice(processInstanceId: string, amount: number | string) {
|
|
440
|
+
return this.axiosCall({
|
|
441
|
+
method: Methods.POST,
|
|
442
|
+
url: `/Arm/api/Invoice/CreateInvoice/${processInstanceId}/${amount}`,
|
|
443
|
+
});
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
async sendToEpay(processInstanceId: string) {
|
|
447
|
+
return this.axiosCall({
|
|
448
|
+
method: Methods.POST,
|
|
449
|
+
url: `/Arm/api/Invoice/SendToEpay/${processInstanceId}`,
|
|
450
|
+
});
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
async signToDocument(data: any) {
|
|
454
|
+
return this.axiosCall({
|
|
455
|
+
method: Methods.POST,
|
|
456
|
+
url: '/Arm/api/Bpm/SignDocument',
|
|
457
|
+
data: data,
|
|
458
|
+
});
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
async getSignedDocList(data: { processInstanceId: string }): Promise<IDocument[]> {
|
|
462
|
+
return this.axiosCall({
|
|
463
|
+
method: Methods.POST,
|
|
464
|
+
url: '/Arm/api/File/List',
|
|
465
|
+
data: data,
|
|
466
|
+
});
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
async calculateWithoutApplication(data: RecalculationDataType): Promise<RecalculationResponseType> {
|
|
470
|
+
return this.axiosCall({
|
|
471
|
+
method: Methods.POST,
|
|
472
|
+
url: `/${this.productUrl}/api/Application/Calculate`,
|
|
473
|
+
data: data,
|
|
474
|
+
});
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
async getDefaultCalculationData(): Promise<RecalculationDataType> {
|
|
478
|
+
return this.axiosCall({
|
|
479
|
+
method: Methods.GET,
|
|
480
|
+
url: `/${this.productUrl}/api/Application/DefaultCalculatorValues`,
|
|
481
|
+
});
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
async reCalculate(data: any) {
|
|
485
|
+
return this.axiosCall({
|
|
486
|
+
method: Methods.POST,
|
|
487
|
+
url: `/${this.productUrl}/api/Application/Recalculate`,
|
|
488
|
+
data: data,
|
|
489
|
+
});
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
async getValidateClientESBD(data: ESBDValidationType): Promise<ESBDResponseType> {
|
|
493
|
+
return this.axiosCall({
|
|
494
|
+
method: Methods.POST,
|
|
495
|
+
url: '/externalservices/api/ExternalServices/GetValidateClientEsbd',
|
|
496
|
+
data: data,
|
|
497
|
+
});
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
async isClaimTask(taskId: string): Promise<boolean> {
|
|
501
|
+
return this.axiosCall({
|
|
502
|
+
method: Methods.POST,
|
|
503
|
+
url: '/Arm/api/Bpm/IsClaimTask',
|
|
504
|
+
params: { TaskId: taskId },
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
async claimTask(taskId: string) {
|
|
509
|
+
return this.axiosCall({
|
|
510
|
+
method: Methods.POST,
|
|
511
|
+
url: '/Arm/api/Bpm/ClaimTaskUser',
|
|
512
|
+
params: { TaskId: taskId },
|
|
513
|
+
});
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
async getContragentFromGBDFL(data: { iin: string; phoneNumber: string }): Promise<GBDFLResponse> {
|
|
517
|
+
return this.axiosCall({
|
|
518
|
+
method: Methods.POST,
|
|
519
|
+
url: '/externalservices/api/ExternalServices/GetGbdflToken',
|
|
520
|
+
data: data,
|
|
521
|
+
});
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
async getFamilyInfo(data: { iin: string; phoneNumber: string }): Promise<FamilyInfoGKB> {
|
|
525
|
+
return this.axiosCall({
|
|
526
|
+
method: Methods.POST,
|
|
527
|
+
url: '/externalservices/api/ExternalServices/GetFamilyInfoToken',
|
|
528
|
+
data: data,
|
|
529
|
+
});
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
async getProcessTariff(code: number | string = 5) {
|
|
533
|
+
return this.axiosCall({ url: `/arm/api/Dictionary/ProcessTariff/${code}` });
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
async setConfirmation(data: any) {
|
|
537
|
+
return this.axiosCall({
|
|
538
|
+
method: Methods.POST,
|
|
539
|
+
url: '/Arm/api/UnderwritingCouncil/SetConfirmation',
|
|
540
|
+
data: data,
|
|
541
|
+
});
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
async getUnderwritingCouncilData(id: string | number) {
|
|
545
|
+
return this.axiosCall({
|
|
546
|
+
method: Methods.GET,
|
|
547
|
+
url: `/Arm/api/UnderwritingCouncil/ApplicationData?Id=${id}`,
|
|
548
|
+
});
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
async sendUnderwritingCouncilTask(data: any) {
|
|
552
|
+
return this.axiosCall({
|
|
553
|
+
method: Methods.POST,
|
|
554
|
+
url: '/arm/api/UnderwritingCouncil/SendTask',
|
|
555
|
+
data: data,
|
|
556
|
+
});
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
async filterManagerByRegion(dictName: string, filterName: string) {
|
|
560
|
+
return this.axiosCall({
|
|
561
|
+
method: Methods.GET,
|
|
562
|
+
url: `/ekk/api/ContragentInsis/DictionaryItems/${dictName}?filter=${filterName}`,
|
|
563
|
+
});
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
async setINSISWorkData(data: any) {
|
|
567
|
+
return this.axiosCall({
|
|
568
|
+
method: Methods.POST,
|
|
569
|
+
url: `/arm/api/Bpm/SetInsisWorkData`,
|
|
570
|
+
data: data,
|
|
571
|
+
});
|
|
572
|
+
}
|
|
573
|
+
|
|
574
|
+
async searchAgentByName(name: string) {
|
|
575
|
+
return this.axiosCall({
|
|
576
|
+
method: Methods.GET,
|
|
577
|
+
url: `/ekk/api/ContragentInsis/AgentByName?fullName=${name}`,
|
|
286
578
|
});
|
|
287
579
|
}
|
|
288
580
|
}
|
package/api/interceptors.ts
CHANGED
|
@@ -21,7 +21,16 @@ export default function (axios: AxiosInstance) {
|
|
|
21
21
|
if (error.response.status === 401) {
|
|
22
22
|
dataStore.$reset();
|
|
23
23
|
localStorage.clear();
|
|
24
|
-
|
|
24
|
+
if (dataStore.isEFO) {
|
|
25
|
+
router.push({ name: 'Auth', query: { error: 401 } });
|
|
26
|
+
} else {
|
|
27
|
+
dataStore.sendToParent(constants.postActions.Error401, 401);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (error.response.status >= 500) {
|
|
31
|
+
if (router.currentRoute.value.name !== 'Auth') {
|
|
32
|
+
dataStore.showToaster('error', error.stack, 5000);
|
|
33
|
+
}
|
|
25
34
|
}
|
|
26
35
|
return Promise.reject(error);
|
|
27
36
|
},
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
type="button"
|
|
4
4
|
class="transition-all"
|
|
5
5
|
@click="$emit('clicked')"
|
|
6
|
-
:disabled="disabled"
|
|
6
|
+
:disabled="disabled || loading"
|
|
7
7
|
:class="[
|
|
8
8
|
disabled ? 'disabled' : '',
|
|
9
9
|
classes,
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
$libStyles[`btnH${$capitalize(size)}` as keyof typeof $libStyles],
|
|
12
12
|
]"
|
|
13
13
|
>
|
|
14
|
-
|
|
14
|
+
<base-loader v-if="loading" :size="24" color="#FFF" bg-color="" :width="2"></base-loader>
|
|
15
|
+
<span v-if="!loading">{{ text }}</span>
|
|
15
16
|
</button>
|
|
16
17
|
</template>
|
|
17
18
|
|
|
@@ -35,6 +36,10 @@ export default defineComponent({
|
|
|
35
36
|
type: Boolean,
|
|
36
37
|
default: false,
|
|
37
38
|
},
|
|
39
|
+
loading: {
|
|
40
|
+
type: Boolean,
|
|
41
|
+
default: false,
|
|
42
|
+
},
|
|
38
43
|
btn: {
|
|
39
44
|
type: String,
|
|
40
45
|
default: new Styles().blueBtn,
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<button
|
|
3
|
+
type="button"
|
|
4
|
+
class="transition-all"
|
|
5
|
+
@click="$emit('clicked')"
|
|
6
|
+
:disabled="disabled"
|
|
7
|
+
:class="[
|
|
8
|
+
disabled ? 'disabled' : '',
|
|
9
|
+
classes,
|
|
10
|
+
btn,
|
|
11
|
+
$libStyles[`btnH${$capitalize(size)}` as keyof typeof $libStyles],
|
|
12
|
+
]"
|
|
13
|
+
>
|
|
14
|
+
<i class="mdi" :class="icon"></i>
|
|
15
|
+
</button>
|
|
16
|
+
</template>
|
|
17
|
+
|
|
18
|
+
<script lang="ts">
|
|
19
|
+
export default defineComponent({
|
|
20
|
+
name: 'BaseBtnIcon',
|
|
21
|
+
props: {
|
|
22
|
+
icon: { type: String, default: 'mdi-arrow-right-variant' },
|
|
23
|
+
size: {
|
|
24
|
+
type: String,
|
|
25
|
+
default: 'md',
|
|
26
|
+
},
|
|
27
|
+
classes: {
|
|
28
|
+
type: String,
|
|
29
|
+
default: '',
|
|
30
|
+
},
|
|
31
|
+
disabled: {
|
|
32
|
+
type: Boolean,
|
|
33
|
+
default: false,
|
|
34
|
+
},
|
|
35
|
+
btn: {
|
|
36
|
+
type: String,
|
|
37
|
+
default: new Styles().blueBtn,
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
</script>
|
|
42
|
+
|
|
43
|
+
<style scoped>
|
|
44
|
+
.disabled {
|
|
45
|
+
opacity: 0.3;
|
|
46
|
+
}
|
|
47
|
+
</style>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="absolute bottom-[12%] right-1 flex flex-col gap-4">
|
|
3
|
+
<v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-up" @click="$emit('up')"></v-btn>
|
|
4
|
+
<v-btn style="backdrop-filter: blur(5px)" color="#A0B3D8" variant="outlined" icon="mdi mdi-arrow-down" @click="$emit('down')"></v-btn>
|
|
5
|
+
</div>
|
|
6
|
+
</template>
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<base-content class="flex-col" :class="[$libStyles.whiteBg]">
|
|
3
3
|
<base-header
|
|
4
|
-
class="justify-
|
|
4
|
+
class="justify-center lg:pl-14"
|
|
5
5
|
:has-back="hasBack"
|
|
6
6
|
:back-icon="backIcon"
|
|
7
|
+
:has-more="hasMore"
|
|
8
|
+
:more-icon="moreIcon"
|
|
7
9
|
:title="title"
|
|
8
10
|
@onBack="$emit('onBack')"
|
|
11
|
+
@onMore="$emit('onMore')"
|
|
9
12
|
></base-header>
|
|
10
13
|
<slot></slot>
|
|
11
14
|
</base-content>
|
|
@@ -22,11 +25,19 @@ export default defineComponent({
|
|
|
22
25
|
type: String,
|
|
23
26
|
default: 'mdi-arrow-left',
|
|
24
27
|
},
|
|
28
|
+
hasMore: {
|
|
29
|
+
type: Boolean,
|
|
30
|
+
default: false,
|
|
31
|
+
},
|
|
32
|
+
moreIcon: {
|
|
33
|
+
type: String,
|
|
34
|
+
default: 'mdi-cog-outline',
|
|
35
|
+
},
|
|
25
36
|
title: {
|
|
26
37
|
type: String,
|
|
27
38
|
default: '',
|
|
28
39
|
},
|
|
29
40
|
},
|
|
30
|
-
emits: ['onBack'],
|
|
41
|
+
emits: ['onBack', 'onMore'],
|
|
31
42
|
});
|
|
32
43
|
</script>
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<v-dialog v-model="fieldModel">
|
|
3
|
-
<v-card
|
|
4
|
-
class="self-center w-full sm:w-3/4 md:w-2/3 lg:w-2/4 xl:w-[600px] rounded-lg !p-2"
|
|
5
|
-
>
|
|
3
|
+
<v-card class="self-center w-full sm:w-3/4 md:w-2/3 lg:w-2/4 xl:w-[600px] rounded-lg !p-2">
|
|
6
4
|
<v-card-title>
|
|
7
5
|
<slot v-if="!title" name="title"></slot>
|
|
8
6
|
{{ title }}
|
|
@@ -11,12 +9,10 @@
|
|
|
11
9
|
<slot v-if="!subtitle" name="subtitle"></slot>
|
|
12
10
|
{{ subtitle }}
|
|
13
11
|
</v-card-subtitle>
|
|
14
|
-
<v-card-text>
|
|
15
|
-
<slot v-if="text" name="content"></slot>
|
|
16
|
-
{{ text }}
|
|
17
|
-
</v-card-text>
|
|
18
12
|
<v-card-actions class="gap-[16px]">
|
|
19
|
-
<
|
|
13
|
+
<base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$t('confirm.yes')" :btn="$libStyles.blueBtn" @click="$emit('yes')"></base-btn>
|
|
14
|
+
<base-btn v-if="actions === 'default'" class="!w-fit px-6" size="sm" :text="$t('confirm.no')" :btn="$libStyles.blueBtn" @click="$emit('no')" />
|
|
15
|
+
<slot v-if="actions !== 'default'" name="actions"></slot>
|
|
20
16
|
</v-card-actions>
|
|
21
17
|
</v-card>
|
|
22
18
|
</v-dialog>
|
|
@@ -37,12 +33,12 @@ export default defineComponent({
|
|
|
37
33
|
type: String,
|
|
38
34
|
default: '',
|
|
39
35
|
},
|
|
40
|
-
|
|
36
|
+
actions: {
|
|
41
37
|
type: String,
|
|
42
|
-
default: '',
|
|
38
|
+
default: 'default',
|
|
43
39
|
},
|
|
44
40
|
},
|
|
45
|
-
emits: ['update:modelValue', 'submitted'],
|
|
41
|
+
emits: ['update:modelValue', 'submitted', 'yes', 'no'],
|
|
46
42
|
setup(props, { emit }) {
|
|
47
43
|
const fieldModel = ref(props.modelValue);
|
|
48
44
|
|