@hapl/api-queries 0.2.52 → 0.2.53
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/dist/api-queries.cjs.development.js +1091 -906
- package/dist/api-queries.cjs.development.js.map +1 -1
- package/dist/api-queries.cjs.production.min.js +1 -1
- package/dist/api-queries.cjs.production.min.js.map +1 -1
- package/dist/api-queries.esm.js +1091 -906
- package/dist/api-queries.esm.js.map +1 -1
- package/dist/clients/v1/api/expertCategory/findExpertCategories.d.ts +49 -0
- package/dist/clients/v1/api/expertCategory/findExpertCategoryHistory.d.ts +37 -0
- package/dist/clients/v1/api/index.d.ts +2 -0
- package/dist/clients/v1/dictionaries/ExpertCategory.d.ts +13 -0
- package/dist/clients/v1/dictionaries/index.d.ts +1 -0
- package/dist/clients/v1/index.d.ts +2 -0
- package/dist/clients/v1/types/ExpertCategory.d.ts +20 -0
- package/dist/clients/v1/types/index.d.ts +1 -0
- package/package.json +1 -1
- package/src/clients/v1/api/expertCategory/findExpertCategories.ts +78 -0
- package/src/clients/v1/api/expertCategory/findExpertCategoryHistory.ts +73 -0
- package/src/clients/v1/api/index.ts +3 -0
- package/src/clients/v1/dictionaries/ExpertCategory.ts +14 -0
- package/src/clients/v1/dictionaries/index.ts +1 -0
- package/src/clients/v1/index.ts +13 -0
- package/src/clients/v1/types/ExpertCategory.ts +23 -0
- package/src/clients/v1/types/index.ts +1 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AxiosResponse, AxiosError } from 'axios';
|
|
2
|
+
import { ExpertCategory, ExpertCategoryCategory, ExpertCategoryExpertType } from '../../types';
|
|
3
|
+
declare type SuccessData = {
|
|
4
|
+
success: true;
|
|
5
|
+
data: ExpertCategory[];
|
|
6
|
+
pageParams: {
|
|
7
|
+
page: number;
|
|
8
|
+
length: number;
|
|
9
|
+
};
|
|
10
|
+
meta: {
|
|
11
|
+
cntRed: number;
|
|
12
|
+
cntYellow: number;
|
|
13
|
+
cntGreen: number;
|
|
14
|
+
cntNoCategory: number;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
declare type ResultData = {
|
|
18
|
+
ids: number[];
|
|
19
|
+
byId: Record<string, ExpertCategory>;
|
|
20
|
+
meta: SuccessData['meta'] & {
|
|
21
|
+
total: number;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
declare type ResultError = string;
|
|
25
|
+
export declare type FindExpertCategoriesHeaders = {
|
|
26
|
+
'x-auth-hc': string;
|
|
27
|
+
};
|
|
28
|
+
export declare type FindExpertCategoriesParams = {
|
|
29
|
+
filter?: {
|
|
30
|
+
'expert.id'?: number;
|
|
31
|
+
'supervisor.id'?: number;
|
|
32
|
+
category?: ExpertCategoryCategory;
|
|
33
|
+
expertType?: ExpertCategoryExpertType;
|
|
34
|
+
needAttention?: boolean;
|
|
35
|
+
};
|
|
36
|
+
limits?: {
|
|
37
|
+
page?: number;
|
|
38
|
+
count: number | 'all';
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
export declare type FindExpertCategoriesData = AxiosResponse<ResultData>;
|
|
42
|
+
export declare type FindExpertCategoriesError = AxiosError<ResultError>;
|
|
43
|
+
export declare type FindExpertCategoriesConfig = {
|
|
44
|
+
baseURL?: string;
|
|
45
|
+
headers: FindExpertCategoriesHeaders;
|
|
46
|
+
params: FindExpertCategoriesParams;
|
|
47
|
+
};
|
|
48
|
+
export declare function findExpertCategoriesRequest({ baseURL, headers, params, }: FindExpertCategoriesConfig): Promise<FindExpertCategoriesData>;
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AxiosResponse, AxiosError } from 'axios';
|
|
2
|
+
import { ExpertCategoryCategory, ExpertCategoryExpertType } from '../../types';
|
|
3
|
+
declare type HistoryData = {
|
|
4
|
+
createdAt: string;
|
|
5
|
+
cntRed: number;
|
|
6
|
+
cntYellow: number;
|
|
7
|
+
cntGreen: number;
|
|
8
|
+
cntNoCategory: number;
|
|
9
|
+
};
|
|
10
|
+
declare type ResultData = {
|
|
11
|
+
ids: string[];
|
|
12
|
+
byId: Record<string, HistoryData & {
|
|
13
|
+
_id: string;
|
|
14
|
+
}>;
|
|
15
|
+
};
|
|
16
|
+
declare type ResultError = string;
|
|
17
|
+
export declare type FindExpertCategoryHistoryHeaders = {
|
|
18
|
+
'x-auth-hc': string;
|
|
19
|
+
};
|
|
20
|
+
export declare type FindExpertCategoryHistoryParams = {
|
|
21
|
+
filter?: {
|
|
22
|
+
'expert.id'?: number;
|
|
23
|
+
'supervisor.id'?: number;
|
|
24
|
+
category?: ExpertCategoryCategory;
|
|
25
|
+
expertType?: ExpertCategoryExpertType;
|
|
26
|
+
needAttention?: boolean;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export declare type FindExpertCategoryHistoryData = AxiosResponse<ResultData>;
|
|
30
|
+
export declare type FindExpertCategoryHistoryError = AxiosError<ResultError>;
|
|
31
|
+
export declare type FindExpertCategoryHistoryConfig = {
|
|
32
|
+
baseURL?: string;
|
|
33
|
+
headers: FindExpertCategoryHistoryHeaders;
|
|
34
|
+
params: FindExpertCategoryHistoryParams;
|
|
35
|
+
};
|
|
36
|
+
export declare function findExpertCategoryHistoryRequest({ baseURL, headers, params, }: FindExpertCategoryHistoryConfig): Promise<FindExpertCategoryHistoryData>;
|
|
37
|
+
export {};
|
|
@@ -105,6 +105,8 @@ export * from './expert/findExperts';
|
|
|
105
105
|
export * from './expert/findPublishedExperts';
|
|
106
106
|
export * from './expert/updateExpertCase';
|
|
107
107
|
export * from './expert/updateExpertReview';
|
|
108
|
+
export * from './expertCategory/findExpertCategories';
|
|
109
|
+
export * from './expertCategory/findExpertCategoryHistory';
|
|
108
110
|
export * from './file/uploadFiles';
|
|
109
111
|
export * from './income/createIncome';
|
|
110
112
|
export * from './income/deleteIncome';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ExpertCategoryExpertType, ExpertCategoryCategory } from '../types';
|
|
2
|
+
export declare const ExpertCategoryDictionary: {
|
|
3
|
+
ExpertType: {
|
|
4
|
+
new_expert: string;
|
|
5
|
+
experience_expert: string;
|
|
6
|
+
};
|
|
7
|
+
Category: {
|
|
8
|
+
1: string;
|
|
9
|
+
2: string;
|
|
10
|
+
3: string;
|
|
11
|
+
4: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
@@ -14,6 +14,7 @@ export * from './Deal';
|
|
|
14
14
|
export * from './DealCategorizedFile';
|
|
15
15
|
export * from './DealParticipant';
|
|
16
16
|
export * from './Debt';
|
|
17
|
+
export * from './ExpertCategory';
|
|
17
18
|
export * from './File';
|
|
18
19
|
export * from './GalleryImage';
|
|
19
20
|
export * from './LeadAssignmentBlock';
|
|
@@ -109,6 +109,8 @@ export declare class Api {
|
|
|
109
109
|
findPublishedExperts: (params: api.FindPublishedExpertsParams) => Promise<api.FindPublishedExpertsData>;
|
|
110
110
|
updateExpertCase: (urlParams: api.UpdateExpertCaseUrlParams, body: api.UpdateExpertCaseBody, headers: api.UpdateExpertCaseHeaders) => Promise<api.UpdateExpertCaseData>;
|
|
111
111
|
updateExpertReview: (urlParams: api.UpdateExpertReviewUrlParams, body: api.UpdateExpertReviewBody, headers: api.UpdateExpertReviewHeaders) => Promise<api.UpdateExpertReviewData>;
|
|
112
|
+
findExpertCategories: (params: api.FindExpertCategoriesParams, headers: api.FindExpertCategoriesHeaders) => Promise<api.FindExpertCategoriesData>;
|
|
113
|
+
findExpertCategoryHistory: (params: api.FindExpertCategoryHistoryParams, headers: api.FindExpertCategoryHistoryHeaders) => Promise<api.FindExpertCategoryHistoryData>;
|
|
112
114
|
uploadFiles: (body: api.UploadFilesBody, headers: api.UploadFilesHeaders) => Promise<api.UploadFilesData>;
|
|
113
115
|
createIncome: (body: api.CreateIncomeBody, headers: api.CreateIncomeHeaders) => Promise<api.CreateIncomeData>;
|
|
114
116
|
deleteIncome: (urlParams: api.DeleteIncomeUrlParams, headers: api.DeleteIncomeHeaders) => Promise<api.DeleteIncomeData>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { User } from './User';
|
|
2
|
+
export declare enum ExpertCategoryExpertType {
|
|
3
|
+
NewExpert = "new_expert",
|
|
4
|
+
ExperienceExpert = "experience_expert"
|
|
5
|
+
}
|
|
6
|
+
export declare enum ExpertCategoryCategory {
|
|
7
|
+
Red = "1",
|
|
8
|
+
Yellow = "2",
|
|
9
|
+
Green = "3",
|
|
10
|
+
NoCategory = "4"
|
|
11
|
+
}
|
|
12
|
+
export declare type ExpertCategory = {
|
|
13
|
+
category: ExpertCategoryCategory;
|
|
14
|
+
cntDaysInCurrentCategory: number;
|
|
15
|
+
expert: Partial<User> & Required<Pick<User, 'id'>>;
|
|
16
|
+
expertType: ExpertCategoryExpertType;
|
|
17
|
+
id: number;
|
|
18
|
+
needAttention: boolean;
|
|
19
|
+
supervisor: Partial<User> & Required<Pick<User, 'id'>>;
|
|
20
|
+
};
|
package/package.json
CHANGED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import axios, { AxiosResponse, AxiosError, AxiosResponseTransformer } from 'axios';
|
|
2
|
+
import qs from 'qs';
|
|
3
|
+
import { ExpertCategory, ExpertCategoryCategory, ExpertCategoryExpertType } from '../../types';
|
|
4
|
+
|
|
5
|
+
type SuccessData = {
|
|
6
|
+
success: true;
|
|
7
|
+
data: ExpertCategory[];
|
|
8
|
+
pageParams: { page: number; length: number };
|
|
9
|
+
meta: {
|
|
10
|
+
cntRed: number;
|
|
11
|
+
cntYellow: number;
|
|
12
|
+
cntGreen: number;
|
|
13
|
+
cntNoCategory: number;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
type ErrorData = { success: false; data: Record<'error' | 'message', string> };
|
|
17
|
+
|
|
18
|
+
type ResultData = {
|
|
19
|
+
ids: number[];
|
|
20
|
+
byId: Record<string, ExpertCategory>;
|
|
21
|
+
meta: SuccessData['meta'] & { total: number };
|
|
22
|
+
};
|
|
23
|
+
type ResultError = string;
|
|
24
|
+
|
|
25
|
+
export type FindExpertCategoriesHeaders = { 'x-auth-hc': string };
|
|
26
|
+
export type FindExpertCategoriesParams = {
|
|
27
|
+
filter?: {
|
|
28
|
+
'expert.id'?: number;
|
|
29
|
+
'supervisor.id'?: number;
|
|
30
|
+
category?: ExpertCategoryCategory;
|
|
31
|
+
expertType?: ExpertCategoryExpertType;
|
|
32
|
+
needAttention?: boolean;
|
|
33
|
+
};
|
|
34
|
+
limits?: { page?: number; count: number | 'all' };
|
|
35
|
+
};
|
|
36
|
+
export type FindExpertCategoriesData = AxiosResponse<ResultData>;
|
|
37
|
+
export type FindExpertCategoriesError = AxiosError<ResultError>;
|
|
38
|
+
export type FindExpertCategoriesConfig = {
|
|
39
|
+
baseURL?: string;
|
|
40
|
+
headers: FindExpertCategoriesHeaders;
|
|
41
|
+
params: FindExpertCategoriesParams;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export function findExpertCategoriesRequest({
|
|
45
|
+
baseURL = 'https://clients.homeapp.ru',
|
|
46
|
+
headers,
|
|
47
|
+
params,
|
|
48
|
+
}: FindExpertCategoriesConfig) {
|
|
49
|
+
return axios
|
|
50
|
+
.get('/api/expert-category/list', {
|
|
51
|
+
baseURL,
|
|
52
|
+
params,
|
|
53
|
+
paramsSerializer: params => qs.stringify(params, { arrayFormat: 'brackets' }),
|
|
54
|
+
headers: { Accept: 'application/json', ...headers },
|
|
55
|
+
transformResponse: [
|
|
56
|
+
...(axios.defaults.transformResponse as AxiosResponseTransformer[]),
|
|
57
|
+
(data: SuccessData | ErrorData): ResultData | ResultError => {
|
|
58
|
+
if (data.success) {
|
|
59
|
+
const ids: ResultData['ids'] = [];
|
|
60
|
+
const byId: ResultData['byId'] = {};
|
|
61
|
+
|
|
62
|
+
data.data.forEach(entity => {
|
|
63
|
+
byId[entity.id] = entity;
|
|
64
|
+
ids.push(entity.id);
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
return { ids, byId, meta: { ...data.meta, total: data.pageParams?.length ?? 0 } };
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return data.data.error || data.data.message;
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
})
|
|
74
|
+
.then((res: FindExpertCategoriesData) => res)
|
|
75
|
+
.catch((err: FindExpertCategoriesError) => {
|
|
76
|
+
throw err;
|
|
77
|
+
});
|
|
78
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import axios, { AxiosResponse, AxiosError, AxiosResponseTransformer } from 'axios';
|
|
2
|
+
import { nanoid } from 'nanoid/non-secure';
|
|
3
|
+
import qs from 'qs';
|
|
4
|
+
import { ExpertCategoryCategory, ExpertCategoryExpertType } from '../../types';
|
|
5
|
+
|
|
6
|
+
type HistoryData = {
|
|
7
|
+
createdAt: string;
|
|
8
|
+
cntRed: number;
|
|
9
|
+
cntYellow: number;
|
|
10
|
+
cntGreen: number;
|
|
11
|
+
cntNoCategory: number;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
type SuccessData = { success: true; data: Array<HistoryData> };
|
|
15
|
+
type ErrorData = { success: false; data: Record<'error' | 'message', string> };
|
|
16
|
+
|
|
17
|
+
type ResultData = { ids: string[]; byId: Record<string, HistoryData & { _id: string }> };
|
|
18
|
+
type ResultError = string;
|
|
19
|
+
|
|
20
|
+
export type FindExpertCategoryHistoryHeaders = { 'x-auth-hc': string };
|
|
21
|
+
export type FindExpertCategoryHistoryParams = {
|
|
22
|
+
filter?: {
|
|
23
|
+
'expert.id'?: number;
|
|
24
|
+
'supervisor.id'?: number;
|
|
25
|
+
category?: ExpertCategoryCategory;
|
|
26
|
+
expertType?: ExpertCategoryExpertType;
|
|
27
|
+
needAttention?: boolean;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export type FindExpertCategoryHistoryData = AxiosResponse<ResultData>;
|
|
31
|
+
export type FindExpertCategoryHistoryError = AxiosError<ResultError>;
|
|
32
|
+
export type FindExpertCategoryHistoryConfig = {
|
|
33
|
+
baseURL?: string;
|
|
34
|
+
headers: FindExpertCategoryHistoryHeaders;
|
|
35
|
+
params: FindExpertCategoryHistoryParams;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export function findExpertCategoryHistoryRequest({
|
|
39
|
+
baseURL = 'https://clients.homeapp.ru',
|
|
40
|
+
headers,
|
|
41
|
+
params,
|
|
42
|
+
}: FindExpertCategoryHistoryConfig) {
|
|
43
|
+
return axios
|
|
44
|
+
.get('/api/expert-category/history', {
|
|
45
|
+
baseURL,
|
|
46
|
+
params,
|
|
47
|
+
paramsSerializer: params => qs.stringify(params, { arrayFormat: 'brackets' }),
|
|
48
|
+
headers: { Accept: 'application/json', ...headers },
|
|
49
|
+
transformResponse: [
|
|
50
|
+
...(axios.defaults.transformResponse as AxiosResponseTransformer[]),
|
|
51
|
+
(data: SuccessData | ErrorData): ResultData | ResultError => {
|
|
52
|
+
if (data.success) {
|
|
53
|
+
const ids: ResultData['ids'] = [];
|
|
54
|
+
const byId: ResultData['byId'] = {};
|
|
55
|
+
|
|
56
|
+
data.data.forEach(entity => {
|
|
57
|
+
const _id = nanoid();
|
|
58
|
+
byId[_id] = { ...entity, _id };
|
|
59
|
+
ids.push(_id);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
return { ids, byId };
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return data.data.error || data.data.message;
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
})
|
|
69
|
+
.then((res: FindExpertCategoryHistoryData) => res)
|
|
70
|
+
.catch((err: FindExpertCategoryHistoryError) => {
|
|
71
|
+
throw err;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
@@ -123,6 +123,9 @@ export * from './expert/findPublishedExperts';
|
|
|
123
123
|
export * from './expert/updateExpertCase';
|
|
124
124
|
export * from './expert/updateExpertReview';
|
|
125
125
|
|
|
126
|
+
export * from './expertCategory/findExpertCategories';
|
|
127
|
+
export * from './expertCategory/findExpertCategoryHistory';
|
|
128
|
+
|
|
126
129
|
export * from './file/uploadFiles';
|
|
127
130
|
|
|
128
131
|
export * from './income/createIncome';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ExpertCategoryExpertType, ExpertCategoryCategory } from '../types';
|
|
2
|
+
|
|
3
|
+
export const ExpertCategoryDictionary = {
|
|
4
|
+
ExpertType: {
|
|
5
|
+
[ExpertCategoryExpertType.NewExpert]: 'Новичок',
|
|
6
|
+
[ExpertCategoryExpertType.ExperienceExpert]: 'Опытный',
|
|
7
|
+
},
|
|
8
|
+
Category: {
|
|
9
|
+
[ExpertCategoryCategory.Red]: 'Красная',
|
|
10
|
+
[ExpertCategoryCategory.Yellow]: 'Желтая',
|
|
11
|
+
[ExpertCategoryCategory.Green]: 'Зеленая',
|
|
12
|
+
[ExpertCategoryCategory.NoCategory]: 'Нет категории',
|
|
13
|
+
},
|
|
14
|
+
};
|
|
@@ -14,6 +14,7 @@ export * from './Deal';
|
|
|
14
14
|
export * from './DealCategorizedFile';
|
|
15
15
|
export * from './DealParticipant';
|
|
16
16
|
export * from './Debt';
|
|
17
|
+
export * from './ExpertCategory';
|
|
17
18
|
export * from './File';
|
|
18
19
|
export * from './GalleryImage';
|
|
19
20
|
export * from './LeadAssignmentBlock';
|
package/src/clients/v1/index.ts
CHANGED
|
@@ -645,6 +645,19 @@ export class Api {
|
|
|
645
645
|
return api.updateExpertReviewRequest({ urlParams, body, headers, baseURL: await this.baseURL });
|
|
646
646
|
};
|
|
647
647
|
|
|
648
|
+
// expertCategory
|
|
649
|
+
|
|
650
|
+
findExpertCategories = async (params: api.FindExpertCategoriesParams, headers: api.FindExpertCategoriesHeaders) => {
|
|
651
|
+
return api.findExpertCategoriesRequest({ params, headers, baseURL: await this.baseURL });
|
|
652
|
+
};
|
|
653
|
+
|
|
654
|
+
findExpertCategoryHistory = async (
|
|
655
|
+
params: api.FindExpertCategoryHistoryParams,
|
|
656
|
+
headers: api.FindExpertCategoryHistoryHeaders
|
|
657
|
+
) => {
|
|
658
|
+
return api.findExpertCategoryHistoryRequest({ params, headers, baseURL: await this.baseURL });
|
|
659
|
+
};
|
|
660
|
+
|
|
648
661
|
// file
|
|
649
662
|
|
|
650
663
|
uploadFiles = async (body: api.UploadFilesBody, headers: api.UploadFilesHeaders) => {
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { User } from './User';
|
|
2
|
+
|
|
3
|
+
export enum ExpertCategoryExpertType {
|
|
4
|
+
NewExpert = 'new_expert',
|
|
5
|
+
ExperienceExpert = 'experience_expert',
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export enum ExpertCategoryCategory {
|
|
9
|
+
Red = '1',
|
|
10
|
+
Yellow = '2',
|
|
11
|
+
Green = '3',
|
|
12
|
+
NoCategory = '4',
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export type ExpertCategory = {
|
|
16
|
+
category: ExpertCategoryCategory;
|
|
17
|
+
cntDaysInCurrentCategory: number;
|
|
18
|
+
expert: Partial<User> & Required<Pick<User, 'id'>>;
|
|
19
|
+
expertType: ExpertCategoryExpertType;
|
|
20
|
+
id: number;
|
|
21
|
+
needAttention: boolean;
|
|
22
|
+
supervisor: Partial<User> & Required<Pick<User, 'id'>>;
|
|
23
|
+
};
|